LINUX教学:Hillstone 防火墙备份脚本
《LINUX教学:Hillstone 防火墙备份脚本》要点: 对于公司有多台防火墙备份的需求,为减轻工作量对多台物理防火墙进行自动备份(不限于防火墙,支持路由交换与平安等其他产品),本篇文章使用Linux系统shell脚本编写Hillstone自动化备份防火墙,定时归档,可配合自动上传脚本,将备份文件上传至阿里OSS,实现永久高可用备份,如果异常发送邮件/微信/短信等通知用户检查. 脚本文件使用阐明: 一、安装expect yum? install ?expect?lrzsz?-y ?二、安装vsftp 2.1创立目录并上传文件 mkdir ?scripts
上传剧本到/scripts目录内,并赋予可执行权限 2.2 运行剧本bash Vsftpd.sh并查看ftp信息 查看ftp相关信息,文件在:/root/ftppasswd.txt 三、运行备份剧本填写相关信息 FTP服务器IP地址 FTP用户名 FTP暗码 接受邮件人邮箱 四、执行剧本查看邮箱 五、准时任务 如下如下按期执行脚本,修改backup.sh 将这些变量写入back.sh 制作准时任务即可 六、查看成果 七、剧本配置文件 每次只需更新此设置装备摆设文件即可. 八、剧本文件 back.sh #!/usr/bin/expect?-f set ?ip?[?lindex?$argv?0?]
set ?user?[?lindex?$argv?1?]
set ?password?[?lindex?$argv?2?]
set ?port?[?lindex?$argv?3?]
set ?host?[?lindex?$argv?4?]
set ?ftpip?[?lindex?$argv?5?]
set ?ftpuser?[?lindex?$argv?6?]
set ?ftppwd?[?lindex?$argv?7?]
spawn? ssh ?-p?$port?$user@$ip
expect?{ ? ? "(yes/no)?"
? ? ? ? {
? ? ? ? ? ? send? "yesr"
? ? ? ? ? ? expect? "password:"
? ? ? ? ? ? send? "$passwordr"
? ? ? ? }
? ? ? ? "password:"
? ? {
? ? send? "$passwordr"
? ? }
} expect? "*#"
send? "export?configuration?startup?to?ftp?server?$ftpip?user?$ftpuser?password?$ftppwd?$hostr"
expect? "Export?ok"
send? "exitr"
expect?eof backup.sh #!/bin/bash #mail:xuel@anchnet.com read ?-p? "Please?input?ftp?server?ipaddress:" ?FTPIP
read ?-p? "Please?input?ftp?username:" ?FTPUSER
read ?-p? "Please?input?ftp?password:" ?FTPPWD
read ?-p? "Please?input?Receive?mailbox:" ?MAIL
config_file= /scripts/back_conf
backup_dir= /FTP
DATE=$( date ?+%Y%m%d)
if ?[?!?-d?$backup_dir?]; then
? ? /bin/mkdir ?$backup_dir
fi cat ?$config_file?|? while ?read ?ADDRESS?NAME?IP?USER?PASSWD?PORT?FILENAME; do
if ?[?!?-d?$backup_dir/$ADDRESS/$NAME?]; then
? ? /bin/mkdir ?-p?$backup_dir/$ADDRESS/$NAME
fi . /back .sh?$IP?$USER?$PASSWD?$PORT?$FILENAME?$FTPIP?$FTPUSER?$FTPPWD?&> /dev/null
if ?[?$??- eq ?0?]; then
? ? /bin/mv ?$backup_dir/$FILENAME?$backup_dir/$ADDRESS/$NAME/$FILENAME "_" $DATE?
? ? /bin/echo ?"BACKUP?$IP?SUCCESS,BACKUP_FILE?$backup_dir/$ADDRESS/$NAME/$FILENAME" _ "$DATE" ?|? /bin/mail ?-r? "xuel@51idc.com" ?-s? "$NAME?防火墙备份_胜利!" ?$MAIL
else ? ? /bin/echo ?"BACKUP?$IP?SUCCESS,BACKUP_FILE?$backup_dir/$ADDRESS/$NAME/$FILENAME" _ "$DATE" ?|? /bin/mail ?-r? "xuel@51idc.com" ?-s? "$NAME?防火墙备份_失败!" ?$MAIL
fi done back_conf XA? ? 西安? ? 172.17.1.10? ? hillstone? ? hillstone? ? 22? ? username ?本片为自动备份hillstone防火墙脚本,可以配合上传至OSS,与监控告警脚原来实现一整套流程. 本文永远更新链接地址: 更多LINUX教程,尽在编程之家PHP学院专栏。欢迎交流! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |