启用 Shorewall 后上传失败

启用 Shorewall 后上传失败

我有一台安装了 shorewall 4.0.6 的 Ubuntu 8.04 服务器。当我尝试使用 FTP、SCP 或 cURL 上传文件时,文件上传几乎立即停止并最终超时。如果我关闭 shorewall,上传工作就会正常进行。我没有任何专门允许 FTP 的规则,我对此也不太在意,但我确实需要能够通过 22 (SCP) 和 80 & 443 (cURL) 上传。

我的规则如下:

COMMENT Allow Server to respond to any web (80) and SSL (443) requests
ACCEPT  net     $FW      tcp     80 
ACCEPT  $FW     net     tcp     80
ACCEPT  net     $FW      tcp     443
ACCEPT  $FW      net     tcp     443

COMMENT Allow Server to respond to SNMPD (161) requests
ACCEPT  net     $FW      udp     161

COMMENT Allow Server to respond to MySQL (3306) requests (for MySQL Graphing)
ACCEPT  net     $FW      tcp     3306

COMMENT Allow Server to respond to any SSH connection attempts, and to SSH out.
SSH/ACCEPT      net     $FW
SSH/ACCEPT      $FW     net

COMMENT Allow Server to make DNS Requests out.
DNS/ACCEPT      $FW             net

COMMENT Default "close" anything else.
Ping/REJECT     net             $FW
ACCEPT          $FW             net             icmp
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE

我预计前四条ACCEPT线路允许超过 80 和 443 的入站和出站流量,并且我预计两条SSH/ACCEPT线路允许超过 22 的入站和出站流量,包括 SCP。

任何帮助是极大的赞赏。

/etc/shorewall/policy 包含以下内容(以上所有行均被注释掉):

#
# Allow all connection requests from teh firewall to the internet
#
$FW             net             ACCEPT

#
# Policies for traffic originating from the Internet zone (net)
# Drop (ignore) all connection requests from the Internet to the firewall
#
net             all             DROP            info

# THE FOLLOWING POLICY MUST BE LAST
# Reject all other connection requests
all             all             REJECT          info

#LAST LINE -- ADD YOUR ENTRIES ABOVE THIS LINE -- DO NOT REMOVE

答案1

请确保没有流量整形器正在运行(也许 shorwall 启动了一个)。您可以通过运行 来检查tc qdisc show dev eth0。如果没有激活的整形器,输出

iptables -Lnv
iptables -Lnv -t mangle

答案2

除非您明确允许,否则 FTP 将不会使用这些规则(除非您有允许策略,但这样会使这些规则变得毫无意义)。

您的规则似乎允许 SSH、HTTP 和 HTTPS,但您可以检查日志文件或捕获流量来验证这一点。

根据您提到的症状(启动然后停止),我认为您的 TCP MSS 可能配置错误。查看您的 shorewall.conf 并检查 CLAMPMSS 参数。您可能需要尝试将其限制在较低水平,看看问题是否消失。

编辑:我在您的策略文件中看到您允许所有传出流量,因此 Shorewall 不应该是您的问题的原因。如果您清除 Shorewall,问题是否仍然存在?(shorewall clear)。

相关内容