
Я учусь использовать iptables на сервере Ubuntu.
Не могли бы вы объяснить мне, что означает «Разрешить установленные сеансы» и почему мне следует включить это в правила?
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
Я понимаю концепцию разрешения определенных портов и блокировки других.
sudo iptables -A INPUT -p tcp --dport ssh -j ACCEPT
заблокировать все
sudo iptables -A INPUT -j DROP
Но я не понимаю концепцию разрешения установленного сеанса.
Спасибо.
С.
решение1
Некоторые протоколы сложнее, чем «отправить один пакет в качестве запроса, получить один пакет в ответ». ESTABLISHED
обрабатывает транзакции, которые обрабатываются на одном порту (например, HTTP keepalive), и RELATED
обрабатывает новые транзакции на другом порту, которые связаны с существующей транзакцией.
решение2
Только с последними 2 правилами вы не сможете использовать ни одного клиента на компьютере, так как любой ответ будет сброшен. Более того, использование сервера SSH будет ненадежным, так как связанные с ним ошибки пакета ICMP too big будут сброшены.