malike 3 Жалоба Опубликовано 3 сентября, 2017 Центр сертификации Let's Encrypt Вы абсолютно бесплатно можете получать SSL сертификаты сроком на 3 месяца а потом их автоматически обновить. И так поехали, ставить это все будем на [root@s4 ~]# uname -a FreeBSD s4 11.1-RELEASE FreeBSD 11.1-RELEASE #0 r321309: Fri Jul 21 02:08:28 UTC 2017 root@releng2.nyi.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64 1. Обновим порты, и установим из портов py27-certbot [root@s4]# portsnap fetch [root@s4]# portsnap update [root@s4]# cd /usr/ports/security/py-certbot/ [root@s4 /usr/ports/security/py-certbot]# make install clean 2. Запустим процедуру получения бесплатного SSL сертификата certbot certonly --agree-tos --email admin@bee-media.ru --webroot -w /usr/local/web/forum.bee-media.ru/www -d forum.bee-media.ru certonly - получаем сертификат, но не устанавливаем его автоматически; --agree-tos - соглашаемся с правилами и условиями сервиса; --email - предоставляем e-mail web мастера, это обязательно; --webroot - подтверждаем право владения доменом через запрос кода по HTTP; -w - путь к контенту сайта для временного размещения кода; -d - домены, которые будет подтверждать данный сертификат. В данном случае, мы выписываем в один сертификат на один домен. Если вы к примеру получаете сертификат на domen.ru и www.domen.ru напишите запрос с 2мя ключи -d к примеру: certbot certonly --agree-tos --email admin@bee-media.ru --webroot -w /usr/local/web/www.bee-media.ru/www -d www.bee-media.ru -d bee-media.ru Let's Encrypt позволяет включить в него до 100 доменов одновременно. 3. Настраиваем nginx для работы с SSL Редактируем конфигурацию nginx [root@s4 /]# mcedit /usr/local/etc/nginx/nginx.conf Приводим конфиг к такому виду: server { listen 443 ssl http2; listen 80; server_name forum.bee-media.ru; root /usr/local/web/forum.bee-media.ru/www/; index index.php index.html index.htm; access_log /usr/local/web/forum.bee-media.ru/logs/access.log main; error_log /usr/local/web/forum.bee-media.ru/logs/error.log; ssl on; ssl_certificate /usr/local/etc/letsencrypt/live/forum.bee-media.ru/fullchain.pem; ssl_certificate_key /usr/local/etc/letsencrypt/live/forum.bee-media.ru/privkey.pem; # GitLab needs backwards compatible ciphers to retain compatibility with Java IDEs ssl_ciphers "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4"; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; ssl_session_timeout 5m; if ( $scheme = "http" ) { rewrite ^/(.*)$ https://$host/$1 permanent; } Перезагружаем NGINX [root@s4 /]# /usr/local/etc/rc.d/nginx resrtart Заходим на ваш сайт https://forum.bee-media.ru и радуемся зеленой надписи "Надежный" 4. Далее настраиваем авто обновление SSL сертификатов по крону. Открываем файл крона [root@s4 /]# mcedit /etc/cron Дописываем в конец, не забываем в конце перейти на новую строчку нажав ENTER 5 1 1 */2 * root /usr/local/bin/certbot renew --post-hook "service nginx restart" Поздравляю теперь у вас сертификат будет обновятся автоматически. Поделиться сообщением Ссылка на сообщение