直接使用openssl制作的CA证书,由于没有加入访问机器的“受信任的根证书颁发机构”,导致在chrome等浏览器中访问自签名证书的网站时,会有“不可信任证书”提示,进而导致websocket无法成功建立。
现在通过 mkcert 工具可以颁发自签名CA证书,并同时在加入“受信任的根证书颁发机构”
安装步骤:
1、下载程序,并执行安装本地
打开cmd,并执行: mkcert-v1.4.3-windows-amd64.exe -install
安装mkcert,将CA证书加入本地可信CA,使用此命令,就能帮助我们将mkcert使用的根证书加入了本地可信CA中,以后由该CA签发的证书在本地都是可信的。
2、生成CA签名证书
mkcert-v1.4.3-windows-amd64.exe localhost 127.0.0.1 ::1 192.168.1.12
参数说明:直接跟多个要签发的域名或 ip 就行了,比如签发一个仅本机访问的证书(可以通过127.0.0.1
和localhost
,以及 ipv6 地址::1
访问)。可跟多个
3、配置CA证书
例如nginx:
server { listen 8888 ssl; server_name www.sipserver.com; ssl on; ssl_certificate /mnt/debian/ca/www.sipserver.com+5.pem; ssl_certificate_key /mnt/debian/ca/www.sipserver.com+5-key.pem; ssl_session_timeout 5m; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Real-IP $remote_addr; location / { root html; index index.html index.htm; } }
4、https访问,提示可信息
--end