521 字
3 分钟
给IP申请SSL证书并开启HTTPS访问
前言
IP证书是一种特殊的SSL证书,它直接绑定到服务器的公网IP地址上,当用户通过这个IP地址访问时,也能享受到如同访问经过域名验证的HTTPS网站一样的加密安全连接。这样一来,即便是没有注册域名或仅通过IP地址访问的服务,也能确保数据传输过程中的安全性,防止信息被窃取或篡改,同时也提供了对服务器身份的验证,增加了用户对服务提供者的信任度。
本教程以caddy
作为演示,如何安装caddy
请参考本博客的教程,使用nginx
的话思路也一样。
1. 打开免费申请IP SSL证书的网站
1:打开后首页就直接输入你要申请的IP,点击Next Step
进入下一步。
2:输入注册邮箱和密码(邮箱可以随便填,不会验证真实性)
3:免费版IP SSL证书有效期是3个月。需要在第二项里手动选择下。否则是默认的1年付费版。
2. 验证IP所有权
以下配置中的123.123.123.123
为示例IP地址
,请根据自己情况替换。
1:下载Auth
验证文件
2:在网站目录里创建/.well-known/pki-validation/
目录,以caddy
为例
mkdir -p /var/www/.well-known/pki-validation
caddy
配置示例
http://123.123.123.123 {
root * /var/www
encode zstd gzip
file_server
}
3:将刚刚下载的验证文件上传到/var/www/.well-known/pki-validation/
目录里
4:启动caddy
,访问你的公网IP,如果能看到验证文件,则代表成功
3. 生成SSL证书
然后zerossl
网站里点击验证,验证成功后下载zip
证书压缩包,上传到服务器/etc/caddy
目录,并使用unzip
命令解压
4. 合并证书文件
在/etc/caddy
目录下执行如下命令:
cd /etc/caddy
cat certificate.crt ca_bundle.crt > fullchain.crt
5. 启动站点
caddy
配置示例
https://123.123.123.123 {
root * /var/www
encode zstd gzip
file_server
tls /etc/caddy/fullchain.crt /etc/caddy/private.key
}
/var/www
为站点目录,123.123.123.123
为示例IP地址
,请根据自己情况替换。
使用nginx
的话思路也一样。