# HTTPS server
#
server {
listen 443 ssl;
server_name localhost;
ssl_certificate server.pem;
ssl_certificate_key server.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
}
}
证书命令如下
openssl genrcsa -des3 -out demoCA/private/ca.key 2048
openssl req -new -x509 -days 3650 -key demoCA/private/ca.key -out demoCa/certs/ca.crt
openssl genrsa -des3 -out server.key 2048
openssl rsa -in server.key -out server.key
openssl req -new -key server.key -out server.csr
openssl ca -in server.csr -out server.crt -cecrt demoCA/certs/ca.crt -keyfile demoCA/private/ca.key
openssl x509 -in server.crt -out server.pem -outform PEM
如下图,提示有风险,正常吗?是我哪里弄错了,还是一定要从某些机构申请的才可以?不申请不可以吗?
正常。因為你的ssl憑證不是CA機構頒發的,沒有通過認證,所以會出現這個提示(例如12306網站也是如此),解決方法是可以在本地安裝你自己的憑證。
一般出現這種情況有兩種原因:
證書簽發機構,不是權威的CA證書簽發機構,你目前的情況就屬於這種情況
證書簽發機構或是該機構簽發的部分證書在某些瀏覽器上是不受信任的,如wosign的部分證書在chrome瀏覽器上就會被打紅叉