Como programar un respaldo masivo

Para temas basados en la administración de los productos FortiGate usando el producto FortiManager.
Responder
Carrillo23
Mensajes: 3
Registrado: 27 Jun 2013, 23:06

Como programar un respaldo masivo

Mensaje por Carrillo23 »

Hola a todos,

Ojala me puedan ayudar, tengo un Fortimanager 400c con firmware v5.0, al cual se conectan mas de 50 Fortigates. El manager los reconoce sin problemas, veo sus configuraciones y las puedo modificar. Mi problema es con los respaldos, he logrado hacer respaldos manuales de cada uno pero como son hartos me quita mucho tiempo.

Alguien sabe como puedo hacer para que se generen respaldos una vez al mes de forma automatica?

Saludos

iescudero
Mensajes: 89
Registrado: 26 Sep 2012, 12:03

Re: Como programar un respaldo masivo

Mensaje por iescudero »

Buenas

1) creas un usuario para el respaldo en cada equipo, le ponemos como nombre respaldo, contraseña prueba

1)Tenes que bajar el PSCP:
http://www.chiark.greenend.org.uk/~sgta ... nload.html

2) Luego, armas un VBS con esto:

Option Explicit
on error resume next
Dim oFSOLog
Dim oFSOProc
Dim sDirectoryPathLog
Dim sDirectoryPathProc
Dim oFolderlog
Dim ofolderProc
Dim oFileCollectionlog
Dim oFileCollectionProc
Dim oFile
Dim iDaysOld



'Personaliza los datos que necesita modificar

iDaysOld = 365
Set oFSOLog = CreateObject("Scripting.FileSystemObject")
sDirectoryPathLog = "c:\backup"
set oFolderLog = oFSOLog.GetFolder(sDirectoryPathLog)
set oFileCollectionLog = oFolderLog.Files

'si existen archivos mayores a (365) dias, se eliminaran.

For each oFile in oFileCollectionLog
If oFile.DateLastModified < (Date() - iDaysOld) Then
oFile.Delete(True)
End If
Next

'Clean up
Set oFSOLog = Nothing
Set oFSOProc = Nothing
Set oFolderLog = Nothing
Set oFolderProc = Nothing
Set oFileCollectionLog = Nothing
Set oFileCollectionProc = Nothing
Set oFile = Nothing

3) creas un bat con esto:
-pw pones el password prueba, luego el nombre del usuario, despues del @pones la ip del equipo

set DESTINATION=c:\respaldo
set FECHA=%date:~6,4%%date:~3,2%%date:~0,2%
set LOG=c:\respaldo\respaldo.log

echo Y|pscp -P 1022 -pw prueba respaldo@172.16.1.1:sys_config %DESTINATION%forti1_%FECHA%.conf >> %LOG%
echo Y|pscp -P 1022 -pw prueba respaldo@172.16.1.2:sys_config %DESTINATION%forti2_%FECHA%.conf >> %LOG%

DeleteOLD.vbs >> %LOG%

4) por ultimo, creas una tarea programada en algun equipo para que ejecute el bat y listo!

Espero que te sirva

Saludos

undergl
Mensajes: 2
Registrado: 12 Oct 2016, 12:20

Re: Como programar un respaldo masivo

Mensaje por undergl »

Mediante TCL:

Dejo el Script y aprovecho para consultar lo que ocuree al programar el backup.

Código: Seleccionar todo


set systemTime [clock seconds]
set tstamp [clock format $systemTime -format {%d-%m-%Y-%H-%M-%S}]

# Obtener el hostname
proc get_sys_status aname {
   upvar $aname a
   set input [exec "get system status | grep Host\n" "# " 15 ]
   set linelist [split $input \n]
   foreach line $linelist {
      if {![regexp {([^:]+):(.*)} $line dummy key value]} continue
         switch -regexp -- $key {
         Hostname {
            set a(hostname) [string trim $value]
      } }
   }
}

get_sys_status status

set filename "$status(hostname)"
append filename "_"
append filename $tstamp

puts "Realizando backup $filename"

#Comandos de consola a ejecutar

exec "config global\n" "# " 15
exec "execute backup full-config ftp $filename ------ip del ftp ---- ---usuario del ftp--- -pass del ftp ----" "# " 15
exec "end\n" "# " 15


Si lanzo el script TCL desde Fortimanager, se crea el backup perfectamente de todos los Fortis a los que les envio el script, el problema viene al programar el script. Cuando lo va a hacer automaticamente siempre falla y además en el log de la ejecución del script no aparece nada.

¿Que puede estar pasando?

Responder