bind webadmin 动态DNS自助系统 使用体验

DNS需求

最近甲方项目中有一个需求点需要DNS服务配合,项目要求该DNS系统能让用户自行操作记录,并允许用户通过命令自行修改DNS记录。

领导把这个任务交给我了一个什么还不懂的小白,怎么办?

于是我和我们team的其他同事开始了在网上找一些开源系统,测试几个开源DNS(如bind、powerdns、MyDNS、MaraDNS),它们都非常不错,但并不能直接满足项目要求,需进行二次开发。为节省人力成本,我们并不想针对DNS投入开发成本。通过一位深资运维朋友介绍了一款bind-webadmin的软件,经测试非常适合我们项目要求,bind-webadmin是基于bind9而开发的web管理系统,可快速创建一台动态DNS系统。该软件的作者也非常不错,我在测试中遇到问题时给他发邮件时回复很及时,解答很有耐心,相当给力~~~。

bind-webadmin的官网
https://bind-webadmin.com

bind-webadmin的demo
https://mm-dns.com

废话少说,参照bind webadmin官网开始我的测试,哈~

安装

在安装前,需配置好docker环境。

# wget https://bind-webadmin.com/dw/bind-webadmin.v0.1.tar.gz
# tar zxvf bind-webadmin.v0.1.tar.gz
# cd bind-webadmin.v0.1
# sh install.sh  /bindwebadmin  # 格式: sh install.sh  /install_dir 
                                # 安装目录为 /install_dir
                                # 书写格式: 以 / 开头,且不能以 / 为结尾
                                # 例如:
                                #    /abc/123    正确
                                #    /abc/123/   错误
                                # 若不写明安装目录,则默认安装目录为 /app , 如下。
                                # sh install.sh

# tree /bindwebadmin            # 安装在 /bindwebadmin 目录。在安装前需保证本宿主中没有该目录。安装过程中会创建该目录。
/bindwebadmin
├── bind                        # bind9配置文件。容器第一次被创建时,会修改named.conf文件。
│   ├── named.ca
│   ├── named.conf              # bind9主配置文件。在容器启动后,若修改此文件,需重启容器。
│   ├── named.empty
│   ├── named.localhost
│   ├── named.loopback
│   ├── named.rfc1912.zones
│   ├── redirect.db
│   ├── rndc.conf
│   └── rndc.key
├── cert                        # 证书目录
│   ├── dhparams.pem
│   ├── fullchain.pem
│   └── privkey.pem
├── docker-compose.yml          # docker compose 配置文件.容器间调用采用的是容器名称,不要更改此文件中的容器名称。
├── env.txt                     # 主配置文件(环境变量)。供各个容器初始化时统一调用。仅第一次创建容器时生效。 
├── mysql/                      # mysql数据目录。当容器第一次创建时,该目录会被写入数据库初始化数据。
└── server                      # 后台配置。当容器第一创建时,系统自动修改app.conf。
    ├── app.conf                # 在容器启动后,若修改此文件,需重启容器。
    └── lisence.txt             # 授权配置文件

这里的主要配置文件是env.txt.

测试时我使用的域名是talknow-tech.com,由于我还没有证书,关闭SSL。

env.txt修改如下

# 提示
# 各个容器会启动时读取如下值并到更新自己的相应配置中。

# NS_DOMAIN值必须与bind_backend中的配置文件app.conf中的ns变量值相同。
# Note:
# - 此参数为核心配置
# - 此时 NS_DOMAIN 值不能配置为 test.io 和 example.com ,主要原因是这两个
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值