Генерация подстановочного SSL в Ubuntu Nginx и замена просроченного SSL (сертификат и ключ)

Я пытаюсь создать подстановочный сертификат Let's Encrypt SSL с помощью Certbot на моем экземпляре Nginx Ubuntu AWS EC2.

Ubuntu: 16.04.5 LTS

Nginx: v1.10.3

В настоящий момент я не могу сгенерировать SSL с подстановочными знаками, поскольку получаю сообщение об ошибке:

Произошла непредвиденная ошибка:

Ошибка при создании нового заказа:: DNS-имя не имеет достаточного количества ярлыков

Я просмотрел распространенные причины этой ошибки, и в моем запросе нет ничего неправильного:

cerbot -dry-run --nginx -d *.my-domain.org.uk

(Я получаю ту же ошибку при запуске команды для my-domain.org.uk, а не только для *.)

Я считаю, что ошибка может быть связана с моей конфигурацией Nginx.

В '/ etc / nginx /' у меня есть «сайты-доступные» и «сайты-включенные», каждый из которых имеет файл «по умолчанию» и файл «my-domain.org.uk».

В nginx.conf я включаю:

access_log /var/log/nginx/access.log;

error_log /var/log/nginx/error.log;

Поэтому внутри 'sites-enabled / default' у меня обычная конфигурация с сервером 443:

server {
     listen 443 ssl; # managed by Certbot
     server_name *.my-domain.org.uk;
     root /www/html/public;
     ... etc.

Этот файл также включает ссылки на мой SSL с истекшим сроком действия:

ssl_certificate / etc / nginx / ssl / sitename / sitename .cer;

ssl_certificate_key / etc / nginx / ssl / sitename / sitename .key;

А также некоторые биты конфигурации Certbot:

включить /etc/letsencrypt/options-ssl-nginx.conf; # под управлением Certbot

ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # под управлением Certbot

Если я закомментирую ссылку на просроченные сертификаты SSL и перезапущу Nginx, сайт сломается. Я мог бы опубликовать больше конфигурационного файла, но это всегда работало, как и в прошлом (и работает сейчас, только со сломанным HTTPS). Я не уверен, что

Не уверен, что мне нужно сделать, чтобы обойти эти ошибки Certbot и сгенерировать мой шаблон SSL.


person Twentyonehundred    schedule 01.07.2019    source источник
comment
Я считаю, что ошибка может быть связана с моей конфигурацией Nginx. Вряд ли. Ошибка произошла при отправке заказа в Let's Encrypt, что происходит до процедуры проверки, на которой Nginx будет принимать участие в учете. Также это не очень связано с программированием, так что здесь оффтоп.   -  person Patrick Mevzek    schedule 01.07.2019
comment
Какая это версия Cerbot? Убедитесь, что вы уверены, что ACMEv2 API, см. Каталог конфигурации LetsEncrypt (или используйте параметр --server), а также посмотрите его файл журнала, чтобы получить дополнительную информацию об ошибке. Также вам нужна проверка DNS для подстановочных сертификатов, поэтому Nginx или любой другой веб-сервер не будет учитываться. См. community.letsencrypt.org/t /   -  person Patrick Mevzek    schedule 01.07.2019
comment
Я не совсем уверен, как проверить версию certbot, но я снова запустил программу установки, чтобы дважды проверить. Я понимаю, что это вряд ли проблема конфигурации Nginx, поскольку проблема возникла раньше; имеет смысл. Но я вообще не могу сказать, что такое ошибка «DNS-имя не имеет достаточного количества меток» или что ее вызывает.   -  person Twentyonehundred    schedule 02.07.2019
comment
certbot --version, чтобы узнать его версию.   -  person Patrick Mevzek    schedule 03.07.2019
comment
Так что я этого не заметил, но ответ был довольно прост. -dry-run должно быть --dry-run. Без двойных дефисов он воспринимал его как -d и после этого пытался интерпретировать URL-адрес, что приводило к ошибке меток.   -  person Twentyonehundred    schedule 04.07.2019
comment
Действительно хороший улов. Преобразуйте свой комментарий в ответ и примите его, чтобы закрыть вопрос.   -  person Patrick Mevzek    schedule 04.07.2019


Ответы (1)


Ответом была простая синтаксическая ошибка.

-dry-run должен быть --dry-run. Без двойных дефисов он выбирал начало -dry.. как -d и пытался интерпретировать URL после этого, что приводило к ошибке меток.

person Twentyonehundred    schedule 05.07.2019