iOS7.1Https企业证书发布方法

 

openssl使用的是macos系统自带的版本,关键点是不同直接使用ios设备打开https的链接,需要将证书发到系统的mail里,安装到设备,
如果命令执行不成功,用sudo执行。

1.生成服务器的私钥
openssl genrsa -out server.key 1024

2.生成签署申请(注意除Common Name以外可以为空,Common Name必须为服务器的ip或域名)
openssl req -new -key server.key -out server.csr

3.生成CA私钥
openssl genrsa  -out ca.key 1024 

4.利用CA的私钥产生CA的自签署证书
openssl req  -new -x509 -days 365 -key ca.key -out ca.crt

5.在当前目录创建demoCA,里面创建文件index.txt和serial,serial内容为01,index.txt为空,以及文件夹newcerts
openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key
将ca.crt文件通过邮件发送到ios设备的Mail上,进行证书的安装
/private/etc/apache2/httpd.conf ,编辑这个文件去掉下面三行前面的 '#'
LoadModule ssl_module libexec/apache2/mod_ssl.so
Include /private/etc/apache2/extra/httpd-ssl.confInclude/private/etc/apache2/extra/httpd-vhosts.conf


/private/etc/apache2/extra/httpd-ssl.conf,编辑这个文件去掉下面两行前面的 '#'
SSLCertificateFile "/private/etc/apache2/ssl/server.crt"
SSLCertificateKeyFile "/private/etc/apache2/ssl/server.key"

/private/etc/apache2/extra/httpd-vhosts.conf ,编辑这个文件在 'NameVirtualHost*:80' 后面添加:
NameVirtualHost *:443
在文件末尾添加:

<VirtualHost *:443>
    SSLEngine on
    SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
    SSLCertificateFile /private/etc/apache2/ssl/server.crt
    SSLCertificateKeyFile /private/etc/apache2/ssl/server.key
    ServerName localhost
    DocumentRoot "/Library/WebServer/Documents"
</VirtualHost>



到这里就配置完了,检查配置,没问题的话重启Apache就好了
sudo apachectl configtest
sudo apachectl restart

你可能感兴趣的:(https)