国家 / 地区

H3C SecPath A2000-G[AK][V]系列运维审计系统 典型配置举例(E6101 E6102 E6103 E6104)-5W104

18-脚本任务配置举例

本章节下载  (474.54 KB)

docurl=/cn/Service/Document_Software/Document_Center/Home/Security/00-Public/Configure/Typical_Configuration_Example/H3C_A2000-G[AK][V]_CE(E6101)-5W104/201905/1189391_30005_0.htm

18-脚本任务配置举例

脚本任务配置举例

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Copyright © 2018新华三技术有限公司 版权所有,保留一切权利。

非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传播。

除新华三技术有限公司的商标外,本手册中出现的其它公司的商标、产品标识及商品名称,由各自权利人拥有。

本文档中的信息可能变动,恕不另行通知。



1 脚本任务概述

脚本任务是指运维审计系统通过telnet或者SSH协议登录到目标设备后自动执行脚本,协助管理员对目标设备进行批量自动化管理。

运维审计系统的脚本任务有ssh-batch、builtin-interact、interact-script三种方式。

1.1.1  ssh-batch

仅适用于有 ssh 服务的 Unix-like 设备,支持采用非标准 ssh 端口,标准为 22 端口。

用户可以根据需要在运维审计系统上撰写 shell 脚本;也可以上传已经写好的脚本到运维审计系统建立脚本任务并执行。

工作方式

运维审计系统会先以 ssh方式登录目标设备,建立相应的工作目录,然后以 scp 方式将脚本推送到工作目录内,最终ssh 到目标设备执行脚本。

提示

·         如果需要执行的任务具有交互式的工作,运维审计系统将无法使用这种方式执行,请使用interact-script方式。

·         运维审计系统执行脚本后进将执行的输出记录在数据库中,但不对执行结果进行任何的判断。

 

1.1.2  Builtin-interact

Builtin-interact 方式是指运维审计系统内置的交互式脚本,目前运维审计系统内置了8种常见的脚本。Builtin-interact 方式支持通过 telnet 或 ssh 协议登录执行。

表1-1 内置脚本描述

cisco

获取cisco网络设备运行时配置的脚本。

cisco-asa

获取cisco-asa设备运行时配置的脚本。

get-remote-ip

执行ifconfig命令,获取Unix-like 设备IP地址的脚本。

huawei

获取huawei网络设备当前配置的脚本。

HuaWei-3COM

获取HuaWei-3COM网络设备当前配置的脚本。

juniper

获取juniper设备当前配置的脚本。

netdev-config-backup

获取cisco网络设备NVM中配置的脚本。

h3c

获取h3c设备当前配置的脚本。

 

1.1.3  interact-script

interact-script是指交互式脚本。需要在运维审计系统上配置相关设备的交互过程。

interact-script的配置将在第五章中进行讲解。

1.1  脚本任务建立

使用配置管理员登陆-脚本任务-任务浏览,点击“新建任务”

图1-1 脚本任务路径

 

图1-2 脚本任务界面

 

参见解释:

·            任务名称:填写任务名称。

·            部门:如果有配置部门可以选择相应部门;如果没有,默认选择root。

·            任务描述:填写任务的描述信息。

·            设备:选择需要进行脚本任务的设备。

·            设备组:选择需要进行脚本任务的设备组。

·            系统账号:选择以什么系统账号进行该脚本的执行。

·            脚本类型:第一章所提到的三种脚本类型。

·            文件名:当脚本类型选择Builtin-interact或者interact-script时,可以选择其中的具体脚本。

·            结果备份:可以选择是否需要将结果备份到邮箱或者文件服务器。

¡  结果加密:备份文件以加密的形式发送。

¡  结果发送:脚本执行结果发送给相应用户的邮箱。

¡  结果上传:脚本执行结果发送到相应的文件服务器。

·            并发数量限制:如果有多台设备,可以设置并发数。

·            下次执行时间:指定下次脚本执行时间。

·            执行周期:指定脚本执行周期。

图1-3 ssh-batch脚本

 

当脚本类型选择ssh-batch,会出现图上的内容。

·            脚本类型:选择ssh-batch

·            工作目录:脚本上传到哪个目录下执行,上传的根目录为该用户的家目录。

·            上传文件名:该脚本的名称。

·            脚本内容:填写shell脚本的内容,需要符合shell脚本的规范。否则会执行失败。

·            上传脚本文件:shell脚本,可以以文件的方式上传。如果使用此方式上传,则不需要填写上方的脚本内容。

提示

·         系统账号必须具有脚本中命令的执行权限。

·         系统账号必须在目标设备中托管账号密码,并且能够登陆测试成功。

 

1.2  脚本任务执行

脚本任务的执行有两种方式:

(1)       立即执行

选择相应任务,点击“立即执行”。

图1-4 脚本任务立即执行

 

(2)       计划/周期执行

编辑相应任务,指定下次执行时间,或者指定执行周期。

图1-5 脚本任务周期执行

 

1.3  查看执行情况

1.4  脚本任务执行情况查看

(1)       按脚本任务进行查看

使用配置管理员登陆-脚本任务-任务浏览,选择相应的任务,点击“查看执行情况”。

图1-6 查看执行情况路径

 

会出现该脚本任务的执行历史情况。

图1-7 查看执行情况

 

(2)       全局查看

使用配置管理员登陆-脚本任务-任务浏览,可以出现所有的脚本任务执行情况。

可以通过“任务状态”、“任务名称”进行过滤。

图1-8 全局查看执行情况

 

1.5  目标设备执行情况查看

(1)       通过脚本任务查看

选择相应的脚本任务,点击“任务详细”。

图1-9 查看任务路径

 

出现该目标设备脚本任务的执行情况,可以查看输出或者下载输出。

图1-10 查看任务执行情况

 

(2)       全局查看

使用配置管理员登陆-脚本任务-执行情况,可以出现所有目标设备脚本任务执行的情况。

图1-11 全局查看任务执行情况

 

1.6  配置交互脚本

ssh-batch脚本只适用于能够执行shell的 Unix-like 设备。

builtin-interact,运维审计系统只提供了常见的8个脚本。

所以,当我们需要执行其他的脚本,可以使用交互脚本方式(interact-script)自定义。

1.7  准备设备命令交互的过程

图1-12 准备命令交互过程

 

1.8  交互脚本界面介绍

(1)       进入超级管理员账户。

(2)       进入“策略配置”-“交互脚本”菜单。点击“添加”。

图1-13 交互脚本路径

 

图1-14 交互脚本界面

 

参见解释:

·            名称:交互脚本的名称。

·            简要说明:描述该交互脚本。

·            stepN:代表进行脚本执行的交互式操作。

·            增加新步骤:增加stepN。

·            标题说明

¡  expect:等待输出匹配内容;如果匹配,就输出对应send的内容。当匹配的内容有多行时,只匹配最后一行的内容

¡  send:匹配后发送的命令;执行完此命令,会进行下一个expect的匹配。

¡  error_expect:等待错误输出时的匹配;当交互过程有错误输出,导致脚本任务执行不成功,可以在这里匹配,匹配后,会终止脚本过程执行过程。

¡  error_report:自定义错误报告;当匹配error_expect,交互停止时,可以自定义错误报告,便于直观查看问题。

ssh-batch脚本只适用于能够执行shell的 Unix-like 设备。

1.9  配置交互脚本

图1-15 交互脚本界面

aaa

 

2 常见问题

(1)       交互脚本是如何交互结束的?

答:所有步骤的expect内容匹配,认为交互脚本执行结束。

(2)       遇见特殊字符,无法匹配,怎么办?

答:这是因为特殊字符需要转义导致的。可以输入“\”,进行转义。

需要转义的字符为:*()+?/.\[=

例如:(current) UNIX password,需转义成:\(current\) UNIX password

(3)       设备登陆等待时间较长,经常超时,怎么办?

答:可以修改“字符终端”-“自动登录超时”来延长脚本执行的等待时间。

(4)       命令输出过长,需要按空格显示下一页,如何配置。

答:针对常见的网络设备,可以设置screen-length长度,让输出不要分页。

例如:

华三设备:

system-view

user-interface vty 0 4

screen-length 0

思科设备:

terminal length 0

(5)       如果一个设备既有telnet服务,又有SSH服务,脚本执行会使用哪种方式?

答:查看该设备的默认字符服务,这个服务就是交互脚本使用方式。

图2-1 交互脚本界面

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!