Если я использую iptables -L для вывода всех правил в iptables, он будет случайным образом зависать на разных IP-адресах, прежде чем продолжить печать списка. Он зависает на несколько секунд, причем каждый раз на разных ip-адресах. Мои общие правила перечислены ниже. то у меня есть пара локальных IP-адресов и несколько разрешенных удаленных IP-адресов. Есть ли правило, которое я забыл в отношении поиска?
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
Chain FORWARD (policy DROP)
target prot opt source destination
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
Chain OUTPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere tcp dpt:smtp
ACCEPT udp -- anywhere anywhere udp dpt:25
ACCEPT tcp -- anywhere anywhere tcp dpt:domain
ACCEPT udp -- anywhere anywhere udp dpt:domain
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
В iptables
команда попытается выполнить обратный поиск по IP-адресам. Это приведет к тому поведению, которое вы описываете. Вы можете запретить обратный поиск с помощью -n
flag, поэтому я всегда перечисляю такие правила:
iptables -vnL
Этот факт и многие другие полезные факты можно найти в iptables
справочная страница. Соответствующий раздел о -n
читает:
-L, --list [chain]
List all rules in the selected chain. If no chain is selected, all chains
are listed. Like every other iptables command, it applies to the specified
table (filter is the default), so NAT rules get listed by
iptables -t nat -n -L
Please note that it is often used with the -n option, in order to avoid
long reverse DNS lookups. It is legal to specify the -Z (zero) option as
well, in which case the chain(s) will be atomically listed and zeroed. The
exact output is affected by the other arguments given. The exact rules are
suppressed until you use
iptables -L -v