Это архивная статья, для старых версих панели управления CWP. Находится здесь для истории:)
Let’s Encrypt - это новый центр сертификации, который легко позволяет получить и установить бесплатный TLS/SSL сертификат для Вашего сайта.
Рассмотрим подробней процесс выпуска и установки SSL-сертификата для сайта на сервераз под управлением панели Control Web Panel.
Важное примечание: для успешного процесса выпуска сертификата, домен, для которого он будет выпускаться, должен уже быть направленным (в настройках DNS по А-записи) и быть добавленным на сервере, с которого будет совершаться выпуск сертификата. Так же необходимо создать почтовый ящик на домене вида administrator@домен, так как он в будущем может понадобится.
1. Сперва, установим на сервере Let's Encrypt Client. Для этого, после подключения к серверу по ssh выполним следующую команду:
cd /root && git clone https://github.com/letsencrypt/letsencrypt
2. Далее устанавливаем необходимые для дальнейшей работы библиотеки и компоненты:
а) устанавливаем EPEL репозиторий:
rpm -ivh https://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
б) устанавливаем pip:
yum install python-pip
в) устанавливаем virtualenv:
pip install virtualenv
3. Теперь приступим к непосредственному выпуску самого сертификата. Выполняем:
cd /root/letsencrypt/ && ./letsencrypt-auto certonly --email [email protected]
--agree-tos --renew-by-default --webroot -w /home/pro/public_html -d pro100tech.ml -d www.pro100tech.ml && cp -f /etc/letsencrypt/live/pro100tech.ml/fullchain.pem /etc/pki/tls/certs/
pro100tech.ml
.cert && cp -f /etc/letsencrypt/live/
pro100tech.ml
/privkey.pem /etc/pki/tls/private/
pro100tech.ml
.key && cp -f /etc/letsencrypt/live/
pro100tech.ml
/chain.pem /etc/pki/tls/certs/
pro100tech.ml
.bundle
, где:
[email protected] - почтовый ящик на домене (соответственно, вместо pro100tech.ml вводите свой домен; предварительно не забудьте создать такой ящик);
/home/pro/public_html - путь к корневой папке сайта на сервере (заменяете на свой);
-d pro100tech.ml - домен, для которого устанавливается сертификат (заменяете на свой).
-d www.pro100tech.ml - необходимо указать для распространения сертификата на домен с www.
Далее в строке приведенной Выше команды везде заменяете pro100tech.ml на свой домен.
По завершению установки получаем следующее сообщение:
Congratulations! Your certificate and chain have been saved at
/etc/letsencrypt/live/pro100tech.ml/fullchain.pem. Your cert will
expire on 2016-07-20. To obtain a new version of the certificate in
the future, simply run Let's Encrypt again.
4. Далее, в панели управления Control Web Panel переходим в меню Apache Settings => SSl Cert Manager
Далее в первом поле из выпадающего списка выбираем файлы сертификата для нашего домена, во втором - пользователя сайта и в поле Domain вводим имя домена, для которого выполнялся выпуск сертификата и нажимаем на кнопку Install SSL.
После завершения установки получаем следующее сообщение об успешной установке сертификата:
После этого проверяем работу сайта по https-протоколу:
Обратите внимание, что после установки сертификата так же нужно будет в файлах и базе данных сайта заменить все ссылки на контент сайта с http на https-ссылки для корректной работы защищенного соединения. Так же для автоматического перенаправления http-ссылок на https при переходе к сайту нужно настроить соответствующее перенаправление в файле .htaccess.
Теперь добавляем следующее cron-задание для автоматического обновление сертификата (добавить новое cron-задание можете через панель управления в меню Server settings - Crontab или непосредственно в консоли при помощи команды crontab -e : вводим crontab -e далее нажимаем i для перехода в режим редактирования, вводим указанную ниже команду, нажимаем Esc и вводим x! для сохранения данных) :
01 3 1 * * cd /root/letsencrypt/ && ./letsencrypt-auto certonly --email [email protected] --agree-tos --renew-by-default --webroot -w /home/pro/public_html/ -d pro100tech.ml && cp -f /etc/letsencrypt/live/pro100tech.ml/fullchain.pem /etc/pki/tls/certs/pro100tech.ml.cert && cp -f /etc/letsencrypt/live/pro100tech.ml/privkey.pem /etc/pki/tls/private/pro100tech.ml.key && cp -f /etc/letsencrypt/live/pro100tech.ml/chain.pem /etc/pki/tls/certs/pro100tech.ml.bundle
Не забудьте заменить домен и пути на свои собственные.
Протестировать сертификат можете на следующем ресурсе - https://www.ssllabs.com/ssltest
Для улучшения оценки и повышения безопасности https-соединения открываем файл /usr/local/apache/conf.d/vhosts-ssl.conf и после строки SSLCertificateChainFile с новой строки добавляем следующие записи:
SSLProtocol All -SSLv2 -SSLv3
SSLCompression Off
SSLHonorCipherOrder On
SSLCipherSuite "EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH+aRSA!RC4:EECDH:!RC4:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS"
Сохраняем изменения в файле и перезапускаем apache :
/etc/init.d/httpd restart
Тестируем снова. После данных правок оценка была повышена с C до А.