Назад | Перейти на главную страницу

Загрузка не выполняется при включенном Shorewall

У меня есть сервер Ubuntu 8.04 с установленным shorewall 4.0.6. Когда я пытаюсь загрузить файлы с помощью 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

FTP не будет работать с этими правилами, пока вы не разрешите это явно (если вместо этого у вас есть разрешающая политика, которая сделает эти правила бессмысленными).

Кажется, что ваши правила разрешают SSH, HTTP и HTTPS, но вы можете проверить свои файлы журнала или захватить трафик, чтобы убедиться в этом.

По указанному вами симптому (запускается, а затем глохнет), я думаю, что ваш TCP MSS может быть неправильно настроен. См. Свой файл shorewall.conf и проверьте параметр CLAMPMSS. Вы можете попробовать зажать его низко и посмотреть, исчезнет ли проблема.

Изменить: я вижу в вашем файле политики, что вы разрешаете весь исходящий трафик, поэтому Shorewall не должен быть причиной вашей проблемы. Проблема не исчезнет после очистки Shorewall? (все ясно).

Пожалуйста, убедитесь, что нет формирователь трафика работает (возможно, шортволл запускает один). Вы можете проверить это, запустив tc qdisc show dev eth0. Если активный формирователь не активен, возможно, на выходе будет

iptables -Lnv
iptables -Lnv -t mangle