Як вручну встановити сертифікат SSL для веб-сайту дуже корисно, коли у нас є розміщений веб-сайт без cPanel / VestaCP. підручник призначений для NGINX, і для налаштування потрібен доступ root HTTPS.
Купріни
How To
- Як вручну встановити сертифікат SSL (HTTPS Підключення) для веб-сайту, розміщеного на сервері NGINX без cPanel або VestaCP
- 1. Створіть CSR (запит на підписання сертифіката)
- 2. Купити сертифікат SSL і отримати файли .crt і .ca-bundle.
- 3. Завантажте файли сертифікатів на сервер через FTP / SFTP.
- 4. Налаштуйте NGINX для HTTPS – Додавання сертифікатів SSL.
- 5. Перевірте конфігурацію NGINX і перезапустіть після встановлення сертифіката вручну SSL
Я казав в статтю минулого місяця як все більше і більше веб-сайтів перейшли на безпечні з'єднання HTTPS і Firefox Quantum це перший веб-переглядач, який запускає червоне завантаження HTTP-сайтів як небезпечних для користувачів.
Залишаючи осторонь ідею, яка почала вкорінюватися в головах багатьох, наприклад сайти без HTTPS було б небезпечним і повним вірусів, а ті з HTTPS чисті як сльоза (до речі, абсолютно помилкова ідея), багато адміністраторів серверів і сайтів змушені зробити цей перехід від HTTP до протоколу HTTPS.
Перехід від Протокол HTTP at HTTPS передбачає покупку сертифікат SSL або використання сертифікату, наданого проектом безкоштовно Давай шифрувати, Після покупки сертифіката SSLСлід встановлено на серверіто веб-сайт налаштований для перемикання з http:// на https://.
Як вручну встановити сертифікат SSL (HTTPS Підключення) для веб-сайту, розміщеного на сервері NGINX без cPanel або VestaCP
Давайте крок за кроком розглянемо, як встановити сертифікат SSL на сервері з NGINX.
користувачі cPanel або VestaCP вони мають під рукою у спеціальних полях інтерфейсу керування, де вони можуть встановлювати та встановлювати сертифікати SSL, Для користувача, який доступний лише командного рядка з його серверної консолі SSH, речі ускладнюються трохи. Йому доведеться це зробити завантажити в сертифікати si налаштувати NGINX для перемикання з HTTP на HTTPS.

1. Створіть CSR (запит на підписання сертифіката)
Ви входите на сервер, на якому розміщено веб-сайт, який ви хочете активувати HTTPS і запустіть наступний командний рядок. Бажано в /etc/nginx/ssl.
openssl req -new -newkey rsa:2048 -nodes -keyout numedomeniu.key -out numedomeniu.csr
Переважно це ім'я файлів .key і .crt щоб вказати доменне ім’я, для якого ви збираєтеся їх використовувати. Якщо з часом ви будете використовувати кілька, знайте, який і звідки він.
Нарешті, у папці, де був виконаний командний рядок, ви отримаєте два файли. domainname.csr та domainname.key,
2. Купити сертифікат SSL і отримати файли .crt і .ca-bundle.
У нашому випадку я купив ПозитивнийSSL Багатодоменний сертифікат від COMODOЧерез NAMECHEAP.COM. Після процесу покупки ви отримаєте електронний лист, у якому необхідно активувати сертифікат SSL. Введіть у запит на підтвердження доменне ім’я, для якого використовується сертифікат, та інші дані, включені у форму. Він також попросить вас увійти Код КСВ згенеровано вище. Ви, очевидно, можете знайти його у файлі "domainname.csr". Біжи "кішка numedomeniu.csr”Щоб мати можливість скопіювати вміст.
В кінці вас буде запропоновано це зробити Підтвердження доменного імені для якого використовується сертифікат. У вас є більше методи перевірки, Найпростіший і найшвидший - на адреса електронної пошти, зроблена за іменем домену.
Після того, як ви пройдете цей крок, через кілька хвилин вам має прийти електронний лист із прикріпленим архівом, що містить два файли. сертифікат SSL (наприклад, 113029727.crt) і файл на зразок 113029727.ca-bundle.
3. Завантажте файли сертифікатів на сервер через FTP / SFTP.
Завантажте файли з пункту 2 на сервер туди ж, де є файли з пункту 1, і об’єднайте вміст файлів: domainname.csr і 113029727.ca-bundle в один файл. наприклад, ssl-домен.crt.
Нарешті, у щойно створеному файлі ssl-домен.crt повинні бути три коди сертифікатів, перший в файлі 113029727.crt.
4. Налаштуйте NGINX для HTTPS – Додавання сертифікатів SSL.
Наступним кроком є налаштувати NGINX для HTTPS.
Якщо ви вже налаштували його для HTTP, вам слід додати лише наступні рядки до файлу конфігурації nginx домену:
server {
listen 80;
server_name numedomeniu.tld www.numedomeniu.tld;
rewrite ^ https://$server_name$request_uri permanent;
}
server {
listen 443 ssl;
server_name numedomeniu.tld www.numedomeniu.tld;
ssl on;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS;
ssl_certificate /etc/nginx/ssl/ssl-domeniu.crt;
ssl_certificate_key /etc/nginx/ssl/numedomeniu.key;
ssl_prefer_server_ciphers on;
На рядках "ssl_certificate"І"ssl_certificate_key"Ви повинні пройти точний шлях на сервері до двох файлів. Лінія "rewrite”Є робити постійне перенаправлення з http на https, тому немає ризику дублювання сайту на HTTP та HTTPS.
5. Перевірте конфігурацію NGINX і перезапустіть після встановлення сертифіката вручну SSL
Перш ніж перезапускати службу nginx, добре перевірити a nginx.conf.
nginx -t
Якщо з результатом тесту nginx все в порядку, перезапустіть службу.
systemctl restart nginx
або
service nginx restart
Залежно від CMS, які ви використовуєте на веб-сайті: WordPress, Drupal, Magento, Joomla, Prestashop тощо CMS, вам потрібно буде налаштувати базу даних та інші файли, щоб мати дійсний веб-сайт. HTTPS.
Якщо ми скажемо, що на веб-сторінці є зображення, шлях до якого починається з "http: //", ця сторінка буде недійсною HTTPS, а в адресному рядку веб-браузера не буде індикатора блокування.