Сначала необходимые детали:
ОС - Ubuntu 16.04 LTS System: цифровая капля океана
Я попытался настроить самозаверяющий сертификат для проверки SSL с помощью Let's Encrypt. Либо в спешке, либо по недоразумению, мое обычное имя было установлено в качестве моей командной строки вместо имени домена. я использовал https://sslshopper.com чтобы оценить ситуацию, в которой я обнаружил несоответствие. Я искал средства от этого, но пока не нашел ни одного, которое помогло бы. Я также заметил, что существует вероятность выдачи слишком большого количества справок, что может привести к длительной недействительности.
Мои вопросы:
Вы не перестраиваете свой сервер из-за неправильного сертификата SSL, вы выпускаете другой сертификат. Однако в данном случае, я думаю, вы ошиблись.
Для выдачи сертификата Let's Encrypt вам не нужен http-сертификат. Это сделало бы почти невозможным получить сертификат, поставив телегу впереди лошади. Let's Encrypt подключается к вашему серверу с помощью http для подтверждения владения.
Вот моя конфигурация Nginx, которую я использую для Let's Encrypt, которая хорошо работает в течение нескольких лет. Я не определяю правило, которое делало бы то же самое в https, поэтому я знаю, что http работает. У меня нет конфигурации Apache, которой я мог бы поделиться, но в сети будет много примеров.
# Redirect all variations to https://www domain, other than let's encrypt validation
server {
listen 80;
server_name example.com www.example.com;
# Let's Encrypt certificates with Acmetool
location /.well-known/acme-challenge/ {
alias /var/www/.well-known/acme-challenge/;
}
location / {
return 301 https://www.photographerstechsupport.com$request_uri;
}
}
Let's Encrypt ограничивает вас 20 живых сертификатов в неделю. Также есть LE постановочная среда что позволяет выдавать 30 000 сертификатов в неделю. Лучший подход - использовать промежуточную среду во время тестирования, а затем переключиться на выпуск действующего сертификата.