iptables 配置?

Tre*_*eyK 3 iptables

这与我之前的问题有关。并不是真的需要阅读它,但我正在运行 Fedora 15 网络服务器,并且我一直试图让 Apache 正确运行。

我目前为网络服务器配置了一个错误配置的防火墙 - 它阻止了端口 80 上的入站请求。我发现这是 iptables 的问题,所以运行了一个命令来纠正它:

/sbin/iptables -A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT
Run Code Online (Sandbox Code Playgroud)

那没有任何作用。在我重新启动 iptables 服务之前和之后,我都没有收到服务器的响应。

我用来解决此问题的页面下一个建议是将这些行附加到 /etc/system/iptables,所以我尝试了:

-A RH-Firewall-1-INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -p tcp --dport 443 -j ACCEPT
Run Code Online (Sandbox Code Playgroud)

但是在我添加这些行后,iptables 甚至不会启动。所以我将它们更改为更像我的配置文件的其余部分。所以现在整个文件看起来像这样:

# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited


-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT


-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
Run Code Online (Sandbox Code Playgroud)

我添加的行是中间分开的行。唉,这也不起作用。而且我确保在我尝试的每件事之后重新启动 iptables 服务。

那么,我该如何解决这个问题以允许我的网络服务器正确运行,能够在端口 80(和 443)上为网站提供服务?我确实需要启用 iptables,对吗?

mai*_*ilq 6

如果您在添加之前拒绝线路中的所有流量,这就是原因。移动编辑后面的线(反之亦然),它可能会起作用。

然后是一个提示:在实时系统上玩防火墙来学习是一个坏主意。