Copias de seguridad de pag. web con lftp

Bueno, hace poco me petaron un wordpress con el xploit del thimthumb.php de manera que el atacante introdujo código malicioso en la web. Gracias a google y a sucuri.net logré eliminar la amenaza sin muchos problemas, pero al principio un pensamiento mortal me cruzó de oreja a oreja:

"Mierda"

Cuando vi que la última copia de seguridad válida era de hace varios meses mi hipotálamo dejó ir:

"Mierda"

Al final, y por suerte, se pudo solucionar el problema sin perder ningún post ni nada pero fué hora de revisar la copia de seguridad.

 Hasta este momento, para hacer las copias tenia un script que usaba el ncftpget para pillar el contenido del host via ftp, comprimirlo y enviarlo a un dispositivo de almacenaje, pero a raíz de esto me di cuenta que el ncftpget, por algún motivo, al intentar bajar un .php se cortaba la conexión con el servidor. Curioso.

Así que mire otros clientes de FTP y me encontré con lftp. Resultado:

$ lftp -c "open -u user,pass -e 'mirror --delete directorio_hosting directorio_local' ftp.hosting.com"

ole, finito. Esta simple instrucción hace:
  1. ejecutas el lcftp que ejecute el comando open
  2. así mismo, el comando open le puedes pasar con la opción -e una serie de comandos a ejecutar
  3. ejecutamos mirror --delete que lo que hace es descargarse el directorio del hosting que indiques al directorio local que indiques y elimine los archivos que ya no existan en el hosting.
La parte buena es que una vez tienes una copia en local, las succesivas ejecuciones del lftp no se volverá a descargar todo el sitio entero sino aquellos archivos que hayan sido modificados o subidos.

Comentarios