思科交换机脚本
① cisco交换机安全配置设定命令
cisco交换机安全配置设定命令大全
思科交换机的安全怎么设置,下面为大家分交换机安全设置的配置命令,希望对同学们学习思科交换机有所帮助!
一、交换机访问控制安全配置
1、对交换机特权模式设置密码尽量采用加密和md5 hash方式
switch(config)#enable secret 5 pass_string
其中 0 Specifies an UNENCRYPTED password will follow
5 Specifies an ENCRYPTED secret will follow
建议不要采用enable password pass_sting密码,破解及其容易!
2、设置对交换机明文密码自动进行加密隐藏
switch(config)#service password-encryption
3、为提高交换机管理的灵活性,建议权限分级管理并建立多用户
switch(config)#enable secret level 7 5 pass_string7 /7级用户进入特权模式的密码
switch(config)#enable secret 5 pass_string15 /15级用户进入特权模式的密码
switch(config)#username userA privilege 7 secret 5 pass_userA
switch(config)#username userB privilege 15 secret 5 pass_userB
/为7级,15级用户设置用户名和密码,Cisco privilege level分为0-15级,级别越高权限越大
switch(config)#privilege exec level 7 commands
/为7级用户设置可执行的命令,其中commands可以根据分配给用户的权限自行定义
4、本地console口访问安全配置
switch(config)#line console 0
switch(config-line)#exec-timeout 5 0 /设置不执行命令操作的超时时间,单位为分钟和秒
switch(config-line)#logging synchronous
/强制对弹出的干扰日志信息进行回车换行,使用户输入的命令连续可见
设置登录console口进行密码验证
方式(1):本地认证
switch(config-line)#password 7 pass_sting /设置加密密码
switch(config-line)#login /启用登录验证
方式(2):本地AAA认证
switch(config)#aaa new-model /启用AAA认证
switch(config)#aaa authentication login console-in group acsserver local
enable
/设置认证列表console-in优先依次为ACS Server,local用户名和密码,enable特权密码
switch(config)#line console 0
switch(config-line)# login authentication console-in
/调用authentication设置的console-in列表
5、远程vty访问控制安全配置
switch(config)#access-list 18 permit host x.x.x.x
/设置标准访问控制列表定义可远程访问的PC主机
switch(config)#aaa authentication login vty-in group acsserver local
enable
/设置认证列表vty-in, 优先依次为ACS Server,local用户名和密码,enable特权密码
switch(config)#aaa authorization commands 7 vty-in group acsserver local
if-authenticated
/为7级用户定义vty-in授权列表,优先依次为ACS Server,local授权
switch(config)#aaa authorization commands 15 vty-in group acsserver local
if-authenticated
/为15级用户定义vty-in授权列表,优先依次为ACS Server,local授权
switch(config)#line vty 0 15
switch(config-line)#access-class 18 in /在线路模式下调用前面定义的标准ACL 18
switch(config-line)#exec-timeout 5 0 /设置不执行命令操作的超时时间,单位为分钟和秒
switch(config-line)#authorization commands 7 vty-in /调用设置的授权列表vty-in
switch(config-line)#authorization commands 15 vty-in
switch(config-line)#logging synchronous
/强制对弹出的干扰日志信息进行回车换行,使用户输入的命令连续可见
switch(config-line)#login authentication vty-in
/调用authentication设置的vty-in列表
switch(config-line)#transport input ssh
/有Telnet协议不安全,仅允许通过ssh协议进行远程登录管理
6、AAA安全配置
switch(config)#aaa group server tacacs+ acsserver /设置AAA服务器组名
switch(config-sg-tacacs+)#server x.x.x.x /设置AAA服务器组成员服务器ip
switch(config-sg-tacacs+)#server x.x.x.x
switch(config-sg-tacacs+)#exit
switch(config)# tacacs-server key paa_string /设置同tacacs-server服务器通信的密钥
二、交换机网络服务安全配置
禁用不需要的各种服务协议
switch(config)#no service pad
switch(config)#no service finger
switch(config)#no service tcp-small-servers
switch(config)#no service udp-small-servers
switch(config)#no service config
switch(config)#no service ftp
switch(config)#no ip http server
switch(config)#no ip http secure-server
/关闭http,https远程web管理服务,默认cisco交换机是启用的
三、交换机防攻击安全加固配置
MAC Flooding(泛洪)和Spoofing(欺骗)攻击
预防方法:有效配置交换机port-security
STP攻击
预防方法:有效配置root guard,bpguard,bpfilter
VLAN,DTP攻击
预防方法:设置专用的native vlan;不要的接口shut或将端口模式改为access
DHCP攻击
预防方法:设置dhcp snooping
ARP攻击
预防方法:在启用dhcp snooping功能下配置DAI和port-security在级联上层交换机的trunk下
switch(config)#int gi x/x/x
switch(config-if)#sw mode trunk
switch(config-if)#sw trunk encaps dot1q
switch(config-if)#sw trunk allowed vlan x-x
switch(config-if)#spanning-tree guard loop
/启用环路保护功能,启用loop guard时自动关闭root guard
接终端用户的端口上设定
switch(config)#int gi x/x/x
switch(config-if)#spanning-tree portfast
/在STP中交换机端口有5个状态:disable、blocking、listening、learning、forwarding,只有处于forwarding状态的端口才可以发送数据。但需经过从blocking-->listening
15s,listening-->learning 15s,learning-->forwarding 20s
共计50s的时间,启用portfast后将直接从blocking-->forwarding状态,这样大大缩短了等待的时间。
说明:portfast仅适用于连接终端或服务器的交换机端口,不能在连接交换机的端口上使用!
switch(config-if)#spanning-tree guard root
/当一端口启用了root
guard功能后,当它收到了一个比根网桥优先值更优的.BPDU包,则它会立即阻塞该端口,使之不能形成环路等情况。这个端口特性是动态的,当没有收到更优的包时,则此端口又会自己变成转发状态了。
switch(config-if)#spanning-tree bpfilter enable
/当启用bpfilter功能时,该端口将丢弃所有的bp包,可能影响网络拓扑的稳定性并造成网络环路
switch(config-if)#spanning-tree bpguard enable
/当启用bpguard功能的交换机端口接收到bp时,会立即将该端口置为error-disabled状态而无法转发数据,进而避免了网络环路!
注意:同时启用bpguard与bpfilter时,bpfilter优先级较高,bpguard将失效!
广播、组播风暴控制设定
switch(config-if)#storm-control broadcast level 10 /设定广播的阀值为10%
switch(config-if)#storm-control multicast level 10 /设定组播的阀值为10%
switch(config-if)#storm-control action shutdown / Shutdown this interface
if a storm occurs
or switch(config-if)#storm-control action trap / Send SNMP trap if a storm
② 如何脚本方式批量修改交换机配置文件
如果真的想去使用好交换机配置文件,那么就因该在对交换机配置文件进行任何更改之前,进行备份工作,这样会使得交换机配置文件变得更完美,也避免一些问题的发生。
想要有效地管理交换机配置文件,就是要在适当的时候、适当的地点及时运行命令。通过使用命令,IOS软件能够将配置文件从一个组件或者设备移动到其他需要的组件与设备上去。
这个命令主要有两参数,第一个参数表示配置文件的源位置,即需要被复制的文件。第二个参数表示目标位置,即要将这个配置文件复制到哪个地方。如使用 running-config tftp命令,就可以将运行配置文件复制到网络上的TFTP服务器来进行配置。
不过在复制的时候,需要注意,如果目标位置有相同的配置文件,则这个命令会将目标文件中相同名字的配置文件覆盖掉。不过这句话说其来容易,做起来可是比较难。具体来说,需要做到一下几点。
首先,当RAM中的运行交换机配置文件进行更改之后,需要将最新的运行配置文件进行备份。这主要是因为RAM内存中的内容断电后会丢失。如果网络管理员希望在交换机运行过程中对其进行的更改,在交换机下次启动的时候仍然有效。
那么就需要将这个更改的内容保存在启动配置文件中。如果要实现这个目的,可以通过使用命令 running-config startup-config。这个命令的含义就是将运行配置文件保存到启动交换机配置文件中。如此的话,就会将交换机的最近更新的内容保存了下来。
其次需要注意的是,在将RAM中的运行配置文件复制到NVRAM中的时候,需要先确保当前配置的准确性。也就是说,当我们修改了RAM中的运行配置文件相关参数之后,一般不会急着将相关的内容复制到NVRAM中。
而是需要先对其进行测试与追踪,以判断新设置的参数是否符合我们预计的需求。也就是要判断新参数是否起作用了,是否满足用户的需要。只有确保新配置的参数运行正常的情况下,才能够将这个更新保存到启动配置文件中。
否则的话,万一这个参数设置有错误,那么在下次启动的时候就可能会出现问题。为了安全起见,最好在将运行配置文件复制到NVRAM中的时候,能够先对NVRAM中内容进行备份。
这主要是因为在使用 running-config startup-config命令的时候,命令会自动覆盖目标位置的启动配置文件。此时如果运行配置文件有错误,那么连神仙也回天无力了。为此笔者建立网络管理员,在管理配置文件的时候,要小心又小心,宁可多走一步。
如在保存更新之前,先将原先的启动配置文件在tftp服务器上备份一份。如此的话,即使最近的配置有问题,而网络管理员又保存了的话,也可以利用备份后的配置文件来启动交换机。
要完成这个功能,网络管理员可以运行命令 start tftp(将启动配置文件保存到TFTP服务器上)。如果启动配置文件有问题的话,还可以使用 tftp start命令,将备份的配置文件复制到NVRAM中,让交换机使用这个配置文件来进行初始化。
第三,除了在NVRAM与tftp服务器之间可以相互复制之外,在RAM与tftp服务器之间也可以进行相互的复制。如网络管理员更新了交换机配置文件的某个参数,如设置了虚拟局域网。
此时可能在短时间内很难判断当前的配置是否准确。可能需要运行一个星期甚至更长的时间才能够做出判断。此时最好不要轻易的去更新启动配置文件中的内容。笔者建议的方法是先将RAM中的运行配置文件复制到tftp服务器中,实现一个暂时的过渡。
当确定配置没有问题后,再将这个运行配置文件复制、替换掉启动配置文件,以保存最新的可用更新。要实现这个需求的话,可以使用命令 run tftp(将运行配置文件复制到tftp服务器上)或者使用命令 tftp run(将tftp服务器上的配置文件复制到ram中去)这两个命令来实现。
笔者最好强调一遍,怎么配置运行配置文件或者初始参数文件涉及到很多内容,具有很大的难度。但是如果管理配置文件,则这个命令是核心。而使用好这个命令的关键,就是在对交换机配置文件进行任何更改之前,进行备份。并在确保更新内容可用之后,及时将其保存到断电后不易丢失的NVRAM中或者网络的tftp服务器上。