Назад | Перейти на главную страницу

iptables не может заблокировать запрос отметки времени с помощью CentOS

Я настраиваю брандмауэр с iptables на своем хосте. Я хочу отключить запрос ICMP с меткой времени, но он подключен, я разрешаю только тип 8 (эхо-запрос), поступающий на хост, но, тем не менее, я могу получить метку времени с моего хоста

64 bytes from xxxxxxxxx: icmp_seq=2 ttl=61 time=2.56 ms
TS:     36654775 absolute
        -6423
        3
        1
        -4
        0
        4
        0
        -2
Unrecorded hops: 1

Я пытаюсь разрешить только тип 8, но это не работает. Похоже, что все, что я могу сделать, это разрешить все запросы ICMP или отклонить их все. Ниже приводится сценарий конфигурации, который я использую.

iptables -F
iptables -X
iptables -Z
iptables -P INPUT   DROP
iptables -P OUTPUT  ACCEPT
iptables -P FORWARD ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state RELATED -j ACCEPT

# allow the icmp
iptables -I INPUT -p icmp --icmp-type 8 -j ACCEPT

# services
iptables -A INPUT -p TCP --dport 22 -j ACCEPT # SSH
iptables -A INPUT -p UDP --sport 53 -j ACCEPT # DNS
iptables -A INPUT -p TCP --sport 53 -j ACCEPT # DNS
iptables -A INPUT -p TCP --dport 80 -j ACCEPT # HTTP
iptables -A INPUT -p TCP --dport 443  -j ACCEPT   # HTTPS

# allow the replay from outgoing established connection
iptables -A INPUT -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT

Версия ядра Linux - 2.6.18, а версия iptables - v1.3.5. Что случилось с этим? Как заблокировать запросы отметок времени?

Я попробовал вариант с отметкой времени ping, и похоже, что тип ICMP остается равным 8, а запрос отметки времени находится отдельно от параметров IP. Вероятно, поэтому вы не фильтруете запросы, поскольку они выглядят так же, как обычные эхо-запросы к iptables.

Существует расширение сопоставления ipv4options, которое вы, возможно, захотите изучить для блокировки временных меток.