Назад | Перейти на главную страницу

ESXi размещен на общедоступном IP без брандмауэра

Итак, у меня возникла интересная проблема.

В настоящее время я арендую пару серверов у Hetzner (немецкий хостинг-провайдер). Каждый сервер имеет программный брандмауэр и выполняет что-то вроде веб-хостинга / базы данных.

Я хотел бы арендовать более мощный сервер и установить на нем гипервизор, такой как ESXi, с vSwitch, подключенным к физическому сетевому адаптеру и виртуальной машине pfSense, и еще один vSwitch с виртуальной машины pfSense на другие виртуальные машины. К сожалению, Hetzner, похоже, не предоставляет аппаратный брандмауэр между общедоступным интерфейсом и вашим сервером (оставляя программный брандмауэр в качестве единственного варианта).

Каковы последствия для безопасности подобного публичного запуска ESXi (v5.5)? Предлагается быстрое исследование эта ветка на пряностях что суммирует это как отключение доступа SSH / консоли (telnet?) и настройку надлежащего сертификата SSL и очень сложной неугадываемой пары имя пользователя / пароль. С очевидным подтекстом однократной точки атаки.

Вы можете ограничить IP-адреса, разрешенные через брандмауэр ESXi.

http://pubs.vmware.com/vsphere-50/index.jsp?topic=%2Fcom.vmware.vcli.examples.doc_50%2Fcli_manage_networks.11.11.html

Это действительно все, что вам нужно, чтобы закрепить его. Ограничение вашего управления определенными IP-адресами очень безопасно. Естественно, следуйте другим рекомендациям по поводу паролей и т. Д.

Просто убедитесь, что вы полностью посмотрите на брандмауэр и заблокируйте все свои IP-адреса управления.

Альтернатива нестатическому IP

Замок все порты до 127.0.0.1, как указано выше Кроме для SSH. Заблокируйте SSH только для аутентификации с закрытым / открытым ключом и отключите ChallengeResponseAuthentication и PasswordAuthentication. Это очень безопасный.

Используйте свой любимый клиент SSH для подключения к серверу с помощью командной строки, например:

ssh my.vmhost.rackhoster -L80: localhost: 80 -L443: localhost: 443 -L903: localhost: 903

Затем оставьте сеанс SSH запущенным и укажите в браузере https://localhost/ и он автоматически перенаправит порт 443 на хост ESXi. Измените порты, если вы уже используете порт 443 на своем локальном компьютере (например, вместо -L8443: localhost: 443 -> https://localhost:8443/). То же самое для порта 80. Порт 903 предназначен для консоли.

Если вы когда-нибудь потеряете свой закрытый ключ, вы сильно облажались, так что сделай резервную копию! :-)

Для максимальной безопасности убедитесь, что ваш закрытый ключ зашифрован с помощью правильной парольной фразы. Не забывай об этом!

Используйте встроенный брандмауэр ESXi, чтобы закрыть ненужные порты и ограничить доступ к открытым для диапазона известных IP-адресов.

Это может быть сложно, если вы не используете фиксированный внешний IP-адрес дома (как у большинства людей), поэтому вы можете ограничить доступ к адресам некоторых других серверов, которые у вас есть в Интернете.

Зачем вам запускать ESX в общедоступной сети? Разве вы не можете просто использовать pfSense FW в качестве «общедоступной конечной точки» и сделать все остальное частным? Вот как бы я это сделал.