给IIS添加CA证书以支持https
一、在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
给IIS添加CA证书以支持https的更多相关文章
- CentOS6.5 下在Nginx中添加SSL证书以支持HTTPS协议访问
参考文献: 1. NginxV1.8.0安装与配置 2. CentOS下在Nginx中添加SSL证书以支持HTTPS协议访问 3. nginx配置ssl证书的方法 4.nginx强制使用https访问 ...
- BurpSuit添加CA证书拦截HTTPS通信
问题 BurpSuit 安装成功后可以直接使用代理对使用 HTTP 协议通信的会话进行拦截,但是对于使用 HTTPS 协议通信的会话进行代理使用时就会出现如下画面 例如访问百度主页: 原因 HTTPS ...
- 设置apache服务器的访问证书,支持https访问,windows
windows下载安装openssl http://slproweb.com/products/Win32OpenSSL.html windows证书的生成 安装成功后命令行执行 1.私钥,生成的文件 ...
- CA证书扫盲,https讲解。
很多关于CA证书的讲解. 1.什么是CA证书. 看过一些博客,写的比较形象具体. ◇ 普通的介绍信 想必大伙儿都听说过介绍信的例子吧?假设 A 公司的张三先生要到 B 公司去拜访,但是 B 公司的所有 ...
- 【HTTPS】自签CA证书 && nginx配置https服务
首先,搭建https服务肯定需要一个https证书.这个证书可以看做是一个应用层面的证书.之所以这么说是因为https证书是基于CA证书生成的.对于正式的网站,CA证书需要到有资质的第三方证书颁发机构 ...
- CA证书扫盲,https讲解
很多关于CA证书的讲解. 1.什么是CA证书. 看过一些博客,写的比较形象具体. ◇ 普通的介绍信 想必大伙儿都听说过介绍信的例子吧?假设 A 公司的张三先生要到 B 公司去拜访,但是 B 公司的所有 ...
- postman-SSL证书问题-支持HTTPS请求
使用Google接口调试插件postman请求https协议的接口,postman提示: 为此,需要解决这个问题,提示信息已经给出了解决方案!Using self-signed SSL certifi ...
- Linux Centos 怎么安装更新根证书实现支持https访问
其实很简单就是一个命令: mozroots --import --ask-remove 或者使用: sudo update-ca-certificates
- 【服务器运维】Windows Server 2008 R2 下配置证书服务器和HTTPS
前言 2017年1月1日起App Store上的所有App应用将强制开启ATS功能. 苹果的ATS(App Transport Security)对服务器硬性3点要求: ① ATS要求TLS1.2或者 ...
随机推荐
- jQ获取浏览器window的高宽
Window 对象Window 对象表示浏览器中打开的窗口.JavaScript 层级中的顶层对象,表示浏览器窗口.如果文档包含框架(frame 或 iframe 标签),浏览器会为 HTML 文档创 ...
- React入门--------顶层API
React.createClass 参数:config(object) 创建一个ReactClass(组件类),参数是一个对象且必须带有render属性方法,该方法必须返回一个封闭的容器(容器内可以由 ...
- [deviceone开发]-动画示例源码
一.简介 do_FrameAnimtionView组件是用加载GIF动态图片和加载一系列图片形成动画效果的展示组件,这个示例直观的展示组件基本的使用方式.适合初学者. 二.效果图 三.相关讨论 htt ...
- 在Kali Linux下安装与配置OpenVas
以下是我的Kali版本号: 执行安装命令: apt-get install openvas 安装完成后可以在漏洞分析菜单下查看到OpenVas相关选项. 以下为安装完成后需要用到的几个命令: open ...
- CodeSmith连接不上MySql数据库的解决办法
下载地址是http://dev.mysql.com/downloads/mirror.php?id=403020 请先注册登录后才能下载mysql-connector-net-6.3.7.msi这个文 ...
- 分配给 主机的 Evaluation Mode 许可证已过期。建议升级许可证。
参考文献 http://247its.wordpress.com/2012/04/02/new-build-esxi-5-complaints-licence-has-expired/ http:// ...
- [Android]使用Gradle提交自己开源Android库到Maven中心库
以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/4388175.html 此文针对开源爱好者. 如果你想让别人使用 ...
- UIAlertView' is deprecated: first deprecated in iOS 9.0 - UIAlertView is deprecated. Use UIAlert
UIAlertController * cancleAlertController = [UIAlertController alertControllerWithTitle:nil message: ...
- TextView 字数限制
给大家推荐一个 无bug的 字数限制 http://blog.csdn.net/u012460084/article/details/50377928
- Android音乐播放器源码(歌词.均衡器.收藏.qq5.0菜单.通知)
一款Android音乐播放器源码,基本功能都实现了 qq5.0菜单(歌词.均衡器.收藏.qq5.0菜单.通知) 只有向右滑动出现,菜单键和指定按钮都还没有添加. 源码下载:http://code.66 ...