Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия Следующая версия Следующая версия справа и слева | ||
letsencrypt:letsencrypt [2019-01-31 14:59] GreyWolf |
letsencrypt:letsencrypt [2020-09-03 21:51] GreyWolf |
||
---|---|---|---|
Строка 5: | Строка 5: | ||
Проект Let’s Encrypt создан для того, чтобы большая часть интернет-сайтов смогла перейти к шифрованным подключениям (HTTPS). В отличие от коммерческих центров сертификации, в данном проекте не требуется оплата, переконфигурация веб-серверов, использование электронной почты, обработка просроченных сертификатов, что делает процесс установки и настройки TLS-шифрования значительно более простым. Например, на типичном веб-сервере на базе Linux, требуется исполнить две команды, которые настроят HTTPS шифрование, получат и установят сертификат примерно за 20-30 секунд. | Проект Let’s Encrypt создан для того, чтобы большая часть интернет-сайтов смогла перейти к шифрованным подключениям (HTTPS). В отличие от коммерческих центров сертификации, в данном проекте не требуется оплата, переконфигурация веб-серверов, использование электронной почты, обработка просроченных сертификатов, что делает процесс установки и настройки TLS-шифрования значительно более простым. Например, на типичном веб-сервере на базе Linux, требуется исполнить две команды, которые настроят HTTPS шифрование, получат и установят сертификат примерно за 20-30 секунд. | ||
- | Пакет с утилитами автонастройки и получения сертификата включён в официальные репозитарии дистрибутива [[debian:debian|Debian]]. Разработчики популярных браузеров, Mozilla и Google намерены постепенно отказаться от поддержки незашифрованного протокола HTTP путём отказа от поддержки новых веб-стандартов для http-сайтов. | + | Пакет с утилитами автонастройки и получения сертификата включён в официальные репозитории дистрибутива [[debian:debian|Debian]]. Разработчики популярных браузеров, Mozilla и Google намерены постепенно отказаться от поддержки незашифрованного протокола HTTP путём отказа от поддержки новых веб-стандартов для http-сайтов. |
https://letsencrypt.org/ | https://letsencrypt.org/ | ||
Строка 31: | Строка 31: | ||
Примеры файлов [[apache:examples#let_s_encrypt|здесь]]. | Примеры файлов [[apache:examples#let_s_encrypt|здесь]]. | ||
+ | |||
+ | ===== Debian 9 (stretch) ===== | ||
+ | |||
+ | - Устанавливаем необходимые пакеты: <code bash>apt-get install certbot python-certbot-apache</code> | ||
+ | - Настраиваем [[apache:apache|]]: <code bash>certbot --apache</code> | ||
+ | |||
+ | |||
+ | Проверка: | ||
+ | * Список сертификатов и возможность их обновления (automatic renewal) <code bash>certbot renew --dry-run</code> | ||
+ | * Данные о задании автообновления <code bash>systemctl list-timers grep certbot.timer</code> | ||
+ | |||
+ | ---- | ||
+ | |||
+ | https://certbot.eff.org/lets-encrypt/debianstretch-apache | ||
===== Debian 8 (jessie) ===== | ===== Debian 8 (jessie) ===== | ||
[[https://certbot.eff.org/#debianjessie-apache|CertBot: Apache on Debian 8 (jessie)]] | [[https://certbot.eff.org/#debianjessie-apache|CertBot: Apache on Debian 8 (jessie)]] | ||
+ | <hidden Debian 8 (jessie)> | ||
1. Устанавливаем необходимые пакеты: | 1. Устанавливаем необходимые пакеты: | ||
<code bash> | <code bash> | ||
Строка 73: | Строка 88: | ||
https://www.ssllabs.com/ssltest/analyze.html?d=wiki.yola.ru | https://www.ssllabs.com/ssltest/analyze.html?d=wiki.yola.ru | ||
</code> | </code> | ||
+ | </hidden> | ||
===== Debian 7 (wheezy) ===== | ===== Debian 7 (wheezy) ===== | ||
Строка 79: | Строка 95: | ||
[[https://certbot.eff.org/#debianwheezy-apache|Apache on Debian 7 (wheezy)]] | [[https://certbot.eff.org/#debianwheezy-apache|Apache on Debian 7 (wheezy)]] | ||
- | FIXME | + | {{anchor:mailservers}} |
+ | ====== Почтовые серверы ====== | ||
+ | Использование сертификатов для почтовых серверов: | ||
+ | * [[dovecot:dovecot#letsencrypt|Dovecot]] | ||
+ | * [[postfix:postfix#letsencrypt|Postfix]] | ||
+ | |||
+ | Тестирование: | ||
+ | <code bash> | ||
+ | openssl s_client domain.ru:443 | ||
+ | openssl s_client -starttls smtp -connect domain.ru:587 | ||
+ | </code> | ||
+ | |||
+ | ---- | ||
+ | |||
+ | [[https://rusua.org.ua/2017/03/10/sertifikaty-letsencrypt-i-postfixcourier-popimap/|Сертификаты Let’sEncrypt и Postfix,Courier-pop/imap или Dovecot | Блокнот обычного админа =)]] | ||
====== Обновление сертификата ====== | ====== Обновление сертификата ====== | ||
Поскольку сертификат Let's Encrypt выдаётся на 90 дней, нужно настроить автоматическое обновление сертификата. | Поскольку сертификат Let's Encrypt выдаётся на 90 дней, нужно настроить автоматическое обновление сертификата. | ||
Строка 106: | Строка 136: | ||
</code> | </code> | ||
+ | ====== Замена файлов ключа после обновления ====== | ||
+ | Замена файлов ключа в [[apache:apache|Apache]]: | ||
+ | <code bash apache-ssl_keys-change.sh> | ||
+ | #!/bin/bash | ||
+ | prefix='domain.ru' # префикс | ||
+ | file_private='privkey.pem' # имя файла ключа | ||
+ | file_cert='cert.pem' # имя сертификата | ||
+ | path1=/etc/letsencrypt/live/ # путь к исходным файлам | ||
+ | path2_private=/etc/ssl/private/ # путь конечным файлам private | ||
+ | path2_cert=/etc/ssl/certs/ # путь конечным файлам cert | ||
+ | |||
+ | file1_private=$path1$prefix/$file_private # полный путь и имя исходного ключа | ||
+ | file1_cert=$path1$prefix/$file_cert # полный путь и имя исходного сертификата | ||
+ | file2_private=$path2_private$prefix"_"$file_private # полный путь и имя конечного ключа | ||
+ | file2_cert=$path2_cert$prefix'_'$file_cert # полный путь и имя конечного сертификата | ||
+ | |||
+ | |||
+ | cp -f $file1_cert $file2_cert | ||
+ | cp -f $file1_private $file2_private | ||
+ | chmod 0600 $file2_private | ||
+ | |||
+ | service apache2 reload | ||
+ | |||
+ | </code> | ||
====== TLS-SNI-01 validation is reaching end-of-life ====== | ====== TLS-SNI-01 validation is reaching end-of-life ====== | ||
FIXME | FIXME | ||
Строка 165: | Строка 219: | ||
[[http://www.opennet.ru/opennews/art.shtml?num=48255|opennet.ru: Проект Let's Encrypt ввёл в строй протокол ACMEv2 и поддержку масок]] | [[http://www.opennet.ru/opennews/art.shtml?num=48255|opennet.ru: Проект Let's Encrypt ввёл в строй протокол ACMEv2 и поддержку масок]] | ||
+ | [[https://upcloud.com/community/tutorials/secure-postfix-using-lets-encrypt/|How to secure Postfix using Let's Encrypt - UpCloud]] | ||
+ | |||
+ | |||
+ | **[[https://wiki.calculate-linux.org/ru/lets_encrypt|wiki.calculate-linux: Let's Encrypt - получение бесплатного сертификата]]** | ||
{{tag>Encryption}} | {{tag>Encryption}} |