APP下载

异构网络设备配置采集与解析

2019-11-12李航单洪陈志文

电脑知识与技术 2019年25期
关键词:配置异构核查

李航 单洪 陈志文

摘要:在大规模网络环境中,核查大量异构网络设备配置的正确性与合规性一直是网络系统维护人员的难点。提出了一种无代理的设备配置自动采集技术,在采集的基础上,方案采用ANTLR生成网络设备配置的词法、语法分析器,自动生成设备配置的抽象语法树和树的遍历器,通过语法树分析的监听器机制实现异构网络设备配置翻译成统一描述结构的配置信息,基于统一结构的设备配置信息可以为配置核查算法屏蔽异构设备的差异性。

关键词:异构;网络;配置;核查;语法分析

中图分类号:TP391        文献标识码:A

文章编号:1009-3044(2019)25-0025-02

Abstract: In large-scale networks, how to verify the correctness and compliance of a large number of heterogeneous configurations of network devices is difficult. An agentless device configuration acquisition technology is proposed. ANTLR is used to generate the lexical and syntax analysis module of network device configuration. The abstract syntax tree of the device configuration and the traversal module of the tree are automatically generated. The translation of the heterogeneous configuration is realized through syntax tree analysis. The configuration information of the unified structure is described, and the device configuration information based on the unified structure shields the difference of the heterogeneous device configuration verification algorithm.

Key words:Heterogeneous; network; configuration; verification; syntax analysis

1 引言

為了验证信息系统中网络设备的配置是否满足安全管理要求,需要对网络设备的配置进行核查[1]。核查[2],目的是及时发现不满足安全要求的策略配置。配置核查的输入是配置和配置安全基线,安全基线是指用户依据安全防护目标、法规遵从等设定的配置应该满足的最低安全标准,不论配置状态如何变化,都应该满足安全基线的要求[3]。在大规模网络环境下,面对上万行的异构网络设备配置,人工已经难以进行有效的配置核查[4]- [5],因此需要采用信息化的技术手段实现配置的自动化核查。配置核查自动化的关键技术是网络设备配置的自动采集以及将文本描述的配置翻译成统一描述的结构化配置项数据。

2 网络设备配置采集技术

配置核查首先需要解决如何获取设备配置信息的问题,多数交换机、路由器、防火墙支持ssh远程执行命令获取全部配置信息,或通过snmp也可以获取部分信息,一些设备无法通过通用ssh或snmp获取配置信息,则需要获得厂家的支持,通过厂家提供的专用接口获取配置信息。本系统当前主要针对支持ssh登录的目标设备。

基于ssh命令行接口的异构设备配置采集只是执行的命令不一样,执行配置采集的操作具有相同的模式“ssh登录->执行脚本验证设备类型、版本->执行配置采集脚本->获取脚本回显(原始配置)”,因此,可以通过维护设备类型识别知识和配置采集知识,使得系统通过配置而不是软件更新就可以适应不同版本设备的原始配置采集,用户通过自定义设备类型识别知识和配置采集知识就可以不断扩充支持的设备类型的配置采集。基于知识的配置自动化采集流程如图1所示。

设备类型识别知识由规则集组成,规则的基本属性包括:规则标识、设备类型、操作系统名称、操作系统版本、系统类型采集脚本、系统名称匹配规则、系统版本匹配规则、更新时间、备注。

配置采集知识也是由规则集组成,规则的基本属性包括:规则标识、设备类型、操作系统名称、适用版本、采集脚本、更新时间、备注。

3 网络设备配置解析技术

配置自动化核查系统的一个主要技术难点是不同厂商、不同型号的设备配置语法语义经常不统一,如果直接针对原始配置的文本进行核查算法设计,算法实现需要花费大量精力进行各种文本信息的处理,导致开发效率低下、容易出错、兼容性差。由于网络设备提供给用户访问的配置都是按照厂商定义的语法进行描述的文本,因此可以利用成熟的词法、语法分析技术,将配置的文本分析交给基于语法分析的配置解析与翻译模块,将配置翻译成统一描述的结构信息,基于结构化的配置信息简化配置核查算法的实现,提高算法的设备兼容性和开发效率。

3.1 配置解析与翻译技术方案

