OpenSSL使用1(用OpenSSL生成自签名证书在IIS上搭建Https站点)(用于iOS的https访问)
前提:
先安装openssl,安装有两种方式,第一种直接下载安装包,装上就可运行;第二种可以自己下载源码,自己编译。这里推荐第一种。
安装包:http://slproweb.com/products/Win32OpenSSL.html
源码地址:https://github.com/openssl/openssl

看需要下载安装即可。
链接: https://pan.baidu.com/s/1pLBAabL 密码: kcbc
搭建步骤:
一、生成1024位的key
输入:
openssl genrsa -out d:\ssl.key 2048
其中,d\ssl.key为文件的存放地址,2048为长度。
二、生成cer证书
输入:
openssl req -new -x509 -key d:\ssl.key -out d:\ssl.cer -days 3650 -subj /CN=www.domain.com
ddl.key为之前生成的key的名字,ssl.cer为生成的证书,3650为证书过期天数,CN的参数www.domain.com为你的计算机名,任意。
注意:这里的cer证书不能直接给iOS使用。
三、生成IIS需要的PFX私钥文件
输入:
openssl pkcs12 -export -out d:\ssl.pfx -inkey d:\ssl.key -in d:\ssl.cer
注意:这里生成就是iOS中的P12文件,此文件直接提供给iOS使用。
这里也是指定pfx文件的路径。
此时会提示输入一个新密码,因为iis在导入时会要求验证密码,注意:这里输入密码是没有任何提示的,所以直接输入即可。
四、在IIS上导入pfx证书


添加站点时选择https,然后指定ssl证书

这里的站点可以指定自定义的端口,而不一定是443,同时一个站点也可以绑定多个端口,包括http的80等。
五、测试效果

