• 欢迎访问年轻的斯基网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏年轻的斯基吧

使用PHPDNS为DNSmasq搭建一个WEB界面

vps教程 liam 7个月前 (02-26) 114次浏览 0个评论 扫描二维码

说明:DNSmasq是一个小巧且方便地用于配置DNSDHCP的工具,适用于小型网络,它提供了DNS功能和可选择的DHCP功能。使用DNSmasq可以很方便的搭建递归DNS(公共DNS),诸如类似的119.29.29.29,可以有效的帮助我们防止DNS劫持、屏蔽广告等,博主很久前发过一个DNSmasq搭建教程,查看:Linux安装DNSmasq搭建自己的公共DNS,使用起来还是有点麻烦,现在小Z大佬使用PHPDNSDNSmasq写了个Web界面,让我们使用更加方便了。

截图

使用PHPDNS为DNSmasq搭建一个WEB界面

安装DNSmasq

系统要求:CentOS 67,且需要国内服务器。

1、安装DNSmasq
先使用ifconfig命令查看服务器IP,并记录,比如下图中的192.168.0.4
使用PHPDNS为DNSmasq搭建一个WEB界面
再执行下面的命令安装DNSmasq

#安装epel源 yum -y install epel-release #安装DNSmasq wget https://raw.githubusercontent.com/helloxz/dnsmasq/master/dns.sh --no-check-certificate chmod +x dns.sh #注意后面填写ifconfig看到的IP ./dns.sh 192.168.0.4 

如果是阿里云等服务器,注意防火墙还要放行tcp/udp 53端口。输入netstat -apn|grep 'dnsmasq'可查看DNSmasq是否运行正常。

2、常用命令

启动:service dnsmasq start 停止:service dnsmasq stop 重启:service dnsmasq restart 

安装PHPDNS

Github地址:https://github.com/helloxz/phpdns

1、运行原理

#PHPDNS生成DNSmasq格式的配置文件 #服务器crontab定时检测配置文件变化,若有改动则重启DNSmasq使其生效 

2、环境要求

PHP 5.6+(需要PDO组件支持)、SQLite 3 

3、安装PHPDNS
先访问master.zip下载最新源码,并解压到站点根目录,同时注意站点目录所属用户权限可读可写。

再编辑application/helpers/check_helper.php设置用户名、密码,里面有注释说明。

最后访问您的域名http://domain.com/登录测试。

4、Nginx伪静态设置
如果是Apache已经自带了.htaccess规则,无需额外设置。如果是Nginx请再server段内添加:

location ^~ /application {         deny all; } location ^~ /system {         deny all; } location ^~ /(application|system) {         deny all; } location / {     try_files $uri $uri/ /index.php?$query_string; }

添加完成后别忘记重启一次nginx

5、编写Shell脚本
PHPDNS通过shell脚本检测DNSmasq文件变化,使用vi reload.sh命令新建Shell脚本,并写入以下内容,路径请自行修改。

CentOS 7系统:

#!/bin/bash find /data/wwwroot/xxx.com/application/conf/ -name '*.conf' -mmin -1 -exec /usr/bin/systemctl restart dnsmasq.service {} ; 

CentOS 6系统:

#!/bin/bash find /data/wwwroot/xxx.com/application/conf/ -name '*.conf' -mmin -1 -exec /sbin/service dnsmasq restart {} ; 

参数说明:

/data/wwwroot/xxx.com/application/conf/是DNSmasq配置文件目录,改为自己的目录。 /usr/bin/systemctl是CentOS 7 systemctl的目录 /sbin/service是CentOS 6的service目录 

别忘记赋予脚本执行权限:chmod +x reload.sh

6、设置crontab定时任务

#安装crontab yum install crontabs #新建定时任务 crontab -e #写入下面的内容,注意路径 */1 * * * * /root/shell/reload.sh #重载crontab service crond reload

/root/shell/reload.sh是上面shell脚本的绝对路径,请注意修改。

7、建立软连接
软连接默认已经生成好了,直接登录PHPDNS后台,将命令复制到Linux终端执行即可。
使用PHPDNS为DNSmasq搭建一个WEB界面

文章来源:小Z博客


年轻的斯基 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:使用PHPDNS为DNSmasq搭建一个WEB界面
喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址