38-HTTP配置
本章节下载 (193.25 KB)
目 录
HTTP是Hypertext Transfer Protocol(超文本传输协议)的简称。它用来在Internet上传递Web页面信息。HTTP位于TCP/IP协议栈的应用层。传输层采用面向连接的TCP。
目前,设备支持的HTTP协议版本为HTTP/1.0。
HTTP采用客户端/服务器通信模式。客户端和服务器之间的信息交互过程如下:
(1) 在客户端与服务器之间建立TCP连接,通常情况下端口号为80。
(2) 客户端向服务器发送请求消息。
(3) 服务器处理客户请求后,回复响应消息给客户端。
(4) 关闭客户端与服务器之间的TCP连接。
在设备上使能HTTP服务后,用户就可以通过HTTP协议登录设备,利用Web功能访问并控制设备。
为了实现对设备的安全管理,可以通过下面方法提高设备的安全性:
l 只在需要HTTP服务时,使能该功能,否则关闭该功能。
l 将HTTP服务的端口号修改为非常用端口号(8080),减少非法用户对HTTP服务的攻击。
l 将HTTP服务与ACL(Access Control List,访问控制列表)关联,只允许通过ACL过滤的客户端访问设备。
与HTTP相关的协议规范有:
RFC 1945:Hypertext Transfer Protocol -- HTTP/1.0
只有使能该功能后,设备才能作为HTTP服务器,允许用户通过Web功能访问和控制设备。
表1-1 使能HTTP服务
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
使能HTTP服务 |
ip http enable |
必选 缺省情况下,HTTP服务处于开启状态 |
通过配置HTTP服务的端口号,可以减少非法用户对HTTP服务的攻击。
表1-2 配置HTTP服务的端口号
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置HTTP服务的端口号 |
ip http port port-number |
必选 缺省情况下,HTTP服务的端口号为80 |
如果重复执行ip http port命令,HTTP服务将使用最后一次配置的端口号。
通过将HTTP服务与ACL关联,可以过滤掉来自某些客户端的请求,只允许通过ACL过滤的客户端访问设备。
表1-3 配置HTTP服务与ACL关联
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置HTTP服务与ACL关联 |
ip http acl acl-number |
必选 缺省情况下,没有ACL与HTTP服务关联 |
l 如果重复执行ip http acl命令关联ACL,HTTP服务将只与最后一次配置的ACL关联。
l ACL的详细介绍请参见“ACL配置”。
在完成上述配置后,在任意视图下执行display命令可以显示配置后HTTP的运行情况,通过查看显示信息验证配置的效果。
表1-4 HTTP显示和维护
操作 |
命令 |
显示HTTP的状态信息 |
display ip http |
根据源IP地址对Web登录用户进行过滤,实现只有10.1.1.0/24网段的用户可以通过Web页面登录设备Device,对其进行访问和控制。
图1-1 HTTP配置组网图
(1) 配置HTTP服务器Device
# 创建基本ACL规则2000,允许源IP地址属于10.1.1.0/24网段的报文通过。
<Device> system-view
[Device] acl number 2000
[Device-acl-basic-2000] rule permit source 10.1.1.0 0.0.0.255
[Device-acl-basic-2000] quit
# 配置HTTP服务与ACL 2000关联。
[Device] ip http acl 2000
# 使能HTTP服务。
[Device] ip http enable
(2) 验证配置结果
在Host A上打开IE浏览器,输入网址http://10.1.1.1,可以打开Device的Web登录页面。
在Host B上打开IE浏览器,输入网址http://10.2.1.1,无法打开Device的Web登录页面。
HTTPS(Secure HTTP,安全的HTTP)是支持SSL(Secure Sockets Layer,安全套接层)协议的HTTP协议。
HTTPS通过SSL协议,从以下几方面提高了设备的安全性:
l 通过SSL协议保证合法客户端可以安全地访问设备,禁止非法的客户端访问设备;
l 客户端与设备之间交互的数据需要经过加密,保证了数据传输的安全性和完整性,从而实现了对设备的安全管理;
l 为设备制定基于证书属性的访问控制策略,对客户端的访问权限进行控制,进一步避免了非法客户对设备进行攻击。
l 设备上,HTTP连接和HTTPS连接的总数不能超过10。
l SSL的详细介绍请参见“SSL配置”。
表2-1 HTTPS配置任务简介
配置任务 |
说明 |
详细配置 |
配置HTTPS服务与SSL服务器端策略关联 |
必选 |
|
使能HTTPS服务 |
必选 |
|
配置HTTPS服务与证书属性访问控制策略关联 |
可选 |
|
配置HTTPS服务的端口号 |
可选 |
|
配置HTTPS服务与ACL关联 |
可选 |
使能HTTPS服务前,必须先配置HTTPS服务与已创建的SSL服务器端策略关联。
表2-2 配置HTTPS服务与SSL服务器端策略关联
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置HTTPS服务与SSL服务器端策略关联 |
ip https ssl-server-policy policy-name |
必选 缺省情况下,没有SSL服务器端策略与HTTPS服务关联 |
l 如果重复执行ip https ssl-server-policy命令,HTTPS服务将只与最后一次配置的SSL服务器端策略关联。
l 关闭HTTPS服务后,将自动取消HTTPS服务与SSL服务器端策略的关联。再次使能HTTPS服务之前,需要重新配置HTTPS服务与SSL服务器端策略关联。
l HTTPS服务处于使能状态时,对与其关联的SSL服务器端策略进行的修改不会生效。
只有使能该功能后,设备才能作为HTTPS服务器,允许用户通过Web功能访问和控制设备。
表2-3 使能HTTPS服务
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
使能HTTPS服务 |
ip https enable |
必选 缺省情况下,HTTPS服务处于关闭状态 |
l 使能HTTPS服务后,可以通过display ip https命令查看HTTPS服务的状态,验证HTTPS服务启动是否成功。
l 使能HTTPS服务,会触发SSL的握手协商过程。在SSL握手协商过程中,如果设备的本地证书已经存在,则SSL协商可以成功,HTTPS服务可以正常启动;如果设备的本地证书不存在,则SSL协商过程会触发证书申请流程。由于证书申请需要较长的时间,会导致SSL协商不成功,从而无法正常启动HTTPS服务。因此,在这种情况下,需要多次执行ip https enable命令,这样HTTPS服务才能正常启动。
通过将HTTPS服务与已配置的客户端证书属性访问控制策略关联,可以实现对客户端的访问权限进行控制,进一步保证设备的安全性。
表2-4 配置HTTPS服务与证书属性访问控制策略关联
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置HTTPS服务与证书属性访问控制策略关联 |
ip https certificate access-control-policy policy-name |
必选 缺省情况下,没有证书属性访问控制策略与HTTPS服务关联 |
l 如果重复执行ip https certificate access-control-policy命令,HTTPS服务将只与最后一次配置的证书属性访问控制策略关联。
l 如果配置HTTPS服务与证书属性访问控制策略关联,则必须同时在与HTTPS服务关联的SSL服务器端策略中配置client-verify enable命令,否则,客户端无法登录设备。
l 如果配置HTTPS服务与证书属性访问控制策略关联,则证书属性访问控制策略中必须至少包括一条permit规则,否则任何HTTPS客户端都无法登录设备。
l 证书属性访问控制策略的详细介绍请参见“PKI配置”。
通过配置HTTPS服务的端口号,可以减少非法用户对HTTPS服务的攻击。
表2-5 配置HTTPS服务的端口号
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置HTTPS服务的端口 |
ip https port port-number |
可选 缺省情况下,HTTPS服务的端口号为443 |
如果重复执行ip https port命令,HTTPS服务将使用最后一次配置的端口号。
通过将HTTPS服务与ACL关联,可以过滤掉来自某些客户端的请求,只允许通过ACL过滤的客户端访问设备。
表2-6 配置HTTPS服务与ACL关联
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置HTTPS服务与ACL关联 |
ip https acl acl-number |
必选 缺省情况下,没有ACL与HTTPS服务关联 |
l 如果重复执行ip https acl命令关联ACL,HTTPS服务将只与最后一次配置的ACL关联。
l ACL的详细介绍请参见“ACL配置”。
在完成上述配置后,在任意视图下执行display命令可以显示配置后HTTPS的运行情况,通过查看显示信息验证配置的效果。
表2-7 HTTPS显示和维护
操作 |
命令 |
显示HTTPS的状态信息 |
display ip https |
用户可以通过Web页面访问和控制设备。为了防止非法用户访问和控制设备,提高设备管理的安全性,设备要求用户以HTTPS(HTTP Security,支持SSL协议的HTTP)的方式登录Web页面,利用SSL协议实现用户身份验证,并保证传输的数据不被窃听和篡改。
为了满足上述需求,需要进行如下配置:
l 配置Device作为HTTPS服务器,并为Device申请证书。
l 为HTTPS客户端Host申请证书,以便Device验证其身份。
其中,负责为Device和Host颁发证书的CA(Certificate Authority,认证机构)名称为new-ca。
l 本配置举例中,采用Windows Server作为CA。在CA上需要安装SCEP(Simple Certificate Enrollment Protocol,简单证书注册协议)插件。
l 进行下面的配置之前,需要确保Device、Host、CA之间路由可达。
图2-1 HTTPS配置组网图
(1) 配置HTTPS服务器Device
# 配置PKI实体en,指定实体的通用名为http-server1、FQDN为ssl.security.com。
<Device> system-view
[Device] pki entity en
[Device-pki-entity-en] common-name http-server1
[Device-pki-entity-en] fqdn ssl.security.com
[Device-pki-entity-en] quit
# 配置PKI域1,指定信任的CA名称为new-ca、注册服务器的URL为http://10.1.2.2/certsrv/mscep/mscep.dll、证书申请的注册受理机构为RA、实体名称为en。
[Device] pki domain 1
[Device-pki-domain-1] ca identifier new-ca
[Device-pki-domain-1] certificate request url http://10.1.2.2/certsrv/mscep/mscep.dll
[Device-pki-domain-1] certificate request from ra
[Device-pki-domain-1] certificate request entity en
[Device-pki-domain-1] quit
# 生成本地的RSA密钥对。
[Device] public-key local create rsa
# 获取CA的证书。
[Device] pki retrieval-certificate ca domain 1
# 为Device申请证书。
[Device] pki request-certificate domain 1
# 创建SSL服务器端策略myssl,指定该策略使用PKI域1,并配置服务器端需要验证客户端身份。
[Device] ssl server-policy myssl
[Device-ssl-server-policy-myssl] pki-domain 1
[Device-ssl-server-policy-myssl] client-verify enable
[Device-ssl-server-policy-myssl] quit
# 创建证书属性组mygroup1,并配置证书属性规则,该规则规定证书颁发者的DN(Distinguished Name,可识别名称)中包含new-ca。
[Device] pki certificate attribute-group mygroup1
[Device-pki-cert-attribute-group-mygroup1] attribute 1 issuer-name dn ctn new-ca
[Device-pki-cert-attribute-group-mygroup1] quit
# 创建证书访问控制策略myacp,并建立控制规则,该规则规定只有由new-ca颁发的证书可以通过证书访问控制策略的检测。
[Device] pki certificate access-control-policy myacp
[Device-pki-cert-acp-myacp] rule 1 permit mygroup1
[Device-pki-cert-acp-myacp] quit
# 配置HTTPS服务与SSL服务器端策略myssl关联。
[Device] ip https ssl-server-policy myssl
# 配置HTTPS服务与证书属性访问控制策略myacp关联,确保只有从new-ca获取证书的HTTPS客户端可以访问HTTPS服务器。
[Device] ip https certificate access-control-policy myacp
# 使能HTTPS服务。
[Device] ip https enable
# 创建本地用户usera,密码为123,服务类型为telnet。
[Device] local-user usera
[Device-luser-usera] password simple 123
[Device-luser-usera] service-type telnet
(2) 配置HTTPS客户端Host
在Host上打开IE浏览器,输入网址http://10.1.2.2/certsrv,根据提示为Host申请证书。
(3) 验证配置结果
在Host上打开IE浏览器,输入网址https://10.1.1.1,选择new-ca为Host颁发的证书,即可打开Device的Web登录页面。在登录页面,输入用户名usera,密码123,则可进入Device的Web配置页面,实现对Device的访问和控制。
l HTTPS服务器的URL地址以“https://”开始,HTTP服务器的URL地址以“http://”开始。
l PKI配置命令的详细介绍请参见“PKI命令”;
l public-key local create rsa命令的详细介绍请参见“公钥管理命令”;
l SSL配置命令的详细介绍请参见“SSL命令”。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!