-1

Как я могу проверить, какие правила брандмауэра используются конкретной службой и заблокирован ли порт для ограничения доступа внешних пользователей?

т.е.

netstat -tulnp | grep 123
udp        0      0 0.0.0.0:123                 0.0.0.0:*                               1542/ntpd

Я не вижу LISTEN или ESTABLISHED на выходе.

2 ответа2

0

Одним из способов является использование инструмента tcpdump . Вы связываетесь с интерфейсом и говорите, что хотите слушать, а затем вы можете отлаживать происходящее.

Итак, вы хотите видеть UDP-пакеты на порту 123. Вы бы использовали что-то вроде этого:

tcpdump -i any -n udp port 123

Там вы увидите дейтаграммы, которые ваша машина получает через этот порт. Это может даже помочь вам отладить некоторые другие проблемы, если вы не видите UDP-дейтаграмм. Если этого недостаточно, вы можете использовать действие LOG в команде iptables, поэтому ваше правило будет выглядеть примерно так:

iptables -I INPUT -i eth0 -s 1.2.3.4 -p udp --dport 123 -j LOG

Таким образом, любое соответствующее правило будет зарегистрировано в вашем системном журнале, и вы сможете отслеживать, работает ли оно так, как задумано.

0

Действующие в настоящее время правила брандмауэра отображаются:

   iptables -L -n -v

Используемые для прослушивания порты отображаются

    ss -lntp
    ss -lnup

для соединений TCP и UDP соответственно.

Если вы хотите, вы можете получить довольно хорошее представление о том, что происходит даже на другой машине (и, для полноты картины, тоже самостоятельно) с помощью nmap:

       nmap -p PORT_NUMBERS IP_ADDRESS

Это вернет статус портов как open (процесс слушает его, и нет брандмауэра), closed (никто не слушает его), filtered (брандмауэр защищает порт, и nmap не может определить, порт открыт или нет), unfiltered когда порты отвечают на nmap который, однако, не может определить, открыт порт или нет.

Отправленная вами команда (устарела, пожалуйста, используйте ss) используется для отображения портов прослушивания, следовательно, если интересующий вас порт не воспроизводится, это означает, что процесс, который должен использовать такой порт, не запущен.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .