我有这个
Status: active
Logging: on (low)
Default: allow (incoming), allow (outgoing), disabled (routed)
New profiles: skip
To Action From
-- ------ ----
22/tcp ALLOW IN Anywhere
80/tcp (Apache) ALLOW IN Anywhere
80 ALLOW IN Anywhere
443 ALLOW IN Anywhere
22/tcp (v6) ALLOW IN Anywhere (v6)
80/tcp (Apache (v6)) ALLOW IN Anywhere (v6)
80 (v6) ALLOW IN Anywhere (v6)
443 (v6) ALLOW IN Anywhere (v6)
如果我ufw insert 1 deny from IP
这样做,它不起作用,IP 仍然被允许,我认为这是因为默认传入是允许的!但是应该吗?这个规则不应该覆盖默认规则吗?
每当我运行ufw default deny incoming
默认配置时,无论我添加了多少自定义规则,我都无法再访问我的服务器。
我运行了ufw reset
并且iptables -F
还执行了以下操作:
ufw allow apache
ufw allow ssh
我无法连接,除非我将 ufw 默认传入更改为允许
注意:我想,这可能是因为我运行了iptables -F
,我必须这样做,因为我直接向 iptables 添加了一些自定义规则,而不是通过 ufw,而且我想重新开始
请指教。
答案1
正如您所提到的,默认传入规则是“允许传入”。因此“ufw 插入 1 拒绝来自 IP“命令正在防火墙规则列表的第一个位置添加一条新规则,但它被“的默认规则覆盖”允许传入“ 交通。
运行命令时“ufw 默认拒绝传入”,它设置了默认策略传入流量“拒绝”,但此规则在您设置的所有其他规则之后应用。
为了使您的场景正常工作,您需要使用以下命令格式将默认 ufw 策略设置为拒绝。
ufw default deny incoming
在你的情况下
ufw default deny incoming
ufw allow from x.x.x.x --> Your Trusted IP Address(Optional)
ufw allow from x.x.x.x --> Your Trusted IP Address(Optional)
ufw allow ssh
ufw allow http
ufw allow https
注意:也许您还需要更改传出链上的默认 ufw 规则。
ufw default allow outgoing