Как настроить firewalld для конкретных правил?
У меня есть сервер в центре обработки данных, который служит главным IPA-сервером и VPN-сервером. Для простоты предположим, что мне нужно включить службу ipsec для VPN и службу kerberos для IPA.
Я хотел бы: 1) Разрешить трафик из любого места для доступа к портам ipsec. 2) Разрешить трафик только из частного IP-пространства для доступа к портам Kerberos.
Это кажется достаточно простым; добавьте исходное IP-пространство в рабочую зону, откройте kerberos в рабочей зоне, откройте ipsec в общедоступной зоне. Однако мой интерфейс "eth0" привязан только к "публичной" зоне. Кажется, что интерфейс предназначен только для применения в одной зоне.
Итак, у меня есть два вопроса. Во-первых, что я хотел бы сделать разумным? Во-вторых, каков правильный способ использования для достижения моих целей с помощью firewalld? Например, я знаю, что могу достичь своих целей с помощью богатых правил, но это звучит как то, что должно быть сделано с использованием зон.
0 ответов
Поверьте, зона используется меньше, чем изначально предполагал разработчик firewalld. Они хотят скопировать концепцию зоны безопасности из Windows, которая полезна на ноутбуках при переключении между Wi-Fi в офисе и в кафетерии.
Обычно серверы не имеют таких потребностей, за исключением NAT-маршрутизатора с одной сетевой картой для внешней стороны, другой для внутренней. Однако виртуальный сервер обычно имеет только один интерфейс в облаке, который сервер будет выполнять NAT для него с публичным IP-адресом, который вы арендуете. Общедоступный IP-адрес подключен к облачному серверу, и клиенту не нужно будет выполнять настройку двух сетевых карт на виртуальном сервере. В дополнение к этому у вас есть брандмауэр в облаке, которым можно легко управлять на его веб-сайте. Итак, теперь у вас есть двойные брандмауэры - один в облаке и один на вашем виртуальном сервере.
Таким образом, вы можете открыть порт для конкретного IP-адреса в облачном брандмауэре, в брандмауэре виртуального сервера или на обоих. Вот один пример настройки брандмауэра виртуального сервера для приема TCP-порта 5555 только из сети 192.168.0.0/16:
firewall-cmd --permanent --add-rich-rule 'rule family="ipv4" \
source address="192.168.0.0/16" port port="5555" protocol="tcp" accept'
service firewalld restart