Изменения

Перейти к: навигация, поиск

Let's Encrypt

2843 байта добавлено, 01:37, 23 января 2016
Создал страницу
== Клиенты ==
Взаимодействие с сервером Let's Encrypt происходит посредством протокола ACME. Кроме официального клиента [https://github.com/letsencrypt/letsencrypt letsencrypt] существует большое количество сторонних реализаций. Список клиентов Let's Encrypt можно посмотреть на странице [https://community.letsencrypt.org/t/list-of-client-implementations/2103 List of Client Implementations].

== Пример использования ==
Здесь мы рассмотрим получение сертификата через клиент [https://github.com/Neilpang/le le], написанный на Bash.

Предполагается, что сервер работает под Ubuntu 14.04, используется nginx в качестве web-сервера, и действия выполняются от root'а.

Во-первых, мы должны склонировать репозиторий -- допустим, в каталог <code>/opt/le</code>:

$ git clone https://github.com/Neilpang/le.git /opt/le

Далее необходимо выполнить установку:

$ cd /opt/le
$ ./le.sh install

Установщик создаёт каталог <code>~/.le</code> и копирует в него <code>le.sh</code>, создаёт символьную ссылку <code>/bin/le -> ~/.le/le.sh</code> и добавляет в cron текущего пользователя (в нашем случае, root'а) задание по проверке сертификата и обновления его, если это требуется.

Теперь мы можем получить наш сертификат:

# Название домена, для которого необходим сертификат:
$ export DOMAIN=example.ru

# Длина ключа:
$ export KEY_LEN=2048

# Путь к файлу сертификата (публичного ключа):
$ export CERT_FILE_PATH=/etc/ssl/cert/${DOMAIN}.cert

# Путь к файлу (закрытого) ключа:
$ export KEY_FILE_PATH=/etc/ssl/private/${DOMAIN}.key

# Путь к сертификату центра сертификации Let's Encrypt:
$ export CA_CERT_FILE_PATH=/etc/ssl/certs/ca-letsencrypt.cert

# Команда перезапуска web-сервера (выполняется после обновления
# сертификата, скажем, по cron'у):
$ export RELOAD_CMD="service nginx restart"

$ le issue no \
$DOMAIN $DOMAIN $KEY_LEN \
$CERT_FILE_PATH \
$KEY_FILE_PATH \
$CA_CERT_FILE_PATH \
$RELOAD_CMD

[[Категория:База знаний]]

Навигация