Как внедрить Trusted SSL Cert в локальную среду разработки?

Как насчет того, чтобы ваша локальная среда разработки была доступна через HTTPS без предупреждения SSL?


Как разработчику, вам, возможно, придется работать над несколькими проектами, клиентами и веб-приложениями. Одной из предпосылок для разработки веб-приложений является локальное тестирование веб-сайтов в браузере на этапе разработки. Очень высокая вероятность того, что разрабатываемое вами приложение будет защищено сертификатом SSL / TLS в производственной среде..

Согласен?

Как насчет того, если вам нужно протестировать определенную функциональность, используя сторонний API, который требует, чтобы источник был https: //?

Вы можете сказать самоподписанный сертификат, и в этом нет ничего плохого. Но вы пытались получить доступ к самозаверяющему сертификату на сайте? Вы по-прежнему получите предупреждение о подтверждении на Chrome и других браузерах.

Вы видите Не является безопасным значок?

Не хорошо, верно?

Лучший способ получить действительный сертификат SSL в среде разработки – это управлять собственным ЦС, и это возможно с mkcert. Простой в реализации, который позволяет вам иметь действующий сертификат по следующему локальному веб-адресу разработки.

  • example.com
  • * .example.com
  • example.test
  • локальный
  • 127.0.0.1
  • :: 1

Вы можете реализовать mkcert в macOS, Windows, CentOS, Ubuntu и других ОС на основе UNIX. Следующий пример из Ubuntu.

Прежде всего, давайте установим инструменты службы сетевой безопасности, которые имеют certutil для управления базой данных сертификатов..

apt-get update
apt-get установить libnss3-tools

Возможно, вам также понадобится убедиться, что на вашем сервере установлена ​​машина. Если не установить с помощью следующей команды.

apt-get установить linuxbrew-wrapper

и, наконец, установите mkcert, используя brew.

заваривать установить mkcert

Примечание: для установки с помощью brew вы не должны быть пользователем root. и он устанавливается в /home/$USER/.linuxbrew/bin/mkcert

Где $ USER – это имя пользователя, которое вы использовали для установки

Теперь пришло время установить локальный ЦС в хранилище доверенных сертификатов системы..

[Электронная почта защищена]: ~ / mkcert # /home/chandan/.linuxbrew/bin/mkcert -install
Использование локального центра сертификации в "/root/.local/share/mkcert" ✨
Локальный центр сертификации теперь установлен в хранилище доверенных сертификатов системы! ⚡️

[Электронная почта защищена]: ~ / 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
Учитывая зависимость setenvif для 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 ::: * СЛУШАТЬ 11616 / apache2
[Электронная почта защищена]: / И т.д. / apache2 #

Но мы еще не закончили. Он начался с сертификата по умолчанию (фиктивный), и мы должны заменить его.

Измените default-ssl.conf, используя файл vi, и замените следующий путь на путь, по которому вы сгенерировали ключ и файл сертификата..

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

Прежде чем перезапускать Apache, вам также необходимо манипулировать файлом hosts для example.com, чтобы он разрешался на вашем локальном хосте, а не в Интернете. Как только вы закончите, перезапустите сервер Apache HTTP и зайдите на 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