Instale el certificado Letsencrypt SSL para Unifi Controller en Raspberry Pi

Una de las preguntas más frecuentes sobre el controlador Unifi es cómo deshacerse del error del certificado cuando abre el controlador y lo entiendo totalmente, es molesto omitir el error/advertencia cada vez que inicia sesión en su controlador.

Entonces, en este artículo, vamos a instalar un certificado SSL de Letsencrypt para nuestro controlador Unifi.

Estoy usando un Rasberry Pi para ejecutar el controlador, por lo que este artículo está escrito principalmente para un Pi.

Letsencrypt y Unifi

Los certificados de Letsencrypt son de uso gratuito, pero deben renovarse cada 90 días.

La renovación se puede automatizar, como le mostraré en este artículo, pero requiere que su controlador sea accesible desde Internet.

Para hacer esto, necesitará un nombre de dominio personalizado que pueda usar para apuntar un subdominio a su controlador local. Además, necesitamos abrir y reenviar un puerto específico en el enrutador.

Antes de continuar, hay algo que debe saber: no podemos crear un certificado para una dirección IP local.

Probablemente esté ejecutando su controlador localmente, por lo que si desea abrir su controlador Unifi, vaya a 192.168.0.201, por ejemplo.

Incluso si hacemos que el controlador sea accesible desde Internet, con unifi.yourdomain.com, entonces, de forma predeterminada, aún no puede acceder a él localmente con un certificado.

No puede abrir unifi.yourdomain.com, porque eso requerirá que haga un cambio de sentido en Internet, lo que no funcionará.

Abrir el controlador desde la dirección IP local seguirá dando una advertencia porque el certificado se emite a unifi.yourdomain.com.

Entradas DNS locales

Pero tenemos una solución para esto, podemos crear una entrada de DNS local. Puede hacer esto localmente en su computadora, cambiando su archivo de host o en su enrutador, creando una entrada DNS estática.

Prefiero el enrutador porque es independiente del dispositivo y funcionará en toda su red, pero tendrá que verificar si es posible con su enrutador.

EdgeRouter de entrada de DNS estático

Si tiene un EdgeRouter, puede crear una ruta DNS estática abriendo su enrutador a través de SSH. Simplemente use Putty o Windows Terminal para esto:

# Open the SSH connection to your EdgeRouter
ssh [email protected]

# Open configure mode
configure

# Add the DNS route. Use the domain name we create later
# Change 192.168.0.201 to the IP Address of your Unifi Controller
set system static-host-mapping host-name <unifi.yourdomain.com> inet 192.168.0.201

commit
save

Cambia tu archivo de host

En Windows, puede agregar fácilmente rutas DNS locales agregándolas a su archivo de host. Deberá abrir el archivo de host con derechos de administrador para guardar los cambios:

  • Abra %windir%\System32\drivers\etc.
  • Abra el archivo hosts
  • Al final del archivo, agregue: 192.168.0.201 unifi.yourdomain.com
  • Guarde y cierre el archivo

Cambie 192.168.0.201 a la dirección IP de su controlador Unifi.

Configurar el reenvío de puertos y el dominio

Entonces, para obtener un certificado, necesitamos un nombre de dominio.

Puede obtener un nombre de dominio por menos de 10€ al año, por ejemplo aquí en NameCheap Ahora no queremos apuntar todo el dominio a nuestro controlador unifi, así que le sugiero que cree un subdominio unifi.sudominio.com y lo apunte a su red local.

Busque su dirección IP pública, aquí en myip.comy crea un Un expediente con el nombre unifi y su dirección IP.

Ahora necesita reenviar y abrir los siguientes puertos en su enrutador. Se necesita el puerto 80 para que LetsEncrypt autentique el certificado SSL.

  • puerto original: 80
  • Protocolo: TCP/UDP
  • Dirección de reenvío: Dirección IP de su controlador Unifi
  • Puerto de reenvío: 80

Si también desea acceder a su controlador Unifi desde Internet, también puede reenviar el siguiente número de puerto.

Pero tenga en cuenta que su controlador solo está protegido con un nombre de usuario y una contraseña. Otro, ahorradorla opción para acceder a su Unifi Controller es usar unifi.ui.com.

  • puerto original: 8443
  • Protocolo: TCP/UDP
  • Dirección de reenvío: Dirección IP de su controlador Unifi
  • Puerto de reenvío: 8443

Si tiene un EdgeRouter, puede habilitar Cortafuegos automáticoel EdgeRouter abrirá el puerto específico en el firewall para usted y luego:

Reenvío de puertos EdgeRouter

Instale el certificado SSL en el controlador Unifi

