百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

「收藏」Cisco交换机安全配置设定

nanshan 2025-01-08 16:14 14 浏览 0 评论

一、交换机访问控制安全配置



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,bpduguard,bpdufilter

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 bpdufilter enable

/当启用bpdufilter功能时,该端口将丢弃所有的bpdu包,可能影响网络拓扑的稳定性并造成网络环路

switch(config-if)#spanning-tree bpduguard enable

/当启用bpduguard功能的交换机端口接收到bpdu时,会立即将该端口置为error-disabled状态而无法转发数据,进而避免了网络环路!

注意:同时启用bpduguard与bpdufilter时,bpdufilter优先级较高,bpduguard将失效!


广播、组播风暴控制设定

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 occurs


MAC地址绑定端口安全设定

switch(config-if)#switchport port-security /启用端口安全

switch(config-if)#switchport port-security maximum number /默认每个接口最大的值为1

switch(config-if)#switchport port-security violation protect|restrict|shutdown /启用安全违规行为

protect:当接口学习到设定数量的MAC后,后来的MAC信息将直接丢弃,且不产生通知

restrict: 当接口学习到设定数量的MAC后,后来的MAC信息将直接丢弃并发送snmp trap,syslog信息。

shutdown: 当接口学习到设定数量的MAC后,后来的MAC信息将不再解析并直接关闭该端口,除非手动shut,no shut或通过errdisable recovery cause 原因 来进行恢复

switch(config-if)#switchport port-security mac-address sticky /启用mac自动学习功能,无需手动进行绑定


端口错误检测和自动恢复设定

switch(config)#errdisable detect cause all /启用所有类型错误检测

switch(config)#errdisable recovery cause all /启用所有类型错误发生后在30s后自动恢复

switch(config)#errdisable recovery interval 30 /自动恢复间隔时间为30s


四、三层交换机常用路由协议安全配置


1、RIP协议

建议不采用RIPV1,使用支持md5认证的RIPV2版本

switch(config)#key chain chain_name /设置密钥链名

switch(config-key-chain)#key 1 /设置密钥号

switch(config-key-chain)#key-string pass_string /设置密钥字符串

switch(config)#router rip

switch(config-router)#version 2 /启用RIP-V2

switch(config-router)#network x.x.x.x

switch(config-router)# passive-interface x/x

/启用passive-interface禁用一些不需要接收和转发路由信息的端口(只是禁止转发路由信息,并没有禁止接收)

switch(config)#interface x/x

switch(config-if)#ip rip authentication mode md5 /指定认证方式为md5

switch(config-if)#ip rip authentication key-chain chain_name /调用定义的密钥链名

注意:启用RIPV2协议的互连路由接口其密钥Key ID和Key string必须相同才可通过认证!


2、EIGRP协议

eigrp仅支持md5认证

switch(config)#key chain chain_name /设置密钥链名

switch(config-key-chain)#key 1 /设置密钥号

switch(config-key-chain)#key-string pass_string /设置密钥字符串

switch(config)#router eigrp as-num /设置eigrp自治系统号,在本地有效

switch(config-router)#network x.x.x.x

switch(config-router)#no auto-summary /关闭自动汇总功能

switch(config)#interface x/x

switch(config-if)#ip authentication mode eigrp 100 md5 /指定eigrp 100区域的认证方式为md5

switch(config-if)#ip authentication key-chain eigrp 100 chain_name /调用定义的密钥链名

注意:启用EIGRP md5认证的互连路由接口其密钥Key ID和Key string必须相同才可通过认证!


3、OSPF协议

由于明文认证在更改密码时会出现断流且容易比抓包破解,推荐采用md5认证;另OSPF在接口上的认证和区域内的认证是不同的,只要两端的一样就可以通信!

switch(config)#router ospf 100 /设置本地有效的标识符100

switch(config-router)#area area_id authentication message-digest /在区域内启用md5认证

switch(config-if)#ip ospf authentication message-digest /在接口下启用md5认证

switch(config-if)#ip ospf message-digest-key id md5 pass_string /在接口下设置md5密钥id及密钥字符串,两端启用OSPF路由协议的端口必须相同


4、HSRP/VRRP协议

switch(config)#key chain chain_name /设置密钥链名

switch(config-key-chain)#key 1 /设置密钥号

switch(config-key-chain)#key-string pass_string /设置密钥字符串

switch(config-if)#standby group_num authentication md5 key-chain chain_name /在启用hsrp协议的接口下启用md5认证并调用设定的密钥链名

switch(config-if)#vrrp group_num authentication md5 key-chain chain_name /在启用vrrp协议的接口下启用md5认证并调用设定的密钥链名


五、交换机日志收集审计安全配置


trunk接口日志事件设定

switch(config)#int gi x/x/x

switch(config-if)#sw mode trunk

switch(config-if)#sw trunk encaps dot1q

switch(config-if)#logging event trunk-status

switch(config-if)#logging event link-status

switch(config-if)#logging event spanning-tree

switch(config-if)#logging event bundle-status

switch(config-if)#logging event status


access接口日志世界设定

switch(config)#int gi x/x/x

switch(config-if)#sw mode access

switch(config-if)#sw access vlan xx

switch(config-if)#logging event link-status

switch(config-if)#logging event spanning-tree

switch(config-if)#logging event bundle-status

switch(config-if)#logging event status


日志收集分析设定

switch(config)#logging on /启动日志

switch(config)#logging host x.x.x.x /设定收集日志的syslog server

