一、生成單向認證的https證書
建立服務器私鑰,生成RSA秘鑰。
會有兩次要求輸入密碼,
然后獲得了一個server.key文件.
以后使用此文件(通過openssl提供的命令或API)可能經常回要求輸入密碼,如果想去除輸入密碼的步驟可以使用以下命令:
創建服務器證書的申請文件server.csr
Country Name填CN,Common Name填主機名也可以不填,如果不填瀏覽器會認為不安全,其他可以不填
填入密碼
對於上面的秘鑰進行ssl加密
使用上面的秘鑰和CSR對正式進行簽名
創建自當前日期起有效期為期十年的服務器證書server.crt:
這樣證書就建好了。
~ 是 home目錄的意思。
-
如果以超級用戶root賬號登陸:~ 是 /root目錄
-
如果以普通用戶name登陸:~是 /home/name目錄
移動到home目錄
打開你的nginx配置文件,搜索443找到https的配置,去掉這段代碼的注釋,按照自己路徑進行更改:
把ssl on;這行去掉,ssl寫在443端口后面。這樣http和https的鏈接都可以用
location 照着之前的server寫
將ssl_certificate改為server.crt的路徑,將ssl_certificate_key改為server.key的路徑.
nginx -s reload 重載配置 ,nginx的https就可以使用了,默認443端口.
如果出現報錯信息:
nginx: [emerg] BIO_new_file("/user/local/nginx/temp/server.crt") failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/user/local/nginx/temp/server.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)
把server.crt 和server.key 文件放在nginx/conf文件夾下。(和nginx.conf文件同一文件夾)
ssl_certificate server.crt;
ssl_certificate_key server.key;
修改域名,參考--本機如何訪問vmware虛擬機中配置的域名
https://jingyan.baidu.com/article/2d5afd690d7f6d85a2e28ec6.html
成功