openssl使用的是macos系統自帶的版本,關鍵點是不一樣直接使用ios設備打開https的連接,須要將證書發到系統的mail裏,安裝到設備,ios
若是命令執行不成功,用sudo執行。macos
1.生成服務器的私鑰apache
openssl genrsa -out server.key 1024服務器
2.生成簽署申請(注意除Common Name之外能夠爲空,Common Name必須爲服務器的ip或域名)ui
openssl req -new -key server.key -out server.csrrest
3.生成CA私鑰server
openssl genrsa -out ca.key 1024 ip
4.利用CA的私鑰產生CA的自簽署證書ssl
openssl req -new -x509 -days 365 -key ca.key -out ca.crtopenssl
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