系统采用ANTLR(Another Tool for Language Recognition)实现配置的解析。ANTLR是一种开源的词法、语法分析器自动生成工具,当前主版本号是4。与同样广泛使用的Lex/Yacc(对应GNU Linux的Flex/Bison)比较, ANTLR 4最大的优点是能过自动生成抽象语法树(AST,Abstract Syntax Tree)和树的遍历器,并且ANTLR 4在ANTLR 3的基础上提供了监听器和访问器两种机制实现语法分析的应用逻辑代码与文法描述规则解耦,这些特点极大地提高了语言识别解析程序的开发效率[6]。

基于ANTLR 4的配置解析與翻译的技术方案如图2所示。采用ANTLR的监听器机制使得语法翻译程序模块的开发分解为一组松耦合的树节点访问事件的监听模块,在遍历到AST相应的节点(非叶子节点)时自动触发相应的语法翻译逻辑,极大地简化了代码的复杂性。

3.2 设备配置文法描述与语法翻译模块开发

(1)文法描述文件开发

文法包括词法和语法,基于ANTLR的文法描述开发就是采用扩展BNF (Extended Backus-Naur-Format)表达式描述具体设备的配置定义的词法、语法。分析处理人工编写的语言需要判断、处理文法错误,需要大量的词法、语法规则对输入进行约束。但是配置核查系统从具体设备上获取的配置都是经过目标设备系统的语法分析器校验过的,因此,我们可以假设获取的配置都是符合目标系统定义的词法、语法规则的,基于这个假设,极大地简化了文法规则编写,除了关键词,大部分词法都可以用字符串词法替代,由于假设不存在词法错误问题,语法翻译模块获取字符串参数值可以直接按目标数据类型直接翻译。某型号防火墙配置的语法分析生成的AST的一个子集,用ANTLR的图像化显示工具如图3所示。

(2) 语法翻译模块

开发好文法描述文件,利用ANTLR工具自动生成词法分析器、语法分析器、语法树监听器的代码,生成的目标代码支持C++、C#、java、go等语言。以java为例,针对某防火墙配置语法开发的名为FW_HS4000.g4的文法描述文件,经过ANTLR处理后,自动生成FW_HS4000Lexer.java(词法分析器代码)、FW_HS4000Parser.java(语法分析器代码) 、FW_HS4000Listener.java(监听器接口定义代码) 、 FW_HS4000BaseListener.java(监听器接口默认实现代码)。Java 的class FW_HS4000BaseListener为语法树的每个非叶子节点定义了默认的两个事件处理函数,函数名分别为进入节点的“enter+节点名称”和退出节点的“exit+节点名称”,每个节点名称就是我们定义的语法规则名,可读性强。语法翻译模块只需要简单继承默认实现的监听器,重写事件处理函数,按照统一定义的配置类别的结构定义进行转换即可。

4 结束语

由于不同人员知识水平有差异,把握核查标准尺度不统一,容易导致核查结果不一致,手动核查方式难以满足对配置进行高效、客观评价的需求,因此,有必要通过将核查知识转化成可重复利用的知识,由软件实现配置自动化核查。本文针对配置核查自动化面临的异构配置问题,提出了无代理的自动化采集技术和基于自动化语法分析的方法,实现配置解析与配置核查算法的解耦,提高了核查算法模块的分析能力和设备兼容性。

参考文献:

[1] 陈军,饶婕,陈虹等.基于SCAP 的自动化安全基线核查研究[J].计算机时代,2016(4).

[2] 王啸天.基于基线化管理的计算机配置核查系统的设计与实现[D].中国科学院大学.

[3] Reijo M. Savola. Quality of security metrics and measurements. Computers & Security[J], 2013, 37: 78-90.

[4] W Stallings, L Brown, Computer Security: Principles and Practice, 3rd Edition[M].Prentice Hall, 2014.

[5] 唐炼,王小龙.基于模式匹配的无线网络安全配置核查工具[J].计算机与现代化,2015(10).

[6] Terence Parr. ANTLR 4权威指南[M].张博,等.机械工业出版社,2017.

【通联编辑:代影】

猜你喜欢

配置异构核查
对某企业重大危险源核查引发的思考
试论同课异构之“同”与“异”
关于设计保证系统适航独立核查的思考
基于无人机影像的营造林核查应用研究
异构醇醚在超浓缩洗衣液中的应用探索
overlay SDN实现异构兼容的关键技术
LTE异构网技术与组网研究
采用保留被测件进行期间核查的方法