интернет изобилует документацией по настройке iptables от простейших вариантов до сложных, включая обход блокировки сайтов ))
могу в двух словах объяснить ключевые моменты.
1) нужно сохранять настройки
2) сначала пишутся исключения потом запреты
пример:
-A INPUT -p tcp -j DROP
-A INPUT -p udp -j DROP
-A INPUT -p icmp -j DROP
здесь я запретил всем все на всех портах - полная блокировка, вас не видят, вы никого не видите, включая loopback
пример 2:
-A INPUT -i lo -j ACCEPT
-A INPUT -s 192.168.0.1 -p tcp -j ACCEPT
-A INPUT -s 192.168.0.1 -p udp -j ACCEPT
-A INPUT -p tcp -j DROP
-A INPUT -p udp -j DROP
-A INPUT -p icmp -j DROP
здесь я запретил всё всем на всех портах кроме loopback и шлюза 192.168.0.1 но только по протоколу udp и tcp, icmp для него тоже закрыт.
пример 3:
-A INPUT -p tcp -s ya.ru --dport http -j ACCEPT
-A OUTPUT -p tcp -d ya.ru --dport http -j ACCEPT
-A INPUT -p tcp --dport http -j DROP
-A OUTPUT -p tcp --dport http -j DROP
здесь запрещен весь http трафик для всех сайтов кроме
http://ya.ru Вот три самых простых примера. На самом деле можно настроить достаточно сложные таблицы с здержками запросов против ддос атак, переадресацией пакетов на другие порты и т.д. но это уже для сисадминов. Простому пользователю, тем более если он находится за NATом, это совершенно не нужно.