HTTPS配置举例
关键词:HTTPS、SSL、PKI、CA、RA
摘 要:HTTPS是支持SSL的HTTP协议。用户可以通过HTTPS协议安全地登录设备,通过Web页面实现对设备的控制。本文介绍了HTTPS的配置过程。
缩略语:
缩略语 | 英文全名 | 中文解释 |
CA | Certificate Authority | 证书机构 |
HTTPS | Hypertext Transfer Protocol Secure | 安全超文本传输协议 |
IIS | Internet Information Service | Internet信息服务 |
MAC | Message Authentication Code | 消息验证码 |
PKI | Public Key Infrastructure | 公钥基础设施 |
RA | Registration Authority | 注册机构 |
SCEP | Simple Certificate Enrollment Protocol | 简单证书注册协议 |
SSL | Secure Sockets Layer | 安全套接层 |
目 录
对于支持Web网管功能的设备,开启HTTP服务后,设备可以作为Web服务器,允许用户通过HTTP协议登录,并利用Web页面实现对设备的访问和控制。但是HTTP协议本身不能对Web服务器的身份进行验证,也不能保证数据传输的私密性,无法提供安全性保证。为此,设备提供了HTTPS功能,将HTTP和SSL结合,通过SSL对客户端身份和服务器进行验证,对传输的数据进行加密,从而实现了对设备的安全管理。
HTTPS通过SSL协议,从以下几方面提高了安全性:
l 客户端通过数字证书对服务器进行身份验证,保证客户端访问正确的服务器;
l 服务器通过数字证书对客户端进行身份验证,保证合法客户端可以安全地访问设备,禁止非法的客户端访问设备;
l 客户端与设备之间交互的数据需要经过加密,保证了数据传输的安全性和完整性,从而实现了对设备的安全管理;
l 制定基于证书属性的访问控制策略,对客户端的访问权限进行控制,进一步避免了客户端对设备进行攻击。
HTTPS主要用于网络管理员远程配置设备。如图1 所示,某公司在A、B两地分别设立分公司,位于A地的网络管理员无法直接配置位于B地的Device B。为了实现对Device B的安全管理,网络管理员通过HTTPS登录Device B,利用Web页面配置远程设备Device B。
图1 HTTPS典型应用场景
公司A的网络管理员与该公司的研发部位于不同的城市,网络管理员希望安全地远程登录到研发部的网关设备,实现对其的控制。
如图2 所示,HTTPS可以满足这个需求:
l 网络管理员通过主机Admin与网关设备Gateway建立HTTPS连接,通过Web页面实现对Gateway的控制。
l 利用SSL的安全机制对HTTPS服务器Gateway和HTTPS客户端Admin进行身份验证,提高了远程登录的安全性。
l 为了实现基于证书的身份验证,公司A还需要配置CA服务器,为Gateway和Admin颁发证书。本配置举例以Windows Server 2003为例,说明CA服务器的配置方法。
图2 HTTPS典型配置举例组网图
为了实现上述组网需求,需要完成表1 中的操作。
操作 | 配置思路 | 详细配置 |
配置CA服务器 | 3.2.1 | 3.3.1 |
配置HTTPS服务器 | 3.2.2 | 3.3.2 |
配置HTTPS客户端 | 3.2.3 | 3.3.3 |
Windows Server 2003作为CA服务器时,配置过程为:
注意:
Windows Server作为CA服务器时,需要在CA服务器上安装并启用IIS。
HTTPS服务器的配置过程为:
l 配置PKI实体。实体的身份信息用来唯一标识证书申请者。
l 配置PKI域。实体在进行证书申请操作之前需要配置一些注册信息来配合完成申请的过程。这些信息的集合就是一个实体的PKI域。创建PKI域的目的是便于其它应用引用PKI的配置。
l 获取CA证书,并下载至本地,以便验证申请到证书的真实性和合法性。
l 申请本地证书。可以采用手工和自动两种方式申请本地证书。本配置中以手工方式为例。
HTTPS客户端上需要执行如下操作:
& 说明:
进行下面的配置之前,需要确保HTTPS服务器Gateway、HTTPS客户端Admin和CA服务器之间的路由可达。
& 说明:
安装证书时,界面上会出现CA证书数据库、数据库日志和共享文件夹的缺省存放路径。本配置举例中使用了缺省存放路径,其中共享文件夹存放路径中的“ca”为CA服务器的主机名。
& 说明:
SCEP的安装文件可以从Microsoft网站免费下载。
图7 安装SCEP插件1
图8 安装SCEP插件2
图9 安装SCEP插件3
图10 安装SCEP插件4
图11 安装SCEP插件5
注意:
配置HTTPS服务器Gateway时,需要将注册服务器地址配置为提示框中的URL地址,其中的主机名ca可以替换为CA服务器的IP地址。
完成上述配置后,打开[控制面板/管理工具]中的[证书颁发机构],如果安装成功,在[颁发的证书]中将存在两个CA服务器颁发给RA的证书。
图12 修改证书服务的属性
图13 证书服务属性窗口
图14 策略模块的属性
图17 IIS管理器
图18 修改默认网站的主目录
注意:
为了避免与已有的服务冲突,默认网站的TCP端口号不能与已有服务的端口号相同,且建议不要使用默认端口号80。
图19 修改默认网站的TCP端口号
l 配置实体命名空间
# 配置PKI实体,实体名称为aaa,通用名为gateway。
<Gateway> system-view
[Gateway] pki entity aaa
[Gateway-pki-entity-aaa] common-name gateway
[Gateway-pki-entity-aaa] quit
l 配置PKI域
# 创建并进入PKI域ssl。
[Gateway] pki domain ssl
# 配置可信任的CA服务器名称为myca。
[Gateway-pki-domain-ssl] ca identifier ca server
# 配置注册服务器的URL地址为安装SCEP插件时弹出的URL地址,如图11 所示。由于CA服务器上默认网站的TCP端口号修改为8080,配置注册服务器的URL地址时,需要指定端口号为8080。
[Gateway-pki-domain-ssl] certificate request url http://5.5.5.1:8080/certsrv/mscep/mscep.dll
# 配置证书申请的注册受理机构为RA。
[Gateway-pki-domain-ssl] certificate request from ra
# 指定实体名称为aaa。
[Gateway-pki-domain-ssl] certificate request entity aaa
[Gateway-pki-domain-ssl] quit
l 生成RSA本地密钥对
[Gateway] public-key local create rsa
The range of public key size is (512 ~ 2048).
NOTES: If the key modulus is greater than 512,
It will take a few minutes.
Press CTRL+C to abort.
Input the bits of the modulus[default = 1024]:
Generating Keys...
..++++++++.++++++++++
...++..++...++....++...++...++..++...++...++..++...++...++..++...++...++...++..+
+...++...++..++....++..++...++...++..++...++...++...++..++..++...++...++..++..++
...++...++...++++++++.+++++++++.+
...++..++....++...++..++..++..++...++...++..++...++...++..++...++.++++++++++++++
+.+++++++
..++...++..++...++++++++++++++.++++++++++
l 申请证书
注意:
证书中包含有效时间,建议为Gateway申请证书之前,将Gateway与CA服务器的时间同步,以避免获取证书失败。
# 获取CA证书并下载至本地。
[Gateway] pki retrieval-certificate ca domain ssl
Retrieving CA/RA certificates. Please wait a while......
The trusted CA's finger print is:
MD5 fingerprint:9C7A 2FBA 9230 2BF5 F27D 5391 DCF7 9912
SHA1 fingerprint:189A CC85 F030 F866 51B1 9DD7 6DA9 65BA 5B05 2596
Is the finger print correct?(Y/N):y
Saving CA/RA certificates chain, please wait a moment.........
CA certificates retrieval success.
# 手工申请本地证书。
[Gateway] pki request-certificate domain ssl
Certificate is being requested, please wait......
[Gateway]
Enrolling the local certificate,please wait a while......
Certificate request Successfully!
Saving the local certificate to device......
Done!
# 创建一个名为myssl的SSL服务器端策略。
[Gateway] ssl server-policy myssl
# 配置SSL服务器端策略使用的PKI域名为ssl。
[Gateway-ssl-server-policy-myssl] pki-domain ssl
# 配置需要对客户端进行认证。为客户端申请本地证书的方法请参见“3.3.3 配置HTTPS客户端”。
[Gateway-ssl-server-policy-myssl] client-verify enable
[Gateway-ssl-server-policy-myssl] quit
# 配置HTTPS服务使用的SSL策略为myssl。
[Gateway] ip https ssl-server-policy myssl
# 使能HTTPS服务。
[Gateway] ip https enable
# 创建本地用户abc,密码为123,服务类型为Telnet,能访问的命令级别为3。
[Gateway] local-user abc
[Gateway-luser-abc] password simple 123
[Gateway-luser-abc] service-type telnet level 3
[Gateway] display current-configuration
#
version 5.20, Test 5310
#
sysname Gateway
#
domain default enable system
#
telnet server enable
#
domain system
access-limit disable
state active
idle-cut disable
self-service-url disable
#
pki entity aaa
common-name gateway
#
pki domain ssl
ca identifier ca server
certificate request url http://5.5.5.1:8080/certsrv/mscep/mscep.dll
certificate request from ra
certificate request entity aaa
#
local-user abc
password simple 123
service-type telnet
level 3
#
ssl server-policy myssl
pki-domain ssl
client-verify enable
#
interface Ethernet1/1
port link-mode route
ip address 5.5.5.2 255.255.255.0
#
interface Ethernet1/2
port link-mode route
ip address 1.1.1.1 255.255.255.0
#
ip https ssl-server-policy myssl
ip https enable
#
load xml-configuration
#
user-interface aux 0
user-interface vty 0 4
authentication-mode none
user privilege level 3
#
return
为Admin申请证书的过程为:
图20 为Admin申请证书1
图21 为Admin申请证书2
图22 为Admin申请证书3
图23 为Admin申请证书4
证书安装成功后,打开[工具/Internet 选项]的“内容”页签,单击<证书>按钮,可以查看申请到的证书。
图24 选择HTTPS客户端的证书
图25 确认HTTPS服务器的证书
图26 Web网管用户登录界面
Copyright ©2008-2009 杭州华三通信技术有限公司 版权所有,保留一切权利。
非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传播。
本文档中的信息可能变动,恕不另行通知。