对于重启或重启网络服务后,静态路由消失和重启后防火墙重置的问题,必须采用一个万能或者通用的方法来实现。本文采用计划任务+shell脚本的解决法,对大多数linux系统,行之有效。
一、蒲公英P5
(一)添加静态路由
1.添加route_add.sh脚本
cat > /etc/route_add.sh
#!/bin/sh
route add -net 192.168.5.0 netmask 255.255.255.0 gw 172.16.2.193 dev oray_vnc
2.赋予脚本权限
chmod a+x /etc/route_add.sh
3.添加计划
vim /etc/crontabs/root
4.最后一行添加如下代码,并保存
0 */2 * * * /etc/route_add.sh
完成。
(二)添加防火墙规则——目前还需要开机后主动./脚本
1.查看sysctl.conf是否有net.ipv4.ip_forward = 1,如果没有粘贴到最后一行
vim /etc/sysc
2.添加防火墙脚本,请查看你的物理网卡是否为eth0
cat > /etc/iptables_add.sh
#!/bin/sh
iptables -I FORWARD -i oray_vnc -j ACCEPT
iptables -I FORWARD -o oray_vnc -j ACCEPT
iptables -t nat -I POSTROUTING -o oray_vnc -j MASQUERADE
iptables -I FORWARD -i eth0 -j ACCEPT
iptables -I FORWARD -o eth0 -j ACCEPT
iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE
3.赋予脚本权限
chmod a+x /etc/iptables_add.sh
二、群晖
1.查看sysctl.conf是否有net.ipv4.ip_forward = 1,如果没有粘贴到最后一行
vim /etc/sysc
2.添加rules_add.sh脚本
#!/bin/bash
route add -net 172.16.0.0 netmask 255.255.0.0 dev oray_vnc
iptables -I FORWARD -i oray_vnc -j ACCEPT
iptables -I FORWARD -o oray_vnc -j ACCEPT
iptables -t nat -I POSTROUTING -o oray_vnc -j MASQUERADE
iptables -I FORWARD -i eth0 -j ACCEPT
iptables -I FORWARD -o eth0 -j ACCEPT
iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE
3.赋予脚本权限
chmod a+x /etc/rules_add.sh
4.进入群晖控制面板,找到计划任务,添加脚本路径和计划