На основе этот ответ, блокировка порта 67 исходящего UDP должна быть
firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -p udp -m udp --dport=67 -j ACCEPT
firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -j DROP
firewall-cmd --reload
Порт 67 UDP - это порт, который использует DHCP-сервер, поэтому я хотел бы убедиться, что порт действительно заблокирован, прежде чем я запускаю DHCP-сервер, чтобы я мог поэкспериментировать с ним в песочнице.
Вопрос
Поскольку это UDP и ниже 1024, как я могу подтвердить, что он заблокирован?
Вы можете использовать такой инструмент, как netcat (на сервере echo test | nc -u <other IP> 67
и на другой машине nc -u -l -p 67
, или используйте Wireshark или аналогичный) и посмотрите, появится ли сообщение.
Порт 67 UDP - это порт, который использует DHCP-сервер, поэтому я хотел бы убедиться, что порт действительно закрыт, прежде чем я запускаю DHCP-сервер, чтобы я мог поэкспериментировать с ним в песочнице.
Тестовый DHCP-сервер должен быть изолирован в VLAN или настроен с разделением областей, которые не перекрывают существующие диапазоны DHCP. Если тестовая и производственная версии находятся в одном домене широковещательной рассылки, широковещательная передача может осуществляться любым из них, что может вызвать непредвиденное поведение. Видеть: 2 DHCP-сервера в одной сети
Кроме того, вы можете ограничить количество интерфейсов, которые dhcpd прослушивает в этой сети песочницы. Без агентов ретрансляции он не будет видеть сообщения DHCPDISCOVER в других сетях.
Я почти уверен, что вы можете использовать сканирование портов UDP Nmap, чтобы указать протокол и порт. Синтаксис следующий:
$ sudo nmap -sU -p port target