Я изменил политику цепочки INPUT, добавив следующую команду.

iptables -P INPUT DROP

После того, как я вставил следующие правила, чтобы разрешить входящие пакеты от сетевых портов 80 и 443, но порты все еще закрыты (например, я не могу использовать веб-браузер).

iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT

Вывод из iptables -L:

Chain INPUT (policy DROP)
target     prot opt source               destination         
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:http
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:https

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination  

Как я могу разрешить сетевой трафик с портов HTTP и HTTPS?

2 ответа2

0

Вы допустили ошибку в своих правилах. Ваше правило гласит INPUT (так, что входит в компьютер или сервер) с портом назначения. Это означает, что клиент пытается подключиться к веб-сайту, расположенному на вашем компьютере / сервере. Однако вы сказали, что не можете подключиться к веб-серверу, правила неправильные.

Это должен быть спорт вместо дпорта

iptables -A INPUT -p tcp --sport 80 -j ACCEPT
iptables -A INPUT -p tcp --sport 443 -j ACCEPT
0

Может показаться, что проблема заключается в том, что, хотя трафик разрешен вашей сети, он не разрешен обратно. Обычно существует правило, разрешающее входящий трафик, связанный с отсутствующим исходящим трафиком. Попробуйте добавить следующую строку, чтобы исправить вашу проблему -

iptables -I INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

В зависимости от того, как работает ваша сеть, также возможно, что сбой происходит из-за того, что вы не разрешаете разрешать DNS (для этого вы должны разрешить UDP и TCP своим серверам имен на порту 53).

Кроме того (и это немного спорная /controvertial), я предлагаю позволяя ICMP через сеть -

iptables -I INPUT -p icmp -j ACCEPT

Это может значительно упростить отладку, а также отсутствие возможности использования некоторых видов ICMP для прерывания трафика.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .