У меня есть веб-сайт, работающий успешно на порте Apache 80 HTTP (на временном субдомене).
Я следую этому учебному руководству для установки сертификата SSL на Apache2, использование Ubuntu LetsEncrypt с certbot:
Следующие шаги были выполнены:
sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
sudo apt-get install python-certbot-apache
sudo certbot --apache -d example.com -d www.example.com
Последний шаг перестал работать с a
не авторизованный
сообщение, возможно, потому что сайт находится позади прокси и/или потому что example.com еще не жив (DNS A и записи CNAME еще не установлен, как должно быть быстрым изменением от старого хоста, и веб-сайт уже жив).
Поэтому я должен установить сертификат вручную, прежде чем рекорды DNS будут установлены. Я обнаружил, что certbot имеет a --manual
опция: https://certbot.eff.org/docs/using.html#manual
У меня также есть .cert файл для example.com от LetsEncrypt, если это более полезно?
Однако это - то, где я застреваю и где я не знаю, как продолжить двигаться правильно (да, я имею вполне новичка к установкам сервера).
Можно ли сказать мне, каков следующий шаг (шаги) для установки этого сертификата SSL ручным способом правильно?
Certbot имеет три способа проверить Ваше владение домена к letsencrypt. Два из них (http
и tls-sni
) открывают порт и служат определенной части содержания (http
) или сертификат (tls-sni
); они оба не применимы для Вас начиная с домена (как Вы сказали), не указывает на хост, куда Вы работаете certbot
.
третий путь (dns
) и идеально подходит для Вашего сценария. Заключить в кавычки certbot
документация:
При использовании проблемы DNS, certbot попросит, чтобы Вы поместили запись DNS TXT с определенным содержанием под доменным именем, состоящим из имени хоста, для которого Вы хотите сертификат, выпущенный, предварительно ожидаемый _acme-проблемой. Например, для домена example.com, зональная запись файла была бы похожа:
_acme-challenge.example.com. 300 В TXT "gfj9Xq... Rg85nM"
И именно это необходимо сделать. Выполненный
certbot certonly --manual --preferred-challenges dns -d example.com -d www.example.com
Эта команда должна сделать следующее:
/etc/letsencrypt
Наконец , необходимо добавить конфигурацию сертификата к веб-серверу.