为网站设置 ufw,我想禁止除 ssh、电子邮件和 http 之外的所有内容

Nim*_*sky 6 ssh ufw

我在这里阅读了基本说明:

https://help.ubuntu.com/community/UFW

我想要sudo ufw default deny然后

sudo ufw allow ssh
sudo ufw allow smtp
sudo ufw allow www
sudo ufw allow https
sudo ufw allow imaps
Run Code Online (Sandbox Code Playgroud)

允许我需要的服务,我错过了什么吗?我假设允许ssh也会允许scp?(哎呀sftp,无论如何我也会允许的)。

但是我的问题是我正在远程连接,所以我可以做我想做的唯一方法是实际执行sudo ufw default allow然后使用提供的服务列表less /etc/services并分别拒绝每个服务?这似乎很痛苦,好像我用默认拒绝打开防火墙它会引导我退出我的 ssh 连接?

Nig*_*gel 2

最简单的解决方案是找到您当前的 IP,然后首先执行以下操作:

sudo ufw 允许来自 192.168.1.100 的进入

其中 192.168.1.100 是您当前的 IP。这样您就不会将自己挡在机器之外。


小智 1

这是一个老问题,但仍然有效,并且给出的答案并不完全完整,所以对于那些偶然发现这个问题的人......

使用 ufw 的最佳方法是先关闭所有端口,然后根据需要一一重新打开端口。OP 是正确的,因为如果您通过 SSH 执行此操作,则必须小心(尽管他的解决方案是向后的):您不想将自己锁定在外,因此请在启用 ufw之前执行这些命令。举个例子:

    sudo ufw default deny incoming
    sudo ufw default allow outgoing
    sudo ufw allow ssh
    sudo ufw allow http
        ...etc
    sudo ufw enable
Run Code Online (Sandbox Code Playgroud)

总之,先设置规则,包括允许 SSH,然后再启用它们。