IOS发布https证书制作

本文引荐了网上其他小盆友的文章,加上一点自己多次失败的心得,若有得罪请小喷。

必要的软件(版本随意):

1.Tomcat

2.Jdk

3.openssl

第一步:配置JDK和Openssl到环境变量Path中,具体方法可自行百度


IOS发布https证书制作_第1张图片

第二步:生成证书

1、创建一个目录,进入cmd命令行下,通过cd命令进入该目录

2、在指定的目录下运行命令:openssl genrsa -out server.key 1024生成服务器密钥文件。

如果目录下生产server.key的文件,并且文件大小不为0,则说明成功。

如果没成功,查看输出的内容中是否有提示“\usr\local\ssl\openssl.cnf”找不到的问题,如果遇到这个问题,说明你并没有按照第四步的要求将openssl设置到path中,解决的办法有2个,第一个完成第四步openssl的path设定,第二个是将openssl的bin目录下的文件“openssl.cfg”修改个名字,然后在c盘下创建“\usr\local\ssl\”目录,将文件复制进去。

3、再运行命令:openssl req -new -out server.csr -key server.key根据密钥文件生成签署文件。

其中各个设置项中,除了Common Name其它的各项都可以为空,不过为了后期你好辨别证书,最好不要设置空,其中Common Name的值必须是你的服务器ip或者是域名,本机测试的话可以用localhost,但是如果要通过移动设备来访问就不能设置成localhost。

4、再运行命令:openssl genrsa  -out ca.key 1024生成客户端密钥文件。

5、再运行命令:openssl req  -new -x509 -days 365 -key ca.key -out ca.crt生成客户端的签署文件。

填写的内容和第三步一致即可,其中organizationName必须和第三步的一致

6、在当前目录下创建demoCA文件夹,并在demoCA下创建文件index.txt和serial,serial内容为01,index.txt为空,以及文件夹newcerts

注意:serial没有后缀名,执行完第六步后请修改openssl.cnf文件中的dir的值,更改为新建的demoCA下,否则第七小步会让你报错报的痛不欲生。(仅限linux系统,windows系统即使修改了也会报错,未找到好的解决方法)

7、在命令行中输入:openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key让客户端的签署证书能够被网站服务器的签署证书认识

8、运行命令openssl pkcs12 -export -in server.crt -inkey server.key -out server.p12把服务端签署证书转换浏览器可以识别的PCS12格式,密码使用上面输入的密码“123456”。

9、运行命令java -cp jetty-5.1.10.jar org.mortbay.util.PKCS12Import server.p12  server.jks使用jetty中的PKCS12Import工具类完成转换,密码同上.(jetty-5.1.10.jar需要放置到当前文件夹中)

如果出现错误:说明你的jetty-5.1.10.jar没有复制到命令行的当前文件夹下。

第三步:配置Tomcat打开https

SSLEnabled="true"  maxThreads="150"      scheme="https" secure="true"  clientAuth="false"

keystoreFile="D:/apache-tomcat-6.0.35/webapps/ROOT/ca/server.p12"  keystorePass="123456"      keystoreType="PKCS12"

truststoreFile="D:/apache-tomcat-6.0.35/webapps/ROOT/ca/server.jks"  truststorePass="123456"      truststoreType="JKS"/>

注意:keystoreFile、keystorePass为文件生成的位置和生成证书时输入的密码。

Ps:若出现无法连接到x.x.x.x服务器,有以下几种情况:

1)所有涉及到填写ip的步骤,ip未填写正确

2)代码中springmvc给拦截了,需要放开证书所在目录下的权限,如下图


IOS发布https证书制作_第2张图片

最后附上引荐的文章链接(里面有所需要的工具):www.cnblogs.com/janken/p/3726017.html

你可能感兴趣的:(IOS发布https证书制作)