通过 SSH 会话测试远程服务器配置时自动重置 PF 防火墙
我想告诉我的基于 BSD 的 PF 防火墙每 2 分钟刷新一次当前配置。当我测试新规则和配置选项时,这将对我有所帮助。[donotprint]
[/donotprint]有时我发现自己被锁定在自己的远程服务器之外。如何自动重置 PF 防火墙而不发出硬重启?
无需编写shell 脚本并从 cron 调用它。您可以从 /etc/pf.conf 加载规则,然后休眠或 120 秒,然后使用以下语法禁用 pf:
其中,
教程详细信息 | |
---|---|
难度等级 | 简单的 |
Root 权限 | 是的 |
要求 | *BSD+pf |
预计阅读时间 | 1 分钟 |
无需编写shell 脚本并从 cron 调用它。您可以从 /etc/pf.conf 加载规则,然后休眠或 120 秒,然后使用以下语法禁用 pf:
#/sbin/pfctl -f /etc/pf.conf && sleep 120 && /sbin/pfctl -d
其中,
- -f /etc/pf.conf– 加载 /etc/pf.conf 中包含的规则。
- -d– 禁用数据包过滤器。
- sleep 120:sleep 命令至少暂停执行 200 秒,然后再调用下一个命令。
您还可以使用以下选项测试 pf.conf 是否存在语法错误:最后,&&(AND 列表)shell 控制运算符仅当第一个命令返回退出状态零时
# /sbin/pfctl -nf /etc/pf.conf
才用于运行下一个命令。因此,列表中的每个命令都必须成功才能运行下一个命令。
# /sbin/pfctl -nf /etc/pf.conf && /sbin/pfctl -f /etc/pf.conf && sleep 120 && /sbin/pfctl -d
参见
- 如何在通过 SSH 会话测试远程服务器配置时自动重置 Linux 防火墙
- 手册页 – 和 pfctl(8)