Лінійка

SSL SSL SSL -сертифікат для NGINX

SSL SSL SSL -сертифікат для NGINX

У цій статті ми розглянемо, як налаштувати безкоштовний сертифікат TLS/SSL. Ми покажемо, як випустити сертифікат для одного домену (або сертифікат SSL Wildecard для всіх субдоменів), налаштуйте сертифікати автоматичного продажу.

Зміст:

Встановлення CERTBOT - Клієнт Давайте шифруємо в Linux

Ми будемо випущені сертифікат CERTBOT, щоб випустити сертифікат Let's Encrypt. Для встановлення бота потрібно використовувати утиліту Оснащення, Якщо у вас його немає, встановіть:

#Yum встановити snapd -y

Після встановлення Snapd він повинен бути доданий як сервіс і створити симолін для зручності запуску:

# SystemCtl Увімкнути - тепер snapd.Розетка
# Ln -s/var/lib/snapd/snap/snap

Тепер ви можете встановити certbot:

# Sudo snap install -classic certbot

Все також для зручності початку, ми створимо Simlink:

# Ln -s/snap/bin/certbot/usr/bin/certbot

Випуск сертифіката SSL для NGINX

Щоб випустити сертифікат SSL для сайту, запустіть команду:

# Certbot certonly - nginx

Утиліта перевірить конфігурацію NGINX та видасть усі сайти, на яких можна встановити сертифікат (утиліта отримує список сайтів із конфігурації Nginx). У цьому процесі бот вимагатиме від вас дані, електронної пошти, доменів тощо.

У моєму випадку є лише один домен, і я вибрав його. Якщо у вас немає проблем з DNS-рекордами домену та веб-сервером, то сертифікат SSL повинен випускати без помилок.

Встановлення сертифікату SSL Letcrypt на веб -сайті NGINX

Щоб сертифікат SSL заробляє на вашому сайті, вам потрібно використовувати наступний файл конфігурації Nginx для вашого домену:

Сервер Слухай 443 SSL HTTP2; Server_name дозволяє.Конструкція.RU; Root/var/www/lets.Конструкція.RU; Індекс індексу.Індекс PHP.Індекс HTML.Htm; Access_log/var/www/build-tivos.Інформація/log/ssl-expess.Головний журнал; Error_log/var/www/build centos.Інформація/журнал/SSL-Surror.журнал; Keepalive_Timeout 60; Ssl_certificate/etc/letsencrypt/live/build centos.Інформація/fullchain.PEM; Ssl_certicate_key/etc/letsencrypt/live/build centos.Інформація/привію.PEM; Ssl_protocols tlsv1 tlsv1.1 TLSV1.2; SSL_CIPHERS 'ECDHE -RSA-AES128-GCM-SHA256: ECDHE-ECDSA-AS128-GCM-SHA256: ECDHE -RSA-AAS256-GCM-SHA384: ECDHE-ECDSA-AES256 -GCM-SHAM-SHAL3884: Dhe-Shal3888888884: Dhe-Shal3888 SHAL3888884: DHE-SHAL38888884888888888LAY SHA256: DHE-DSS-AES128-GCM-SHA256: KEDH+AESGCM: EcDhe -rsa-AES128-SHA256: ECDHE-ECDSA-AAS128-SHA: ECDHE-AAS128-SHA: ECDHE-ECDSA-ACDSA-ACDSA -Acdsa-acdsa-acdsa-acdsa-acdsa-acdsa-acdsa-acdsa-acdsa-acdsa-acdsa-acdsa-acdsa-acdsa-acdsa-acdsa-acdsa-acdsa-acdsa-acdsa-acdsa-acdsa-acdsa -Acdsa-acdsa RSA-AES256-SHA384: ECDHE-ECDSA-AES256-SHA384: ECDHE -RSA-AES256-SHA: ECDHE-ECDSA-AIS256-SHA: DHE -RSA-AAS128-SHA256: DHE -RS-ASESA-ASHA: DHE: DHE: DHE: DHE: DHE: DHE AES128-SHA256: DHE -RSA-AES256-SHA256: DHE-DS-AES256-SHA: DHE -RSA-AES256-SHA: AES128-GCM-SHA256: AES256-GCM-SHA384 : AES1256: AES256-SHAA256: AES1256: AES256: AES256: AES256 SHA: AES256-SHA: AES: Camellia: DES-CBC3-SHA:!Anull:!Енул:!Експорт:!Des:!RC4:!MD5:!PSK:!AECDH:!EDH-DSS-DES-CBC3-SHA:!EDH -RS-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA '; Add_header Stickt-transport-Security 'max-ege = 604800'; Місцезнаходження / try_files $ uri $ uri / / index.PHP?$ args;  Розташування ~* ^.+.(js | css | png | jpg | gif | ico | woff) $ access_log off; Закінчується Макс;  Місцезнаходження ~ \.Php $ try_files $ uri = 404; Fastcgi_pass unix:/var/run/php-fpm/php-fpm.Шкарпетка; Індекс fastcgi_index.PHP; Fastcgi_param document_root/var/www/lets.Конструкція.RU; Fastcgi_param script_filename/var/www/lets.Конструкція.ru/$ fastcgi_script_name; Fastcgi_param path_transladed/var/www/lets.Конструкція.ru/$ fastcgi_script_name; Включіть fastcgi_params; Fastcgi_param query_string $ query_string; Fastcgi_param request_method $ request_method; Fastcgi_param contype $ content_type; Fastcgi_param content_length $ content_length; Fastcgi_param https on; fastcgi_intercept_errors on; fastcgi_ignore_client_abort off; fastcgi_connect_timeout 60; fastcgi_send_timeout 180; Fastcgi_read_timeout 180; fastcgi_buffer_size 128k; Fastcgi_buffers 4 256k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k;  Розташування = /Фавікон.Ico log_not_found off; Access_log OFF;  Розташування = /Роботи.txt дозволити всім; log_not_found off; Access_log OFF;  Місцезнаходження ~ /\.ht заперечувати всі; 

