Это руководство поможет вам настроить автоматическую установку и обновление сертификата с SSL.com для Apache и Nginx с протоколом ACME и клиентом Certbot.
sudo
на вашем веб-сервере, чтобы следовать этим инструкциям.Вы можете использовать множество других клиентов ACME, в том числе Сертификат-менеджер Kubernetes, с помощью службы ACME SSL.com.
acme4j клиент теперь может использовать службы SSL.com ACME в этом репозитории: https://github.com/SSLcom/acme4j
Инструкции для других клиентов ACME, отличных от Certbot, см. в документации поставщика программного обеспечения.
Установите Certbot и получите учетные данные ACME
- SSH на ваш веб-сервер.
- Убедитесь, что текущая версия Certbotвместе с плагинами Apache и Nginx установлены на вашем веб-сервере:
- Если вы только что Snapd установлен, вы можете использовать эту команду для установки:
sudo snap install --classic certbot
- If
/snap/bin/
не в твоемPATH
, вам также потребуется добавить его или выполнить такую команду:sudo ln -s / оснастка / bin / certbot / usr / bin / certbot
- Если вы только что Snapd установлен, вы можете использовать эту команду для установки:
- Получите свои учетные данные ACME из своей учетной записи SSL.com:
- Войдите в свою учетную запись SSL.com. Если вы уже вошли в систему, перейдите в Аккаунт меню.
- Нажмите учетные данные API, расположенный под разработчики и интеграция.
- Вам понадобятся ваши Аккаунт / ключ ACME и Ключ HMAC запрашивать сертификаты. Щелкните значок буфера обмена () рядом с каждым ключом, чтобы скопировать значение в буфер обмена.
- Войдите в свою учетную запись SSL.com. Если вы уже вошли в систему, перейдите в Аккаунт меню.
Установка и автоматизация Apache
Используйте такую команду для установки на Apache. Замените значения ВСЕГО ЗАГЛАВНЫМИ буквами своими фактическими значениями:
sudo certbot --apache --email АДРЕС ЭЛЕКТРОННОЙ ПОЧТЫ --agree-tos --no-eff-email --config-dir /etc/ssl-com --logs-dir /var/log/ssl-com --eab -kid АККАУНТ-КЛЮЧ --eab-hmac-key HMAC-KEY --server https://acme.ssl.com/sslcom-dv-ecc -d ДОМЕН.ИМЯ
Нарушение команды:
sudo certbot
управляетcertbot
команда с привилегиями суперпользователя.--apache
указывает на установку сертификатов для использования с Apache.--email EMAIL-ADDRESS
предоставляет регистрационный адрес электронной почты. Вы можете указать несколько адресов через запятую.--agree-tos
(необязательно) соглашается с подписным соглашением ACME. Вы можете опустить это, если хотите согласиться в интерактивном режиме.--no-eff-email
(необязательно) означает, что вы не хотите делиться своим адресом электронной почты с EFF. Если вы его опустите, вам будет предложено поделиться своим адресом электронной почты.--config-dir /etc/ssl-com
(необязательно) устанавливает каталог конфигурации.--logs-dir /var/log/ssl-com
(необязательно) устанавливает каталог для журналов.--eab-kid ACCOUNT-KEY
указывает ключ вашей учетной записи.--eab-hmac-key HMAC-KEY
указывает ваш ключ HMAC.--server https://acme.ssl.com/sslcom-dv-ecc
указывает сервер ACME SSL.com.-d DOMAIN.NAME
указывает доменное имя, на которое распространяется сертификат.
- Изменить
--server
значение в команде дляhttps://acme.ssl.com/sslcom-dv-rsa
.
-d DOMAIN.NAME
опцию несколько раз в вашей команде, чтобы добавить доменные имена в ваш сертификат. Пожалуйста, смотрите нашу информацию на типы сертификатов и биллинг чтобы увидеть, как различные комбинации доменных имен соответствуют Типы сертификатов SSL.com и их соответствующие цены.certbot
, информация об учетной записи ACME будет сохранена на вашем компьютере в каталоге конфигурации (/etc/ssl-com
в команде, показанной выше. В будущих запусках certbot вы можете опустить --eab-hmac-key
и --eab-kid
параметры, потому что certbot проигнорирует их в пользу локально сохраненной информации об учетной записи.
Если вам нужно связать заказы на сертификаты ACME для компьютера с другой учетной записью SSL.com, вам следует удалить эту информацию учетной записи со своего компьютера с помощью команды sudo rm -r /etc/ssl-com/accounts/acme.ssl.com
(или, если вы пропустили необязательный --config-dir
вариант, sudo rm -r /etc/letsencrypt/accounts/acme.ssl.com
).
После выполнения команды вы должны увидеть такой вывод:
Сохранение журнала отладки в /var/log/ssl-com/letsencrypt.log Выбранные плагины: Authenticator apache, Installer apache Получение нового сертификата Выполнение следующих задач: запрос http-01 для DOMAIN.NAME Ожидание проверки ... Устранение проблем Создан виртуальный хост SSL в /etc/apache2/sites-available/DOMAIN-le-ssl.conf Развертывание сертификата на VirtualHost /etc/apache2/sites-available/DOMAIN-le-ssl.conf Включение доступного сайта: / etc / apache2 / sites-available / DOMAIN-le-ssl.conf Перенаправление vhost в /etc/apache2/sites-enabled/DOMAIN.NAME.conf на ssl vhost в /etc/apache2/sites-available/DOMAIN-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Поздравляем! Вы успешно включили https://DOMAIN.NAME - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Certbot также создаст такой файл crontab для автоматического неинтерактивного обновления любого установленного certbot сертификата, срок действия которого истекает в течение 30 дней:
$ cat /etc/cron.d/certbot # /etc/cron.d/certbot: записи crontab для пакета certbot # # Upstream рекомендует пытаться продлить дважды в день # # В конце концов, это будет возможность проверить сертификаты # haven ' t был отозван и т. д. Продление будет происходить только в том случае, если срок # истекает в течение 30 дней. # # Важная заметка! Это задание cron НЕ будет выполнено, если # вы используете systemd в качестве системы инициализации. Если вы используете systemd, # функция cronjob.timer имеет приоритет перед этим заданием cron. Для # более подробной информации см. Справочную страницу systemd.timer или используйте systemctl show # certbot.timer. ОБОЛОЧКА = / bin / sh ПУТЬ = / usr / local / sbin: / usr / local / bin: / sbin: / bin: / usr / sbin: / usr / bin 0 * / 12 * * * root test -x / usr / bin / certbot -a \! -d / run / systemd / system && perl -e 'sleep int (rand (43200))' && certbot -q обновить
Установка и автоматизация Nginx
Для Nginx просто замените --nginx
для --apache
в команде, показанной выше:
sudo certbot --nginx --email АДРЕС ЭЛЕКТРОННОЙ ПОЧТЫ --agree-tos --no-eff-email --config-dir /etc/ssl-com --logs-dir /var/log/ssl-com --eab -kid АККАУНТ-КЛЮЧ --eab-hmac-key HMAC-KEY --server https://acme.ssl.com/sslcom-dv-ecc -d ДОМЕН.ИМЯ
- Изменить
--server
значение в команде дляhttps://acme.ssl.com/sslcom-dv-rsa
.
Принудительное продление вручную
Если вы хотите обновить сертификат вручную до того, как истечет срок его действия, используйте эту команду:
certbot Renew --force-Renewal --cert-name DOMAIN.NAME
SSL.com предоставляет широкий выбор SSL /TLS сертификаты сервера для сайтов HTTPS.