Card image cap
Mis Apuntes

Página donde voy subiendo mis apuntes y guías sobre lo que voy aprendiendo y practicando, relacionado con la electrónica, radio, raspberry, arduino....

  • 05/12/2021

    Certificado SSL - OpenWebRX sobre Raspberry Pi.

    Puertos 443 y 80 abiertos

    Bien, como se explicó en la sección de abrir puertos, debemos asegurarnos de tener los puertos 443 y 80 abiertos y apuntando a la IP de nuestra Raspberry.

    Configurar Nginx

    Vamos a decirle a nginx como se llama nuestro dominio. Abrir el archivo de configuración y agregar esta línea server_name TUDOMINIO;

    Podemos poner solo el dominio o un subdominio. Si solo ponemos dominio, abrirá esta web siempre que no encuentre otra configuración con el subdominio especifico, yo en mi ejemplo, pondré sdr.alaro.ovh, ya que en la misma RPI tengo alojada esta web accediendo con www.alaro.ovh

    Accedemos a la configuración con el siguiente comando:

    sudo nano /etc/nginx/sites-available/openwebrx

    Guardamos y salimos con "CONTROL + X" "Y" "ENTER" y reiniciamos Nginx

    sudo systemctl restart nginx

    Instalar Certbot

    sudo apt-get install certbot -y

    Instalar pugin para nginx

    sudo apt-get install python-certbot-nginx -y

    Iniciamos Certbot

    sudo certbot --nginx

    • Nos pide el correo electrónico: Lo introducimos y pulsamos enter
    • Nos pide aceptar los términos: Ponemos "A" y pulsamos enter
    • Nos pide si puede compartir el correo: Al gusto "Y" para si o "N" para no y pulsamos enter
    • Nos solicita a que dominio queremos instalar los certificados: Debemos asegurarnos que en el listado aparece nuestro dominio, el que configuramos en Nginx. Pulsamos Enter
    • Nos solicita si queremos redireccionar el trafico 80 a 443: Pulsamos 2 y Enter
    • Listo, vamos a reiniciar Nginx
      • sudo systemctl restart nginx

    Ya deberíamos tener nuestros certificados listos.

    Automatizar actualización de certificados

    Dado que letsencrypt es un servicio gratuito de certificados SSL, caducan a los pocos meses y hay que actualizarlos, con este paso, programaremos la actualización automática de los mismos. Para ello ejecutamos:

    sudo crontab -e

    Nos solicitará que elijamos editor de texto, tecleamos el número que está entre [corchetes] que es el recomendado (nano) y pulsamos enter, dentro del archivo pegamos la siguiente línea:

    30 2 * * * /usr/bin/certbot renew --renew-hook "service nginx reload"