`
supershi
  • 浏览: 7761 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

IIS下的SSL证书配置

 
阅读更多

最近一个项目中有服务端与服务端数据交互的功能,为了保证传递数据的安全性,在数据交互的时候在发送端采用了对传输数据用证书签名,在接收端对数据进行验签;接收端连接地址使用SSL进行连接的方案。

 

在项目中用SSL连接出现了很多问题,做了很多尝试,总算把问题一一解决。这里说说我在项目中SSL进行连接遇到的问题及解决方法。

 

在完成主要代码后,不用SSL连接,功能都能正常,换成SSL连接后就出现一些问题。

 

其中最棘手的问题是:“基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系。”和“根据验证过程,远程证书无效。 ”。在网上查看了很多解决方法,有很多都自己写一段代码,对服务端证书验证总是信任,其实如果用这种方法那就没必要用SSL连接。不过在网上也获得一些收获,有部分人提示是证书的问题,证书验证失败。

 

为了验证这个具体是什么原因,我在本机上搭了一个环境来测试是否因为证书的原因。(注:如果想获得正确结果推荐开发时使用IIS来调试代码,这个SSL连接的问题我在开发时在VS环境下是都OK的,但是放到客户的环境下就出错。),由于我是用.net的,所以现在先在IIS上给自己签发一张服务器证书。具体步骤如下:

 

1、在IIS中的网站下,右键鼠标,在弹出的网站属性中选择目录安全选项卡,选择安全通信中的服务器证书。

 

2、在弹出框中选择新建证书,如果你已经有一个服务器证书可以选择指派现有证书。

 

 

3、接下来一般都可以一路默认。


 

4、接下来要填写单位和部门,这个信息是待会制作证书必须的,所以需要记录好。


 

5、接下来是SSL证书最重要的一环了,标准称呼站点公用名称,实际就是的网站地址。这个就是接收端验证服务端SSL证书的关键,也是制作证书必须的,也要记录好。


 

6、接下来填写证书颁发机构要求的地理信息,这个也是证书制作必须的,要记录好。

 


 
 7、填好上面的部分后就会生成一个证书签名请求CSR,里面是你之前填写的信息的Base64编码 ,默认存放到C盘下,你也可以指定位置,这个也是制作证书所必须的,要存放好。这里我命名为certreq1.txt。接下来就完成了。

 


8、接下来就该制证了,制作只能在有签发电子证书资质的机构去制证;我这里在公司的测试RA中为自己签发一张SSL证书,具体步骤这里就不详述了。这里有个地方是要注意的,证书主题是有正序主题和逆序主题,我这个是逆序主题,根据我之前在IIS里面填的内容,我的证书的主题为:C=CN,ST=gd,L=sz,O=myca,OU=test,CN=192.168.100.113,这个是满足X509命名规则的证书主题。填完完整的信息后就该制证了,填入P10请求,就是之前生成的证书签名请求CSR,把里面内容复制到P10。

 

9、制证完成后就可以下载证书,证书会保存为.p7b文件,里面包含一个或多个证书,一般包含本证书和它的根证书。下载保存到本地。

 

 

双击打开这个文件你就可以看到:


里面有这次签发的SSL证书和根证书。在服务器证书上右键,选择“所有任务”->“导出”,将这张证书导出。选择DER编码二进制,导出为一个.cer文件。下一步会使用,这里我命名为113_test.cer。

 

10、接下来在IIS里面完成之前未完成的操作。还是选择IIS网站属性里面的目录安全性选项卡,选择服务器证书,这个时候会有如下图所示:

 


 直接下一步



 选择之前导出的证书,113_test.cer。下一步就OK了。到这个地方,SSL证书就已经成功安装到了IIS中,不过需要设置才能启用。

 

11、下面来启用SSL证书,指定IIS中的内容使用https来访问,接下来我们选择"目录安全选项卡"中"安全通信"中的“编辑”按钮,出现如下图的界面。如果需要网站或者虚拟目录使用https来访问,要勾选“要求安全通道(SSL)”,“客户证书”中,“忽略客户证书”则表示这个网站或者虚拟目录是单向验证,服务端不会验证客户端的证书。如果勾选“要求客户证书”则为双向,要握手成功的话,客户端要成功验证服务端证书,服务端也要验证客服端的证书。一般我们都会选择单向SSL。

 

至此,IIS下的SSL证书就算是完成了,接下来就是验证:“基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系。”和“根据验证过程,远程证书无效。 ”。这类错误提示是不是因为证书的原因造成的,我把我的SSL设置为单向验证,用192.168.100.113这个地址来访问接收端结果正常,但是换成lcalhost来访问就会提示“根据验证过程,远程证书无效。”。之后再给自己签发了一个localhost的SSL证书,用localhost来访问接收端,错误消失。

现在结果已经很明确,出现:“基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系。”和“根据验证过程,远程证书无效。 ”。这类错误只要不是粗心造成代码错误,可以确定是因为证书的问题。所以如果网站的SSL的主题是网站的URL,但是你在代码里面访问的时候使用的是IP地址,极有可能出现错误。但是在浏览器里面用IP地址加https访问网站则不受影响。

在JAVA环境下签发及配置SSL证书也很相似,需要编写一段脚本来完成签发,这篇文章就不再赘述。下一篇文章我将记录我的服务端与服务端使用双向SSL验证及对传输数据使用证书签名的内容。

  • 大小: 22.6 KB
  • 大小: 29.4 KB
  • 大小: 40.5 KB
  • 大小: 33.2 KB
  • 大小: 34.8 KB
  • 大小: 33.9 KB
  • 大小: 24.4 KB
  • 大小: 27.9 KB
  • 大小: 35.5 KB
  • 大小: 35.7 KB
  • 大小: 15.4 KB
  • 大小: 32.1 KB
  • 大小: 28.6 KB
  • 大小: 28.6 KB
  • 大小: 72.1 KB
  • 大小: 37.6 KB
分享到:
评论

相关推荐

    IIS6.0SSL证书部署指南

    在部署SSL证书前,你需要有一台运行Windows Server 2003的服务器,并且已经配置了IIS6.0 Web站点。同时,你需要有一个有效的SSL证书,这里以沃通电子认证服务有限公司(WoSign CA Limited)的OV(Organization ...

    iis6 ssl配置方法

    在IIS6环境下配置SSL,可以提供一个安全的网络环境,使得客户端与服务器之间的通信受到加密保护。本篇将详细介绍在IIS6中配置双向SSL环境,但不验证证书吊销的步骤。 **IIS服务器的安装** 首先,要安装IIS,可以...

    IIS证书配置 SSL

    ### IIS证书配置SSL知识点详解 #### 一、IIS与HTTP协议的安全性问题 - **IIS简介**:IIS(Internet Information Services)是微软提供的一个集成在Windows操作系统中的Web服务器解决方案,常用于搭建网站服务器。 ...

    windows下前后端分离项目配置ssl证书.md

    阿里云ssl证书配置

    Win2003 IIS+SSL配置手册

    在配置SSL之前,你需要从受信任的证书颁发机构(CA)获取一个SSL证书。这通常涉及到填写申请表,验证你的域名所有权,并支付相应的费用。一些免费的CA如Let's Encrypt也提供了获取SSL证书的选项。 三、安装SSL证书 ...

    WIN2K下配置的IIS的数字证书配置步骤

    总结来说,配置WIN2K下的IIS数字证书涉及了安装Certificate Services、创建和提交证书请求、签发证书、安装服务端和客户端证书以及在IIS和客户端浏览器中配置证书的使用。这个过程对于理解HTTPS协议的工作原理和数字...

    IIS7 部署SSL服务器证书视频文档

    【IIS7与SSL概述】 IIS7(Internet Information Services 7)是微软推出的一款强大的Web服务器,广泛...正确部署和配置SSL证书对于任何在线业务都是至关重要的,而WoSign的视频教程无疑为这一过程提供了有力的支持。

    ssl证书配置指南.rar

    二、IIS SSL证书配置 1. 准备工作:首先,你需要购买或生成一个SSL证书。可以从知名的证书颁发机构(如VeriSign、Comodo、GlobalSign等)获取,或者使用OpenSSL自签发测试证书。 2. 安装证书:在IIS管理器中,选择...

    windows 2003环境SSL证书安装

    在Windows Server 2003环境下安装SSL证书是确保网站或服务器通信安全的重要步骤。SSL(Secure Sockets Layer)证书是网络安全的一种机制,它通过加密数据传输,保护用户信息不被窃取。以下是对该过程的详细说明: ...

    windows服务器ssl证书创建、安装及配置方法

    进入服务器证书配置页面,并选择“创建证书申请”,填写相关信息,点击“下一步”。 选择加密服务提供程序,并设置证书密钥长度,EV证书需选择位长2048,点击“下一步”。 保存证书请求文件到.txt文件(如申请证书...

    SSL证书安装.zip

    本文将详细介绍如何在四种常见的服务器平台上安装SSL证书:Apache、IIS、Nginx和Tomcat。 1. **Apache服务器安装SSL证书** Apache服务器是开源的Web服务器,广泛应用于各种Linux系统。安装SSL证书需要以下步骤: ...

    阿里SSL证书两种配置方法

    阿里云作为知名的云服务提供商,提供了多种SSL证书配置方式,以满足不同用户的需求。本篇文章将详细阐述阿里云SSL证书的两种配置方法,并附带uniapp应用的证书制作流程。 一、阿里云SSL证书的配置方法 1. **手动...

    Win2003 IIS6+SSL配置手册.pdf

    此部分主要讲解了如何在IIS 6.0中配置和部署SSL证书,确保网站服务的安全性。 1. **SSL证书安装**: - 在“IIS管理器”中选择相应的网站,点击“目录安全性”选项卡,进入“SSL设置”。 - 导入之前获取的SSL证书...

    证书服务配置客户端证书申请IIS站点SSL设置.docx

    "证书服务配置客户端证书申请IIS站点SSL设置" 本文将详细介绍证书服务配置客户端证书申请IIS站点SSL设置的过程,包括证书服务器的安装、客户端证书的申请、颁发和下载安装、服务器证书的申请、颁发和设置等步骤。 ...

    如何启用IIS的SSL加密

    在本文中,我们将探讨如何在IIS(Internet Information Services)上启用SSL(Secure Sockets Layer)加密,以确保网站数据传输的安全性。...同时,定期更新和审核SSL证书,确保其有效性和安全性。

    View 设置 SSL 证书的方案

    本文档提供了两种主要场景来帮助管理员理解如何为 View 服务器配置 SSL 证书:一种是从证书颁发机构 (CA) 获取签名的 SSL 证书;另一种是将 SSL 连接卸载到中间服务器。这些场景适用于已经熟悉虚拟机技术和数据管理...

    证书服务配置客户端证书申请IIS站点SSL设置.doc

    证书服务配置客户端证书申请IIS站点SSL设置.doc

Global site tag (gtag.js) - Google Analytics