相信不少朋友会发现给ip地址上https 一般情况下 谷歌浏览器或者主流的浏览器都会显示不安全,
因为大概率是自签名证书。
本期将会给大家分享一个免费的给ip签发ssl证书的机构
官网地址:https://app.zerossl.com/
这个zerossl 证书也是我一直在使用的,
主要是使用开源项目 acme.sh 来自动为我的域名签发3个月的证书。
由于本次分享的是给ip签发ssl证书,因此暂时未发现有自动化脚本能够实现这个功能。
zerossl 免费ip证书申请
首先打开他们的官网去注册,注册非常友好,不需要邮箱认证,乱填就完事了,
前提是你得记得住,以后如果需要重复使用的话。
如果遇到点击注册无反应的问题,请使用F12 检查控制台是否有资源报错,
一般情况是服务地址和你的网络存在隔阂导致,请使用代理软件刷新页面即可。
由于是 ip 地址 因此我们选择下面的 http file 验证方式
这时候我们点击 Download Auth File
下载它的验证文件。
上传到我们的服务器中。
我这里使用的是Nginx 因此我在一个船新安装nginx配置文件中加入 如下配置
具体位置可以根据你们对nginx的了解自行配置,
这里主要是能够让zerossl能够验证我们对ip的所有权就行了。
然后重启nginx就可以准备验证了
恭喜你 已经获得了一个 可以 给 ip 使用的 安全的https证书,点击 下载证书去配置即可
测试配置
server {
listen 443;
server_name 1.xx.xx.34 ssl;
ssl_certificate /usr/local/ssl/certificate.crt;
ssl_certificate_key /usr/local/ssl/private.key;
proxy_set_header Host $host;
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-Requested-For $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}