03-登录设备配置
本章节下载: 03-登录设备配置 (853.39 KB)
4.12.2 使用HTTPS方式登录设备典型配置举例(采用Windows 2003 server CA服务器)
4.12.3 使用HTTPS方式登录设备典型配置举例(用户已获取权威CA证书和本地证书)
· 通过CLI登录设备。登录成功后,可以直接输入命令行,来配置和管理设备。CLI方式下又根据使用的登录接口以及登录协议不同,分为:通过Console口、Telnet或SSH登录方式。
· 通过Web登录设备。登录成功后,用户可以使用Web界面直观地配置和管理网络设备。
· 通过SNMP登录设备。登录成功后,NMS可以通过Set和Get等操作来配置和管理设备。
· 通过RESTful登录设备。登录成功后,用户可以使用RESTful API来配置和管理设备。
用户首次登录设备时,只能通过Console口登录。只有通过Console口登录到设备,进行相应的配置后,才能通过其他方式登录。
此处设备登录方式设置均假设设备启动后不进入自动配置程序。
通过Console口进行本地登录是登录设备的最基本的方式,也是配置通过其他方式登录设备的基础。
在通过Console口搭建本地配置环境时,需要通过超级终端或PuTTY等终端仿真程序与设备建立连接。用户可以运行这些程序来连接网络设备、Telnet或SSH站点。这些程序的详细介绍和使用方法请参见该程序的使用指导。
通过Console口登录设备时,请按照以下步骤进行操作:
(1) 将PC断电。
因为PC机串口不支持热插拔,请不要在PC带电的情况下,将串口线插入或者拔出PC机。
(2) 请使用产品随机附带的配置口电缆连接PC机和设备。请先将配置口电缆的DB-9(孔)插头插入PC机的9芯(针)串口中,再将RJ-45插头端插入设备的Console口中。
· 连接时请认准接口上的标识,以免误插入其他接口。
· 在拆下配置口电缆时,请先拔出RJ-45端,再拔下DB-9端。
图2-1 将设备与PC通过配置口电缆进行连接
(3) 给PC上电。
(4) 打开终端仿真程序,按如下要求设置终端参数:
¡ 波特率:9600
¡ 数据位:8
¡ 停止位:1
¡ 奇偶校验:无
¡ 流量控制:无
(5) 设备上电。
在设备自检结束后,用户可通过键入回车进入命令交互界面。出现命令行提示符后即可键入命令来配置设备或查看设备运行状态,需要帮助可以随时键入?。
CLI登录用户的访问行为需要由用户线管理、限制,即网络管理员可以给每个用户线配置一系列参数,比如用户登录时是否需要认证、用户登录后的角色等。当用户通过CLI登录到设备的时候,系统会给用户分配一个用户线,登录用户将受到该用户线下配置参数的约束。
设备提供如下类型的用户线:
· Console用户线:用来管理和监控通过Console口登录的用户。
· VTY(Virtual Type Terminal,虚拟类型终端)用户线:用来管理和监控通过Telnet或SSH登录的用户。
用户线的编号有绝对编号方式和相对编号方式。
· 绝对编号方式
使用绝对编号方式,可以唯一的指定一个用户线。绝对编号从0开始自动编号,每次增长1,先给所有Console用户线编号,然后是所有VTY用户线。使用display line(不带参数)可查看到设备当前支持的用户线以及它们的绝对编号。
· 相对编号方式
相对编号是每种类型用户线的内部编号,表现形式为“用户线类型 编号”。用户线的编号从0开始以1为单位递增。
用户登录时,系统会根据用户的登录方式,自动给用户分配一个当前空闲的、编号最小的某类型的用户线,整个登录过程将受该用户线视图下配置的约束。用户与用户线并没有固定的对应关系:
· 同一用户登录的方式不同,分配的用户线不同。比如用户A使用Console口登录设备时,将受到Console用户线视图下配置的约束;当使用Telnet登录设备时,将受到VTY用户线视图下配置的约束。
· 同一用户登录的时间不同,分配的用户线可能不同。比如用户本次使用Telnet登录设备,设备为其分配的用户线是VTY 1。当该用户下次再Telnet登录时,设备可能已经把VTY 1分配给其他Telnet用户了,只能为该用户分配其他的用户线。
如果没有空闲的、相应类型的用户线可分配,则用户不能登录设备。
在用户线下配置认证方式,可以要求当用户使用指定用户线登录时是否需要认证,以提高设备的安全性。设备支持配置如下认证方式:
· 认证方式为none:表示下次使用该用户线登录时不需要进行用户名和密码认证,任何人都可以登录到设备上,这种情况可能会带来安全隐患。
· 认证方式为password:表示下次使用该用户线登录时,需要输入密码。只有密码正确,用户才能登录到设备上。配置认证方式为password后,请妥善保存密码。
· 认证方式为scheme:表示下次使用该用户线登录设备时需要进行用户名和密码认证,用户名或密码错误,均会导致登录失败。配置认证方式为scheme后,请妥善保存用户名及密码。
认证方式不同,配置不同,具体配置如表3-1所示。
认证方式 |
认证所需配置 |
none |
设置登录用户的认证方式为不认证 |
password |
设置登录用户的认证方式为password认证 设置密码认证的密码 |
scheme |
设置登录用户的认证方式为scheme认证 在ISP域视图下为login用户配置认证方法 |
用户角色中定义了允许用户配置的系统功能以及资源对象,即用户登录后执行的命令。关于用户角色的详细描述以及配置请参见“基础配置指导”中的“RBAC”。
· 对于none和password认证方式,登录用户的角色由用户线下的用户角色配置决定。
· 对于scheme认证方式,且用户通过SSH的publickey或password-publickey方式登录设备时,登录用户将被授予同名的设备管理类本地用户视图下配置的授权用户角色。
· 对于scheme认证方式,非SSH登录以及用户通过SSH的password方式登录设备时,登录用户使用AAA认证用户的角色配置。尤其对于远程AAA认证用户,如果AAA服务器没有下发用户角色且缺省用户角色授权功能处于关闭状态时,用户将不能登录设备。
通过CLI登录设备时,有以下限制和指导:
· 用户线视图下的配置优先于用户线类视图下的配置。
· 当用户线或用户线类视图下的属性配置为缺省值时,将优先采用配置为非缺省值的视图下的配置。
· 用户线视图下的配置只对该用户线生效。
· 用户线类视图下的配置修改不会立即生效,当用户下次登录后所修改的配置值才会生效。
通过Console口进行本地登录是登录设备的基本方式之一,用户可以使用本地链路登录设备,便于系统维护。如图3-1所示。具体登录步骤,请参见通过Console口首次登录设备。
图3-1 通过Console口登录设备示意图
首次登录后,建议修改认证方式以及其他参数来增强设备的安全性。
改变Console口登录的认证方式后,新认证方式对新登录的用户生效。
通过Console口登录设备配置任务如下:
¡ 配置通过Console口登录设备时采用密码认证(password)
¡ 配置通过Console口登录设备时采用AAA认证(scheme)
(2) (可选)配置Console口登录方式的公共属性
(1) 进入系统视图。
system-view
(2) 进入Console用户线或Console用户线类视图。
¡ 进入Console用户线视图。
line console first-number [ last-number ]
¡ 进入Console用户线类视图。
line class console
(3) 设置登录用户的认证方式为不认证。
authentication-mode none
缺省情况下,用户通过Console口登录,认证方式为none。
当认证方式设置为none时,用户不需要输入用户名和密码,就可以使用该用户线登录设备,存在安全隐患,请谨慎配置。
(4) 配置从当前用户线登录设备的用户角色。
user-role role-name
缺省情况下,通过Console口登录设备的用户角色为network-admin。
(1) 进入系统视图。
system-view
(2) 进入Console用户线或Console用户线类视图。
¡ 进入Console用户线视图。
line console first-number [ last-number ]
¡ 进入Console用户线类视图。
line class console
(3) 设置登录用户的认证方式为密码认证。
authentication-mode password
缺省情况下,用户通过Console口登录,认证方式为none。
(4) 设置认证密码。
set authentication password { hash | simple } string
缺省情况下,未设置认证密码。
(5) 配置从当前用户线登录设备的用户角色。
user-role role-name
缺省情况下,通过Console口登录设备的用户角色为network-admin。
(1) 进入系统视图。
system-view
(2) 进入Console或Console用户线类视图。
¡ 进入Console用户线视图。
line console first-number [ last-number ]
¡ 进入Console用户线类视图。
line class console
(3) 设置登录用户的认证方式为通过AAA认证。
authentication-mode scheme
缺省情况下,用户通过Console口登录,认证方式为none。
如果设置认证方式为scheme,但是没有配置认证用户,会影响下次登录设备。
(4) 在ISP域视图下为login用户配置认证方法。
如果选择本地认证,请配置本地用户及相关属性;如果选择远程认证,请配置RADIUS、HWTACACS或LDAP方案。相关配置的详细介绍请参见“用户接入与认证配置指导”中的“AAA”。
改变Console口属性后会立即生效,所以通过Console口登录来配置Console口属性可能在配置过程中发生连接中断,建议通过其他登录方式来配置Console口属性。
若用户需要通过Console口再次登录设备,需要改变PC机上运行的终端仿真程序的相应配置,使之与设备上配置的Console口属性保持一致。否则,连接失败。
(1) 进入系统视图。
system-view
(2) 进入Console用户线或Console用户线类视图。
¡ 进入Console用户线视图。
line console first-number [ last-number ]
¡ 进入Console用户线类视图。
line class console
(3) 配置设备与访问终端之间的通信参数。
¡ 配置设备与访问终端之间的传输速率。
speed speed-value
缺省情况下,用户线的传输速率为9600bit/s。
用户线类视图下不支持该命令。
¡ 配置校验方式。
parity { even | mark | none | odd | space }
缺省情况下,设备校验位的校验方式为none,即不进行校验。
用户线类视图下不支持该命令。
¡ 配置流量控制方式。
flow-control { hardware | none | software }
缺省情况下,没有配置流量控制方式。
用户线类视图下不支持该命令。
¡ 配置数据位。
databits { 7 | 8 }
缺省情况下,用户线的数据位为8位。
用户线类视图下不支持该命令。
类型 |
支持的数据位 |
传送字符的编码类型为标准ASCII码 |
7 |
传送字符的编码类型为扩展ASCII码 |
8 |
¡ 配置停止位。
stopbits { 1 | 1.5 | 2 }
缺省情况下,用户线的停止位为1比特。
停止位用来表示单个包的结束。停止位的位数越多,传输效率越低。用户线类视图下不支持该命令。
(4) 配置用户线的终端属性。
¡ 在用户线上启动终端服务。
shell
缺省情况下,所有用户线的终端服务功能处于开启状态。
Console用户线视图下不允许关闭shell终端服务。
¡ 配置终端的显示类型。
terminal type { ansi | vt100 }
缺省情况下,终端显示类型为ANSI。
建议设备的终端类型与客户端的终端类型都配置为VT100,或者均配置为ANSI的同时保证当前编辑的命令行的总字符数不超过80。否则客户端的终端屏幕不能正常显示。
¡ 配置终端屏幕一屏显示的行数。
screen-length screen-length
缺省情况下,终端屏幕一屏显示的行数为24行。
screen-length 0表示关闭分屏显示功能。
¡ 设置历史命令缓冲区大小。
history-command max-size value
缺省情况下,每个用户的历史缓冲区的大小为10,即可存放10条历史命令。
¡ 设置用户线的空闲超时时间。
idle-timeout minutes [ seconds ]
缺省情况下,所有的用户线的超时时间为10分钟,如果直到超时时间到达,某用户线一直没有用户进行操作,则该用户线将自动断开。
超时时间为0表示永远不会超时。
(5) 设置终端线路的自动执行的命令。
auto-execute command command
缺省情况下,终端线路未设置自动执行命令。
执行该命令后,可能导致用户不能通过该终端线对本系统进行配置,需谨慎使用。
用户登录到终端线路后,设备会自动依次执行command,然后退出当前连接。
Console用户线/Console用户线类视图下不支持该命令。
(6) 配置快捷键。
¡ 配置启动终端会话的快捷键。
activation-key character
缺省情况下,按<Enter>键启动终端会话。
¡ 配置中止当前运行任务的快捷键。
escape-key { character | default }
缺省情况下,键入<Ctrl+C>中止当前运行的任务。
¡ 配置对当前用户线进行锁定并重新认证的快捷键。
lock-key key-string
缺省情况下,不存在对当前用户线进行锁定并重新认证的快捷键。
设备可以作为Telnet服务器,以便用户能够Telnet登录到设备进行远程管理和监控。具体配置请参见“3.4.3 配置设备作为Telnet服务器配置”。
设备也可以作为Telnet客户端,Telnet到其他设备,对别的设备进行管理和监控。具体配置请参见“3.4.4 配置设备作为Telnet客户端登录其他设备”。
改变Telnet登录的认证方式后,新认证方式对新登录的用户生效。
设备作为Telnet服务器配置任务如下:
(1) 开启Telnet服务
(2) 配置设备作为Telnet服务器时的认证方式
¡ 配置Telnet登录设备时采用密码认证(password)
¡ 配置Telnet登录设备时采用AAA认证(scheme)
(3) (可选)配置Telnet服务器发送报文的公共属性
(4) (可选)配置VTY用户线的公共属性
(1) 进入系统视图。
system-view
(2) 开启设备的Telnet服务。
telnet server enable
缺省情况下,Telnet服务处于关闭状态。
(1) 进入系统视图。
system-view
(2) 进入VTY用户线或VTY用户线类视图。
¡ 进入VTY用户线视图。
line vty first-number [ last-number ]
¡ 进入VTY用户线类视图。
line class vty
(3) 设置登录用户的认证方式为不认证。
authentication-mode none
缺省情况下,Telnet用户的认证方式为password。
当认证方式设置为none时,用户不需要输入用户名和密码,就可以使用该用户线登录设备,存在安全隐患,请谨慎配置。
用户线视图下,authentication-mode和protocol inbound存在关联绑定关系,当两条命令中的任意一条配置了非缺省值,那么另外一条取用户线下的值。
(4) 配置从当前用户线登录设备的用户角色。
user-role role-name
缺省情况下,通过Telnet登录设备的用户角色为network-operator。
(1) 进入系统视图。
system-view
(2) 进入VTY用户线或VTY用户线类视图。
¡ 进入VTY用户线视图。
line vty first-number [ last-number ]
¡ 进入VTY用户线类视图。
line class vty
(3) 设置登录用户的认证方式为密码认证。
authentication-mode password
缺省情况下,Telnet用户的认证方式为password。
如果设置认证方式为password,但是没有配置认证密码,下次无法通过该用户线登录设备。
用户线视图下,authentication-mode和protocol inbound存在关联绑定关系,当两条命令中的任意一条配置了非缺省值,那么另外一条取用户线下的值。
(4) 设置密码认证的密码。
set authentication password { hash | simple } password
缺省情况下,未设置密码认证的密码。
(5) (可选)配置从当前用户线登录设备的用户角色。
user-role role-name
缺省情况下,通过Telnet登录设备的用户角色为network-operator。
(1) 进入系统视图。
system-view
(2) 进入VTY用户线或VTY用户线类视图。
¡ 进入VTY用户线视图。
line vty first-number [ last-number ]
¡ 进入VTY用户线类视图。
line class vty
(3) 设置登录用户的认证方式为通过AAA认证。
authentication-mode scheme
缺省情况下,Telent用户的认证方式为password。
如果设置认证方式为scheme,但是没有配置认证用户,会影响下次登录设备。
用户线视图下,authentication-mode和protocol inbound存在关联绑定关系,当两条命令中的任意一条配置了非缺省值,那么另外一条取用户线下的值。
(4) 在ISP域视图下为login用户配置认证方法。
如果选择本地认证,请配置本地用户及相关属性;如果选择远程认证,请配置RADIUS、HWTACACS或LDAP方案。相关配置的详细介绍请参见“用户接入与认证配置指导”中的“AAA”。
(1) 进入系统视图。
system-view
(2) 配置Telnet服务器发送报文的DSCP优先级。
(IPv4网络)
telnet server dscp dscp-value
(IPv6网络)
telnet server ipv6 dscp dscp-value
缺省情况下,Telnet服务器发送Telnet报文的DSCP优先级为48。
DSCP携带在IPv4报文中的ToS字段和IPv6报文中的Traffic class字段,用来体现报文自身的优先等级,决定报文传输的优先程度。
(3) 配置Telnet协议的端口号。
(IPv4网络)
telnet server port port-number
(IPv6网络)
telnet server ipv6 port port-number
缺省情况下,Telnet协议的端口号为23。
(4) 配置Telnet登录同时在线的最大用户连接数。
aaa session-limit telnet max-sessions
缺省情况下,Telnet方式登录同时在线的最大用户连接数为32。
配置本命令后,已经在线的用户连接不会受到影响,只对新的用户连接生效。如果当前在线的用户连接数已经达到最大值,则新的连接请求会被拒绝,登录会失败。
关于该命令的详细描述,请参见“用户接入与认证命令参考”中的“AAA”。
(1) 进入系统视图。
system-view
(2) 进入VTY用户线或VTY用户线类视图。
¡ 进入VTY用户线视图。
line vty first-number [ last-number ]
¡ 进入VTY用户线类视图。
line class vty
(3) 设置VTY终端属性。
¡ 设置在终端线路上启动终端服务。
shell
缺省情况下,所有用户线的终端服务功能处于开启状态。
¡ 配置终端的显示类型。
terminal type { ansi | vt100 }
缺省情况下,终端显示类型为ANSI。
¡ 设置终端屏幕一屏显示的行数。
screen-length screen-length
缺省情况下,终端屏幕一屏显示的行数为24行。
取值为0表示关闭分屏显示功能。
¡ 设置设备历史命令缓冲区大小。
history-command max-size value
缺省情况下,每个用户的历史缓冲区大小为10,即可存放10条历史命令。
¡ 设置VTY用户线的空闲超时时间。
idle-timeout minutes [ seconds ]
缺省情况下,所有的用户线的超时时间为10分钟。如果10分钟内某用户线没有用户进行操作,则该用户线将自动断开。
取值为0表示永远不会超时。
(4) 配置VTY用户线支持的协议。
protocol inbound { all | ssh | telnet }
缺省情况下,设备同时支持Telnet和SSH协议。
该配置将在用户下次使用该用户线登录时生效。
用户线视图下,authentication-mode和protocol inbound存在关联绑定关系,当两条命令中的任意一条配置了非缺省值,那么另外一条取用户线下的值。
(5) 设置从用户线登录后自动执行的命令。
auto-execute command command
缺省情况下,未配置自动执行命令。
在配置auto-execute command命令并退出登录之前,要确保可以通过其他VTY用户登录并更改配置,以便出现问题后,能删除该配置。
配置自动执行命令后,用户在登录时,系统会自动执行已经配置好的命令,执行完命令后,自动断开用户连接。如果这条命令引发了一个任务,系统会等这个任务执行完毕后再断开连接。
(6) 配置快捷键。
¡ 配置中止当前运行任务的快捷键。
escape-key { key-string | default }
缺省情况下,键入<Ctrl+C>中止当前运行的任务。
¡ 配置对当前用户线进行锁定并重新认证的快捷键。
lock-key key-string
缺省情况下,不存在对当前用户线进行锁定并重新认证的快捷键。
用户已经成功登录到了设备上,并希望将当前设备作为Telnet客户端登录到Telnet服务器上进行操作,如图3-2所示。
先配置设备IP地址并获取Telnet服务器的IP地址。如果设备与Telnet服务器相连的端口不在同一子网内,请保证两台设备间路由可达。
(1) 进入系统视图。
system-view
(2) (可选)指定设备作为Telnet客户端时,发送Telnet报文的源IPv4地址或源接口。
telnet client source { interface interface-type interface-number | ip ip-address }
缺省情况下,未指定发送Telnet报文的源IPv4地址和源接口,使用报文路由出接口的主IPv4地址作为Telnet报文的源地址。
(3) 退回用户视图。
quit
(4) 设备作为Telnet客户端登录到Telnet服务器。
(IPv4网络)
telnet remote-host [ service-port ] [ source { interface interface-type interface-number | ip ip-address } ] [ dscp dscp-value ] [ escape character ]
(IPv6网络)
telnet ipv6 remote-host [ -i interface-type interface-number ] [ port-number ] [ source { interface interface-type interface-number | ipv6 ipv6-address } ] [ dscp dscp-value ] [ escape character ]
用户通过一个不能保证安全的网络环境远程登录到设备时,SSH(Secure Shell,安全外壳)可以利用加密和强大的认证功能提供安全保障,保护设备不受诸如IP地址欺诈、明文密码截取等攻击。
· 设备可以作为SSH服务器,以便用户能够使用SSH协议登录到设备进行远程管理和监控。具体配置请参见“3.5.2 配置设备作为SSH服务器”。
· 设备也可以作为SSH客户端,使用SSH协议登录到别的设备,对别的设备进行管理和监控。具体配置请参见“3.5.3 配置设备作为SSH客户端登录其他设备”。
以下配置步骤只介绍采用password方式认证SSH客户端的配置方法,publickey方式的配置方法及SSH的详细介绍,请参见“安全配置指导”中的“SSH”。
(1) 进入系统视图。
system-view
(2) 生成本地密钥对。
public-key local create { dsa | ecdsa secp256r1 | rsa }
(3) 开启SSH服务器功能。
ssh server enable
缺省情况下,SSH服务器功能处于关闭状态。
(4) (可选)建立SSH用户,并指定SSH用户的认证方式。
ssh user username service-type stelnet authentication-type password
(5) 进入VTY用户线或VTY用户线类视图。
¡ 进入VTY用户线视图。
line vty first-number [ last-number ]
¡ 进入VTY用户线类视图。
line class vty
(6) 配VTY用户线的认证方式为scheme方式。
authentication-mode scheme
缺省情况下,VTY用户线的认证方式为password方式。
用户线视图下,authentication-mode和protocol inbound存在关联绑定关系,当两条命令中的任意一条配置了非缺省值,那么另外一条取用户线下的值。
如果设置认证方式为scheme,但是没有配置认证用户,会影响下次登录设备。
(7) (可选)配置VTY用户线支持的SSH协议。
protocol inbound { all | ssh | telnet }
缺省情况下,设备同时支持Telnet和SSH协议。
本配置将在用户下次使用该用户线登录时生效。
用户线视图下,authentication-mode和protocol inbound存在关联绑定关系,当两条命令中的任意一条配置了非缺省值,那么另外一条取用户线下的值。
(8) (可选)配置SSH方式登录设备时,同时在线的最大用户连接数。
aaa session-limit ssh max-sessions
缺省情况下,SSH方式登录同时在线的最大用户连接数为32。
配置本命令后,已经在线的用户连接不会受到影响,只对新的用户连接生效。如果当前在线的用户连接数已经达到最大值,则新的连接请求会被拒绝,登录会失败。
关于该命令的详细描述,请参见“用户接入与认证命令参考”中的“AAA”。
(9) (可选)退回系统视图并配置VTY用户线的公共属性。
a. 退回系统视图。
quit
b. 配置VTY用户线的公共属性。
详细配置请参见“3.4.3 7. 配置VTY用户线的公共属性”。
用户已经成功登录到了设备上,并希望将当前设备作为SSH客户端登录到其他设备上进行操作,如图3-3所示。
先配置设备IP地址并获取SSH服务器的IP地址。如果设备与SSH服务器相连的端口不在同一子网内,请配置路由使得两台设备间路由可达。
请在用户视图下执行本命令,配置设备作为SSH客户端登录到SSH服务器。
(IPv4网络)
ssh2 server
(IPv6网络)
ssh2 ipv6 server
为配合SSH服务器,设备作为SSH客户端时还可进一步进行其他配置,具体配置请参见“安全配置指导”中的“SSH”。
表3-2 CLI显示和维护
操作 |
命令 |
说明 |
显示用户线的相关信息 |
display line [ num1 | { console | vty } num2 ] [ summary ] |
在任意视图下执行 |
显示设备作为Telnet客户端的相关配置信息 |
display telnet client |
在任意视图下执行 |
显示当前正在使用的用户线以及用户的相关信息 |
display users |
在任意视图下执行 |
显示设备支持的所有用户线以及用户的相关信息 |
display users all |
在任意视图下执行 |
释放指定的用户线 |
free line { num1 | { console | vty } num2 } |
在用户视图下执行 系统支持多个用户同时对设备进行配置,当管理员在维护设备时,其他在线用户的配置影响到管理员的操作,或者管理员正在进行一些重要配置不想被其他用户干扰时,可以使用以下命令强制断开该用户的连接 不能使用该命令释放用户当前自己使用的连接 |
锁定当前用户线并设置解锁密码,防止未授权的用户操作该线 |
lock |
在用户视图下执行 缺省情况下,系统不会自动锁定当前用户线 |
锁定当前用户线并对其进行重新认证 |
lock reauthentication |
在任意视图下执行 缺省情况下,系统不会自动锁定当前用户线并对其进行重新认证 请使用设备登录密码解除锁定并重新登录设备 |
向指定的用户线发送消息 |
send { all | num1 | { console | vty } num2 } |
在用户视图下执行 |
为了方便用户对网络设备进行配置和维护,设备提供Web功能。用户可以通过PC登录到设备上,使用Web界面直观地配置和维护设备。
设备支持两种Web登录方式:
· HTTP登录方式:HTTP(Hypertext Transfer Protocol,超文本传输协议)用来在Internet上传递Web页面信息。HTTP位于TCP/IP协议栈的应用层,传输层采用面向连接的TCP。设备同时支持HTTP协议1.0和1.1版本。
· HTTPS登录方式:HTTPS(Hypertext Transfer Protocol Secure,超文本传输协议的安全版本)是支持SSL(Secure Sockets Layer,安全套接字层)协议的HTTP协议。HTTPS通过SSL协议,能对客户端与设备之间交互的数据进行加密,能为设备制定基于证书属性的访问控制策略,提高了数据传输的安全性和完整性,保证合法客户端可以安全地访问设备,禁止非法的客户端访问设备,从而实现了对设备的安全管理。
同一浏览器下只允许一个用户登录设备。如果多个用户在同一浏览器下登录设备,则最新登录的用户有效。
如果设备只开启了HTTP服务,为了增强设备的安全性,HTTPS服务的端口号也会被自动打开,且在HTTP服务开启的状态下无法通过undo ip https enable命令关闭。
Web登录配置任务如下:
(1) 配置通过Web登录设备
请选择其中一项进行配置:
(2) 开启HTTP慢速攻击防御功能
(3) 配置用于Web登录的本地用户
(4) 管理Web登录用户连接
(5) 开启Web操作日志输出功能
在通过Web登录设备前,需要配置设备的IP地址,确保设备与Web登录用户间路由可达。
(1) (可选)请在用户视图下执行本命令,配置用户访问Web的固定校验码。
web captcha verification-code
缺省情况下,用户只能使用Web页面显示的校验码访问Web。
(2) 进入系统视图。
system-view
(3) 开启HTTP服务。
ip http enable
缺省情况下,HTTP服务处于关闭状态。
(4) (可选)配置HTTP服务的端口号。
ip http port port-number
缺省情况下,HTTP服务的端口号为80。
(5) (可选)配置HTTP服务在响应OPTIONS请求时返回的方法列表。
http method { delete | get | head | options | post | put } *
缺省情况下,未配置任何方法。
(6) (可选)配置HTTP连接空闲超时时间。
http idle-timeout minutes
缺省情况下,HTTP连接空闲超时时间为30分钟。
HTTPS登录方式分为以下两种:
· 简便登录方式:采用这种方式时,设备上只需开启HTTPS服务,用户即可通过HTTPS登录设备。此时,使用的是设备签发的自签名证书,此方式配置简单,但安全性较低。用户无需配置HTTPS服务关联的SSL服务器端策略,使用的SSL参数均为缺省值。但由于自签名证书不是由可信CA签发而不受浏览器信任,当用户使用HTTPS协议访问设备时,用户的浏览器上将会弹出安全风险提示,若用户能够接受使用自签名证书带来的安全风险,可选择忽略此提示,继续浏览网页。
· 安全登录方式:采用这种方式时,设备上不仅要开启HTTPS服务,还需要配置SSL服务器端策略、PKI域等。此时,采用的是CA签发的本地证书,此方式配置相对复杂但安全性较强。用户需要获取CA证书并向CA申请本地证书,同时配置SSL服务器端策略,并将其与HTTPS服务进行关联,来增强HTTPS服务的安全性。
采用安全登录方式时,请您首先从正规官方的第三方CA机构为设备购买SSL用途的本地证书,我司不为设备提供权威机构签发的CA证书。
SSL的相关描述和配置请参见“安全配置指导”中的“SSL”。自签名证书、本地证书及PKI的相关描述和配置请参见“安全配置指导”中的“PKI”。
· 更改HTTPS服务与SSL服务器端的关联策略,需要先关闭HTTP和HTTPS服务,再重新配置HTTPS服务与SSL服务器端策略关联,最后重新开启HTTP服务和HTTPS服务,新的策略即可生效。
· 如需恢复HTTPS使用自签名证书的情况,必须先关闭HTTP和HTTPS服务,再执行undo ip https ssl-server-policy,最后重新开启HTTP服务和HTTPS服务即可。
· 开启HTTPS服务,会触发SSL的握手协商过程。在SSL握手协商过程中,如果设备的本地证书不存在,则SSL协商过程会触发证书申请流程。由于证书申请需要较长的时间,会导致SSL协商不成功,从而无法正常启动HTTPS服务。此时,需要多次执行ip https enable命令,HTTPS服务才能正常启动。
· 如果配置HTTPS服务与证书属性访问控制策略关联,则必须同时在与HTTPS服务关联的SSL服务器端策略中配置client-verify enable命令,且证书属性访问控制策略中必须至少包括一条permit规则,否则任何HTTPS客户端都无法登录设备。
(1) (可选)请在用户视图下执行本命令,配置用户访问Web的固定校验码。
web captcha verification-code
缺省情况下,用户只能使用Web页面显示的校验码访问Web。
(2) 进入系统视图。
system-view
(3) (可选)配置HTTPS服务与其他策略的关联。
¡ 配置HTTPS服务与SSL服务器端策略关联。
ip https ssl-server-policy policy-name
缺省情况下,HTTPS服务未与SSL服务器端策略关联,HTTPS使用自签名证书。
¡ 配置HTTPS服务与证书属性访问控制策略关联。
ip https certificate access-control-policy policy-name
缺省情况下,HTTPS服务未与证书属性访问控制策略关联。
通过将HTTPS服务与已配置的客户端证书属性访问控制策略关联,可以实现对客户端的访问权限进行控制。证书属性访问控制策略的详细介绍请参见“安全配置指导”中的“PKI”。
(4) 开启HTTPS服务。
ip https enable
缺省情况下,HTTPS服务处于关闭状态。
(5) (可选)配置HTTPS服务的端口。
ip https port port-number
缺省情况下,HTTPS服务的端口号为443。
(6) (可选)配置使用HTTPS登录设备时的方式。
web https-authorization mode { auto | certificate | certificate-manual | manual }
缺省情况下,用户使用HTTPS登录设备时的方式为manual。
(7) (可选)配置通过数字证书登录设备时使用的用户名。
web https-authorization username { cn | email-prefix | oid oid-value }
缺省情况下,使用数字证书中的CN(Common Name,公用名称)字段,作为通过数字证书登录设备时使用的用户名。
HTTP慢速攻击(slow HTTP attack)是一种DoS攻击方式。此攻击根据HTTP和TCP协议发送合法的HTTP流量,但速度非常慢,这种行为消耗了服务器的大量资源,它必须保持连接打开,等待完整的请求到达。这使得HTTP连接一直被占用,导致正常的HTTP请求无法获得回应。
HTTP慢速攻击有主要有三种类型,分别是Slow headers、Slow body、Slow read。
· Slow headers(也称Slowloris):Web应用在处理HTTP请求之前都要先接收完整的HTTP头部,Web服务器在没接收到2个连续的\r\n时,会认为客户端没有发送完HTTP头部。Slow headers攻击者将一个HTTP请求报文头部分多次慢速发送给服务器,从而一直占用服务器的连接和内存资源。
· Slow body(也称Slow HTTP POST):攻击者发送一个HTTP POST请求,该请求的头部值很大,使得Web服务器或代理认为客户端要发送很大的数据。服务器会保持连接准备接收数据,但攻击客户端每次只发送很少量的数据,使该连接一直保持存活,消耗服务器的连接和内存资源。
· Slow read(也称Slow Read attack):客户端与服务器建立连接并发送了一个完整的HTTP请求给服务器端,然后一直保持这个连接,以很低的速度读取Response,让服务器误以为客户端很忙,直到连接快超时前才读取一个字节,以消耗服务器的连接和内存资源。
HTTP慢速攻击防御功能开启后,可通过http slow-attack命令来配置慢速攻击的超时时间,设备将根据超时时间来判断设备是否受到攻击,如果受到攻击设备会立即关闭超过会话超时时间的会话连接。
(1) 进入系统视图。
system-view
(2) 开启HTTP慢速攻击防御功能。
http slow-attack defense enable
缺省情况下,HTTP慢速攻击防御功能处于关闭状态。
(3) (可选)配置HTTP慢速攻击的超时时间。
http slow-attack { packet-header-timeout seconds | packet-body-timeout seconds | client-read-timeout seconds } *
缺省情况下,Slow headers攻击的超时时间为10秒,Slow body攻击的超时时间为20秒,Slow read攻击的超时时间为30秒。
(1) 进入系统视图。
system-view
(2) 创建本地用户用于Web登录,并进入本地用户视图。
local-user user-name [ class manage ]
(3) (可选)设置本地用户的密码。
password [ { hash | simple } password ]
缺省情况下,不存在本地用户密码,即本地用户认证时无需输入密码,只要用户名有效且其他属性验证通过即可认证成功。
(4) 配置Web登录用户的属性。
¡ 配置Web登录的用户角色。
authorization-attribute user-role user-role
缺省情况下,Web登录的用户角色为network-operator。
¡ 配置Web登录用户的服务类型。
service-type { http | https }
缺省情况下,未配置用户的服务类型。
(1) 进入系统视图。
system-view
(2) 配置Web登录用户连接的超时时间。
web idle-timeout minutes
缺省情况下,Web闲置超时时间为10分钟。
(1) 进入系统视图。
system-view
(2) 配置同时在线的最大Web用户连接数。
aaa session-limit { http | https } max-sessions
缺省情况下,同时在线的最大Web用户连接数为32。
配置本命令后,已经在线的用户连接不会受到影响,只对新的用户连接生效。如果当前在线的用户连接数已经达到最大值,则新的连接请求会被拒绝,登录会失败。关于该命令的详细描述,请参见“用户接入与认证命令参考”中的“AAA”。
请在用户视图下执行本命令,强制在线Web用户下线。
free web users { all | user-id user-id | user-name user-name }
(1) 进入系统视图。
system-view
(2) 开启Web操作日志输出功能。
webui log enable
缺省情况下,Web操作日志输出功能处于关闭状态。
在完成上述配置后,在任意视图下执行display命令可以显示Web用户的信息、HTTP的状态信息和HTTPS的状态信息,通过查看显示信息验证配置的效果;可以在用户视图下执行free web users命令来强制在线Web用户下线。
表4-1 Web用户显示
操作 |
命令 |
显示HTTP的状态信息 |
display ip http |
显示HTTPS的状态信息 |
display ip https |
显示Web的页面菜单树 |
display web menu [ chinese ] |
显示Web用户的相关信息 |
display web users |
强制在线Web用户下线 |
free web users { all | user-id user-id | user-name user-name } |
Host和设备通过IP网络相连且路由可达。管理员可以通过Host使用HTTP方式登录设备,以便通过Web页面来配置和管理设备。
图4-1 配置HTTP方式登录组网图
# 将AC上与Host相连的接口的IP地址配置为192.168.100.99/24。(配置步骤略)
# 配置Web用户名为admin,认证密码为hello12345,服务类型为http,用户角色为network-admin。
<AC> system-view
[AC] local-user admin
[AC-luser-manage-admin] service-type http
[AC-luser-manage-admin] authorization-attribute user-role network-admin
[AC-luser-manage-admin] password simple hello12345
[AC-luser-manage-admin] quit
# 配置开启HTTP服务。
[AC] ip http enable
在PC的浏览器地址栏内输入设备的IP地址并回车,浏览器将显示Web登录页面。
在Web登录页面输入用户名及密码,点击<登录>按钮后即可登录,显示Web初始页面。成功登录后,用户可以在配置区对设备进行相关配置。
用户可以通过Web页面访问和控制设备。为了防止非法用户访问和控制设备,提高设备管理的安全性,设备要求用户以HTTPS的方式登录Web页面,利用SSL协议实现用户身份验证,并保证传输的数据不被窃听和篡改。
为了满足上述需求,需要进行如下配置:
· 配置AC作为HTTPS服务器,并为AC申请证书。
· 为HTTPS客户端Host申请证书,以便AC验证其身份。
其中,负责为AC和Host颁发证书的CA(Certificate Authority,证书颁发机构)名称为new-ca。
采用Windows 2003 server CA服务器为AC和Host颁发证书,用户在使用HTTPS协议访问设备时,用户的浏览器上将会弹出安全风险提示,用户能够接受此种身份验证方式带来的安全风险,可选择忽略此提示,继续浏览网页。
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)确保AC、Host、CA之间路由可达。
本配置举例中,CA服务器为Windows 2003 server CA服务器,请先自行完成CA服务器的配置。有关Windows 2003 server CA服务器的详细配置,请参见“安全配置指导”中的“PKI”。
图4-2 HTTPS配置组网图
(1) 配置HTTPS服务器AC
# 配置PKI实体en,指定实体的通用名为http-server1、FQDN为ssl.security.com。
<AC> system-view
[AC] pki entity en
[AC-pki-entity-en] common-name http-server1
[AC-pki-entity-en] fqdn ssl.security.com
[AC-pki-entity-en] quit
# 配置PKI域1,指定信任的CA名称为new-ca、注册服务器的URL为http://10.1.2.2/certsrv/mscep/mscep.dll、证书申请的注册受理机构为RA、实体名称为en。
[AC] pki domain 1
[AC-pki-domain-1] ca identifier new-ca
[AC-pki-domain-1] certificate request url http://10.1.2.2/certsrv/mscep/mscep.dll
[AC-pki-domain-1] certificate request from ra
[AC-pki-domain-1] certificate request entity en
# 指定证书申请使用的RSA密钥对名称为“hostkey”,用途为“通用”,密钥对长度为1024比特。
[AC-pki-domain-1] public-key rsa general name hostkey length 1024
[AC-pki-domain-1] quit
# 生成本地的RSA密钥对。
[AC] public-key local create rsa
# 获取CA的证书。
[AC] pki retrieve-certificate domain 1 ca
# 为AC申请证书。
[AC] pki request-certificate domain 1
# 创建SSL服务器端策略myssl,指定该策略使用PKI域1,并配置服务器端需要验证客户端身份。
[AC] ssl server-policy myssl
[AC-ssl-server-policy-myssl] pki-domain 1
[AC-ssl-server-policy-myssl] client-verify enable
[AC-ssl-server-policy-myssl] quit
# 创建证书属性组mygroup1,并配置证书属性规则,该规则规定证书颁发者的DN(Distinguished Name,识别名)中包含new-ca。
[AC] pki certificate attribute-group mygroup1
[AC-pki-cert-attribute-group-mygroup1] attribute 1 issuer-name dn ctn new-ca
[AC-pki-cert-attribute-group-mygroup1] quit
# 创建证书访问控制策略myacp,并建立控制规则,该规则规定只有由new-ca颁发的证书可以通过证书访问控制策略的检测。
[AC] pki certificate access-control-policy myacp
[AC-pki-cert-acp-myacp] rule 1 permit mygroup1
[AC-pki-cert-acp-myacp] quit
# 配置HTTPS服务与SSL服务器端策略myssl关联。
[AC] ip https ssl-server-policy myssl
# 配置HTTPS服务与证书属性访问控制策略myacp关联,确保只有从new-ca获取证书的HTTPS客户端可以访问HTTPS服务器。
[AC] ip https certificate access-control-policy myacp
# 使能HTTPS服务。
[AC] ip https enable
# 创建本地用户usera,密码为hello12345,服务类型为https,用户角色为network-admin。
[AC] local-user usera
[AC-luser-usera] password simple hello12345
[AC-luser-usera] service-type https
[AC-luser-usera] authorization-attribute user-role network-admin
(2) 配置HTTPS客户端Host
在Host上打开IE浏览器,输入网址http://10.1.2.2/certsrv,根据提示为Host申请证书。
在Host上打开IE浏览器,输入网址https://10.1.1.1,选择new-ca为Host颁发的证书,即可打开AC的Web登录页面。在登录页面,输入用户名usera,密码hello12345,则可进入AC的Web配置页面,实现对AC的访问和控制。
· HTTPS服务器的URL地址以“https://”开始,HTTP服务器的URL地址以“http://”开始。
· PKI配置命令的详细介绍请参见“安全命令参考”中的“PKI”;
· public-key local create rsa命令的详细介绍请参见“安全命令参考”中的“公钥管理”;
· SSL配置命令的详细介绍请参见“安全命令参考”中的“SSL”。
用户可以通过Web页面访问和控制设备。为了防止非法用户访问和控制设备,提高设备管理的安全性,要求用户以HTTPS的方式登录设备的Web页面。
图4-3 使用HTTPS方式登录设备典型配置组网图
由于浏览器在校验HTTPS Web站点提供的本地证书时,会校验证书中的“主题备用名称”与当前访问站点的域名是否匹配。因此,用户在向CA申请本地证书时,必须按照申请时CA机构的提示,将“主题备用名称”配置为HTTPS站点对应的域名,这样才能保证用户在使用域名地址访问HTTPS站点时,Web页面的本地证书才能成功通过浏览器的验证。
对于需要同时管理多台设备登录的场景,可以在向CA申请本地证书时申请通配符证书。比如,在申请本地证书时,将“主题备用名称”配置为“*.abc.com”,同时为需要管理的多台设备建立Web登录的IP地址与不同的域名(device1.abc.com、device2.abc.com…)之间的对应关系,可以实现管理员使用HTTPS方式登录任意一台想要访问的设备时,Web页面的本地证书能够成功通过浏览器的验证。
在进行下面的配置之前,请完成如下准备工作:
· 确保Host已经获取并安装了能够校验AC上本地证书合法性的CA证书,并且保证Host通过本地证书主题备用名称中的域名访问AC时,该域名可以被成功解析为能够登录设备Web页面的IP地址。
· 已通过FTP或者TFTP协议将CA证书文件、本地证书文件和本地证书关联的密钥对文件上传到AC的文件系统中,有关FTP或者TFTP协议的详细说明,请参考“基础配置指导”中的“FTP和TFTP”。
(1) 配置PKI域
# 创建并进入PKI域aaa。
<AC> system-view
[AC] pki domain aaa
# 关闭CRL检查。(是否进行CRL检查,请以实际的使用需求为准,此处仅为示例)
[AC-pki-domain-aaa] undo crl check enable
# 在PKI域aaa中指定证书关联使用的密钥对为abc,密钥用途为通用。
[AC-pki-domain-aaa] public-key rsa general name abc
[AC-pki-domain-aaa] quit
(2) 导入CA和本地证书文件
# 向PKI域中导入CA证书,证书文件格式为PEM编码,证书文件名称为ca.pem(请以实际的CA证书名为准,此处仅为示例)。
[AC] pki import domain aaa pem ca filename ca.pem
# 向PKI域中导入不含密钥对的PEM格式的本地证书文件,证书文件名称为xyz.abc.com.cert.pem。
[AC] pki import domain aaa pem local filename xyz.abc.com.cert.pem
# 向PKI域中导入PEM格式的本地非对称密钥对文件xyz.abc.com.key.pem。
[AC] public-key local import rsa abc filename xyz.abc.com.key.pem
(3) 配置SSL服务器端策略和HTTPS服务
# 创建SSL服务器端策略myssl,指定该策略使用PKI域aaa。
[AC] ssl server-policy myssl
[AC-ssl-server-policy-myssl] pki-domain aaa
[AC-ssl-server-policy-myssl] quit
# 配置HTTPS服务与SSL服务器端策略myssl关联。
[AC] ip https ssl-server-policy myssl
# 开启HTTPS服务。
[AC] ip https enable
# 创建本地用户usera,密码为hello12345,服务类型为https,用户角色为network-admin。
[AC] local-user usera
[AC-luser-usera] password simple hello12345
[AC-luser-usera] service-type https
[AC-luser-usera] authorization-attribute user-role network-admin
· PKI配置命令的详细介绍,请参见“安全命令参考”中的“PKI”。
· SSL配置命令的详细介绍,请参见“安全命令参考”中的“SSL”。
在Host上打开IE浏览器,输入AC的Web页面的域名地址,即可打开AC的Web登录页面。在登录页面,输入用户名usera,密码hello12345,则可进入AC的Web配置页面,实现对AC的访问和控制。
使用SNMP协议,用户可通过NMS(Network Management System,网络管理系统)登录到设备上,通过Set和Get等操作对设备进行管理、配置,如图5-1所示。
通过SNMP登录设备的详细介绍,请参见“网络管理和监控配置指导”中的“SNMP”。
为了方便用户对网络设备进行配置和维护,设备提供了RESTful API(Representational State Transfer Application Programming Interface)。用户遵循API参数和返回值约定,使用python、ruby或java等语言进行编程,发送HTTP或HTTPS报文到设备进行认证,认证成功后,可以通过在HTTP或HTTPS报文中指定RESTful API操作来配置和维护设备,这些操作包括Get、Put、Post、Delete等等。
设备支持HTTP和HTTPS两种方式在Internet上传递RESTful请求信息。
(1) 进入系统视图。
system-view
(2) (可选)配置基于HTTP的RESTful功能的端口号。
restful http port port-number
缺省情况下,基于HTTP的RESTful功能的端口号为80。
(3) 开启基于HTTP的RESTful功能。
restful http enable
缺省情况下,基于HTTP的RESTful功能处于关闭状态。
(4) 创建本地用户用于RESTful登录,并进入本地用户视图。
local-user user-name [ class manage ]
(5) 设置本地用户的密码。
password [ { hash | simple } password ]
(6) (可选)配置RESTful用户的角色。
authorization-attribute user-role user-role
缺省情况下,RESTful用户的角色为network-operator。
(7) 配置RESTful用户的服务类型为HTTP。
service-type http
缺省情况下,未配置用户的服务类型。
(1) 进入系统视图。
system-view
(2) (可选)配置基于HTTPS的RESTful功能与SSL服务器端策略关联。
restful https ssl-server-policy policy-name
缺省情况下,基于HTTPS的RESTful功能未与SSL服务器端策略关联。
配置该功能后,设备将使用SSL服务器端策略指定的加密套件等SSL参数建立连接,以加强基于HTTPS的RESTful功能的安全性。有关SSL服务器端策略的配置,请参见“安全配置指导”中的“SSL”。
(3) (可选)配置基于HTTPS的RESTful功能的端口号。
restful https port port-number
缺省情况下,基于HTTPS的RESTful功能的端口号为443。
(4) 开启基于HTTPS的RESTful功能。
restful https enable
缺省情况下,基于HTTPS的RESTful功能处于关闭状态。
(5) 创建本地用户用于RESTful登录,并进入本地用户视图。
local-user user-name [ class manage ]
(6) 设置本地用户的密码。
password [ { hash | simple } password ]
(7) (可选)配置RESTful用户的角色。
authorization-attribute user-role user-role
缺省情况下,RESTful用户的角色为network-operator。
(8) 配置RESTful用户的服务类型为HTTPS。
service-type https
缺省情况下,未配置用户的服务类型。
通过引用ACL(Access Control List,访问控制列表),可以对访问设备的登录用户进行控制:
· 当未引用ACL时,允许所有登录用户访问设备;
· 当引用的ACL不存在、或者引用的ACL为空时,禁止所有登录用户访问设备;
对于Web用户,当引用的ACL不存在、或者引用的ACL为空时,是允许所有Web用户访问设备的。
· 当引用的ACL非空时,则只有ACL中permit的用户才能访问设备,其他用户不允许访问设备,以免非法用户访问设备。
关于ACL的详细描述和介绍请参见“安全配置指导”中的“ACL”。
用户登录后,可以通过AAA功能来对用户使用的命令行进行授权和计费。
(1) 进入系统视图。
system-view
(2) 配置对Telnet用户的访问控制。
(IPv4网络)
telnet server acl [ mac ] acl-number
(IPv6网络)
telnet server ipv6 acl { ipv6 | mac } acl-number
缺省情况下,未对Telnet用户进行ACL限制。
(3) (可选)开启匹配ACL deny规则后打印日志信息功能。
telnet server acl-deny-log enable
缺省情况下,匹配ACL deny规则后打印日志信息功能处于关闭状态。
(1) 进入系统视图。
system-view
(2) 配置对SSH用户的访问控制。
(IPv4网络)
ssh server acl { advanced-acl-number | basic-acl-number | mac mac-acl-number }
(IPv6网络)
ssh server ipv6 acl { ipv6 { advanced-acl-number | basic-acl-number } | mac mac-acl-number }
缺省情况下,未对SSH用户进行ACL限制。
(3) (可选)开启匹配ACL deny规则后打印日志信息功能。
ssh server acl-deny-log enable
关于ssh server acl、ssh server ipv6 acl和ssh server acl-deny-log enable命令的详细介绍请参见“安全命令参考”中的“SSH”。
通过源IP对Telnet进行控制,仅允许源IP地址为10.110.100.52的Telnet用户访问设备。
图7-1 使用ACL对Telnet用户进行控制
# 定义ACL。
<AC> system-view
[AC] acl basic 2000 match-order config
[AC-acl-ipv4-basic-2000] rule 1 permit source 10.110.100.52 0
[AC-acl-ipv4-basic-2000] quit
# 开启Telnet服务并引用ACL,允许源IP地址为10.110.100.52的Telnet用户访问设备。
[AC] telnet server enable
[AC] telnet server acl 2000
# 在Host B(源IP地址为10.110.100.52的Telnet用户)上可以通过Telnet方式登录到设备。
C:> telnet 10.110.110.66
Trying 10.110.110.66 ...
Press CTRL+K to abort
Connected to 10.110.110.66 ...
******************************************************************************
* Copyright (c) 2004-2017 New H3C Technologies Co., Ltd. All rights reserved.*
* Without the owner's prior written consent, *
* no decompiling or reverse-engineering shall be allowed. *
******************************************************************************
<AC>
# 在Host A上(源IP地址不为10.110.100.52的Telnet用户)不可以通过Telnet方式登录到设备。
C:\> telnet 10.110.110.66
Trying 10.110.110.66 ...
Press CTRL+K to abort
Connected to 10.110.110.66 ...
Failed to connect to the remote host!
(1) 进入系统视图。
system-view
(2) 引用访问控制列表对Web用户进行控制。请选择其中一项进行配置。
¡ 对HTTP登录用户进行控制:
ip http acl [ ipv6 ] [ advanced ] { acl-number | name acl-name }
ip http acl mac { acl-number | name acl-name }
¡ 对HTTPS登录用户进行控制:
ip https acl [ ipv6 ] [ advanced ] {acl-number | name acl-name }
ip https acl mac { acl-number | name acl-name }
缺省情况下,Web用户没有引用访问控制列表。
(3) (可选)引用访问控制列表控制Web用户和设备建立TCP连接。请选择其中一项进行配置。
¡ 对HTTP登录用户进行控制。
(IPv4网络)
http acl { advanced-acl-number | basic-acl-number }
(IPv6网络)
http ipv6 acl { advanced-acl-number | basic-acl-number }
¡ 对HTTPS登录用户进行控制。
(IPv4网络)
https acl { advanced-acl-number | basic-acl-number }
(IPv6网络)
https ipv6 acl { advanced-acl-number | basic-acl-number }
缺省情况下,允许所有Web用户和设备建立TCP连接。
通过源IP对Web用户进行控制,仅允许来自10.110.100.52的Web用户访问设备。
[AC] acl basic 2030 match-order config
[AC-acl-ipv4-basic-2030] rule 1 permit source 10.110.100.52 0
[AC-acl-ipv4-basic-2030] quit
# 开启HTTP服务并引用访问控制列表,仅允许来自10.110.100.52的Web用户访问设备。
[AC] ip http enable
在Host B上打开浏览器,输入http://10.110.110.66,按下回车,打开Web用户登录界面,输入用户名和密码后,按下<登录>按钮,进入设备配置管理Web界面。在Host A上打开浏览器,输入http://10.110.110.66,按下回车,打开Web用户登录界面,输入用户名和密码后,按下<登录>按钮,无法进入设备配置管理Web界面。
对NMS的访问进行控制的详细介绍请参见“网络管理和监控配置指导”中的“SNMP”。
通过源IP对NMS进行控制,仅允许来自10.110.100.52和10.110.100.46的NMS访问设备。
图7-3 使用ACL对NMS进行控制
# 定义基本ACL。
<AC> system-view
[AC] acl basic 2000 match-order config
[AC-acl-ipv4-basic-2000] rule 1 permit source 10.110.100.52 0
[AC-acl-ipv4-basic-2000] rule 2 permit source 10.110.100.46 0
[AC-acl-ipv4-basic-2000] quit
# 开启SNMP Agent功能,创建SNMP用户usera并引用ACL,仅允许源IP地址为10.110.100.52或10.110.100.46的NMS访问设备。
[AC] snmp-agent
[AC] snmp-agent community read aaa acl 2000
[AC] snmp-agent group v2c groupa acl 2000
[AC] snmp-agent usm-user v2c usera groupa acl 2000
在源IP地址为10.110.100.52或10.110.100.46的NMS上,可以访问设备;在源IP地址不为10.110.100.52或10.110.100.46的NMS上,无法访问设备。
缺省情况下,用户登录设备后可以使用的命令行由用户拥有的用户角色决定。当用户线采用AAA认证方式并配置命令行授权功能后,用户可使用的命令行将受到用户角色和AAA授权的双重限制。用户每执行一条命令都会进行授权检查,只有授权成功的命令才被允许执行。
开启命令行授权功能后,不同登录方式用户的命令行授权情况不同,具体如下:
· 如果用户通过无认证方式(none)或者password认证方式登录设备,则设备无法对其进行命令行授权,禁止用户执行任何命令。
· 如果用户通过scheme认证方式登录设备:
¡ 如果用户通过了本地认证,则设备通过本地用户视图下的授权用户角色对用户进行命令行授权。
¡ 如果用户通过了远端认证,则由远端服务器对用户进行命令行授权。如果远端授权失败,则按照本地同名用户的用户角色进行命令行授权,如果授权也失败,则禁止用户执行该命令行。
在用户线类视图下该命令的配置结果将在下次登录设备时生效;在用户线视图下该命令的配置结果会立即生效。
如果由远端服务器对用户进行命令行授权,还需要在ISP域视图下配置命令行授权方法。命令行授权方法可以和login用户的授权方法相同,也可以不同。相关详细介绍请参见“用户接入与认证配置指导”中的“AAA”。
(1) 进入系统视图。
system-view
(2) 进入用户线/用户线类视图。请选择其中一项进行配置。
¡ 进入用户线视图。
line { first-number1 [ last-number1 ] | { console | vty } first-number2 [ last-number2 ] }
¡ 进入用户线类视图。
line class { console | vty }
用户线视图下的配置优先于用户线类视图下的配置。用户线视图下的属性配置为缺省值时,将采用用户线类视图下配置的值。用户线类视图下的配置修改会在用户下次登录后生效。
(3) 设置登录用户的认证方式为通过AAA认证。
authentication-mode scheme
缺省情况下,用户通过Console口登录,认证方式为none;用户通过VTY用户线登录,认证方式为password。
用户线视图下,authentication-mode和protocol inbound存在关联绑定关系,当两条命令中的任意一条配置了非缺省值,那么另外一条取用户线下的值。
如果设置认证方式为scheme,但是没有配置认证用户,会影响下次登录设备。
(4) 开启命令行授权功能。
command authorization
缺省情况下,命令行授权功能处于关闭状态,即用户登录后执行命令行不需要授权。
如果用户线类视图下开启了命令行授权功能,则该类型用户线视图都开启命令行授权功能,并且在该类型用户线视图下将无法关闭命令行授权功能。
为了保证AC的安全,需要对登录用户执行命令的权限进行限制:用户Host A登录AC后,输入的命令必须先获得HWTACACS服务器的授权,才能执行。否则,不能执行该命令。如果HWTACACS服务器故障导致授权失败,则采用本地授权。
图7-4 命令行授权配置组网图
# 在AC上配置IP地址,以保证AC和Host A、AC和HWTACACS server之间互相路由可达。(配置步骤略)
# 开启设备的Telnet服务器功能,以便用户访问。
<AC> system-view
[AC] telnet server enable
# 配置用户登录设备时,需要输入用户名和密码进行AAA认证,可以使用的命令由认证结果决定。
[AC] line vty 0 4
[AC-line-vty0-4] authentication-mode scheme
# 使能命令行授权功能,限制用户只能使用授权成功的命令。
[AC-line-vty0-4] command authorization
[AC-line-vty0-4] quit
# 配置HWTACACS方案:授权服务器的IP地址、TCP端口号分别为192.168.2.20和49(该端口号必须和HWTACACS服务器上的设置一致),报文的加密密码是expert,登录时不需要输入域名,使用缺省域。
[AC] hwtacacs scheme tac
[AC-hwtacacs-tac] primary authentication 192.168.2.20 49
[AC-hwtacacs-tac] primary authorization 192.168.2.20 49
[AC-hwtacacs-tac] key authentication simple expert
[AC-hwtacacs-tac] key authorization simple expert
[AC-hwtacacs-tac] user-name-format without-domain
[AC-hwtacacs-tac] quit
# 配置缺省域的命令行授权AAA方案,使用tac local方案,即优先使用HWTACACS方案,HWTACACS方案认证失败转为本地认证。
[AC] domain system
[AC-isp-system] authentication login hwtacacs-scheme tac local
[AC-isp-system] authorization command hwtacacs-scheme tac local
[AC-isp-system] quit
# 配置本地认证所需参数:创建本地用户monitor,密码为明文的hello12345,可使用的服务类型为telnet,用户角色为level-1。
[AC] local-user monitor
[AC-luser-manage-monitor] password simple hello12345
[AC-luser-manage-monitor] service-type telnet
[AC-luser-manage-monitor] authorization-attribute user-role level-1
# 在Host A上通过Telnet方式登录到AC(IP地址为10.110.100.77),登录成功后,执行ip http enable命令,由于授权失败,提示拒绝访问。
C:\> telnet 10.110.100.77
Trying 10.110.100.77 ...
Press CTRL+K to abort
Connected to 10.110.100.77 ...
******************************************************************************
* Copyright (c) 2004-2017 New H3C Technologies Co., Ltd. All rights reserved.*
* Without the owner's prior written consent, *
* no decompiling or reverse-engineering shall be allowed. *
******************************************************************************
login: monitor
Password:
<AC> system-view
System View: return to User View with Ctrl+Z.
[AC] ip http enable
Permission denied.
[AC]
# 在Host A上通过Telnet方式登录到AC(IP地址为10.110.100.77),登录成功后,执行interface命令,由于授权成功,命令行执行成功。
[AC] interface gigabitethernet 1/0/1
[AC-GigabitEthernet1/0/1]
当用户线采用AAA认证方式并配置命令行计费功能后,系统会将用户执行过的命令记录到HWTACACS服务器上,以便集中监视用户对设备的操作。命令行计费功能生效后,如果没有配命令行授权功能,则用户执行的每一条合法命令都会发送到HWTACACS服务器上做记录;如果配置了命令行授权功能,则用户执行的并且授权成功的命令都会发送到HWTACACS服务器上做记录。
要使配置的命令行计费功能生效,还需要在ISP域视图下配置命令行计费方法。命令行计费方法、命令行授权方法、login用户的授权方法可以相同,也可以不同。相关详细介绍请参见“用户接入与认证配置指导”中的“AAA”。
(1) 进入系统视图。
system-view
(2) 进入用户线/用户线类视图。请选择其中一项进行配置。
¡ 进入用户线视图。
line { first-number1 [ last-number1 ] | { console | vty } first-number2 [ last-number2 ] }
¡ 进入用户线类视图。
line class { console | vty }
用户线视图下的配置优先于用户线类视图下的配置。用户线视图下的属性配置为缺省值时,将采用用户线类视图下配置的值。用户线类视图下的配置修改将在用户下次登录后生效。
(3) 设置登录用户的认证方式为通过AAA认证。
authentication-mode scheme
缺省情况下,用户通过Console口登录,认证方式为none;用户通过VTY用户线登录,认证方式为password。
用户线视图下,authentication-mode和protocol inbound存在关联绑定关系,当两条命令中的任意一条配置了非缺省值,那么另外一条取用户线下的值。
如果设置认证方式为scheme,但是没有配置认证用户,会影响下次登录设备。
(4) 开启命令行计费功能。
command accounting
缺省情况下,命令行计费功能处于关闭状态。
如果用户线类视图下开启了命令行计费功能,则该类型用户线视图都开启命令行计费功能,并且在该类型用户线视图下将无法关闭命令行计费功能。
为便于集中控制、监控用户对设备的操作,需要将登录用户执行的命令发送到HWTACACS服务器进行记录。
图7-5 命令行计费配置组网图
# 开启AC的Telnet服务器功能,以便用户访问。
<AC> system-view
[AC] telnet server enable
# 配置使用Console口登录设备的用户执行的命令需要发送到HWTACACS服务器进行记录。
[AC] line console 0
[AC-line-console0] command accounting
[AC-line-console0] quit
# 配置使用Telnet或者SSH登录的用户执行的命令需要发送到HWTACACS服务器进行记录。
[AC] line vty 0 4
[AC-line-vty0-4] command accounting
[AC-line-vty0-4] quit
# 配置HWTACACS方案:计费服务器的IP地址、TCP端口号分别为192.168.2.20和49,报文的加密密码是expert,登录时不需要输入域名,使用缺省域。
[AC] hwtacacs scheme tac
[AC-hwtacacs-tac] primary accounting 192.168.2.20 49
[AC-hwtacacs-tac] key accounting simple expert
[AC-hwtacacs-tac] user-name-format without-domain
[AC-hwtacacs-tac] quit
# 配置缺省域的命令行计费AAA方案,使用HWTACACS方案。
[AC] domain system
[AC-isp-system] accounting command hwtacacs-scheme tac
[AC-isp-system] quit
分别在Host A、Host B、Host C上使用Telnet方式或者SSH方式登录到设备上,进行VLAN以及接口下的相关配置,设备向计费服务器发送了计费报文,计费服务器收到报文后,根据用户对计费服务器的配置,对计费报文进行相应处理。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!