Як впровадити надійний сертифікат SSL у місцевому середовищі розробників?

Як щодо того, щоб ваше місцеве середовище розвитку було доступно через HTTPS без попередження SSL?


Як розробник, можливо, вам доведеться працювати над кількома проектами, клієнтами та веб-додатками. Однією з передумов розробки веб-додатків є тестування веб-сайтів на веб-переглядачі на етапі розробки. Дуже високий шанс, що програма, яку ви розробляєте, буде захищена SSL / TLS сертифікатом у виробничих умовах.

Погодьтеся?

Як щодо того, якщо вам доведеться протестувати певну функціональність, використовуючи сторонній API, який вимагає https: //?

Ви можете сказати самопідписаний cert, і в цьому немає нічого поганого. Але ви спробували отримати доступ до сайту, що реалізує сертифікат cert? Ви все одно отримаєте попередження щодо веб-переглядача Chrome та інших веб-переглядачів.

Чи бачите ви Не безпечно знак?

Не добре, правильно?

Найкращий спосіб мати дійсну SSL-серт у середовищі розробки – це керування власним ЦА та можливим його використанням mkcert. Простий у здійсненні, який дозволить вам мати дійсний сертифікат на наступній веб-адресі локальної розробки.

  • example.com
  • * .example.com
  • example.test
  • localhost
  • 127.0.0.1
  • :: 1

Ви можете реалізувати mkcert в macOS, Windows, CentOS, Ubuntu та інших ОС на основі UNIX. Наступний приклад – з Ubuntu.

Перш за все, давайте встановимо інструменти служби мережевої безпеки, які мають певні функції управління базою даних сертифікатів.

apt-get update
apt-get install libnss3-tools

Вам також може знадобитися переконатися, що заварка встановлена ​​на вашому сервері. Якщо не встановити за допомогою наступної команди.

apt-get встановити linuxbrew-обгортку

і, нарешті, встановіть mkcert за допомогою варіння.

варити встановити mkcert

Примітка: для встановлення за допомогою brew ви не повинні мати корінь. і він встановлюється в /home/$USER/.linuxbrew/bin/mkcert

Де $ USER – це ім’я користувача, яке ви використовували для встановлення

Тепер прийшов час встановити локальний ЦС в магазині системного довіри.

[захищено електронною поштою]: ~ / mkcert # /home/chandan/.linuxbrew/bin/mkcert -встановити
Використання місцевого ЦА за адресою "/root/.local/share/mkcert" ✨
Місцевий CA зараз встановлений у системному довіреному магазині! ⚡️

[захищено електронною поштою]: ~ / mkcert #

А далі, генеруйте сертифікат для середовища розробки. Скажімо, ви матимете свій веб-сайт на example.com, і ви можете скористатися наступною командою, щоб отримати сертифікат і файл ключа.

[захищено електронною поштою]: ~ / mkcert # /home/chandan/.linuxbrew/bin/mkcert example.com
Використання місцевого ЦА за адресою "/root/.local/share/mkcert" ✨

Створено новий сертифікат, дійсний для таких імен ��
– "example.com"

Сертифікат знаходиться за адресою "./example.com.pem" і ключ на "./example.com-key.pem" ✅

[захищено електронною поштою]: ~ / mkcert #

Чудово! Тепер у мене є дійсний сертифікат і його ключ-файл, готовий до використання на моїх Nginx, Apache або інших веб-серверах.

Візьмемо приклад HTTP-сервера Apache. Якщо цього ще немає, увімкніть модуль і конфігурацію SSL.

[захищено електронною поштою]: / etc / apache2 # a2enmod ssl
Враховуючи коефіцієнт залежності для ssl:
Модуль setenvif вже ввімкнено
Розглядаючи mime залежності для ssl:
Модуль mime вже ввімкнено
Враховуючи залежність socache_shmcb для ssl:
Увімкнення модуля socache_shmcb.
Увімкнення модуля ssl.
Див. /Usr/share/doc/apache2/README.Debian.gz про те, як налаштувати SSL та створити самопідписані сертифікати.
Щоб активувати нову конфігурацію, потрібно запустити:
systemctl перезапустити apache2
[захищено електронною поштою]: / тощо / apache2 #

Як було запропоновано, перезапустіть Apache.

У цей момент, якщо ви будете netstat, ви помітите, що Apache почався із захищеного порту 443.

[захищено електронною поштою]: / etc / apache2 # netstat -anlp | grep 443
tcp6 0 0 ::: 443 ::: * LISTEN 11616 / apache2
[захищено електронною поштою]: / тощо / apache2 #

Але, ми ще не закінчили. Він розпочався зі стандартного (фіктивного) сертифікату, і нам потрібно це замінити.

Змініть default-ssl.conf за допомогою файлу vi та замініть наступне на шлях, де ви створили файл ключа та cert.

SSLCertificateFile /root/mkcert/example.com.pem
SSLCertificateKeyFile /root/mkcert/example.com-key.pem

Перед перезапуском Apache вам також доведеться маніпулювати файлом хостів для example.com, щоб він вирішився для вашого localhost замість Internet. Після завершення перезапустіть HTTP-сервер Apache та перейдіть на сторінку example.com – ви побачите, що подається довірений сертифікат.

Висновок

Це може бути зручно мати довірений сертифікат у місцевому середовищі. Наведене вище – лише приклад example.com, але ви можете зробити для localhost та інших. Якщо вам потрібен зовнішній підписант, щоб оформити сертифікат, то дізнайтеся, як отримати це безкоштовно.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map