Настройка мультидоменного доступа
HOSTVM VDI позволяет использовать несколько доменных имен для доступа к одному окружению (с помощью TLS SNI).
Вам понадобятся действительные сертификаты для каждого доменного имени, используемого для доступа к брокеру, в формате PEM
.
В примере ниже описана настройка доступа к брокеру с использованием двух доменных имен. Для настройки потребуются файлы сертификата (открытой части) и файлы приватного ключа, для каждого настраиваемого домена.
Версия брокера 3.5 и выше
Настройка первого домена
Скопируйте открытую и закрытую части сертификата на брокер в директорию /etc/certs
.
Отредактируйте файл с настройками SSL /etc/nginx/snippets/vdi-ssl-params.conf
, в директивах ssl_certificate
и ssl_certificate_key
укажите новые имена файлов сертификата:
ssl_certificate /etc/certs/server.pem; #открытая часть
ssl_certificate_key /etc/certs/key.pem; #приватный ключ
Отредактируйте файл конфигурации веб-сервера /etc/nginx/sites-available/hostvm
, в директиве server_name
укажите доменное имя брокера, например:
server {
...
server_name hostvm-vdi35.localdomain;
...
}
Чтобы проверить новую конфигурацию, выполните команду nginx -t
, вывод команды в случае прохождения проверки:
# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Чтобы применить новые настройки, выполните команду:
# systemctl reload nginx
Настройка второго домена
Скопируйте открытую и закрытую части дополнительного сертификата на брокер в директорию /etc/certs
.
Создайте копию файла /etc/nginx/snippets/vdi-ssl-params.conf
, например:
# cp /etc/nginx/snippets/vdi-ssl-params.conf /etc/nginx/snippets/vdi-ssl-params-ext.conf
Отредактируйте получившийся файл /etc/nginx/snippets/vdi-ssl-params-ext.conf
, в директивах ssl_certificate
и ssl_certificate_key
укажите имена файлов дополнительного сертификата:
ssl_certificate /etc/certs/server-ext.pem; #открытая часть
ssl_certificate_key /etc/certs/key-ext.pem; #приватный ключ
Скопируйте блок настроек server
из текущего файла конфигурации /etc/nginx/sites-available/hostvm
:
server {
... # скопируйте все содержимое этого блока
}
Сохраните конфигурацию в новый файл, например /etc/nginx/sites-available/hostvm-ext
.
Отредактируйте его, удалите параметр default_server
для директив listen
, в директиве server_name
укажите дополнительное доменное имя брокера, для которого будет использоваться другой сертификат, в директиве include
измените путь к файлу с настройками SSL для нового сертификата. Пример настройки:
server {
listen 80;
listen [::]:80;
...
listen 443 ssl http2;
listen [::]:443 ssl http2;
...
include snippets/vdi-ssl-params-ext.conf;
...
server_name hostvm-vdi35-ext.localdomain;
...
}
Остальные параметры оставьте без изменений.
После завершения настройки активируйте конфигурацию:
# ln -s /etc/nginx/sites-available/hostvm-ext /etc/nginx/sites-enabled/
Чтобы проверить новую конфигурацию, выполните команду nginx -t
, вывод команды в случае прохождения проверки:
# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Чтобы применить новые настройки, выполните команду:
# systemctl reload nginx
Убедитесь, что портал брокера доступен по обоим URL (https://hostvm-vdi35.localdomain
и https://hostvm-vdi35-ext.localdomain
), и в каждом случае отдается соответствующий имени сертификат.
Last updated
Was this helpful?