前言
iptables作为内核级的转发管理工具,因为它卓越的性能和稳定性被大家青睐。但是书写、管理iptables规则却很麻烦,而且iptables本身不支持ddns,这让很多人很苦恼。好在很多开发者针对此开发了很多好用的项目,今天给大家推荐一个可视化的管理面板。
项目地址:
https://github.com/mrjun12/rules-panel
环境
我们装一个lnmp环境
新建一个站点
Nginx伪静态设置一下
location /{ if (!-e $request_filename) { rewrite ^/(.*)$ /index.php/$1 last; break; } }
网页端配置
下载上传一下代码到网站目录(传Master文件夹里的内容即可)
https://codeload.github.com/mrjun12/rules-panel/zip/master
然后设置/public为网站运行目录
然后添加一下定时任务,划线的地方换成你解析的域名
然后我们新建一个数据库,把.sql导入,在 app/config.php 中设下数据库信息
然后我们访问域名就可以打开管理面板了,默认的账户是 admin/123456
我们添加一个服务器,注意这里ip要填主网卡ip,新添加的服务器要给一下你用的用户权限,不然没办法管理
也就是深港专线一般要填香港ip,具体可以ip addr然后看一下
如果是动态ip的机器就写cname,然后保存以后在服务器列表点小按钮切为动态ip
然后添加转发规则之类的就按照面板上的提示填就可以了
被控端配置
我们运行脚本安装下iptables,选择1
wget http://ftp.taoluyun.cc/iptables-pf.sh && chmod +x iptables-pf.sh && iptables-pf.sh
然后清空下iptables规则
iptables -F iptables -t nat -F
然后保存下
yum install iptables-services service iptables save
上传一下被控端文件,然后修改执行权限
chmod +x ip_table
设定定时任务,这里的key是我们刚才在网页端添加服务器给的,ip是主网卡的ip,baidu.com换成网页端网址
crontab -e */5 * * * * . /etc/profile;/root/ip_table key123 10.0.0.4 https://baidu.com/api
我们想要修改的规则立刻生效可以执行下
/root/ip_table key123 10.0.0.4 https://baidu.com/api