Certificado
Despliega un servidor HTTPS firmando el mismo certificado tres veces - autofirmado, con una autoridad propia y con Let's Encrypt.
Introducción
En Transport Layer Security has aprendido que TLS hace dos cosas: cifra la conexión y autentica el servidor.
La autenticación la hace un certificado: un documento digital que dice esta clave pública es de xtec.dev.
Pero un documento solo vale lo que vale quien lo firma.
En esta actividad firmarás el mismo certificado tres veces, y cada vez el navegador te dirá algo distinto:
| Quién lo firma | Qué dice el navegador |
|---|---|
| El propio servidor | SEC_ERROR_SELF_SIGNED_CERT |
| Una autoridad que has creado tú | SEC_ERROR_UNKNOWN_ISSUER |
| Let’s Encrypt | 🔒 |
El cifrado es idéntico en los tres casos.
Lo que cambia es la confianza.
Entorno de trabajo
Necesitas una máquina con IP pública y un nombre de dominio, porque Let’s Encrypt debe poder conectarse a ella desde Internet para comprobar que el dominio es tuyo.
Crea una máquina virtual Ubuntu en Virtual Machine.
Conéctate por ssh e instala nginx:
Abre el navegador en la IP pública de la máquina.
Ya tienes un servidor web accesible para todo el mundo en el puerto 80, en una conexión que no está cifrada.
Esto es HTTP.
Desde tu ordenador, pide la página de inicio con curl en modo detallado.
Mostra la solució
* Connected to 20.86.14.7 (20.86.14.7) port 80
> GET / HTTP/1.1
> Host: 20.86.14.7
>
< HTTP/1.1 200 OK
< Server: nginx/1.24.0 (Ubuntu)
< Content-Type: text/html
<
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>La petición, las cabeceras y el documento viajan en texto plano.
Cualquiera que esté en medio del camino puede leerlo.
DNS
Un certificado no autentica una IP: autentica un nombre.
Registra un subdominio gratuito en No-IP y apúntalo a la IP pública de tu máquina:

A partir de ahora tu máquina tiene un nombre, por ejemplo xtec.hopto.org:
|
HTTP/1.1 200 OKEstàs llegint una vista prèvia.
Inicia la sessió amb Google per llegir la pàgina sencera.
Inicia la sessió amb GoogleNomés et demanarem que acceptis les condicions del servei.