通常为了管理方便,会在交换机上配置Telnet远程登录,但telnet远程登录中所有的信息均以明文传输,有一定的安全隐患,如果希望选择更加安全的远程登录方式,可以选择使用SSH协议进行远程登录,SSH会对所有发送的账户密码和数据信息进行加密,大大降低了数据泄露的风险。
步骤1、小科普
SSH(Secure Shell) 协议是TCP/IP协议簇的一员,是Internet远程登录服务的标准协议和主要方式。它是属于应用层的协议,采用客户端/服务器模型,使用TCP- 22号端口为用户提供在本地主机上安全登录远程设备的服务。
END
步骤2、配置SSH远程登录
1、本地PC连到交换机配置口
第一次配置交换机时,只能通过交换机的Console口进行本地配置,默认Console口登录到命令行界面时没有密码且拥有全部权限。要连接到交换机,你只需要在PC上装好需要的超级终端软件(SecureCRT或Xshell等),然后通过一条串口转USB的线将PC连接到交换机的Console口上,然后设置好接口属性即可建立连接,进入命令行后可以进行相关Telnet配置。
1)、连线
首先将PC连通过Console线连到交换机上,如下图所示,Console线一端接PC的串口或USB,另一端接交换机的Console口(RJ45的居多),我这里用的是USB转RJ45的线。
2)、 建立连接
在PC上通过终端软件(如Xshell、SecureCRT等,这里用的是Xshell)建立连接。
首先打开Xshell,新建会话,选择连接类型为串口(Serial):
然后点击左边Serial连接属性,选择使用端口号COM3(如果不知道自己使用的是哪个端口,可以在PC上打开设备管理器在端口中即可看到,一般均使用COM3),设置波特率为9600(大多数设备都是这个值),如下图所示,都设置好后,点击确定:
确认好连接属性后,会弹出会话框,在会话框里选择你刚刚新建的会话,然后点击连接即可。
如果设置没问题的话,一般就可以直接进入交换机的操作系统如下,默认Console口没有认证密码,可以直接进入命令行进行管理和配置,如果没有进入命令行就要自己回头检查一下之前的配置有没有问题或者交换机之前有没有做过什么访问限制(必要的话可以重置交换机,如有些时候之前交换机命令行设置了密码,现在已经无从考证,只要简单的重置就可以恢复默认状态,进入时就不需要密码了)。
2、配置接口管理IP
进入命令行后就可以进行相关配置了,要远程访问设备,首先要配置一个接口IP用来转发三层数据包,对于一般的二层接入交换机,不能像路由器一样直接配置接口IP,只能在虚拟VLAN接口上配一个管理IP,用来转发管理流量,实现远程登录,配置命令如下。
1)、创建虚拟VLAN用于配置接口IP(全局配置模式下)
Switch(config)#vlan <vlan-id>
2)、进入VLAN接口配置模式(全局配置模式下)
Switch(config)#interface vlan <vlan-id>
3)、配置接口IP地址(VLAN接口配置模式下)
Switch(config-if)#ip address <ip-addr> <mask>
4)、激活当前虚拟接口(VLAN接口配置模式下)
Switch(config-if)#no shutdown
3、配置SSH远程登录认证
思科交换机远程登录认证支持三种方式:无认证、密码认证、用户名+密码组合认证,可以根据需要配置相应的认证方式。在配置认证时可以使用终端线路的密码进行口令认证(l,也可以使用用户名+密码认证,用户名+密码有两种方式,一种是使用本地数据库中的用户账户进行认证,另一种是使用外部服务器上的用户数据库进行认证。认证方式要在虚拟线路终端模式下配置
1)、无认证方式
设置虚拟终端线路号并进入虚拟线路终端配置模式(全局配置模式下):
Switch(config)#line vty <0-15>
配置无认证登录方式(虚拟线路终端配置模式下):
Switch(config-line)#no login
要配置认证方式,首先要进入虚拟线路终端配置模式,其中line vty为虚拟线路终端模式的关键词,后边为要启用的线路终端号,可以启用其中一条或多条,一般一共有16条线路,也就是说可以支持16台设备通过不同线路同时登录到设备。进入虚拟线路终端配置模式后,输入no login即可取消远程登录认证,这样无需密码就可以从远程登录到设备命令行
2)、密码认证方式
设置虚拟终端线路号并进入虚拟线路终端配置模式(全局配置模式下):
Switch(config)#line vty <0-15>
开启认证,默认使用虚拟终端中的密码登录(虚拟线路终端配置模式下)
Switch(config-line)#login
配置虚拟终端密码(虚拟终端线路配置模式):
Switch(config-line)#password <password>
进入虚拟线路终端配置模式后,选择 login就会开启密码认证,远程登录时直接使用虚拟线路配置模式中设置好的密码来进行登录验证。选择 login认证方式后,必须在虚拟线路配置模式中设置一个密码用来进行远程登录验证。
3 )、本地用户名+密码组合认证方式
设置虚拟终端线路号并进入虚拟线路终端配置模式(全局配置模式下):
Switch(config)#line vty <0-15>
配置密码校检模式使用本地数据库(用户名/密码)校检:
Switch(config-line)#login local
进入虚拟线路终端配置模式后,选择 login local就会开启本地用户认证模式,远程登录时会使用本地数据库中存储的用户和密码信息来进行登录验证。
4、创建本地用户
在配置用户名+密码组合登录认证的情况下,至少要配置一个本地用户并设置密码用来通过SSH远程登录设备,思科交换机配置本地用户的命令如下,可以用一条命令同时配置用户名和密码,密码则有两种模式可选,分别是明文密码和密文密码:
1)、以明文密码方式配置(全局配置模式下):
Switch(config)#username <username> [privilege <0-15>] password <password>
2)、以密文密码方式配置(全局配置模式下):
Switch(config)#username <username> [privilege <0-15>] secret <password>
如果配置了明文密码,配置文件中密码会以明文方式显示,如果使用了密文密码,配置文件中会对密码信息进行加密处理。
如我们这里配置用户登录密码为明文密码admin,然后通过命令show run可以在配置文件看到对应的配置信息中用户密码以明文admin显示,如下图所示:
而如果配置用户登录密码为密文密码admin,则可以看到配置文件中密码admin被进行了加密处理,在配置文件中以密文表示,如下图所示,这样会增加配置信息的安全性。
5、配置特权模式密码
出于安全性考虑,思科交换机上如果配置了Telnet或SSH远程服务,就必须同时配置特权模式的密码,不管是无认证方式登录还是有认证方式下都需要配置,否则登录到命令行后只能进入用户模式,进入特权模式时会提示“No password set”,所以配置完认证模式后不要忘了配置特权模式密码。如下图所示,就是分别配置了无认证方式登录、密码登录和用户名+密码登录后未配置特权模式密码的报错情况,如果真的发生这种情况,远程登录就修改不了了,只能通过交换机Console口登录到命令行去重新修改配置了,Console口默认拥有最大权限的。
配置特权模式密码(全局配置模式下):
Switch(config)#enable [secret|password] <password>
其中enable关键字表示特权模式,后边可以选择设置的密码类型,secret表示密码在配置文件中用密文表示,password表示密码在配置文件中用明文表示,后边直接跟你要设置的字符串密码就好。一般推荐用secret,安全性较高。
注:如果给交换机特权模式同时配置了password形式的密码和secret形式的密码,不会报错,但是只有secret形式的密码会生效,此外新配置的secret密码会自动覆盖旧的secret密码。
6、配置本机域名
根据SSH的认证机制,必需要给本机配置一个域名才能生成密钥对进行加密。
配置本机域名(全局配置模式下):
Switch(config)#ip domain-name <domain-name>
7、生成本地RSA密钥对
使用SSH加密方式,需要在本地生成一组密钥对,公钥和私钥用来加密和解密数据(默认密匙长度为512,建议为1024)。
生成密钥对(全局配置模式下):
Switch(config)#crypto key generate rsa
注:要先配置本机域名之后才能生成密钥对,否则会报错。
注:生成密钥对时不能使用交换机默认的设备名,否则会报错。
注:要删除本地密钥对可以使用命令:crypto key zeroize rsa。
8、SSH登录参数配置
选择要使用的ssh版本(默认使用版本1)
Switch(config)#ip ssh version <1|2>
修改认证次数( 默认为认证时需要输入三次密码)
Switch(config)#ip ssh authentication-retries <0-5>
修改认证超时时间(默认为120s)
Switch(config)#ip ssh time-out <1-120>
注:并非所有的设备都支持SSH版本2,并且密匙长度至少需要768bits的模长才能使用版本2。
9、查看SSH协议状态
查看SSH协议状态(特权模式):
Switch#show ip ssh
使用这条命令可以出查看SSH协议的参数信息,如运行的SSH版本号、认证超时时间、认证次数、密匙密钥长度和信息,如下图所示:
查看ssh连接(特权模式下):
Switch#show ssh
使用这条命令可以查看当前通过SSH登录的用户信息,如下图所示:
10、设置交换机的默认网关
二层交换机配置了管理IP地址后,在管理地址的同网段内,设备可通过管理IP地址来远程访问交换机,但若要跨网段去登录连接到另一个网段的二层交换机,则必须给二层交换机配置指定默认网关,双方的二层交换机都要配置指定默认网关地址。企业局域网中一般会用到多个VLAN和网段,一般不同地址段的路由都是在上层设备上做通了的,而一般二层交换机只要将网关指向汇聚/核心层的三层设备的网管IP就可以了,具体全网路由互通则交由上层设备通过静态/动态路由实现,关于上层路由打通还请大家自己查阅路由交换相关资料,这里就不详细说明了。
配置默认网关命令如下:
Switch(config)#ip default-gateway <gateway-ip>
END
步骤3、客户端远程登录
客户端远程登录比较简单,如果配置正确的话,可以直接在客户端通过命令行或终端程序通过管理IP地址即可登录到设备命令行,使用以下命令即可:
ssh -v <1|2> -l [username] <server-ip>
其中-v用来指定ssh版本,不指定使用默认版本;-l用来指定登录用户名,配置了用户名+密码认证方式,登录时需要指定用户名;server-ip为ssh服务器端的管理IP地址。
不同终端工具使用SSH登录的命令格式可能不一样,具体可以查阅相关帮助信息,如使用Xshell远程登录交换机格式为:
ssh <username>@<server-ip>
END
步骤4、配置演示
这里在思科PT模拟器里用一台思科C2960做演示,以配置用户名+密码认证方式的SSH登录为例,来熟悉一下SSH远程登录的配置流程,拓扑如下,一台配置PC通过Console线连接到交换机的Console对交换机进行配置,另一台管理PC通过双绞线连接到交换机,对交换机进行远程管理:
1、配置PC连接到交换机
首先使用Console线将配置PC连接到交换机的Console口,然后点击配置PC中的Desktop,打开Terminal终端,设置好连接参数后,确认即可连接到交换机上进行配置:
2、交换机上配置SSH
在交换机上配置一个虚拟VLAN接口,配置管理地址192.168.10.1,然后配置相关SSH配置如下:
C2960#conf t
C2960(config)#vlan 10
C2960(config-vlan)exit
C2960(config)#int vlan 10
C2960(config-if)#ip address 192.168.10.1 255.255.255.0
C2960(config-if)#no shutdown
C2960(config-if)#exit
C2960(config-if)#line vty 0 4
C2960(config-if)#login local
C2960(config-if)#exit
C2960(config)#enable secret admin
C2960(config)#username admin secret admin
C2960(config)#ip domain-name localadmin
C2960(config)#crypto key generate rsa
C2960(config)#ip ssh version <1|2>
C2960(config)#ip ssh authentication-retries <0-5>
3、客户端配置
客户端配置与交换机同一管理网段的地址192.168.10.10,同时把连接到交换机的端口划分到VLAN10,保证客户端与交换机可以通信,就可以对交换机进行管理了:
注:如果客户端地址和交换机管理地址在不同网段,则需要同时在交换机和客户端上配置对应的网关地址。
4、客户端上远程登录交换机
配置好之后,在客户端管理PC上就可以使用ssh进行远程登录交换机进行管理了,由于配置了用户名+密码认证方式,所以登录时必须指定用户名:
其他注意事项
1、简单回顾一下思科交换机配置SSH远程登录的流程:
1)、通过Console线连接到交换机,进入命令行。
2)、为交换机配置虚拟接口和管理IP。
创建虚拟VLAN用于配置接口IP(全局配置模式下):
C2960(config)#vlan <vlan-id>
进入VLAN接口配置模式(全局配置模式下):
C2960(config)#interface vlan <vlan-id>
配置接口IP地址(VLAN接口配置模式下):
C2960(config-if)#ip address <ip-addr> <mask>
激活当前虚拟接口(VLAN接口配置模式下):
C2960(config-if)#no shutdown
3)、设置登录认证方式:
设置虚拟终端线路号并进入虚拟线路终端配置模式(全局配置模式下):
C2960(config)#line vty <0-15>
配置认证方式为无认证(虚拟线路终端配置模式下):
C2960(config-line)#no login
配置认证方式为密码认证(虚拟线路终端配置模式下):
C2960(config-line)#login
配置认证方式为本地用户认证(虚拟线路终端配置模式下):
C2960(config-line)#login local
配置虚拟线路登录认证密码:
C2960(config-line)#password <password>
4)、创建本地用户并设置权限和密码(全局配置模式下,仅本地认证方式需要)
C2960(config)#username <user-name> [privilege <0-15>] password|secret <password>
5)、配置特权模式登录密码(全局配置模式下):
C2960(config)#enable password|secret <password>
6)、配置本地域名(全局配置模式下):
C2960(config)#ip domain-name <name>
7)、生成密钥对(全局配置模式下):
C2960(config)#crypto key generate rsa
8)、配置SSH参数(全局配置模式下):
配置SSH版本:
C2960(config)#ip ssh version <1|2>
配置SSH认证次数:
C2960(config)#ip ssh authentication-retries <0-5>
修改认证超时时间:
C2960(config)#ip ssh time-out <1-120>
9)、配置默认网关(全局配置模式下):
C2960(config)#ip default-gateway <gateway-ip>
10)、查看SSH状态信息(特权模式下):
查看SSH协议参数:
C2960#show ip ssh
查看SSH登录用户信息:
C2960#show ssh
2、这里主要介绍了SSH的配置方式,如果想要了解具体SSH的认证原理还请参阅其他技术手册。
本文链接:https://www.kinber.cn/post/2390.html 转载需授权!
推荐本站淘宝优惠价购买喜欢的宝贝: