10. 伺服器凭证与SSL
介绍伺服器凭证与SSL,包含Certificate Services、凭证管理员、伺服器凭证、产生一对金钥、向CA申请核发伺服器凭证、CA核发伺服器凭证、安装伺服器凭证档案、启用SSL功能、下载CA凭证路径、备份伺服器凭证、建立CTL(凭证信任清单)等。
凭证(Certificate)
凭证(Certificate)是一种数位识别码,包括用户端个人或伺服器资讯、加密用的公开金钥(公用识别码)、核发伺服器凭证之CA(凭证授权单位)资讯,以建立IIS安全连线的SSL(Secure Sockets Layer)功能的一部分,凭证有两种:
CA(凭证授权单位)
CA(凭证授权单位)核发伺服器凭证、用户端凭证,确认这些凭证的身分,证明公开金钥(Public Key)系此Web伺服器、个人所有。
使用Microsoft Windows 2000的Microsoft Certificate Services 2.0自己发出凭证,即自己扮演CA(凭证授权单位)。
伺服器凭证(Server Certificate)
伺服器凭证(Server Certificate)是一个数位凭证,其中包含了Web伺服器资讯、核发伺服器凭证之CA(凭证授权单位)资讯,伺服器凭证也包含一个伺服器公开金钥(公用识别码),用来在用户端与伺服器之间建立安全的连线。
若要启动Web伺服器之SSL(Secure Sockets Layer)安全功能,必须安装一个伺服器凭证。
用户端凭证(Client Certificate)
用户端凭证包含使用者的身分、CA(凭证授权单位)的身分、以及用户端公开金钥(Public Key)等。
用户端凭证用於数位签名与登入Web站台身份辨识别之用。数位签名以确保不可否认性与验证内容是否被篡改,Web站台可以要求使用者使用用户端凭证登入,用户端凭证可以对应到使用者帐户
SGC(Server-Gated Cryptography )
美国外销法律(Export Law)规定美国和加拿大以外地区只能使用40位元长度做为加解密之用。因此,美国和加拿大地区之SSL(Secure Sockets Layer)虽然可以使用128位元,但是以外地区之SSL只能使用40位元。
SGC(Server-Gated Cryptography )是SSL的延伸,使用128位元,限於使用於银行或其他经核准的应用上。SGC就是可以使用於美国和加拿大地区以外地区之128位元SSL。
为了保护於网际网路上传输的财务资料之安全,网路银行(Internet Banking)之应用建议采用128位元加解密方式。
使用SGC需要向CA(凭证授权单位)要求核发特殊的SGC凭证,目前只有VeriSign核发SGC凭证。
IIS伺服器方面,IIS 3.0/4.0/5.0支援128位元的SGC,IIS 3.0/4.0须安装SGC Add-on并修改机码。详细资料可连线到 www.microsoft.com/security/tech/sgc 。
用户端的浏览器方面,IE 4.0/5.0支援128位元的SGC。
CA凭证路径
安装CA凭证路径後,使用者的电脑便可以信任从这个凭证授权单位(CA)所发出的凭证。
CTL(凭证信任清单)
CTL(凭证信任清单)列出Web站台所信任的所有CA(凭证授权单位)清单。使用CTL可以允许网站使用此清单之某一个CA所发出的凭证,而拒绝此清单之外的CA所发出的凭证。
10-1 Certificate Services的功能呢?
Certificate Services
使用Microsoft 2000的Microsoft Certificate Services 2.0可以自己扮演CA(凭证授权单位),且自己可以发行伺服器凭证、用户端凭证。
CA所发行凭证,可用於数位签章、SSL安全传输、TLS传输层安全、S/MIME保护邮件等。
Certificate Services的CA(凭证授权单位)类型分为企业CA、和独立CA,企业CA用於网路伺服器,以及使用智慧卡登入Windows 2000网路等用途,而独立CA主要用於Web伺服器:
申请者提出凭证要求时,企业CA会立即处理此凭证要求,而不会搁置。向企业CA要求凭证时,可以使用MMC 凭证要求精灵 以及连线到CA的网页申请。必须是网域系统管理员或具有Active Directory写入权限的系统管理员,才可以安装企业根CA。
申请者提出凭证要求时,独立CA预设会搁置此要求直到CA的系统管理员批准或驳回要求,也可能会立即处理此要求。向独立CA要求凭证时,只可以连线到CA的网页申请。无法发行凭证以登入使用智慧卡的Windows 2000网域。
即向Certificate Services之企业CA要求用户端凭证时,可以使用MMC 凭证要求精灵 以及连线到CA的 Windows 2000凭证服务 网页申请;向独立CA要求凭证时,只可以连线到CA的 Windows 2000凭证服务 网页申请。
企业CA会立即处理凭证要求,独立CA预设会搁置凭证要求直到CA的系统管理员批准或驳回要求,也可能会立即处理此要求。
本章有关Certificate Services的主题如下:
10-2 如何安装Certificate Services呢?
安装Certificate Services
安装企业CA的系统管理员必须拥有Active Directory之写入权限。
首先安装Microsoft Certificate Services,Microsoft Certificate Services并未包含於标准的Windows 2000安装当中,须再加装。
方法一为以网域「系统管理员」的身份登入系统後,插入Windows 2000安装CD,选择 安装附加元件 ,如下:
或由 开始 / 设定 / 控制台 中,执行 新增/移除程式,选择新增/移除Windows元件 ,如下:
勾选 Certificate Services ,如下:
勾选 Certificate Services 後,会出现如下的确认画面,安装 凭证服务 後将无法重新为电脑命名,而且无法将电脑加入网域或是从网域中将它移除:
按下 是 和 下一步 按钮後,出现画面如下,选择CA类型为企业凭证授权单位、或独立凭证授权单位,请选择 企业根CA :
若选取 进阶选项 後,可设定:
进阶设定画面如下:
按下 下一步 按钮後,填入CA资讯,注意以後无法变更这些资讯。如下:
按下 下一步 按钮後,填入凭证资料库、凭证资料库记录档以及共用资料夹的存放位置,如下:
按下 下一步 按钮後,将暂停IIS,如下:
按下 下一步 按钮後,将开始安装Microsoft Certificate Services,如下:
即可完成Microsoft Certificate Services之安装,如下:
若要解除安装Certificate Services,请於 控制台 中执行 新增/移除程式 ,选择 新增/移除Windows元件 ,并於 Windows元件精灵 中,清除 Certificate Services 後,遵照画面指示即可解除安装。
10-3 如何将凭证管理员新增至MMC呢?
使用Microsoft 2000 Microsoft Certificate Services 2.0的凭证功能,须先将凭证管理员新增至MMC。
若您是电脑或网域的系统管理员,则可以选择发行给:
如果您是一般使用者,则只能管理您个人的凭证。
首先,将滑鼠按下萤幕左下角的 开始 ,选择 执行 ,输入『MMC』,如下:
将开启一个MMC主控台,从 主控台 功能表中选取 新增/移除嵌入式管理单元 ,如下:
按下 新增 按钮,如下:
由可用的 嵌入式管理单元 选取 凭证 ,如下:
按一下 新增 ,选取 电脑帐户 选项,如下:
选取 本机电脑 选项,如下:
最後按下 完成 即可将凭证管理员新增至MMC,如下:
全部展开後,如下:
将凭证授权单位加入MMC中
安装Microsoft Certificate Services之後,即可扮演CA角色,您需将 凭证授权单位 加入MMC中。
请重覆以上步骤,由可用的 嵌入式管理单元 选取 凭证授权单位 ,如下:
按一下 新增 ,选取 本机电脑 选项,如下:
按一下 完成 、 确定 ,即可将 凭证授权单位 加入MMC主控台当中,如下:
10-4 何谓伺服器凭证呢?
资料传输安全
网路上的传输,都可能被拦截、篡改。
将传输的资料加予加密,传送当中的资料为乱码,而不怕被人拦截,并可以确保网路上的资料传输安全。您可以使用以下方法:
所谓的金钥(Key)并不是真的是一把钥匙,而是一个加解密的运算法则,譬如将每一个资料加2,2即为一把金钥。
对称金钥(Session Key)法的问题为如何於网路上安全地交付这一把加解密的钥匙 ? 这一把钥匙於网路上传送交付,也可能被拦截、篡改。
公开金钥(Public Key)法的问题为如何确认这一把加密用接收者的公开金钥(Public Key)的正确性 ? 这一把接收者的公开金钥(Public Key)於网路上传送交付,也可能被拦截、篡改。因此必须有一个具备公信力的认证中心,即所谓的CA(Certificate Authority),对接收者的即网站伺服器来核发一个伺服器凭证(Server Certificate),以证实这一把加密用接收者的公开金钥(Public Key)确定为此伺服器所有。
SSL(Secure Sockets Layer)
使用SSL(Secure Sockets Layer)融合对称金钥(Session Key)法、和公开金钥(Public Key)法的优点。
使用SSL(Secure Sockets Layer)时,浏览器会先产生一把对称金钥(Session Key),将待传送的资料使用这一把对称金钥(Session Key)加密,再使用接收者的公开金钥(Public Key)将这一把对称金钥(Session Key)加密,传送当中的资料为乱码,接收者收到资料後使用另外一把接收者的私密金钥(Private Key)先将对称金钥(Session Key)解密,再使用这一把对称金钥(Session Key)将传送的资料解密。
SSL(Secure Sockets Layer)於网路上沟通的流程,如下:
伺服器凭证(Server Certificate)
如何於您的网站加入SSL(Secure Sockets Layer)安全传输功能呢 ?
若要启动Web伺服器之SSL(Secure Sockets Layer)安全功能,必须安装一个伺服器凭证(Server Certificate)。
伺服器凭证(Server Certificate)包含伺服器的资讯,用於建立IIS安全连线的SSL(Secure Sockets Layer)之用。
取得伺服器凭证(Server Certificate)有两种方法:
若要建立Web伺服器之SSL(Secure Sockets Layer)安全功能,步骤如下:
IIS 5.0使用「Web伺服器凭证精灵」取代了IIS 4.0之「识别码管理员」,使用「Web伺服器凭证精灵」可以要求和安装伺服器凭证。
步骤1~4可使用Certificate Services所提供线上取得伺服器凭证的方式,一次操作即可完成。
说明
当使用Certificate Services扮演凭证授权单位(CA)时,您可使用Certificate Services所提供线上取得伺服器凭证的方式,一次操作即可自动完成取得伺服器凭证的步骤,包括产生一对金钥、向CA申请核发一个伺服器凭证、CA核发伺服器凭证、和安装伺服器凭证档案等数个步骤。
一个Web站台虽然可以设定多个IP位址或多个SSL连接埠。但是一个Web站台只能安装一个伺服器凭证,不可以安装数个伺服器凭证。
同一个伺服器凭证可以安装於多个Web站台。
本章有关伺服器凭证的主题如下:
10-5 如何线上取得伺服器凭证呢?
Certificate Services提供线上取得伺服器凭证的方式,一次操作即可完成以下取得伺服器凭证的数个步骤:
请按照下述步骤来进行。
按下 完成 按钮後,即自动完成取得伺服器凭证的步骤,包括产生一对金钥、向CA申请核发一个伺服器凭证、CA核发伺服器凭证、和安装伺服器凭证档案等数个步骤。
接下来的步骤为在 Internet服务管理员 中启用站台之SSL功能,以及安装CA凭证路径。安装CA凭证路径後,使用者的电脑便可以信任从这个凭证授权单位(CA)所发出的凭证。请参阅
10-10〈如何启用SSL功能呢 ? 〉 、 10-11〈如何下载CA凭证路径呢 ? 〉 。
10-6 如何产生一对金钥建立凭证要求呢?
您可使用Certificate Services所提供线上取得伺服器凭证的方式,一次操作即可自动完成取得伺服器凭证的步骤,包括产生一对金钥、向CA申请核发一个伺服器凭证、CA核发伺服器凭证、和安装伺服器凭证档案等数个步骤。
但是若不使用Certificate Services扮演凭证授权单位(CA)时,则需要依照产生一对金钥、向CA申请核发一个伺服器凭证、CA核发伺服器凭证、和安装伺服器凭证档案等数个步骤,来取得伺服器凭证。
本节将介绍如何产生一对金钥以建立凭证要求。
IIS 4.0版本中使用「识别码管理员」来产生一对金钥建立凭证要求,IIS 5.0中则使用「Web伺服器凭证精灵」来产生一对金钥建立凭证要求。
取得伺服器凭证的第一个步骤为,使用「Web伺服器凭证精灵」来建立凭证要求,即准备一个申请伺服器凭证的档案,事实上为产生一对金钥。
您学会了吗 ?
10-7 如何向CA申请核发伺服器凭证呢?
将所产生的凭证要求档案,向CA申请核发一个伺服器凭证。
您可以使用Windows 2000的Microsoft Certificate Services凭证服务,自己成立一个CA。
企业CA会立即处理此凭证要求,独立CA预设会搁置此要求直到CA的系统管理员批准或驳回要求,也可能会立即处理此要求。
您学会了吗 ?
10-8 CA如何核发伺服器凭证呢?
产生一对金钥建立凭证要求,将所产生的凭证要求档案,向CA申请核发一个伺服器凭证後,接着,让我们来看看CA如何核发一个伺服器凭证。
使用Microsoft 2000 Microsoft Certificate Services 2.0核发伺服器凭证时,须先将 凭证授权单位 新增至MMC。於 凭证授权 之 搁置要求 中,选取待核发之伺服器凭证申请,选择 发行 ,即可核发所申请之伺服器凭证。
申请者向独立CA提出凭证要求时,独立CA预设会搁置此要求直到CA的系统管理员批准或驳回要求,也可能会立即处理此要求。
申请者向企业CA提出凭证要求时,企业CA会立即处理此凭证要求,而不会搁置。企业CA自动发行凭证要求之凭证授权MMC画面,如下:
核发伺服器凭证申请之步骤,首先执行凭证授权MMC,如下:
於 搁置要求 中找到刚才所申请的要求,按下滑鼠右键,选择 所有工作 / 发行 ,即可核发凭证。
下载凭证
最後,申请者将核发的凭证下载下来,方法为使用IE浏览器中连线到 Windows 2000凭证服务 网页(http://servername/certsrv),其中servername为Microsoft Certificate Services凭证授权单位(CA)所在位置的网站伺服器名称。
您学会了吗 ?
10-9 如何安装伺服器凭证档案呢?
一个Web站台只能拥有一个伺服器凭证。
您学会了吗 ?
10-10 如何启用SSL功能呢?
安装伺服器凭证後,便可以启用SSL功能。
使用SSL安全连线
安装伺服器凭证後,便可以使用SSL安全连线。方法为开启浏览器并使用https://连线到您IIS伺服器(如https://localhost),如下:
10-11 如何下载CA凭证路径呢?
安装CA凭证路径後,使用者的电脑便可以信任从这个凭证授权单位(CA)所发出的凭证。
方法为使用IE浏览器中连线到 Windows
2000凭证服务 网页(http://servername/certsrv),其中servername为Microsoft
Certificate Services凭证授权单位(CA)所在位置的网站伺服器名称。
如此将开启 凭证汇入精灵 ,请依照画面指示操作即可。
10-12 如何备份伺服器凭证呢?
备份伺服器凭证
IIS
4.0版本中使用「识别码管理员」来备份伺服器凭证,IIS 5.0中则使用「Web伺服器凭证精灵」来汇出和备份伺服器凭证。步骤如下:
10-13 如何建立CTL(凭证信任清单)呢?
CTL(凭证信任清单)
CTL(凭证信任清单)列出Web站台所信任的所有CA(凭证授权单位)清单。使用CTL可以允许网站使用此清单之某一个CA所发出的凭证,而拒绝此清单之外的CA所发出的凭证。
CTL可用於Web站台上,CTL不可用於FTP站台上。CTL只能用於至Web站台的层级,不能用於虚拟目录或档案。
使用「凭证信任清单精灵」可以用来建立与编辑设定CTL(凭证信任清单)。IIS已经安装一般最常用的CA根凭证,使用「凭证信任清单精灵」可以新增新的根凭证至CTL中。
伺服器上必须安装伺服器凭证,才能执行「Web伺服器凭证精灵」与「凭证信任清单精灵」。
建立CTL(凭证信任清单)
若要建立CTL(凭证信任清单),首先必须使用Administrator帐户(不能使用Administrators群组的其他帐户)登入Web伺服器。
修改CTL(凭证信任清单)
若要修改CTL(凭证信任清单),首先必须使用Administrator帐户(不能使用Administrators群组的其他帐户)登入Web伺服器。
如下:
您学会了吗 ?