飛塔防火牆自動備份技巧


一、准備工作

1、備份服務器 CentOS 7

CentOS Linux release 7.8.2003 (Core) | 3.10.0-1127.el7.x86_64

2、飛塔防火牆的配置

#使用CLI 啟用Fortigate SCP

config system global
    set admin-scp enable
end

#啟用接口的SSH訪問

config system interface
    edit <interface name>
    set allowaccess ping https ssh
end

3、CentOS備份服務器安裝工具sshpass,這個工具可以支持scp操作時自動輸入密碼

yum install -y sshpass

 

二、CentOS備份服務器找一個合適的路徑,全部文件和文件夾都在同一個路徑下即可

1、創建存儲備份文件的文件夾

mkdir -p /BackPath/bak

2、firewallbackup.sh 文件:

#!/bin/bash
#########################################
#Function:    Fortigate Sys_config Backup
#Version:     1.0
#########################################

#Backup Account Passwords
passwd="fg-login-password"

#Temp Backup Path
folderpath=$(date +%Y%m%d)

#Generate Filename By Time
filename=$(date +%Y%m%d-%H%M%S)

#Gzip Filename
bakfilename=$filename"-fw-config-backup"
str="/BackPath/bak/"$bakfilename".tar.gz"

str_path="./"$folderpath

cd /BackPath if [ ! -d $folderpath ]; then mkdir -p $folderpath else echo "Path Already Exists!" fi cd $folderpath while read line do hostip=$line tempfilename=$line"-"$filename"sysconfig" sshpass -p "$passwd" scp backup@$hostip:sys_config $tempfilename done
< ../ip.txt

cd /BackPath

 
         

tar -czvf $str $folderpath

 

#Delete Temp File
if [ $? -eq 0 ]; then rm -rf $str_path
else
    echo "Package Mission Fail!"
fi

 

3、創建ip.txt 文件,此文件與上面的firewallbackup.sh放在同一路徑下,這里的ip地址為飛塔防火牆的登陸地址,一行為一台設備

#cat /BackPath/ip.txt
192.168.1.1
192.168.2.1
192.168.3.1

4、配置CentOS 7的計划任務 crontab -e,如示例是將備份的firewallbackup.sh和ip.txt放到 /BackPath 這個路徑下,將操作結果的日志放到 /home路徑下,每天11點和23點自動備份一次

00 11 * * * /usr/bin/sh /BackPath/firewallbackup.sh >> /home/backup-info.log 2>&1
00 23 * * * /usr/bin/sh /BackPath/firewallbackup.sh >> /home/backup-info.log 2>&1

 

以上,備份文件后,會進行打包和壓縮

經測試,支持 FortiOS 5.x 6.x 

###純原創###

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM