加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

LINUX教学:Hillstone 防火墙备份脚本

发布时间:2020-12-13 17:52:19 所属栏目:Linux 来源:网络整理
导读:《LINUX教学:Hillstone 防火墙备份脚本》要点: 本文介绍了LINUX教学:Hillstone 防火墙备份脚本,希望对您有用。如果有疑问,可以联系我们。 对于公司有多台防火墙备份的需求,为减轻工作量对多台物理防火墙进行自动备份(不限于防火墙,支持路由交换与平安等其

《LINUX教学:Hillstone 防火墙备份脚本》要点:
本文介绍了LINUX教学:Hillstone 防火墙备份脚本,希望对您有用。如果有疑问,可以联系我们。

对于公司有多台防火墙备份的需求,为减轻工作量对多台物理防火墙进行自动备份(不限于防火墙,支持路由交换与平安等其他产品),本篇文章使用Linux系统shell脚本编写Hillstone自动化备份防火墙,定时归档,可配合自动上传脚本,将备份文件上传至阿里OSS,实现永久高可用备份,如果异常发送邮件/微信/短信等通知用户检查.

脚本文件使用阐明:

一、安装expect

yum?install?expect?lrzsz?-y?

二、安装vsftp

2.1创立目录并上传文件

mkdir?scripts

上传剧本到/scripts目录内,并赋予可执行权限

LINUX教学:Hillstone 防火墙备份脚本


2.2 运行剧本bash Vsftpd.sh并查看ftp信息

LINUX教学:Hillstone 防火墙备份脚本

查看ftp相关信息,文件在:/root/ftppasswd.txt

三、运行备份剧本填写相关信息

LINUX教学:Hillstone 防火墙备份脚本

FTP服务器IP地址

FTP用户名

FTP暗码

接受邮件人邮箱

四、执行剧本查看邮箱

LINUX教学:Hillstone 防火墙备份脚本

五、准时任务

如下如下按期执行脚本,修改backup.sh

LINUX教学:Hillstone 防火墙备份脚本

将这些变量写入back.sh

LINUX教学:Hillstone 防火墙备份脚本

制作准时任务即可

LINUX教学:Hillstone 防火墙备份脚本

六、查看成果

LINUX教学:Hillstone 防火墙备份脚本

七、剧本配置文件

LINUX教学:Hillstone 防火墙备份脚本

第一列为数据中心、第二列为机房、第三列为防火墙IP、第四列为防火墙用户名、第五列为防火墙暗码、第六列为防火墙ssh端口号、第七列为客户名称

每次只需更新此设置装备摆设文件即可.

八、剧本文件

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学院专栏。欢迎交流!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读