一、在IIS中生成Certificate Signing Request (CSR)

个人理解:生成CSR就是生成“私钥/公钥对”之后从中提取出公钥。

1. 打开IIS Manager,在根节点中选择Server Certificates(服务器证书),点击右侧的Create Certificate Request...,然后填写相应的Distinguished Name Properties(见下图)。

Common name中填写域名(如果用于所有二级域名,填*.域名),Organization中公司名称,Organizational unit填写部门名称。

2. 在Cryptographic service provider中选择Microsoft RSA SChannel Cryptographic Provider,在Bit length中选择2048。

3. 选择生成文件的保存路径,完成之后,在生成的txt文件中就会看到以“-----BEGIN NEW CERTIFICATE REQUEST-----”开头的CSR内容。这就是接下来在CA机构中生成CA证书时要用到的CSR。

二、从CA机构购买并创建CA证书

这里以GoDaddy为例。

1. 打开godaddy.com网站,通过菜单进入Products -> SSL&Security -> SSL Certificates,选择Protect All Subdomains("Wildcard"), 在Pick your plan type中,选择Standard(Validates domain ownership),然后完成购买。

2. 进入My Account -> SSL CERTIFICATES,创建证书(Certificate),创建时将之前得到的CSR内容复制到“CSR文本框”中。

3. 接入来进入GoDaddy的审批流程,在审批过程中需要验证域名的所有者(dns填加记录或上传html文件至网站目录),验证成功后很快就会生成CA证书。

4. 下载CA证书文件至生成CSR的服务器上。

三、在IIS中安装CA证书

1. 回到第一步中生成CSR的服务器上,进入IIS的Server Certificates(服务器证书),点击Compelete Certificate Request,进入Specify Certificate Authority Response窗口填写相应内容(见下图)。

File name填写第二步中从CA机构下载的证书文件路径(.crt),Friendly name填写第一步中创建CSR时填写的Common name(*.域名),Certificate store选择Web Hosting,然后点击OK。

2. 如果用的是IIS 8.0,在创建过程中出现“Failed to remove the certificate”的提示,不用理会。

3. 创建成功之后,会在Server Certificates中看到这个证书。

四、在IIS站点中配置https

1. 在生成CSR的同一台服务器上配置https

1.1 选择相应的站点,右键选择Edit Bindings,点击Add。

1.2 在Type中选择https,在SSL certificate的下拉菜单中会看到之前安装的CA证书(见下图)。

1.3 选择CA证书之后就完成了https的配置。

2. 在另外的服务器上配置https

2.1 先进入之前已经安装CA证书的服务器,在Server Certificates中导出证书,并将证书文件(.pfx)复制到需要配置https的服务器。

2.2 进入需要配置https的服务器,在Server Certificates中导入证书,导入成功之后,按照之前的1.1-1.3的步骤配置https。

五、其他相关配置

1. 在配置https的服务器的Windows防火墙上允许443的端口的访问。

2. 如果需要将所有http的请求重定向至https,可在IIS的URL Rewrite Module中添加如下的规则:

web.config中对应的配置:

<rewrite><rule name="Redirect to HTTPS" stopProcessing="true"><match url="(.*)" /><conditions><add input="{HTTPS}" pattern="^OFF$" /></conditions><action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="SeeOther" /></rule></rules>
</rewrite>

参考资料

Generating a Certificate Signing Request — Microsoft IIS 8

Installing an SSL Certificate in Microsoft IIS 7

数字证书及CA的扫盲介绍

给IIS添加CA证书以支持https相关推荐

  1. centos php ssl,CentOS下在Nginx中添加SSL证书以支持HTTPS协议访问

    1,上传证书文件至服务器,如 /usr/local/nginx/ssl 目录下 2,修改nginx的配置文件,若是虚拟站点,刚需要修改对应的配置文件,修改内容如下: #基本的SSL配置 server ...

  2. Apache Httpd 2.2 配置CA证书,实现Https加密通讯

    什么是CA证书 关于什么是CA证书,以及如何使用Open-SSL申请和搭建CA证书,我们在之前的文章中已经有过介绍,这里不再赘述.若有疑问,可参考之前的文章. http://www.pojun.tec ...

  3. windows server 2008 iis 添加ssl证书

    1. 获取证书 目前腾讯云和阿里云都提供1年免费的ssl证书. 以腾讯云为例,申请地址为https://console.qcloud.com/ssl,可使用QQ号登录. 选择免费DVSSL证书 验证域 ...

  4. python ssl连接 证书验证失败_即使在添加CA证书之后,Python也会请求SSL证书验证失败...

    我一直在使用Python Requests库来刮取网站一段时间,但该网站最近更改了SSL证书,新的证书将无法验证请求 . 根据类似问题的答案,我已将请求和urllib3更新到最新版本(2.4.3和1. ...

  5. Android——自建CA证书,实现https请求

    Android 使用https 协议请求客户端 server端操作 自己创建 CA 证书 拿自建CA 证书创建 server 端证书 创建 https 服务 Android客户端操作 创建项目并引入相 ...

  6. charlesfiddler安卓手机安装系统级ca证书抓取https请求信息

    文章目录 问题描述 问题分析 解决问题思路 开始 1.从charles端导出ca证书 2.windows系统安装openssl 3.使用openssl工具计算hash值 总结 问题描述 使用charl ...

  7. NginX下Openssl的构建和部署数字证书,支持HTTPS

    一.安装 OpenSSL OpenSSL官网地址 wget https://www.openssl.org/source/openssl-1.0.2n.tar.gztar -zxvf openssl- ...

  8. CA证书扫盲,https讲解

    1.什么是CA证书. 看过一些博客,写的比较形象具体. ◇ 普通的介绍信 想必大伙儿都听说过介绍信的例子吧?假设 A 公司的张三先生要到 B 公司去拜访,但是 B 公司的所有人都不认识他,他咋办捏?常 ...

  9. 微信api证书linux安装,微信支付CA证书Linux服务器安装https证书的方法

    1.    Apache 部署SSL证书(只能应用一个证书, 如果多个不同站点都需要安装不同的证书,请使用nginx) a.  查看apache是否开启ssl (特别注意要在apache配置文件中添加 ...

最新文章

  1. C++vector容器-数据存取
  2. html canvas直线进度条,js+HTML5 canvas 实现简单的加载条(进度条)功能示例
  3. linux下tcpdump的使用简介
  4. 【Level 08】U08 Positive Attitude L4 News flash
  5. RocketMQ : UpdateTopicSubCommand command failed connect to xxx:10909 failed
  6. 搭建CentOS的本地yum源
  7. android-实现一个简单的视频弹幕
  8. uniapp的分享到朋友圈和朋友(APP)
  9. DAMS | 突破运维瓶颈,监控告警、混合CMDB、DevOps转型一网打尽!
  10. CSS——标签选择器,类选择器
  11. 斗鱼直播行业名列前茅 泛娱乐布局成效凸显
  12. 11_ue4天空球的使用
  13. Mysql进阶四:常见函数-日期函数
  14. 01-软件需求规格说明书
  15. Ubuntu配置全局系统代理(常用工具配置)
  16. 淘宝天猫API seller_info-获得淘宝店铺详情
  17. 蓝桥杯青少组 历年 真题题库
  18. linux内核那些事之buddy(anti-fragment机制-steal page)(5)
  19. 基于CAN总线的KWP2000协议——命令总览
  20. 记一篇IT培训日记046-瞎想

热门文章

  1. Redis以及Redis的php扩展安装无错版
  2. httpwatch的timechart 解析
  3. Linux 汇编语言开发指南
  4. 【流媒體】jrtplib—VS2010下RTP开源协议库JRTPLIB3.9.1编译
  5. Linux kernel futex.c的bug导致JVM不可用
  6. 64位Ubuntu上编译32位程序操作步骤
  7. python vs javascript_Python“是”vs JavaScript===
  8. ab753变频器参数怎么拷贝到面板_【干货】一文让你从入门小白进阶为变频器高手...
  9. Java学习总结:25
  10. 一维数组求平均值c语言编程软件,c语言编程:用数组名作函数参数,编写一个对一维数组求平均值的函数,并在主函数中调用它...