Как получить сертификат Let’s Encrypt в ручном режиме

На данный момент инсталлятор Let’s Encrypt, со слов авторов проекта, может автоматически исправлять конфигурацию только Apache. Поддержка nginx и других HTTP-серверов находится в разработке. Тем не менее, это не помешает вам получить сертификат.

Если у вас уже работает какой-то веб-сервер, то инсталлятор следует запустить с ключом --webroot. Ключ certonly указывает, что мы только хотим получить сертификат. Ключом -w мы сообщаем расположение корневой папки сайта.

Так же следует перечислить домены, на которых работает сайт, с помощью ключа -d.

Через несколько секунд вы получите сообщение о том, что сертификат получен и его можно использовать.

Работающий веб-сервер нужен инсталлятору, чтобы подтвердить ваше право владения доменом. Если вы ещё не настраивали его, то инсталлятор может сам запустить такой временный сервер на 80 или 443 порту.

Это делается с помощью ключа --standalone.

В отличие от режима webroot, в режиме standalone можно не указывать домены в командной строке.

Инсталлятор запросит их позже в диалоговом окне.

Все генерированные ключи и выпущенные сертификаты лежат в папке /etc/letsencrypt/live/$domain.

  • privkey.pem — приватный ключ. Он должен всё время храниться в секрете. Это тот файл, который указывается в опции SSLCertificateKeyFile у Apache или в опции ssl_certificate_key у nginx.
  • cert.pem – сертификат для домена. Этот файл указывается в опции SSLCertificateFile у Apache.
  • chain.pem — цепочка из промежуточных и корневого сертификатов центра сертификации. Путь до этого файла указывается в опции SSLCertificateChainFile у Apache.
  • fullchain.pem — Все сертификаты в одном файле, включая сертификат для домена. Данный файл нужно указать в опции ssl_certificate у nginx.