En este post te voy a enseñar cómo usar un certificado SSL previamente configurado con Apache para usarlo en un programa de Go. El sitio web de un cliente tenía un servidor con Apache y Let’s encrypt, pero quería que una aplicación de Golang (que escucha en un puerto distinto) usara ese mismo certificado.
Por ello es que hoy vamos a ver cómo reutilizar ese mismo certificado que ya funciona con Apache pero que también queremos usar en otro puerto en una aplicación distinta, sin proxy.
Necesitamos la ubicación de fullchain.pem y privkey.pem, que normalmente están ubicados en /etc/letsencrypt/live/tusitio.com/. Recomiendo navegar a ese directorio y verificar que la ruta es correcta, ajustando la cadena a tu dominio.
Puede que al llegar a ese directorio notes que son enlaces simbólicos; esto es totalmente normal.
Si el certificado SSL ya funciona con Apache, no tienes que mover ninguna otra cosa; ya que la app de Golang va a escuchar en otro puerto y no existirá ninguna interferencia.
Ahora que has localizado el certificado, debes modificar tu app de Go. En mi caso anteriormente se veía así sin certificado:
servidor := &http.Server{
Handler: enrutador,
Addr: ":8888",
WriteTimeout: 15 * time.Second,
ReadTimeout: 15 * time.Second,
}
fmt.Printf("Servidor iniciado en http://localhost%s", PuertoServidor)
log.Fatal(servidor.ListenAndServe())
Y ahora se ve así:
servidor := &http.Server{
Handler: enrutador,
Addr: ":8888",
WriteTimeout: 15 * time.Second,
ReadTimeout: 15 * time.Second,
}
fmt.Printf("Servidor iniciado en http://localhost%s", PuertoServidor)
log.Fatal(servidor.ListenAndServeTLS("/etc/letsencrypt/live/tusitio.com/fullchain.pem", "/etc/letsencrypt/live/tusitio.com/privkey.pem"))
Con eso debería funcionar sin problemas. Ahora puedes acceder a https://tusitio.com para tu sitio normal con Apache, y a https://tusitio.com:8888 para tu aplicación con Golang; ambos usando el mismo certificado de Let’s encrypt.
Solo no te olvides de darle a tu app los permisos necesarios, tanto en la lectura de archivos como en el firewall.
El día de hoy vamos a ver cómo restablecer la impresora térmica GOOJPRT PT-210 a…
Hoy voy a enseñarte cómo imprimir en una impresora térmica conectada por USB a una…
En este post voy a enseñarte a programar un servidor web en Android asegurándonos de…
En este post te quiero compartir un código de C++ para listar y cancelar trabajos…
Gracias a WebAssembly podemos ejecutar código de otros lenguajes de programación desde el navegador web…
Revisando y buscando maneras de imprimir un PDF desde la línea de comandos me encontré…
Esta web usa cookies.