Бесплатный ssl сертификат на 3 года
Если не желаете платить за ssl сертификат, а защитить свой сайт хочется, то можно получить бесплатный сертификат от wosign.com
- Регистрируемся по ссылке https://buy.wosign.com/free/
-
Для получения srt на сервере нужно выполнить команду (mydomain.com можно заменить на ваш домен)
openssl req -out mydomain.com.csr -new -sha256 -newkey rsa:2048 -nodes -keyout mydomain.com.key
- Также понадобиться почта webmaster@mydomain.com, самый простой способ ее получить это Почта для домена от Яндекс http://pdd.yandex.ru/
- После подтверждения почты и домена можно будет скачать архив с сертификатами
- Закидываем mydomain.com.crt и mydomain.com.key на сервер (для nginx)
-
Получаем промежуточные сертификаты (вначале нужно указать путь к папке с сертификатами)
cd /path/to/your/ssl/ wget -O - https://www.startssl.com/certs/ca.pem | tee -a ca-certs.pem > /dev/null wget -O - https://www.startssl.com/certs/sub.class1.server.ca.pem | tee -a ca-certs.pem > /dev/null wget -O - http://aia.startssl.com/certs/ca.crt | openssl x509 -inform DER -outform PEM | tee -a ca-certs.pem > /dev/null wget -O - http://aia1.wosign.com/ca1g2-server1-free.cer | openssl x509 -inform DER -outform PEM | tee -a ca-certs.pem > /dev/null wget -O - http://aia6.wosign.com/ca6.server1.free.cer | openssl x509 -inform DER -outform PEM | tee -a ca-certs.pem > /dev/null
- Для bitrix-окружения нужно включить поддержку https для домена
- Дописываем в конфиг nginx и перезагружаем его (service nginx restart)
# SSL encryption parameters ssl on; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA'; ssl_stapling on; ssl_stapling_verify on; ssl_prefer_server_ciphers on; ssl_certificate /etc/nginx/ssl/mydomain.com.crt; ssl_certificate_key /etc/nginx/ssl/mydomain.com.key; ssl_trusted_certificate "/etc/nginx/ssl/ca-certs.pem"; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; resolver 8.8.8.8 8.8.4.4 valid=300s; resolver_timeout 5s; add_header Strict-Transport-Security "max-age=31536000;";
Готово, теперь Ваш сайт работает по протоколу https.
UPD: Google Chrome заблокировал сертификаты WoSign и StartCom, стоит задуматься над переходом на https://letsencrypt.org/. Инструкция тут https://habrahabr.ru/post/306128/
Есть вопросы или нашли ошибку? Напишите комментарий (можно без регистрации), отвечать стараюсь быстро.