第一次访问的时候是受限的,只要允许访问即可。
六、iOS使用
将上面生成pfx文件直接给iOS客户端,在Mac电脑上导入,并按提示输入刚才设置的密码,然后再导出cer文件,最后将这个在Mac下导出的cer文件引入到iOS项目,这个才能正常。
注意:这个就是所谓的自签名证书。
iOS使用自签名证书不一定能通过上架,还在测试中,如果不可行,希望告知一下。
七、其它参考
http://www.cnblogs.com/Persue-A-Good-Life/p/4040988.html
http://www.cnblogs.com/bobliu/archive/2012/08/05/2590694.html
http://blog.csdn.net/mygrilzhuyulin/article/details/50663473
http://blog.csdn.net/boss666666/article/details/10284649
http://blog.csdn.net/houjixin/article/details/25806151
http://blog.csdn.net/f2004/article/details/45842287
(iOS参考)https://github.com/fengling2300/networkTest(使用时,请将AF升级到3.0使用)(链接: http://pan.baidu.com/s/1c2aIHGG 密码: 6tpr)
八、总结
证书概念真的很多,参考:http://www.cnblogs.com/EasonJim/p/6291539.html
而且生成证书的方式也非常多,参考:http://www.cnblogs.com/EasonJim/p/6291587.html。
OpenSSL使用1(用OpenSSL生成自签名证书在IIS上搭建Https站点)(用于iOS的https访问)的更多相关文章
- 用OpenSSL生成自签名证书在IIS上搭建Https站点(用于iOS的https访问)
前提: 先安装openssl,安装有两种方式,第一种直接下载安装包,装上就可运行:第二种可以自己下载源码,自己编译.这里推荐第一种. 安装包:http://slproweb.com/products/ ...
- cmd命令生成android签名证书
cmd命令生成android签名证书,有空在写一篇eclipse导出带签名的apk,这里面包括生成新的签名.现在还是讲讲在cmd怎么操作生成签名证书. 1.dos下进入JDK的bin目录 运行如下命令 ...
- 使用terraform 生成自签名证书
terraform 是一个很不错的基础设施工具,我们可以用来做关于基础设施部署的事情,可以实现基础设施即代码 以下演示一个简单的自签名证书的生成(使用tls provider) main.tf 文件 ...
- openssl生成自签名证书
1.生成x509格式的CA自签名证书 openssl req -new -x509 -keyout ca.key -out ca.crt 2.生成服务端的私钥(key文件)及申请证书文件csr文件 o ...
- [ipsec][strongswan] 用strongswan pki工具生成自签名证书
如题.我在实验环境里,分别要为两个endpoint(T9和T129)生成证书. 证书是如何生成的呢? 证书是由根证书机构签发的.申请证书的人将request提交给根证书机构,然后根证书机构根据requ ...
- ios生成自签名证书,实现web下载安装app
抄自http://beyondvincent.com/blog/2014/03/17/five-tips-for-using-self-signed-ssl-certificates-with-ios ...
- 生成自签名证书-开启https
1.生成CA证书 # 生成 CA 私钥 openssl genrsa -out ca.key 2048 # X.509 Certificate Signing Request (CSR) Manage ...
- windows下使用makecert命令生成自签名证书
1.makecert命令路径 C:\Program Files (x86)\Windows Kits\8.1\bin\x64 2.生成一个自签名证书 makecert -r -pe -n " ...
- Windows下生成自签名证书
最近通过openssl生成了自签名的证书,总结成下面这张图. 说明:下载openssl0.9.8之后解压,然后运行bin\openssl.exe进入openssl运行环境,然后按上图中顺序执行命令.( ...
随机推荐
- loj2058 「TJOI / HEOI2016」求和
推柿子 第二类斯特林数的容斥表达 fft卡精度就用ntt吧qwq. #include <iostream> #include <cstdio> using namespace ...
- 微服务化的不同阶段 Kubernetes 的不同玩法
欢迎访问网易云社区,了解更多网易技术产品运营经验. 作为容器集群管理技术竞争的大赢家,Kubernetes已经和微服务紧密联系,采用Kubernetes的企业往往都开始了微服务架构的探索.然而不同企业 ...
- 使用jQuery ui创建模态表单
jQuery UI 是一个建立在 jQuery JavaScript 库上的小部件和交互库,可以使用它创建高度交互的 Web 应用程序. 在web页面的开发过程中,在添加元素的时候需要用到弹出窗口添加 ...
- mac最新系统安装beego出现kiil 9
(内容来自:http://www.oschina.net/question/2626413_2237311) 应该是最新mac OS 12.04的锅. 现在的解决办法是回退bee到以前版本. cd $ ...
- (转)对称加密与非对称加密,以及RSA的原理
一 概述 二对称加密和非对称加密 对称加密 非对称加密 区别 三RSA原理 整数运算 同余运算 当模数为合数n时 当模数为质数p的时候 离散对数问题 RSA原理 一 , 概述 在现代密码学诞生以前,就 ...
- 逆向中静态分析工具——IDA初学者笔记之字符串分析
逆向中静态分析工具——IDA初学者笔记之字符串分析 程序中往往包含很多字符串资源,这些资源存在于PE文件的rdata段,使用IDA反编译后,可以查找到这些字符串, 逆向破解程序通常需要一个突破点,而这 ...
- Posix线程编程指南
Posix线程编程指南 Posix线程编程指南... 1 一线程创建与取消... 2 线程创建... 2 1.线程与进程... 2 2. 创建线程... 2 3. 线程创建属性... 2 4. 创建的 ...
- 满汉全席(banquet)
满汉全席(banquet) 题目描述 满汉全席是中国最丰盛的宴客菜肴,有许多种不同的材料透过满族或是汉族的料理方式,呈现在數量繁多的菜色之中.由于菜色众多而繁杂,只有极少數博学多闻技艺高超的厨师能够做 ...
- 【VBA】标准Sub/Function定义,带ScreenUpdating、On Error GoTo
[说明] 标准Sub/Function定义,带ScreenUpdating.On Error GoTo Sub AutoFillRole() '--------------- ERROR MSG--- ...
- 在npm当中发布自己的包的方法
首先需要一个注册一个npm账号,注意,必须验证邮箱,不然是无法发布包的!下面是当时的报错 接着在你需要发布的包的文件夹下面打开你的cmd或者其他的命令行输入工具 输入 npm init 初始化你的 ...