痛点
平时工作中,经常有同事让我修改Dnsmasq的配置文件(都怪我服务器权限太大),每次有这样的需求,都要放下手中的工作,登录服务器、修改配置文件、重启服务,有时一天有四五次,让我不胜其烦。
解决方法
起初计划在DNS服务器上部署Web服务器,在根目录下放置一个“Dnsmasq”配置文件副本,同事可以编辑这个配置文件,编辑完成后,依靠“rsync+inotify”来同步新修改的文件到“Dnsmasq”配置目录。但这样操作有不少问题,实现起来比较复杂且不稳定,如果同时有两个同事编辑文件,会冲突。
最近,在github上发现一款好用的程序--“webproc”,它可以解决这个问题。
“webproc”可以给任何服务进程提供基于web的用户界面。你需要做的仅是提供一个二进制可执行程序和它的配置文件。
注意:程序不要以守护进程的方式运行,要运行在“foreground”
Dnsmasq
“DNSmasq”是一个小巧且方便地用于配置DNS和DHCP的工具,适用于小型网络,它提供了DNS功能和可选择的DHCP功能。
- 安装“Dnsmasq”(操作系统是Debian)
sudo apt install dnsmasq
- 在“webproc”中运行“Dnsmasq”--命令行方式
sudo ./webproc -c /etc/dnsmasq.conf --