Asume que ya tienes una cuenta en DuckDNS y que ya has instalado Alpine. Una guía para instalación aquí.
-
Instalamos CURL con
apk add curl
. -
Creamos el directorio ~/duckdns con
mkdir ~/duckdns
. -
Creamos un archivo duck.sh dentro del nuevo directorio con
vi ~/duckdns
. -
Hay que añadir el siguiente token al archivo con VI, naturalmente con los datos de tu dominio:
echo url="https://www.duckdns.org/update?domains=exampledomain&token=a7c4d0ad-114e-40ef-ba1d-d217904a50f2&ip=" | curl -k -o ~/duckdns/duck.log -K -
Esto se puede complicar bastante, dependiendo del cliente de SSH que uses. Desde Windows PowerShell en Windows 10, simplemente entrando en el modo edición de VI con
i
, pulsando botón derecho del ratón, se pegará el código.Luego es cuestión de salir con
ESC
y luego:wq
para que se guarden los cambios.Un
cat duck.sh
debería mostrar el contenido del archivo que acabamos de guardar. -
Cambiamos los permisos del archivo con
chmod 700 duck.sh
-
Hora de meterlo en un CRON Job. Como no manejo CRON con frecuencia, este enlace explica bien todo lo que hay que saber al respecto.
-
Meteremos el trabajo en el CRONTAB de admin asi que ejecutamos
sudo crontab -e
. -
Pegamos un comentario y el código del trabajo:
# Ejecutamos acutalizacion de duckdns cada 5 mins */5 * * * * /home/miUsuario/duckdns/duck.sh >/dev/null 2>&1 * */12 * * * rm -rf /home/miUsuario/duckdns/duck.log >/dev/null 2>&1
De esta forma actualizaremos el cron cada 5 minutos (por si hay algún corte de conexión), y borraremos el log cada 12h, por si acaso se nos olvida y crece a lo loco.
Si no te aclaras o te da pereza existe un crontab generator que es muy útil para vagos.
-