Let’s Encrypt + Nginx: проверка владения доменом

Тем, кто уже пользуется бесплатными SSL сертификатами от Let’s Encrypt, известно, что при проверке владения доменом необходимо указать корневую директорию сайта, для которого создается сертификат, чтобы letsencrypt мог создать там файл для проверки доступности по http.

Меня немного напрягло то, что стороннее ПО ходит в пользовательские рабочие директории и что-то там создает и удаляет, а кроме того, оставляет после себя созданные каталоги (/.well-known/acme-challenge/). К тому же, для запроса сертификатов приходится каждый раз указывать путь к конкретному сайту (пусть даже при написании скрипта, но сайтов все равно далеко не один-два).

В случае с Nginx во фронтенде эти проблемы решаются просто:
в директории конфигурационных файлов nginx создаем файл letsencrypt.conf, содержащий в себе следующие настройки:

location /.well-known/acme-challenge {
        root /your_validate_dir;
}

далее перегружаем web-сервер по команде service nginx restart, после чего можем смело запрашивать сертификаты, указывая директорию /your_validate_dir в качестве корневой для любого домена/сайта или группы (если создаем групповой сертификат):

/letsencrypt certonly --webroot -w /your_validate_dir -d site.ru


Теги:

Комментарии (0)