Gestionar la configuración de su router MikroTik es crucial para garantizar la estabilidad y seguridad de su red. En este artículo, nos centraremos en una estrategia clave: la automatización de respaldos mediante un servidor FTP. Esta práctica no solo simplifica el proceso de respaldo, sino que también asegura que siempre tengan acceso a versiones recientes de su configuración en caso de eventos inesperados. Les invito a seguir leyendo para descubrir cómo implementar respaldos automáticos en su MikroTik y aprovechar al máximo esta valiosa herramienta de administración.
Instalemos un servidor FTP
Antes de realizar nuestros respaldos y los scripts necesarios para automatizar estos mismos, necesitamos montar un servidor FTP en nuestro PC o Servidor, Windows o Linux. Como yo soy usuario de Windows, se los mostraré de esta manera.
Ciertamente, hay mil maneras diferentes de configurar un servidor FTP; sin embargo, esta opción me parece sencilla y cumple con lo que necesito, que es utilizar el protocolo para transferir archivos.Creamos un usuario, una ruta por defecto para recibir nuestros archivos, y listo.
Creamos el Script para respaldos
Define una variable local llamada nombre y le asigna el valor "respaldo.rsc", que será el nombre del archivo de respaldo.
:local nombre "respaldo.rsc";
Obtiene la fecha y hora actual del reloj del sistema y almacena el resultado en la variable local fechaHoraActual.
:local fechaHoraActual [/system clock get date];
Extrae el año, mes y día de la variable fechaHoraActual utilizando la función [:pick]. Los resultados se almacenan en las variables locales anio, mes, y dia, respectivamente.
:local anio [:pick $fechaHoraActual 7 11];
:local mes [:pick $fechaHoraActual 0 3];
:local dia [:pick $fechaHoraActual 4 6];
Formatea la fecha utilizando las variables locales anio, mes, y dia, concatenándolas con guiones en el formato "YYYY-MM-DD". El resultado se almacena en la variable local fechaFormateada.
:local fechaFormateada ($anio . "-" . $mes . "-" . $dia);
Construye el nombre completo del archivo de respaldo concatenando la fecha formateada y el nombre del archivo. El resultado se almacena en la variable local file.
:local file ($fechaFormateada . "_" . $nombre);
Exporta la configuración actual del router a un archivo, utilizando el nombre generado dinámicamente almacenado en la variable "file". La opción "compact" asegura que solo se exporten las configuraciones que difieren de la configuración predeterminada de RouterOS. Esto no solo reduce el tamaño del archivo exportado, sino que también se centra exclusivamente en las configuraciones específicas que han experimentado cambios.
/export compact file=$file;
Utiliza la herramienta fetch para cargar el archivo de respaldo al servidor FTP con la dirección IP 192.168.1.1, el nombre de usuario mi_usuario, la contraseña mi_contraseña, y la opción upload=yes para realizar la carga.
/tool fetch address=192.168.1.1 src-path=$file user=mi_usuario password=mi_contraseña mode=ftp dst-path=$file upload=yes
Para generar este script solo basta con copiarlo y pegarlo en tu Router.
/system script add name=respaldos owner=admin policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive source=":local nombre \"respaldo.rsc\";\r\n:local fechaHoraActual [/system clock get date];\r\n:local anio [:pick \$fechaHoraActual 7 11];\r\n:local mes [:pick \$fechaHoraActual 0 3];\r\n:local dia [:pick \$fechaHoraActual 4 6];\r\n:local fechaFormateada (\$anio . \"-\" . \$mes . \"-\" . \$dia);\r\n:local file (\$fechaFormateada . \"_\" . \$nombre);\r\n/export compact file=\$file;\r\n/tool fetch address=192.168.1.1 src-path=\$file user=mi_usuario password=mi_contraseña mode=ftp dst-path=\$file upload=yes"
Asegúrate de reemplazar "192.168.1.1", "mi_usuario" y "mi_contraseña" con la dirección IP y las credenciales reales de tu servidor FTP.
La magia sucede aquí: Scheduler
Scheduler en MikroTik se utiliza para programar la ejecución automática de un script en momentos específicos o a intervalos regulares. En el contexto del script que hemos estado discutiendo, se desea programar la ejecución del script de respaldo de manera regular.
/system scheduler add name=respaldo_diario interval=1d start-time=03:00:00 on-event="/system script run respaldos" comment="Ejecutar respaldos diarios a las 03:00 AM"
- /system scheduler add: Agrega una nueva entrada al programador del sistema.
- name=respaldo_diario: Asigna un nombre al scheduler, en este caso, "respaldo_diario".
- interval=1d: Establece el intervalo de ejecución en 1 día.
- start-time=03:00:00: Indica la hora de inicio del scheduler, en este caso, a las 03:00 AM.
- on-event="/system script run respaldos": Especifica la acción que se realizará cuando se active el scheduler. En este caso, ejecutará el script llamado "respaldos".
- comment="Ejecutar respaldos diarios a las 03:00 AM": Proporciona un comentario descriptivo para recordar el propósito del scheduler.
Y llegamos al final
Si has seguido los pasos anteriores correctamente, ahora podemos verificar cómo se ha realizado el respaldo.
Verificamos en nuestro directorio y aquí está el respaldo.
Gracias por acompañarnos en este recorrido a través de la automatización de respaldos en MikroTik. Esperamos que estos pasos te hayan resultado útiles para fortalecer la seguridad y eficiencia de tu red. ¡Hasta la próxima entrada!
Comentarios
Publicar un comentario