Con todo listo, podemos comenzar con la instalación del certificado para nuestro Unifi Controller.

  1. Instalar Certbot

    sudo apt-get install certbot

  2. Generar un certificado SSL

    sudo certbot certonly --standalone -d unifi.yourdomain.com

    Deberá ingresar una dirección de correo electrónico para que pueda recibir una notificación cuando necesite renovar (cuando falla la renovación automática), aceptar los términos y aceptar o rechazar la última solicitud.

  3. Descargar script de importación

    Necesitamos importar el certificado Letsencrypt al controlador Unifi. ha creado un script de importación que hace que esto sea mucho más fácil de hacer, así que vamos a usar este script.

    Descarga el script con el siguiente cmd:

    sudo wget https://raw.githubusercontent.com/stevejenkins/unifi-linux-utils/master/unifi_ssl_import.sh -O /usr/local/bin/unifi_ssl_import.sh

    Lo colocamos en /usr/local/bin como recomienda Steve.

  4. Hacer el script ejecutable

    De forma predeterminada, no puede ejecutar el script. Dale los permisos correctos con el siguiente cmd:

    sudo chmod +x /usr/local/bin/unifi_ssl_import.sh

  5. Edite las variables en el script.

    A continuación, debemos editar algunas de las variables de configuración en el script. Abra el guión con

    sudo nano -w /usr/local/bin/unifi_ssl_import.sh

    Agrega tu dominio
    UNIFI_HOSTNAME=unifi.yourdomain.com

    Comente las tres líneas para Fedora/RedHat/Centos colocando un # para ello:
    # Uncomment following three lines for Fedora/RedHat/CentOS
    #UNIFI_DIR=/opt/UniFi
    #JAVA_DIR=${UNIFI_DIR}
    #KEYSTORE=${UNIFI_DIR}/data/keystore

    Descomente las tres líneas para Debian/Ubuntu
    # Uncomment following three lines for Debian/Ubuntu
    UNIFI_DIR=/var/lib/unifi
    JAVA_DIR=/usr/lib/unifi
    KEYSTORE=${UNIFI_DIR}/keystore


    Configure el modo Let’s Encrypt en verdadero:
    Si solo habilita la línea, al eliminar el #, obtendrá un bucle ==Sí al ejecutar el script. Así que configúralo como verdadero. Todavía recibirá una advertencia sobre la falta de[[:peronoimporta[[:butthedoesn’tmatter
    LE_MODE=true

    Guarde y cierre el archivo
    Control + X
    Y
    Ingresar

  6. Ejecute el script de importación

    Ahora podemos importar nuestro nuevo certificado SSL al Unifi Controller. Ejecute el siguiente cmd:

    sudo /usr/local/bin/unifi_ssl_import.sh

    Si obtienes un bucle con == yesprensa ctrl + c y cambio LE_MODE a verdadero (ver paso 5)

  7. Consultar el nuevo Certificado

    El script reiniciará el controlador Unifi. Dale un par de minutos para que comience.
    Si abre su controlador, ahora debería tener un certificado y ya no habrá errores ni advertencias.

  8. Crear el script de actualización

    Cerbot renovará el certificado cada 3 meses. Así que tendremos que importar el certificado también cada 3 meses.

    Crear un nuevo archivo
    sudo nano -w /etc/cron.daily/unifi_ssl_import

    Y agregue el siguiente contenido en él
    #!/bin/bash
    /usr/local/bin/unifi_ssl_import.sh

    Presione Ctrl +X seguido de Y y Enter para guardar y cerrar el archivo.

    Dale al archivo los permisos correctos para que pueda ejecutarse:
    sudo chown root:root /etc/cron.daily/unifi_ssl_import
    sudo chmod +x /etc/cron.daily/unifi_ssl_import

Eso es todo, ahora debería estar configurado con un buen certificado SSL para su Unifi Controller y la molesta advertencia debería desaparecer.

Si tiene alguna pregunta, simplemente deje un comentario a continuación.

Probablemente también quiera encargarse de la copia de seguridad de su controlador Unifi.

De forma predeterminada, se almacena en el propio controlador, pero simplemente puede cargar una copia de la copia de seguridad en Dropbox, por ejemplo. Puedes leer todo al respecto en este artículo.

Otros artículos relacionados

Cómo restablecer Unifi AP a los valores predeterminados de fábrica cuando el botón de reinicio no funciona

Cómo restablecer Unifi AP a los valores predeterminados de fábrica cuando el botón de reinicio no funciona

Así que desea restablecer de fábrica su Unifi AP, pero probablemente el botón de reinicio no parece funcionar. Afortunadamente, hay ...
Leer Más
Cómo crear un TimeLapse de Unifi Protect

Cómo crear un TimeLapse de Unifi Protect

Las cámaras Unifi son excelentes dispositivos versátiles que puede usar en prácticamente cualquier situación. En este caso, necesitaba hacer un ...
Leer Más
Cómo solucionar el error de búsqueda de DHCP en Chromebook y Windows

Cómo solucionar el error de búsqueda de DHCP en Chromebook y Windows

El error Error de búsqueda de DHCP significa que su computadora o Chromebook no puede obtener una dirección IP del ...
Leer Más
Diagrama de red doméstica: explicación de todos los diseños de red

Diagrama de red doméstica: explicación de todos los diseños de red

Un diagrama de red doméstica es un dibujo esquemático de un diseño de red doméstica. Le ayuda a planificar su ...
Leer Más
Todos los comandos SSH de Unifi que desea saber

Todos los comandos SSH de Unifi que desea saber

Aunque los dispositivos Unifi vienen con un excelente controlador, a veces necesita acceder a su dispositivo Unifi a través de ...
Leer Más
Cómo configurar un Edgerouter como cliente VPN

Cómo configurar un Edgerouter como cliente VPN

Los clientes VPN se están volviendo muy populares en los últimos años y por una buena razón. Protegen su privacidad ...
Leer Más

Deja un comentario