1. 程式人生 > 其它 >如何免費獲取基於公網 IP 的 SSL 證書 (無需域名)

如何免費獲取基於公網 IP 的 SSL 證書 (無需域名)

一般來說,我們使用域名訪問給域名加上 SSL 證書是建站的常規操作,但是有一些應用可能不需要使用域名訪問,或者是不想繫結域名,而只是想用單純的 IP 來實現訪問。在現在全網都是 HTTPS 加密訪問的背景下,有沒有可能給 IP 地址也加上 SSL 證書實現訪問呢?


有。但大多數面對 IP 的 SSL 證書都是收費的。而 zeroSSL 提供免費 SSL 證書[1]是支援純 IP 頒發的,本篇文章就來分享一下zeroSSL[2]免費的純 IP SSL 證書申請以及如何在自己的伺服器(Nginx)安裝配置 zeroSSL 免費 SSL 證書。更多的免費 SSL 請參考專題頁面:免費 SSL 證書收集整理彙總[3]

奇妙的Linux世界 這裡是 Linux 愛好者的聚集地,不僅有各種硬核乾貨文章和新奇內容​推薦,還常常有福利紅包等你來領喲。快快加入我們,一起愉快玩耍吧! 221篇原創內容 公眾號

ZeroSSL 證書申請

網站:https://zerossl.com[4]

手動申請

進入到ZeroSSL[5]官網,註冊一個賬號,然後點選免費 SSL 證書申請。

填寫你的 IP 地址,然後選擇免費 SSL 證書時長。

選擇自動生成 CSR。

驗證域名

ZeroSSL 免費 SSL 證書提供了兩種域名驗證方式,最簡單的就是 Web 驗證,但是前提是你要讓你的 IP 地址實現 Web 訪問。如果沒有,你可以選擇使用域名 DNS 新增 TXT 記錄驗證。

選擇網站 Web 訪問的話,直接下載驗證檔案,然後上傳到 IP 地址預設的 Web 目錄下,要求是路徑保持如下:

用你的瀏覽器開啟 IP,保證可以訪問到驗證檔案。

 

最後,回到 ZeroSSL 驗證頁面,點選完成驗證。

ZeroSSL 證書安裝

下載證書檔案

ZeroSSL 證書驗證成功後,你就可以下載證書檔案了。ZeroSSL SSL 證書[6]提供了多種形式,包括了 Nginx、Apache 等。

這裡以 Nginx 為例,下載下來的 ZeroSSL 證書檔案有三個:ca_bundle.crt 和 certificate.crt 以及私鑰 key。


合併 SSL 證書

對於 Nginx 伺服器,需要將 ca_bundle.crt 和 certificate.crt 合併,方法是開啟 certificate.crt,然後將 ca_bundle.crt 的內容複製貼上放在後面。

安裝 SSL 證書

如果你用的是寶塔面板,可以直接在後臺點選安裝 SSL 證書,然後將證書和金鑰檔案分別上傳儲存即可。

如果你用的是Oneinstack 一鍵包[7]和LNMP 一鍵安裝包[8],則需要開啟你的 Nginx 配置檔案(不是域名 Nginx 配置檔案),參考以下格式修改,注意要將 SSL 證書的路徑改成你自己的:

server
{
listen 443 ssl http2;
#listen [::]:443 ssl http2;
server_name _;
index index.html index.htm index.php;
root /home/wwwroot/default;

ssl_certificate /usr/local/nginx/conf/ssl/ipssl/wzfouip.crt;
ssl_certificate_key /usr/local/nginx/conf/ssl/ipssl/wzfouip.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers "TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256:EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5";
ssl_session_cache builtin:1000 shared:SSL:10m;
# openssl dhparam -out /usr/local/nginx/conf/ssl/dhparam.pem 2048
ssl_dhparam /usr/local/nginx/conf/ssl/dhparam.pem;
access_log /home/wwwlogs/access.log;
}

證書安裝後,記得執行一次:nginx -t 來檢查一下是否有沒有語法錯誤,沒有的話直接重啟 Nginx 完成 SSL 證書安裝。開啟 IP 地址你就可以看到 IP SSL 證書已經成功安裝了。

總結

就目前來看,純 IP 的ZeroSSL 免費 SSL 證書[9]暫時沒有很好的工具來自動續期,Github 有開發者使用 golang 寫了個工具可以實現更新:https://github.com/tinkernels/zerossl-ip-cert,但是不好操作,所以比較簡單的方法就是自己手動申請續期。

引用連結

[1]

免費 SSL 證書: https://wzfou.com/tag/mianfei-ssl/

[2]

zeroSSL: https://wzfou.com/tag/zerossl/

[3]

免費 SSL 證書收集整理彙總: https://wzfou.com/mianfei-ssl/

[4]

https://zerossl.com: https://wzfou.com/go/zerossl

[5]

ZeroSSL: https://wzfou.com/tag/zerossl/

[6]

ZeroSSL SSL 證書: https://wzfou.com/tag/zerossl-ssl-crt/

[7]

Oneinstack 一鍵包: https://wzfou.com/oneinstack/

[8]

LNMP 一鍵安裝包: https://wzfou.com/tag/lnmp-yzb/

[9]

ZeroSSL 免費 SSL 證書: https://wzfou.com/tag/zerossl-mianfei-ssl/

 

本文轉載自:「挖站否」,原文:https://url.hi-linux.com/ZytFE,版權歸原作者所有。歡迎投稿,投稿郵箱: [email protected]