Перейти к основному содержанию

ESXi 7.0 Firewall

VMware

В гипервизоре ESXi имеется встроенный Firewall. В нём предустановлен ряд правил, удовлетворяющих разработанному функционалу. Firewall по умолчанию включён. Часть правил отключена и включается только с запуском соответствующего сервиса.

Частичное управление правилами доступно в GUI, больше возможностей даёт esxcli.

Я работаю в ESXi 7.0.

GUI

Configure → System → Firewall. Здесь имеется две вкладки, в которых удобно просматривать текущие входящие и исходящие правила.

esxi

Удобно смотреть используемые службами порты, если вдруг вы забыли.

esxi

Кнопка EDIT позволяет правилами управлять. Галками включаем или отключаем правила. Есть фильтр для поиска.

esxi

SSH порты зачем-то вынесены в отдельную вкладку.

esxi

SNMP тоже...

esxi

Если развернуть правило, то можно ограничить доступ определённому списку IP адресов, по умолчанию разрешены все IP адреса.

esxi

Данным функционалом ограничено управление Firewall в GUI.

ESXCLI

Через консоль у нас больше вариантов действий.

Сразу полезная команда для отключения Firewall:

esxcli network firewall set --enabled false

И для включения:

esxcli network firewall set --enabled true

Если что-то не работает, можно отключить Firewall и сразу поймём, в нём проблема или нет.

Описание команд

https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.security.doc/GUID-7A8BEFC8-BF86-49B5-AE2D-E400AAD81BA3.html

CLIОписание
esxcli network firewall getСтатус Firewall и Default Action.
esxcli network firewall set --default-actionУстановите в true для Default Action: PASS. Установите в false для Default Action: DROP.
esxcli network firewall set --enabledВключить/выключить ESXi firewall.
esxcli network firewall loadЗагрузить модуль firewall и правила.
esxcli network firewall refreshОбновить конфигурацию firewall и считать правила если модуль firewall загружен.
esxcli network firewall unloadУдалить фильтры и выгрузить модуль firewall.
esxcli network firewall ruleset listСписок правил.
esxcli network firewall ruleset set --allowed-alltrue — доступ всем IP. false — доступ только allowed IP.
esxcli network firewall ruleset set --enabled --ruleset-id=<string>Включить или выключить правило.
esxcli network firewall ruleset allowedip listСписок allowed IP addresses для выбранного правила.
esxcli network firewall ruleset allowedip addДать доступ к правилу набору IP адресов.
esxcli network firewall ruleset allowedip removeОтобрать доступ к правилу набору IP адресов.
esxcli network firewall ruleset rule listСписок правил для всех наборов правил.

esxi

Создание собственных правил

Процесс создания собственных правил описан здесь:

https://kb.vmware.com/s/article/2008226

Начиная с ESXi 7.0 создавать собственные наборы правил Firewall запретили. При этом предложили обходной способ:

  1. Скопировать файл с правилами на отдельный datastore.
  2. Добавить свои изменения в скопированный файл.
  3. В /etc/rc.local.d/local.sh добавить команду на копирование с заменой основного файла.
  4. Чтобы принудительно сохранить эту команду при перезагрузках хоста, команда должна быть добавлена вручную в /etc/rc.local.d/local.sh файл на сервере ESXi.

Это настолько кривое решение, что даже пробовать его не хочется. Тем более нужно отдельное хранилище.

Альтернатива — создание собственного VIB пакета для внесения изменений в Firewall. Но это уже другая история.

Ссылки

ESXi 7.0 Firewall — добавляем своё правило

 

Похожие материалы