Linux 系统下的安全防火墙我还是比较喜欢使用 iptables,有关 iptables 的命令可以参考我的另一篇文章《Linux 系统下的 iptables 配置》。
最近在部署 Debian 9.8 系统时,我同样也配置了相关的 iptables 规则,这些规则在系统重启后会消失。只需要使用 iptables-save 命令将这些规则保存到一个文件中,然后在开机后使用 iptables-restore 命令来恢复即可。
最简单的做法就是将 iptables-restore 命令写到 /etc/rc.local 文件中。可是,在 Debian 9 中发现并不存在 /etc/rc.local 这个文件。
不过,rc.local 这个服务还是存在的:
root@RicenOS:~# cat /lib/systemd/system/rc.local.service
通过查看 rc.local 这个服务的内容,发现 /etc/rc.local 还是可以用的。只不过,此时 rc-local 服务是关闭的:
root@RicenOS:~# systemctl status rc-local
接下来要做的就是创建 /etc/rc.local 这个文件,内容如下:
#!/bin/sh -e
/sbin/iptables-restore /opt/scripts/iptables.rules
exit 0
赋予可执行权限:
root@RicenOS:~# chmod +x /etc/rc.local
启动 rc-local 服务:
root@RicenOS:~# systemctl start rc-local