fwknop 和 ufw 玩得好吗?

fwknop 和 ufw 玩得好吗?

该教程fwknop说用脚本阻止端口iptables

我不想使用,iptables因为它太混乱了,我宁愿使用ufw.但似乎ufw做了一些复杂的事情,所以我不确定是否fwknop需要为此单独配置。

如果我用 打开/关闭我的端口ufwfwknop仍然会像我用 关闭它们一样工作吗iptables

答案1

1)来自 fwknop 文档:

fwknop 项目支持四种不同的防火墙:跨 Linux、OpenBSD、FreeBSD 和 Mac OS X 的 iptables、firewalld、PF 和 ipfw。还支持自定义脚本,以便可以使 fwknop 支持其他基础设施,例如 ipset 或 nftables 。

很明显,它官方只支持 4 个防火墙。但还有空间手动添加对任何其他防火墙的支持。请检查配置文件以了解更多信息。

2)如果你有UFW,那么你也有iptables。

Uncomplicated Firewall (ufw) 是 iptables 的前端,特别适合基于主机的防火墙。 ufw 提供了一个用于管理 netfilter 的框架,以及一个用于操作防火墙的命令行界面。 ufw 旨在为不熟悉防火墙概念的人们提供一个易于使用的界面,同时简化复杂的 iptables 命令以帮助管理员知道自己在做什么。 ufw 是其他发行版和图形前端的上游。

因此,如果您通过 ufw 阻止端口,它应该像被 iptables 本身阻止一样工作。不过说实话,iptables 学起来并没有那么难。首先,您只需添加以下规则即可使用 fwknop。

# Generated by iptables-save v1.6.1 on Tue Apr 23 15:11:27 2019
*nat :PREROUTING ACCEPT [129:17936] :INPUT ACCEPT [0:0] :OUTPUT ACCEPT [106:9180] :POSTROUTING ACCEPT [106:9180] COMMIT
# Completed on Tue Apr 23 15:11:27 2019
# Generated by iptables-save v1.6.1 on Tue Apr 23 15:11:27 2019
*filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [91:9203]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -j LOG
-A INPUT -j DROP
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -j LOG
-A FORWARD -j DROP COMMIT
# Completed on Tue Apr 23 15:11:27 2019

只需将上述文本保存在任何文件中即可。然后运行命令:

iptables-restore < 文件名

你会很高兴去的!

答案2

根据Reddit 上的这个教程,你可以ufw/etc/fwknop/access.conf这样使用:

SOURCE                          ANY

# Limit the Ports able to be opened
OPEN_PORTS                      tcp/22

# Keys from ~/.fwknoprc
KEY_BASE64                      [...]
HMAC_KEY_BASE64                 [...]

CMD_CYCLE_OPEN                  /usr/sbin/ufw allow $PORT
CMD_CYCLE_CLOSE                 /usr/sbin/ufw delete allow $PORT

# Default cycle time Mandatory for CMD_CYCLE_OPEN/CLOSE
CMD_CYCLE_TIMER                 180

相关内容