Как правильно настроить firewall с помощью iptables, что бы он пропускал tcp соединения только на 443 и 22 порт, а также позволял устанавливать исходящие соединения ?
А также почему моя настройка неправильна и не соответствует тз ?
Порядок скриптов:
sudo iptables -A INPUT -m conntrack --ctstate NEW,ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
sudo iptables -A INPUT -j DROP
sudo iptables -A OUTPUT -m conntrack --ctstate NEW,ESTABLISHED,RELATED -j ACCEPT
далее сохраняю настройки, что бы после перезапуска машины настройки применялись:
sudo iptables-save > /etc/sysconfig/iptables
sudo service iptables start
почему моя настройка неправильна и не соответствует тз ?
Потому что в первом правиле вы разрешаете NEW, независимо от портов, так что второе и третье правила становятся бесполезны, и без них уже открыты все порты. Уберите NEW в первом правиле.
а также позволял устанавливать исходящие соединения
А в последнем правиле лучше бы вообще убрать -m conntrack --ctstate NEW,ESTABLISHED,RELATED.