Збережіть файл конфігурації. Ми перевіряємо обґрунтованість налаштувань у файлі конфігурації Nginx:

[Root@letsencrypt]# nginx -t

Nginx: файл конфігурації/etc/nginx/nginx.Conf Syntax - це нормально nginx: файл конфігурації/etc/nginx/nginx.Конф -тест є успішним

Відновити веб -сервер NGINX:

# Перезавантаження nginx

Тепер, якщо ви відкриєте сайт на протоколі HTTPS у браузері, відображається значок безпечного з'єднання.

Якщо натиснути на значок сертифіката, ви можете отримати повну інформацію про це:

Для завантажених PHP-сайтів на Nginx ви можете використовувати купу з PHP-FPM.

Безкоштовні сертифікати SSL Wildcard Давайте шифруємо для субдоменів

Щоб випустити підстановку, давайте шифруйте сертифікат для всіх субдоменів, використовується інша команда. Крім того, у налаштуваннях DNS вашого домену потрібно створити спеціальний TXT-Record. Щоб випустити сертифікат підстановки для субдоменів, у каталозі/opt/letsencrypt/запустити команду:

# Certbot run -a посібник -i nginx -d *.дозволяє.Конструкція.ru

Після запуску команди вам потрібно буде пройти всю процедуру перевірки домену, включаючи, вам потрібно буде створити спеціальний запис TXT в DNS.

Не натискайте "введіть", поки ви не переконаєтесь, що запис доступний у глобальних DNS. На панелі реєстратора домену створіть тип запису DNS Tpxt TXT з іменем _Acme-mhallenge і значення, скопійована з консолі Certbot.

Зачекайте, щоб оновити інформацію в DNS, натисніть кнопку Enter та сертифікат SSL Wildcard буде успішно випущений:

Каталог зберігання сертифікатів та ключів у цьому випадку відрізняється від того, в якому сертифікат розміщений для основного домену.

Перевірте, чи працює сертифікат на тесті на субдомен.Конструкція.RU:

Як видно з скріншота, сертифікат випускається правильно та дійсним для всіх субдоменів.

Розширення сертифікатів Encrypt

Давайте сертифікати шифрування видаються протягом 90 днів, рекомендується розширювати ці сертифікати кожні 60 днів.

Щоб перемогти застарілий сертифікат SSL, давайте шифруємо, використовується команда:

# /Certbot revene-сухий

Якщо ви запустите команду відразу після випуску сертифікатів, буде повідомлення про те, що сертифікат не потребує повторного випуску:

Cert не належить до поновлення

Щоб розширити сертифікат SSL, давайте шифрування виконується автоматично, потрібно додати завдання до Cron:

00 00 *].журнал
15 00 * * 6/usr/bin/systemctl перезавантажити nginx

Ця робота з кронами намагатиметься розширити сертифікат щосуботи та виконувати м'яке перезавантаження веб -сервера NGINX. Усі кроки для повторного випуску сертифікатів SSL будуть виправлені у файлі журналу /var/log/le -Renew.журнал.

Усі журнали шифрування зберігаються в каталозі /var/log/letsencrypt.

Таким чином, ми встановлюємо безкоштовний сертифікат SSL Давайте шифруємо на нашому веб -сайті, що працює над Nginx.

Давайте шифруємо безкоштовні сертифікати також можна використовувати для сайтів IIS.
Топ -9 програм розпізнавання програми
Можливості для читання та редагування матеріалів в Інтернеті величезна кількість. Оскільки багато файлів розподіляються по мережі без можливості редаг...
Як виключити будь -яку програму настільних ПК з функції блокування непридатних шрифтів у Windows 10
Оскільки шрифт, завантажений з третіх партій, може становити загрозу для безпеки, розробники реалізували розширену функцію блокування безпринципних шр...
Як приховати навігаційну панель діалогу Windows у Windows 10 Відкриті та зберегти
Діалогове вікно відкриття та збереження файлів - одне з основних елементів управління в Windows 10. Цікаво, але протягом усієї історії Windows він пра...