switch(config)#logging source-interface loopback0 /设定发送日志的原地址

switch(config)#logging facility local6 /cisco设备的默认类型

switch(config)#logging trap 7 /设定记录日志服务的类型,数据越大,威胁程度越低,分为0-7,

设置为7表示包含所有日志类型

switch(config)#logging buffered number /设定本地日志buffer size 大小


时区和时间设定(确保日志记录的准确性)

switch(config)# clock timezone UTC 8 /设定时区为UTC 8

switch(config)#ntp server x.x.x.x /设定NTP Server时间同步服务器

switch(config)#ntp source loopback0 /设定ntp时间同步原地址

switch(config)#ntp authenticate /启用ntp认证

switch(config)#ntp authentication-key 1 md5 pass-string /设置认证密钥和密码

switch(config)#ntp trusted-key 1


六、交换机其他安全配置


1、即时关注cisco ios漏洞信息,为漏洞ios安装补丁或升级ios

2、定期备份交换机设备配置文件及ios文件

3、严格设置登录Banner。必须包含非授权用户禁止登录的字样

4、禁用DNS查找

switch(config)#no ip domain-lookup

/避免输入错误命令时,交换机进行dns解析查找直到dns查找失败,延迟较大;建议关闭

相关推荐

0722-6.2.0-如何在RedHat7.2使用rpm安装CDH(无CM)

文档编写目的在前面的文档中,介绍了在有CM和无CM两种情况下使用rpm方式安装CDH5.10.0,本文档将介绍如何在无CM的情况下使用rpm方式安装CDH6.2.0,与之前安装C5进行对比。环境介绍:...

ARM64 平台基于 openEuler + iSula 环境部署 Kubernetes

为什么要在arm64平台上部署Kubernetes,而且还是鲲鹏920的架构。说来话长。。。此处省略5000字。介绍下系统信息;o架构:鲲鹏920(Kunpeng920)oOS:ope...

生产环境starrocks 3.1存算一体集群部署

集群规划FE:节点主要负责元数据管理、客户端连接管理、查询计划和查询调度。>3节点。BE:节点负责数据存储和SQL执行。>3节点。CN:无存储功能能的BE。环境准备CPU检查JDK...

在CentOS上添加swap虚拟内存并设置优先级

现如今很多云服务器都会自己配置好虚拟内存,当然也有很多没有配置虚拟内存的,虚拟内存可以让我们的低配服务器使用更多的内存,可以减少很多硬件成本,比如我们运行很多服务的时候,内存常常会满,当配置了虚拟内存...

国产深度(deepin)操作系统优化指南

1.升级内核随着deepin版本的更新,会自动升级系统内核,但是我们依旧可以通过命令行手动升级内核,以获取更好的性能和更多的硬件支持。具体操作:-添加PPAs使用以下命令添加PPAs:```...

postgresql-15.4 多节点主从(读写分离)

1、下载软件[root@TX-CN-PostgreSQL01-252software]#wgethttps://ftp.postgresql.org/pub/source/v15.4/postg...

Docker 容器 Java 服务内存与 GC 优化实施方案

一、设置Docker容器内存限制(生产环境建议)1.查看宿主机可用内存bashfree-h#示例输出(假设宿主机剩余16GB可用内存)#Mem:64G...

虚拟内存设置、解决linux内存不够问题

虚拟内存设置(解决linux内存不够情况)背景介绍  Memory指机器物理内存,读写速度低于CPU一个量级,但是高于磁盘不止一个量级。所以,程序和数据如果在内存的话,会有非常快的读写速度。但是,内存...

Elasticsearch性能调优(5):服务器配置选择

在选择elasticsearch服务器时,要尽可能地选择与当前业务量相匹配的服务器。如果服务器配置太低,则意味着需要更多的节点来满足需求,一个集群的节点太多时会增加集群管理的成本。如果服务器配置太高,...

Es如何落地

一、配置准备节点类型CPU内存硬盘网络机器数操作系统data节点16C64G2000G本地SSD所有es同一可用区3(ecs)Centos7master节点2C8G200G云SSD所有es同一可用区...

针对Linux内存管理知识学习总结

现在的服务器大部分都是运行在Linux上面的,所以,作为一个程序员有必要简单地了解一下系统是如何运行的。对于内存部分需要知道:地址映射内存管理的方式缺页异常先来看一些基本的知识,在进程看来,内存分为内...

MySQL进阶之性能优化

概述MySQL的性能优化,包括了服务器硬件优化、操作系统的优化、MySQL数据库配置优化、数据库表设计的优化、SQL语句优化等5个方面的优化。在进行优化之前,需要先掌握性能分析的思路和方法,找出问题,...

Linux Cgroups(Control Groups)原理

LinuxCgroups(ControlGroups)是内核提供的资源分配、限制和监控机制,通过层级化进程分组实现资源的精细化控制。以下从核心原理、操作示例和版本演进三方面详细分析:一、核心原理与...

linux 常用性能优化参数及理解

1.优化内核相关参数配置文件/etc/sysctl.conf配置方法直接将参数添加进文件每条一行.sysctl-a可以查看默认配置sysctl-p执行并检测是否有错误例如设置错了参数:[roo...

如何在 Linux 中使用 Sysctl 命令?

sysctl是一个用于配置和查询Linux内核参数的命令行工具。它通过与/proc/sys虚拟文件系统交互,允许用户在运行时动态修改内核参数。这些参数控制着系统的各种行为,包括网络设置、文件...

取消回复欢迎 发表评论: