¿Cómo implementar Trusted SSL Cert en el entorno de desarrollo local?

¿Qué tal tener su entorno de desarrollo local accesible a través de HTTPS sin advertencia SSL??


Como desarrollador, es posible que deba trabajar en múltiples proyectos, clientes y aplicaciones web. Uno de los requisitos previos para el desarrollo de aplicaciones web es probar los sitios web localmente en el navegador durante la fase de desarrollo. Muy alta probabilidad de que la aplicación que está desarrollando esté protegida con un certificado SSL / TLS en un entorno de producción.

De acuerdo?

¿Qué tal si tiene que probar cierta funcionalidad aprovechando la API de terceros que requiere que el origen sea https: //?

Puedes decir un certificado autofirmado y eso no tiene nada de malo. ¿Pero ha intentado acceder al sitio implementado con certificado autofirmado? Seguirá recibiendo advertencias de cert en Chrome y otros navegadores.

Ves el No es seguro Insignia?

No es bueno, cierto?

La mejor manera de tener un certificado SSL válido en el entorno de desarrollo es administrar su propia CA y es posible con mkcert. Una aplicación fácil de implementar que le permite tener un certificado válido en la siguiente dirección web de desarrollo local.

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

Puede implementar mkcert en macOS, Windows, CentOS, Ubuntu y otros sistemas operativos basados ​​en UNIX. El siguiente ejemplo es de Ubuntu.

Primero lo primero, instalemos las herramientas del servicio de seguridad de red que tiene certutil para administrar la base de datos de certificados.

apt-get update
apt-get install libnss3-tools

También es posible que deba asegurarse de que la preparación esté instalada en su servidor. Si no se instala utilizando el siguiente comando.

apt-get install linuxbrew-wrapper

y, finalmente, instale el mkcert usando brew.

brew install mkcert

Nota: para instalar usando brew no debes ser root. y se instala en /home/$USER/.linuxbrew/bin/mkcert

Donde $ USER es el nombre de usuario que usó para instalar

Ahora es el momento de instalar la CA local en el almacén de confianza del sistema.

[correo electrónico protegido]: ~ / mkcert # /home/chandan/.linuxbrew/bin/mkcert -install
Usando la CA local en "/root/.local/share/mkcert" ✨
¡La CA local ahora está instalada en la tienda de confianza del sistema! ⚡️

[correo electrónico protegido]: ~ / mkcert #

Y, a continuación, generar un certificado para el entorno de desarrollo. Supongamos que va a tener su sitio web en example.com y puede usar el siguiente comando para obtener el certificado y el archivo de clave.

[correo electrónico protegido]: ~ / mkcert # /home/chandan/.linuxbrew/bin/mkcert example.com
Usando la CA local en "/root/.local/share/mkcert" ✨

Creó un nuevo certificado válido para los siguientes nombres ��
– "ejemplo.com"

El certificado está en "./example.com.pem" y la clave en "./example.com-key.pem" ✅

[correo electrónico protegido]: ~ / mkcert #

¡Excelente! ahora, tengo un certificado válido y su archivo de clave listo para usar en mi Nginx, Apache u otros servidores web.

Tomemos un ejemplo de un servidor HTTP Apache. Si aún no lo está, habilite el módulo SSL y la configuración.

[correo electrónico protegido]: / etc / apache2 # a2enmod ssl
Teniendo en cuenta la dependencia setenvif para ssl:
Módulo setenvif ya habilitado
Considerando la dependencia mime para ssl:
Módulo mime ya habilitado
Considerando la dependencia socache_shmcb para ssl:
Habilitando el módulo socache_shmcb.
Habilitar módulo ssl.
Consulte /usr/share/doc/apache2/README.Debian.gz sobre cómo configurar SSL y crear certificados autofirmados.
Para activar la nueva configuración, debe ejecutar:
systemctl reiniciar apache2
[correo electrónico protegido]: / etc / apache2 #

Como se sugiere, reinicie el Apache.

En este punto, si netstat notará que Apache ha comenzado con el puerto seguro 443.

[correo electrónico protegido]: / etc / apache2 # netstat -anlp | grep 443
tcp6 0 0 ::: 443 ::: * ESCUCHAR 11616 / apache2
[correo electrónico protegido]: / etc / apache2 #

Pero aún no hemos terminado. Comenzó con el certificado predeterminado (ficticio) y debemos reemplazarlo.

Modifique default-ssl.conf usando el archivo vi y reemplace lo siguiente con la ruta donde ha generado la clave y el archivo cert.

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

Antes de reiniciar Apache, también debe manipular el archivo de hosts para example.com para que se resuelva en su host local en lugar de Internet. Una vez que haya terminado, reinicie el servidor Apache HTTP y acceda a example.com: verá que se está sirviendo un certificado de confianza.

Conclusión

Esto puede ser útil para tener un certificado de confianza en el entorno local. Lo anterior es solo un ejemplo de example.com, pero puede hacerlo para localhost y otros. Si necesita un firmante externo para emitir un certificado, consulte cómo obtenerlo de forma gratuita.

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