自动化脚本实现防火墙配置周期性的自动备份(比如每月)

自动化脚本实现防火墙配置周期性的自动备份?
防火墙配置进行手动备份有2种方式:
1、cli命令行:execute backup config tftp backup.conf 10.5.22.22
2、web页面进行备份
如果使用自动化脚本,如何实现每月自动备份?
config sys auto-script
edit test
set interval 2519000
set start auto
set repeat 2
set script "execute backup config tftp backup.conf 10.5.22.22"
end
FGT#execute auto-script status
FGT#execute auto-script result
执行结果,在tftp出现提示不允许覆盖文件。(只能执行一遍,如此以来自动化脚本毫无意义)
 
屏幕快照_2018-08-22_下午3.04_.30_.png
已邀请:

kmliu - Fortinet-TAC

赞同来自: yyj

1. 情况分析
TFTP不允许覆盖是TFTP软件设置的问题,和FGT自身自动备份功能无关。当然你可以设置软件允许TFTP文件的覆盖。
1.jpg

其实通常大家关心的问题并不在于“tftp出现提示不允许覆盖文件”,问题在于自动化脚本没办法自动生成一个备份文件名称。所以每一次配置的备份都是覆盖的状态,也就是说一直只有一份备份的配置文件存在,而会覆盖旧的配置文件,这个结果通常可能不是FortiGate用户想看到的。
 
2.解决办法:
办法A:做出备份一年配置的自动化脚本,每个月备份一份配置文件,如果设备重启将自动重新按照配置规则进行配置文件的备份。
自动化配置脚本如下:
config system auto-script
    edit "backup_1_hour"
        set interval 3600
        set start auto
        set script "execute backup config tftp backup_1_hour.conf 192.168.90.124"
    next
    edit "backup_1_day"
        set interval 86400
        set start auto
        set script "execute backup config tftp backup_1_day.conf 192.168.90.124"
    next
    edit "backup_7_day"
        set interval 604800
        set start auto
        set script "execute backup config tftp backup_7_day.conf 192.168.90.124"
    next
    edit "backup_14_day"
        set interval 1209600
        set start auto
        set script "execute backup config tftp backup_14_day.conf 192.168.90.124"
    next
    edit "backup_1_month"
        set interval 2592000
        set repeat 0
        set start auto
        set script "execute backup config tftp  backup_1_month.conf 192.168.90.124"
    next
    edit "backup_2_month"
        set interval 5184000
        set start auto
        set script "execute backup config tftp  backup_2_month.conf 192.168.90.124"
    next
    edit "backup_3_month"
        set interval 7776000
        set start auto
        set script "execute backup config tftp  backup_3_month.conf 192.168.90.124"
    next
    edit "backup_4_month"
        set interval 10368000
        set start auto
        set script "execute backup config tftp  backup_4_month.conf 192.168.90.124"
    next
    edit "backup_5_month"
        set interval 12960000
        set start auto
        set script "execute backup config tftp  backup_5_month.conf 192.168.90.124"
    next
    edit "backup_6_month"
        set interval 15552000
        set start auto
        set script "execute backup config tftp  backup_6_month.conf 192.168.90.124"
    next
    edit "backup_7_month"
        set interval 18144000
        set start auto
        set script "execute backup config tftp  backup_7_month.conf 192.168.90.124"
    next
    edit "backup_8_month"
        set interval 20736000
        set start auto
        set script "execute backup config tftp  backup_8_month.conf 192.168.90.124"
    next
    edit "backup_9_month"
        set interval 23328000
        set start auto
        set script "execute backup config tftp  backup_9_month.conf 192.168.90.124"
    next
    edit "backup_10_month"
        set interval 25920000
        set start auto
        set script "execute backup config tftp  backup_10_month.conf 192.168.90.124"
    next
    edit "backup_11_month"
        set interval 28512000
        set start auto
        set script "execute backup config tftp  backup_11_month.conf 192.168.90.124"
    next
    edit "backup_12_month"
        set interval 31104000
        set start auto
        set script "execute backup config tftp  backup_12_month.conf 192.168.90.124"
    next
end

办法B.防火墙自动进行配置的备份,备份到FGT的Flash卡中,每一次修改防火墙的配置,防火墙都会自动保存一份配置文件在本地,可以随时进行配置还原切换。config system global
set revision-backup-on-logout enable    // 修改配置,并且管理员退出,则自动保存一份配置于flash卡
end
2.jpg

办法C:FortiManger管理 ,即可实现办法B类似的功能,只要FGT配置一修改,管理员一退出,则FMG会自动保存一份FGT的配置,从而实现FGT配置备份的目的。

邱旭日 - 千江有水千江月,万里无云万里天

赞同来自: kmliu

可以结合inotifywait此类工具写个脚本,自动把最新的配置文件拷贝成一份以当前日期为名的文件

yyj

赞同来自:

那也就是说,
 1、使用办法A的时候,提前需要将所有的自动化脚本编写出来?
 2、使用办法B的时候,只需要在设备cli命令行里面进行配置就可以了,每次登陆修改防火墙配置的话,会在管理员退出登陆的时候,自动保存在FGT的Flash卡中,那么如果设备断电或者flash卡写满了,会怎样?
 3、使用办法C的时候,就是需要借助FMG这样的设备。

要回复问题请先登录注册