1007
правок
Изменения
Создал страницу
== Клиенты ==
Взаимодействие с сервером 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
[[Категория:База знаний]]
Взаимодействие с сервером 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
[[Категория:База знаний]]