En ocasiones debe sacarse información de respaldo de un sistema Windows a un servidor OpenBSD, esto puede hacerse de forma automática con ayuda de WinScp. Para automatizar por completo el proceso y mantener algo de seguridad, puede emplearse WinScp junto con pageant de Putty. Requerimientos en el servidor OpenBSD
Requerimientos en el sistema Windows
Autenticación con PagentPrimero genere un par de llaves RSA sin clave en el sistema Windows con puttygen. Salve la llave privada (en este ejemplo queda en c:\Archivos de Programa\PUTTY\sube-privada.ppk ) Exporte la llave pública para usarla con OpenSSH y agreguela al archivo .ssh/authorized_keys de su cuenta en el servidor OpenBSD. Puede probar que la autenticación automática funciona así:
Archivo que automatiza la copiaEl siguiente archivo por lotes (digamos que sea c:\sist\remota.bat) se basa en uno escrito por Luis Alberto y realiza las siguientes operaciones: 1. inicia pageant con la llave del usuario sube 2. saca copia de una base de datos de PostgreSQL 3. Crea un script para WinSCP 4. Ejecuta WinSCP echo off C:\ARCHIV~1\PuTTY\pageant.exe C:\ARCHIV~1\PuTTY\sube-private.ppk SET LOG_FILENAME_UP=up%DATE:~0,2%%DATE:~3,2%%DATE:~6,4%.backup C:\PostgreSQL\8.0\bin\pg_dump -f C:\sist\bkup\%LOG_FILENAME_UP% -D -U usuario base echo option batch on > C:\sist\remota.wscp echo option confirm off >> C:\sist\remota.wscp echo open sube:clavesube!@www.pasosdeJesus.org >> C:\sist\remota.wscp echo cd /home/sube/base/ >> C:\sist\remota.wscp echo put C:\Caso_up\bkup\%LOG_FILENAME_UP% >> C:\sist\remota.wscp echo cd /home/sube/descargas/ >> C:\sist\remota.wscp echo lcd c:\sist\server\default\deploy\jetspeed.ear\jetspeed.war\descargas >> C:\sist\remota.wscp echo synchronize remote >> C:\sist\remota.wscp echo close >> C:\sist\remota.wscp echo exit >> C:\sist\remota.wscp "c:\Archivos de programa\WinSCP3\WinSCP3.exe" /console /script=c:\sist\remota.wscp El script para WinSCP que se crea ( Programación de ejecución periódicaEste script que saca copia remota puede ejecutarse diariamente programando una tarea desde Panel de Control->Tareas Programadas. |