阿里雲賬號!! 如何在阿里雲服務器上配置免費的SSL證書(Let's Encrypt)實現HTTPS?

雲端 2026-06-09 阅读 7
2

在如今的互聯網世界裡,如果你的網站還在用舊時代的 ht

Tp://

(明文傳輸),不僅會在瀏覽器的地址欄被無情地標記上紅色的「不安全」警告,還會被 Google、百度等搜索引擎在排名上狠狠地限流。 更糟糕的是,黑產可以輕而易舉地在傳輸途中劫持你的網頁,往裡面塞滿噁心的牛皮癬廣告。

要解決這個問題,唯一的辦法就是升級到

HTTPS

。 而升級 HTTPS,核心就是需要一張

SSL 安全證書

很多新客和創業老闆一聽到 SSL 證書,第一反應是:「這玩意兒去大廠買,一年得大幾百甚至上千塊,太貴了。」

阿里雲賬號!

今天這篇文章,我就用純大白話的真人帶路風格,手把手帶你在阿里雲服務器上,利用全球最良心的免費證書頒發機構

Let's Encrypt

,配合自動化神器

Certbot

,實現「一鍵申請、自動續期、終身免費」的 HTTPS 終極實操。

核心原理:為什麼選擇 Let's Encrypt 和 Certbot?

Let's Encrypt:這是一個由全球各大互聯網巨頭(Mozilla、思科、谷歌等)聯合贊助的公益組織,專門免費發放正規、受所有瀏覽器信任的 SSL 證書。

終身免費的代價:唯一的「小缺點」是每次申請的證書有效期只有 90 天。

自動化神器 Certbot:為了不讓我們每三個月手動折騰一次,官方推出了 Certbot 命令行工具。 它不僅能一鍵幫我們申請好證書,還能在後台死死盯住到期時間,在證書快過期時自動續期。 只要服務器不倒,證書就永遠免費、永不過期。

準備工作:出門前的安全檢查

在敲命令之前,請務必確保以下三件事已經辦妥,否則後面百分百會「鬼打牆」:

域名已經成功解析到你的阿里雲服務器 IP:如果你在瀏覽器里打你的域名(如 www.yourname.com)還無法訪問你服務器的默認網頁,請先去搞定域名解析。

放行阿里雲安全組的 443 端口:HTTPS 走的是 443 端口(普通 HTTP 走 80 端口)。 實操:登錄阿里雲控制台 -> 找到你的 ECS 實例 -> 點擊 [安全組] -> [配置規則] -> 在入方向放行 443 端口。 如果沒放行,證書裝得再好,外網也無法安全連接。

服務器上已經裝好了 Web 服務(以 Nginx 為例):並且你的 Nginx 已經配置好了基礎的域名訪問。

阿里雲

賬號!

下面,我們正式進入實操命令階段。 我們以目前國內最主流的

烏邦圖

CentOS/Alibaba Cloud Linux

兩個系統為例。

第一步:在服務器上安裝 Certbot 工具

我們需要先把這位「自動化管家」請進服務器。

如果你的服務器系統是 Ubuntu:

Ubuntu 自帶的包管理器很方便,直接運行以下命令:

貝殼腳本

# 更新軟件源

Sudo apt update

# 安裝 certbot 以及針對 nginx 的專用插件

Sudo apt install certbot python3-certbot-nginx -y

如果你的服務器系統是 CentOS / Alibaba Cloud Linux:

CentOS 需要先開啟 EPEL 擴展源,才能找到 Certbot。

貝殼腳本

# 安裝 EPEL 擴展源

Sudo yum install epel-release -y

# 安裝 certbot 和 nginx 插件

Sudo yum install certbot python3-certbot-nginx -y

第二步:一行命令,自動申請並配置 SSL 證書

Certbot 最牛的地方在於,它有一個「傻瓜式」的自動掃描模式。 它會自動去讀你服務器里 Nginx 的配置文件,找出你綁了什麼域名,然後自動幫你去向 Let's Encrypt 申請證書。

請在終端輸入以下這行無敵的命令:

貝殼腳本

Sudo certbot --nginx

執行後,終端會彈出交互式提示,別慌,跟著我的真人提示一步步輸入:

輸入郵箱 (Enter email address):輸入一個你的常用郵箱。 這個郵箱非常重要,如果哪天自動續期腳本不小心掛了,let's Encrypt 會在證書到期前 20 天發郵件提醒你救火。

同意服務條款 (Terms of Service):直接輸入 A(Agree)回車。

是否接受贊助商郵件 (Would you be willing to share your email...):輸入 N(No)回車,免得天天收到垃圾郵件。

選擇要開通 HTTPS 的域名:這時候,certbot 會神奇地把你 Nginx 里配置的所有域名列出來(比如 1: yourname.com, 2: www

. Yourname.com)。 怎麼選:如果你想把這兩個域名都加上 HTTPS,直接敲回車(默認全選),或者輸入對應數字用逗號隔開。

敲下回車後,屏幕會瘋狂閃過一堆代碼(這是 Certbot 在和 Let's Encrypt 的服務器進行「人機握手驗證」)。

稍等 5 到 10 秒鐘,當你在屏幕最後看到大大的

Congratulations! You have successfully enabled HTTPS...

時,說明證書已經成功下發!

更絕的是,Certbot 已經

自動修改了你的 Nginx 配置文件

,把繁瑣的密鑰路徑、443端口監聽、SSL 加密算法全部自動填好了。

第三步:終極驗證

這時候,你可以合上黑色命令行,打開你的電腦瀏覽器。

在地址欄輸入你不帶 https 的域名(例如:

ht

Tp://www.yourname.com),你會發現系統會自動幫你跳轉到帶有安全鎖的 ht

Tps://www.yourname.com

點擊域名左側那顆精美的小掛鎖,查看證書詳情,你會看到頒發機構明確寫著:

讓我們加密

。 至此,你的阿里雲服務器已經完美穿上了 HTTPS 的防彈衣!

第四步:高枕無憂--配置自動續期定時任務

前面說了,這個證書只有 90 天有效期。 雖然 Certbot 在安裝時通常會默認在系統里加一個定時任務,但為了確保萬無一失,我們必須手動驗證並測試一下這個「續期死循環」是否工作正常。

1. 模擬續期測試(不實際演練,只走流程)

輸入以下命令,讓 Certbot 模擬一次證書過期後的續期操作:

貝殼腳本

Sudo certbot renew --dry-run

如果屏幕最後顯示

Your certificates are not due for renewal yet, but simulated successfully

或者沒有任何報錯提示(Success),就說明自動續期的內核是完全健康的。

2. 強行保險:添加 Linux Cron 定時任務

為了防止由於系統環境變動導致默認的自動續期掛掉,業內老司機通常會自己在 Linux 的定時任務(Crontab)里加上一把雙保險。

阿里雲帳號!

輸入以下命令打開系統定時任務編輯器:

貝殼腳本

Sudo crontab -

e

在文件的最底部,另起一行,把下面這行命令粘貼進去:

純文字

0 3 * * * certbot renew --post-hook "systemctl reload nginx"

這段代碼的意思是:讓服務器每天凌晨 3:00 整,自動在後台悄悄執行一次 certbot renew 命令。 Certbot 非常聰明,如果發現證書還沒到期(剩餘時間大於 30 天),它什麼都不會乾;一旦發現證書距離過期不足 30 天了,它就會自動在後台把新證書申請下來,並通過 --post-hook 順便讓 Nginx 重新加載(Reload)一下配置,無縫應用新證書。

保存並退出。 有了這行命令,你就可以徹底把「SSL 證書過期」這件事從你的大腦記憶區里刪掉了。

結語與避坑總結

看完了全流程,你是不是發現,其實在阿里雲上搞定免費 HTTPS 也就不到 5 分鐘的事?

最後總結兩個新手最容易踩的暗坑:

別漏了二級域名:如果你既想讓 yourname.com 變安全,又想讓 api.yourname.com 變安全,在申請證書前,確保這些二級域名的 Nginx server_name 都配置妥當,並且阿里雲解析也加好了。

禁止在有寶塔面板的服務器上混用此命令:如果你給阿里雲服務器裝了「寶塔面板」等可視化工具,請直接在面板的圖形界面里點擊「申請 Let's Encrypt 證書」,不要去命令行里跑 Certbot。 因為可視化面板有它自己的一套 Nginx 配置規則,用原生命令去改會把面板的配置文件直接改崩。

現在,你的網站不僅安全防劫持,還能在各大搜索引擎眼裡拿到更高的權重分,趕緊去把你的免費小掛鎖掛起來吧!

阿里雲帳號!

2
← 返回新闻中心