# 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浏览器上就会被打红叉