Добавить правила в брандмауэр ESXi5 из vClient нельзя. Есть статья на VMware kb про то, как это сделать из командной строки esxcli…
1) Подключаетесь к хосту по SSH (локальная командная строка также подойдет);
2) Смотрите список правил брандмауэра:
# esxcli network firewall ruleset list
Name Enabled
-------------------------------
sshServer true
sshClient false
nfsClient true
dhcp true
dns true
snmp true
ntpClient false
CIMHttpServer true
CIMHttpsServer true
CIMSLP true
iSCSI true
3) Создаете новый файл в /etc/vmware/firewall, например, dnstcpout.xml
Авторы статьи предлагают редактировать файл service.xml, но нужно менять ему права, да и поломать вы его можете. Соответственно, вы создаете либо один общий файл под все свои правки и называете его custom.xml, либо для каждого правила делаете отдельный xml-файл.
4) Вносите в него следующее содержимое:
<!-- Firewall configuration information for DNS TCP OUT -->
<ConfigRoot>
<service>
<service id="0000">
<id>DNSTCPOut </id>
<rule id='0000'>
<direction>outbound</direction>
<protocol>tcp</protocol>
<porttype>dst</porttype>
<port>53</port>
</rule>
<enabled>true</enabled>
<required>false</required>
</service>
</ConfigRoot>
5) Обновляете список правил брандмауэра
# esxcli network firewall refresh
6) Проверяете список правил
# esxcli network firewall ruleset list
-------------- -----------------
sshServer true
sshClient false
nfsClient true
dhcp true
dns true
snmp true
ntpClient false
CIMHttpServer true
CIMHttpsServer true
CIMSLP true
iSCSI true
DNSTCPOut true
7) Чтобы эта настройка пережила перезагрузку хоста – копируете xml-файл на постоянное хранилище, допустим в /store/dnstcpout.xml
8) Вставляете в /etc/rc.local следующие строки:
cp /store/dnstcpout.xml /etc/vmware/firewall/dnstcpout.xml
esxcli network firewall refresh
И запускаете сохранение конфигурации в архив (хотя можно и не запускать, оно происходит периодически)
auto-backup.sh
Бинго 😉
P.S. Пока готовил статью, нарыл готовый пример по разрешению доступа к SMTP.