Установка SSL-сертификата Let's Encript для кириллического домена на Apache
Процесс установки описан здесь Установка SSL Lets Encript из командной строки на Nginx
Содержание
Замечания
- на 25.03.2017 Let's Encript поддерживает кириллические домены
- название домена надо вводить Пуникодом
- почту админа (требуется в процессе регистрации) надо указывать на латинском домене например admsite@yandex.ru, почта вида admin@ИмяДомена.рф пока не принимается.
- имя сайта пуникодом необходимо будет добавить
- Добавлять в SSLсертификат домен www.ИмяДомена.рф не стоит, имеет смысл сделать перенаправление на ИмяДомена.рф
Установка
Устанавливаем клиент Let’s Encrypt на сервер
Подключаемся к серверу по SSH. И переходим, например, в домашнюю директорию:
cd /home/
В нее мы установим клиент Let’s Encrypt. Для этого нам понадобится git, если у вас на сервере уже установлен git, то просто выполните следующие команды:
sudo git clone https://github.com/letsencrypt/letsencrypt cd letsencrypt
Если у вас не установлен git, то либо установите его следующей командой:
sudo apt-get install git
Либо просто распакуйте zip архив из репозитория GitHub:
wget https://github.com/letsencrypt/letsencrypt/archive/master.zip unzip master.zip mv letsencrypt-master letsencrypt cd letsencrypt
Устанавливаем скачанный клиент letsencrypt, для чего запускаем установочный скрипт:
./letsencrypt-auto --help
После установки клиента letsencrypt, и сопутствующего ПО, в конце появится страница с описанием справки по клиенту letsencrypt.
Все, клиент Let’s Encrypt установлен.
Создаем SSL сертификат для HTTPS протокола на сайт
Перейдем к созданию сертификата Let’s Encrypt. Для этого сначала необходимо остановить веб-сервер Apache:
sudo service apache2 stop
и запустить команду создания SSL сертификата, не забудьте поменять доменное имя site.com на свое.
В процессе создания сертификата, вам предложат ввести электропочту админа (кириллические домены почты пока не поддерживаются так что придётся ввести почту на яндексе), для важных сообщений и для восстановления ключа при необходимости. Далее нужно будет согласиться с лицензионным соглашением.
./letsencrypt-auto certonly --standalone -d site.com -d www.site.com
Для кириллического домена его имя необходимо указать в пуникоде, например так (для сайт.рф -> xn--80aswg.xn--p1ai ):
./letsencrypt-auto certonly --standalone -d xn--80aswg.xn--p1ai -d www.xn--80aswg.xn--p1ai
или если без под домена www:
./letsencrypt-auto certonly --standalone -d xn--80aswg.xn--p1ai
В случае успешного создания сертификата для HTTPS протокола вы соответствующее сообщение.
Созданный SSL сертификат и вся цепочка сохранится по следующему пути:
/etc/letsencrypt/live/site.com/
или для кириллического домена :
/etc/letsencrypt/live/xn--80aswg.xn--p1ai/
Файлы SSL сертификата
В /etc/letsencrypt/live/site.com/ будут следующие файлы:
- privkey.pem - приватный ключ для сертификата. В Apache он используется в директиве SSLCertificateKeyFile. В Nginx используется в директиве ssl_certificate_key.
- cert.pem - сертификат сервера. Его требует директива Apache SSLCertificateFile.
- chain.pem - связка всех сертификатов, которые обслуживаются браузером, за исключением cert.pem. 'Используется [[Apache[[ SSLCertificateChainFile.
- fullchain.pem - вся связка сертификатов (объединение chain.pem и cert.pem). Используется в Nginx для ssl_certificate.
Вот мы и получили сертификат. Не забудьте запустить Apache:
sudo service apache2 start
Ссылки
- проверка SSL сертификатов домена, поддерживает кириллические домены
- проверка SSL сертификатов домена, кириллические домены д.б. в пуникоде
Яндекс | Картинки | Видео | Карты | Карты ОСМ | Спутник | Гугл | Вольфрам-Альфа | РуВики | EnWiki