В сегодняшней цифровой среде защита вашего сайта с помощью SSL-сертификатов стала необходимостью. Если у вас на сервере несколько доменов и вы хотите настроить их с помощью Certbot и Nginx, вы попали по адресу. В этой статье мы рассмотрим несколько способов добиться этого, а также приведем примеры кода и пошаговые инструкции.
Метод 1: отдельные серверные блоки
Один простой подход — создать отдельные серверные блоки в файле конфигурации Nginx для каждого домена. Давайте рассмотрим пример:
server {
listen 80;
server_name domain1.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name domain1.com;
ssl_certificate /etc/letsencrypt/live/domain1.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/domain1.com/privkey.pem;
# Additional SSL configuration
# ...
}
server {
listen 80;
server_name domain2.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name domain2.com;
ssl_certificate /etc/letsencrypt/live/domain2.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/domain2.com/privkey.pem;
# Additional SSL configuration
# ...
}
Метод 2: использование подстановочных сертификатов
Если у вас большое количество поддоменов в каждом домене, управление отдельными сертификатами может стать затруднительным. В таких случаях сертификаты с подстановочными знаками могут изменить правила игры. Вот пример:
server {
listen 80;
server_name *.domain1.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name *.domain1.com;
ssl_certificate /etc/letsencrypt/live/domain1.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/domain1.com/privkey.pem;
# Additional SSL configuration
# ...
}
server {
listen 80;
server_name *.domain2.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name *.domain2.com;
ssl_certificate /etc/letsencrypt/live/domain2.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/domain2.com/privkey.pem;
# Additional SSL configuration
# ...
}
Метод 3: использование альтернативных имен субъектов (SAN)
Если у вас несколько доменов, но вы хотите использовать один сертификат, на помощь приходят SAN. Вот как это можно настроить:
server {
listen 80;
server_name domain1.com www.domain1.com domain2.com www.domain2.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name domain1.com www.domain1.com domain2.com www.domain2.com;
ssl_certificate /etc/letsencrypt/live/domain1.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/domain1.com/privkey.pem;
# Additional SSL configuration
# ...
}
В этой статье мы рассмотрели три метода настройки нескольких доменов с помощью Certbot и Nginx. Независимо от того, выбираете ли вы отдельные блоки серверов, групповые сертификаты или сети SAN, цель остается той же: защитить свои домены с помощью SSL. В зависимости от ваших требований и количества управляемых вами доменов вы можете выбрать наиболее подходящий для вас метод.
Помните, что сертификаты SSL играют жизненно важную роль в построении доверия посетителей и повышении безопасности вашего сайта. Выполнив описанные здесь шаги, вы будете на верном пути к созданию безопасной онлайн-среды для своих нескольких доменов.