LINUX.ORG.RU

iptables: Все входящие бесплатно, а исходящие в 2 раза дешевле!

 


0

1

Подскажите, правильно ли я настроил правила iptables?

Хочу закрыть все входящие соединения и разрешить исходящие на портах TCP 80 и 443. Я же правильно хочу?

sudo iptables -P INPUT DROP
sudo iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT
sudo iptables -L
Chain INPUT (policy DROP)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

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

telnet google.com 80
Trying 64.233.165.113...
Connected to google.com.

telnet google.com 443
Trying 64.233.165.139...
Connected to google.com.



Последнее исправление: UNX (всего исправлений: 1)

В чём смысл «Policy ACCEPT» в OUTPUT, да и блокировки исходящих соединений в принципе?

Если всё-таки закрыть все исходящие кроме 80/443, перестанет работать DNS (Кроме локального DoH) и целый список других немаловажных протоколов.

GLaDOS
()
Ответ на: комментарий от GLaDOS

Спасибо! В общем, переписал так:

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
iptables -A INPUT -i lo -j ACCEPT

Впрочем, насчет последней строки - не уверен, что мне это нужно, но пусть будет. Может когда сервер Django запущу. Угрозы же вроде в этом особой нет?

UNX
() автор топика