数字证书的创建与配置指南

数字证书是一种加密文件,它包含了用户或服务器的身份验证信息,用于验证身份。当数字证书颁发给用户时,被称为客户端证书;当颁发给服务器管理员时,则被称为服务器证书。证书权威是指能够颁发、管理和撤销证书的组织。在沙特阿拉伯,证书权威通常是银行。

生成数字证书

要生成数字证书,请按照以下步骤操作:

生成数字证书的请求文件:

  1. 点击“开始”按钮,然后选择“设置” -> “控制面板”。
  2. 双击“管理工具”。
  3. 双击“Internet信息服务(IIS)管理器”。
  4. 展开“本地计算机”。
  5. 展开“Web站点”。
  6. 选择“默认Web站点”,右键点击“属性”。
  7. 选择“目录安全性”。
  8. 点击“服务器证书”,然后点击“下一步”,选择“现在准备请求,但稍后发送”。
  9. 在“名称”文本框中输入证书名称(例如:MyCertificate),然后点击“下一步”。
  10. 在“组织”和“组织单位”文本框中输入组织名称(例如:My Company),然后点击“下一步”。
  11. 在“通用名称”文本框中输入机器名称(例如:Kahwaji),然后点击“下一步”。
  12. 在“国家/地区”下拉框中选择“JO(约旦)”。在“州/省”和“城市/地区”中输入城市名称(例如:Irbed),然后点击“下一步”。
  13. 浏览想要保存证书请求文件的位置,然后点击“下一步”。
  14. 检查“请求文件摘要”中的信息,然后点击“下一步”和“完成”。
  15. 关闭“默认Web站点属性”和IIS。

现在,证书请求文件已生成,并且私钥已存储在服务器上。

将“证书请求文件”发送给证书权威(通常是银行)。证书权威将在一两天后将带有“cer”或“crt”扩展名的证书文件发送给。将文件扩展名更改为“cer”。

在服务器上处理证书

要处理服务器上的证书,请按照以下步骤操作:

  1. 点击“开始”按钮,然后选择“设置” -> “控制面板”。
  2. 双击“管理工具”。
  3. 双击“Internet信息服务(IIS)管理器”。
  4. 展开“本地计算机”。
  5. 展开“Web站点”。
  6. 选择“默认Web站点”,右键点击“属性”。
  7. 选择“目录安全性”。
  8. 点击“服务器证书”,然后点击“下一步”,选择“处理待处理的请求并安装证书”(将证书文件与服务器中的私钥绑定)。
  9. 浏览从证书权威处获得的证书文件,然后点击“下一步”。
  10. 选择想要的SSL端口(默认端口为443),然后点击“下一步”。
  11. 检查“证书摘要”中的信息,然后点击“下一步”和“完成”。
  12. 点击“目录安全性”标签下的“默认Web站点属性”中的“查看证书”。证书页面将打开,必须在页面底部看到一个密钥图像,后面跟着“有一个与此证书对应的私钥”的声明。(如果没有看到它,那意味着没有私钥),然后点击“确定”。
  13. 关闭“默认Web站点属性”和IIS。

现在,证书已准备好使用。

保护HTTP和SOAP虚拟目录

现在一切都已准备就绪,可以通过保护它们的虚拟目录来保护HTTP和/或SOAP通信。请按照以下步骤操作:

  1. 点击“开始”按钮,然后选择“设置” -> “控制面板”。
  2. 双击“管理工具”。
  3. 双击“Internet信息服务(IIS)管理器”。
  4. 展开“本地计算机”。
  5. 展开“Web站点” -> 展开“默认Web站点”。
  6. 选择“默认Web站点”,右键点击“属性”。
  7. 选择“目录安全性”。
  8. “查看证书”按钮应该已启用,点击“查看证书”以再次确认拥有服务器的有效证书。
  9. 点击“确定”。
  10. 选择想要保护的虚拟目录,右键点击“属性”。
  11. 选择“目录安全性”标签,点击“编辑…”。
  12. 选择“要求安全通道(SSL)”复选框,“接受客户端证书”单选按钮,然后点击“确定”,然后点击“确定”。
  13. 可以使用HTTPS浏览虚拟目录,无需添加额外信息(如果更改了SSL的默认端口,应在URL中写入端口,例如:https://localhost/MyVirtualDirectory/HelloWorld.html)。
  14. 关闭IIS。

为ASP.NET提供证书访问权限

要授予对客户端/服务器证书的访问权限,需要为Windows 2003中的NetworkService用户(或Windows XP中的ASPNET用户)提供访问权限。有一个Microsoft Windows HTTP服务(WinHTTP)证书配置工具可以安装证书并授予用户访问权限(例如:管理员组已授予对证书的访问权限),例如Network Service用户。在情况下,希望授予Network Service用户访问权限。

WinHttpCertCfg.exe -g -c LOCAL_MACHINE\MY -s "CertificateIssuedTo" -a "ServerName\NetworkService"
Q1: 可以生成证书请求文件后更改服务器的IP地址吗?
A1: 是的,可以。
Q2: 可以生成证书请求文件后更改服务器名称吗?
A2: 不,不能。
Q3: 如何在两台机器上安装相同的证书以进行NLB群集?
A3: 在这种情况下,生成证书的方式不同;应该向证书权威请求这种类型的证书,并且应该在Windows 2003的hosts文件中添加一行(\WINDOWS\system32\drivers\etc\hosts),[“ServerIP” “CertificateIssuedTo”]。
Q4: 有些文章中提到带有“pfx”扩展名的证书文件,带有“cer”/“crt”和带有“pfx”扩展名的证书有什么区别?
A4: 带有“cer”/“crt”扩展名的证书文件仅包含证书的公钥,但带有“pfx”扩展名的证书文件包含证书的公钥和私钥。
Q5: 如何安装带有“pfx”的证书文件?
A5: 可以通过双击文件并按照说明操作;或者在服务器的证书存储库下的“个人”子节点中导入它。
Q6: 为什么需要证书?
A6: 这取决于它的用途,有很多原因:
- 确保远程计算机的身份
- 向远程计算机证明身份
- 保护电子邮件消息
- 允许在互联网上进行安全通信
- 确保软件来自软件发布者
- 保护软件在发布后不被更改
- 允许使用当前时间对数据进行签名
Q7: 同一个证书可以用于多个目的吗?
A7: 是的,可以。
Q8: 为什么需要SSL
A8: 为了保护客户端和服务器机器之间的通信。
Q9: 如果删除了证书请求文件,应该创建另一个文件并发送给证书权威吗?
A9: 不,可以用已删除文件的相同信息生成另一个证书请求文件,但无需再次发送给证书权威。然后,当证书权威给(已删除文件的)证书文件时,可以处理它而没有问题。
Q10: 在哪里可以更改SSL端口号?
A10: 在IIS(本地计算机)-> “Web站点”-> “默认Web站点”-> 右键点击“属性”。
Q11: 应该怎么做才能让BizTalk服务器识别证书?
A11: 应该在Windows 2003的hosts文件中添加一行(\WINDOWS\system32\drivers\etc\hosts)[serverIP “CertificateIssuedTo”],并且应该使用“CertificateIssuedTo”代替服务器的IP地址(例如,不要使用https://10.0.0.144/Site/WebServ.asmx,而使用https://Kahwaji/Site/WebServ.asmx)。
沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485