需要关于 iptables 的建议

ipt*_*new 3 networking security linux iptables rules

伙计们!:-) 。

关于我的 iptables 设置,我需要你的(几个?)建议。我对 iptables 很陌生,这是我第一次使用 iptables 配置服务器作为防火墙(我们没有钱也没有时间预先设置“真正的”防火墙)。

我想通过 SSH 仅从 specific.location.com 连接到我的服务器。

因此,我在 INPUT 中设置了以下规则:

target      in     out     source                       destination
ACCEPT      lo     any     localhost                    anywhere
ACCEPT      any    any     specific.location.com        myserver.local    tcp dpt:ssh
Run Code Online (Sandbox Code Playgroud)

我的默认政策是:

INPUT DROP
FORWARD DROP
OUTPUT ACCEPT
Run Code Online (Sandbox Code Playgroud)

使用第一个配置,我能够连接到我的服务器,但无法访问外部(如 google.com),并且连接速度非常慢。

我知道我的防火墙没有任何规则,包括来自数据包的“ESTABLISHED”状态。确实,我猜我的包能够出去,但不允许回来......

所以我添加了这个规则:

target      in     out     source                       destination
ACCEPT      any    any     anywhere                     anywhere           state ESTABLISHED
Run Code Online (Sandbox Code Playgroud)

现在一切都像魅力一样,我可以从服务器外部访问,连接像以前一样非常快,而且我只能从 specific.location.com 以 SSH 访问我的服务器!

我唯一的问题是我需要你的建议,这是一个干净的配置吗?我在互联网上没有找到任何这样的例子,所以我很想知道......

还是我只是犯了一个巨大的安全错误?!

谢谢你们的帮助:-)

BMD*_*Dan 6

规范地,该 ESTABLISHED 规则实际上是 RELATED,ESTABLISHED。不过,它不会影响 SSH 或 HTTP(S)——不同之处在于 RELATED 还包含技术上新的连接,但与现有连接相关,如 FTP 数据通道通信或 ICMP 回声回复。

总的来说,你在这里所做的一切都很好。