騰訊雲企業帳號代理 如何為騰訊雲 CVM 伺服器配置安全組防火牆規則
前言:先想清楚,再動規則
在騰訊雲上談「防火牆」,你實際操作的往往不是傳統機房那套硬體,而是安全組(Security Group)。它把一組「允許的網路流量」封裝起來,套用到雲上的實例(CVM)或網卡。安全組的核心價值,是讓你把網路策略變成可管理、可審計、可回滾的配置,而不是臨時改設定、靠記憶維護。
真正做對配置的人,通常先回答三個問題:
(1)哪些服務必須對外提供?
(2)需要放行的來源是誰、從哪裡來?
(3)允許的方向是入站還是出站?
只要這三點想清楚,後面的端口、協議、授權範圍都會變得很自然,不會陷入「先全開再說」的陷阱。下面就以「如何為騰訊雲 CVM 配置安全組防火牆規則」為主線,帶你從理解到落地。
第一章:安全組與防火牆的關係
騰訊雲企業帳號代理 很多人一上來就去新增規則,但不先理解安全組的運作方式,容易把規則配對錯或忽略關鍵限制。安全組可以理解為:在雲平台層面,控制你這台 CVM 能接收或發出的流量。
1.1 入站與出站:你改的是哪一邊?
常見錯誤是只開「入站」卻忽略回應流量,或反過來。一般情況下:
- 入站(Inbound):決定外部能連到你這台 CVM 的流量。比如對外的 HTTP/HTTPS、SSH。
- 出站(Outbound):決定你這台 CVM 能主動連到外部的流量。比如更新系統套件、連外部 API。
在排查時,你要能快速判斷問題屬於「對方進不來」還是「你出不去」。此外,某些服務可能對出站也有要求,例如後端需要連資料庫或外部服務。
1.2 安全組規則是「允許清單」,不是「黑名單」
安全組的邏輯通常是白名單式:你明確允許什麼,流量就能通;你沒有允許的,大多會被拒。這意味著越是謹慎的配置,越要先把需求列出來。
1.3 規則的三要素:協議、端口、來源/目標
騰訊雲企業帳號代理 一條規則一般可以拆成:
- 協議:TCP/UDP/ICMP 等
- 端口:單端口或端口範圍
- 來源或目標:例如某個 IP 段、某個安全組、或其他網段
你配置的安全組越「精準」,越能降低攻擊面。反之,如果你把來源設成「0.0.0.0/0」並且把敏感端口直接暴露,那麼看似方便,實際風險會被放大。
第二章:配置前的準備工作(把需求寫出來)
先做清單,再照清單填規則。這是最省時間也最不容易返工的方式。
2.1 列出服務與端口
以一台典型 Web 伺服器為例,你可能需要:
- 80/TCP:HTTP(若你已強制跳轉 HTTPS,可先不開)
- 443/TCP:HTTPS
- 22/TCP:SSH(建議僅允許辦公網或管理主機 IP)
- 3306/TCP:若你在同一台上跑 MySQL,且需要外部連入(通常不建議對外直接暴露)
如果是應用服務端口,例如自訂 API:你也要記下端口號與協議。
2.2 明確來源範圍:用最小集合
來源範圍不是越大越好。你可以考慮這些層級:
- 你的辦公網出口 IP(最常見)
- 管理跳板機(Jump Host)的私網 IP 或其安全組
- 應用的前端負載均衡(若有)所屬的安全組
- 給外部公開的入口(例如 443)是否需要限制地理或 IP 段
特別是 SSH:它幾乎是所有被嘗試爆破的入口之一。即使你做了密碼策略或改了端口,仍然建議把來源縮到最小。
2.3 決定是否需要出站放行
很多人只盯著入站。實務上,若你要:
- 拉取鏡像(Docker)
- 更新系統(apt/yum)
- 連接外部 API(第三方服務)
你就需要檢查出站規則是否會阻擋。
但同樣原則:出站也應該按需求放行,而不是把所有目的地全部允許。
第三章:在騰訊雲建立並配置安全組規則
下面按流程走,讓你在實操時能一邊對照界面一邊做。
3.1 進入安全組管理頁面,確認實例所在地域
安全組通常是綁定在特定地域/VPC 之下。你需要先確認你的 CVM 實例所在的地域,以及是否使用了同一個 VPC/子網。
騰訊雲企業帳號代理 若你不確定,回到 CVM 控制台查看實例屬性:地域、VPC、私網 IP、對應安全組是否已綁定。
3.2 新建安全組或使用現有安全組
騰訊雲企業帳號代理 如果你的團隊有既定模板,可能已經存在「Web-Prod」「Admin-Only」之類的安全組。你可以直接引用並調整,但要注意變更後影響範圍。
若沒有模板,建議建立一個新的安全組,並給出清晰命名。例如:
- sg-prod-web-443-only
- sg-prod-admin-ssh
騰訊雲企業帳號代理 命名看似瑣碎,但後續維運、審計、回溯時會節省大量時間。
3.3 新增入站規則:從對外服務開始
以一台提供 HTTPS 的 Web 伺服器為例,你可能先新增:
1)入站允許 TCP 443,來源:你的負載均衡 IP 或公開入口的來源範圍(如果是直接對外公開,可先用受控範圍代替全網)。
2)(可選)入站允許 TCP 80,若你需要 HTTP 可達(例如 ACME 憑證驗證或跳轉服務)。
如果你打算將 80 也只用於跳轉或驗證,可以把來源範圍限制為負載均衡或固定 IP 段。
關於「來源是誰」:如果你使用了 CLB(負載均衡),最好直接允許來自該負載均衡的來源(或允許其安全組)。這樣比寫死 IP 更可維護。
3.4 新增入站規則:管理端口(SSH)的最小化策略
SSH 是最敏感的入口之一。建議遵循以下原則:
- 只允許必要來源 IP(例如辦公網固定出口 IP)
- 儘量不要讓來源是 0.0.0.0/0
- 若你有跳板機,允許跳板機的私網 IP 或安全組
新增規則時,你應該指定:
- 協議:TCP
- 端口:22(或你實際的 SSH 端口)
- 來源:管理主機/辦公網 IP 段
這樣做的效果是:攻擊者即便掃到你的公網 IP,也只能在來源不匹配時被拒,風險立即下降。
3.5 追加出站規則:讓伺服器能完成它該做的事
是否要調整出站,取決於你的系統行為和當前安全組的預設策略。若預設是「允許所有出站」,你可以維持不變;若預設是「拒絕」,你就要補齊需求。
常見需要放行的出站包括:
- DNS:TCP/UDP 53
- NTP:UDP 123(時間同步,影響憑證與服務)
- HTTPS 更新:TCP 443(套件下載、鏡像拉取)
- 應用依賴的外部 API 端口:通常也是 TCP 443,但可能有例外
如果你不知道外部端口,先觀察應用日誌或在測試環境記錄連線行為,再反推規則。
3.6 綁定安全組到 CVM 實例,或綁定到網卡
安全組規則配置好後,還要確保它已經套用到正確的實例。常見的綁定方式有兩種思路:
- 綁定到實例(或其網卡)讓流量在雲端層面被過濾
- 多安全組並行時,以平台規則合併/匹配的方式生效(具體以產品邏輯為準)
操作時你要確認:你是對準了目標實例,而不是另一台相似的環境(例如測試環境)。最常見的踩坑,就是以為改了某個安全組,結果那台 CVM 根本沒有綁到。
第四章:檢查與驗證:讓「能通」有依據
安全組配置不是結束,而是進入驗證階段。你應該用可重現的方法確認每一條規則都達成預期。
4.1 從外部測試入口:端口連通性
對於 HTTPS/HTTP:從瀏覽器或命令列測試連線是否建立成功。若你遇到超時,要優先判斷:是網路被拒,還是服務端還沒啟動。
建議你依序做三步:
1)確定安全組入站已放行目標端口
2)在 CVM 上確認服務已在監聽(例如 web 服務是否運行)
3)檢查是否有系統防火牆(例如 Linux 的 iptables/nftables)或雲端 ACL 等其他策略在攔截
4.2 在 CVM 內部測試:排除「服務未啟動」
假設你對外 443 已放行,但仍然連不上,往往是服務端未監聽或綁定到錯誤的網卡。你可以在 CVM 上檢查:
- 服務程序是否運行
- 服務是否在預期端口監聽(0.0.0.0 或內網 IP)
- TLS 憑證是否有效(這不一定是安全組問題,但會表現為連線建立後的錯誤)
這一步的目的,是把問題從「網路策略」縮小到「應用本身」。
4.3 用日誌與連線記錄做佐證
很多問題拖延,是因為只看一個結果。你應該把觀察點分散:
- 安全組/防火牆層面的命中情況(若平台提供)
- CVM 系統層面的連線日誌
- 應用層的訪問日誌或錯誤日誌
當你能看到「請求進來了但被應用拒絕」,那就不是安全組的鍋;反之,如果明顯沒有流量到達,才考慮安全組是否匹配或綁定正確。
第五章:收斂與加固:讓規則更安全、更好管理
安全組配置成功後,不代表就可以一直放著不管。成熟的運維會持續收斂權限。
5.1 端口只開需要的:避免「順手開了」
常見累積問題是:上線後需求變了,但你以前開的端口仍然存在。例如:曾經臨時開了測試服務端口,後續下線卻忘記刪除規則。這會讓攻擊面長期存在。
建議你每個迭代周期回顧一次規則清單:
- 是否仍有業務需要
- 是否仍有必要對外(或仍需要對應來源)
5.2 限定來源:從「能用」走向「最小可信」
當你確認業務能跑通後,再逐步把來源縮小。比如:最開始為了排查問題,你可能先允許更寬的來源;排查完成後,應收斂到最小必要 IP 段或安全組。
5.3 多安全組分層:把責任拆開
如果你把所有規則都堆在同一個安全組,未來維護會越來越痛。更好的做法是分層:
- 對外服務安全組(HTTP/HTTPS)
- 管理安全組(SSH)
- 內部通信安全組(若需要)
這樣當你要調整 SSH,只需動管理安全組,不會影響對外服務。
5.4 變更管理:避免誤操作帶來停機
安全組是「影響網路通斷」的關鍵配置。實務上要做到:
- 變更前備份規則或至少有清晰差異記錄
- 優先在測試環境驗證
- 避免同時大幅變更太多條規則(增加定位難度)
第六章:常見誤區與排查路徑
以下是最常見的踩坑。你如果能先避開,會少掉很多無效時間。
6.1 只開了安全組卻忽略系統防火牆
很多 CVM 可能還啟用了 Linux 防火牆規則,導致即使安全組放行,系統層仍拒絕連線。排查時,你應同時檢查:
- 安全組入站是否允許
- 系統服務是否監聽
- 系統防火牆策略是否允許相同端口
6.2 安全組綁錯實例或綁在錯的網卡
界面上看似改了,實際上未套用。尤其是你有多個環境(dev/test/prod)或多台類似主機時,容易綁錯。排查時要回到實例屬性確認綁定關係。
6.3 來源範圍設錯:IP 段寫不對、位元掩碼理解錯
來源/目標常包含 CIDR。很多人寫了像「/24」但以為只是單一 IP,或反過來。這會導致規則不命中。建議你在規則輸入前核對:是否是單 IP、是否是正確的網段。
6.4 把敏感服務直接暴露到全網
除了 SSH,資料庫管理端口、內部管理界面也常被誤開。即使服務本身做了帳密保護,攻擊者仍可能透過暴力破解、漏洞利用等方式嘗試入侵。
原則是:能內網就不要外網;能限定來源就不要全網;能用跳板就不要直連。
6.5 忽略出站:應用連外失敗但你以為是入站
有些錯誤表現得像「外部打不進來」,但實際是你的服務對外依賴失敗。例如連第三方 API、拉取證書更新等。這通常和出站規則、路由或 DNS 有關。排查時要把方向分清。
第七章:一個可落地的示例流程(把抽象變成操作)
為了讓你更貼近實務,我用一個常見場景串起流程:你有一台 CVM,部署 Web 站點,要求外部訪問 HTTPS;管理只允許辦公網;系統需要能解析 DNS 與連外更新。
7.1 入站規則設計
你先決定:對外只開 443。於是入站規則新增:
- TCP 443,來源:你允許的來源範圍(若直連公網,可暫時先用合適的 IP 段;若是負載均衡,則允許其安全組)。
管理則新增:
- TCP 22,來源:辦公網出口固定 IP 段(或跳板機安全組)。
如果你沒有必要,不開其他端口;如果你暫時要做 HTTP 驗證,可以在短時間內開 TCP 80,並在驗證完成後收回。
7.2 出站規則設計
出站方面,你確保:
- UDP/TCP 53:DNS
- UDP 123:時間同步
- TCP 443:更新與下載
必要時再補你應用所依賴的其他端口。
7.3 綁定與驗證
完成規則後,把安全組綁到 CVM 實例。接著做三種驗證:
- 外部用瀏覽器測試 HTTPS:能連,且證書正常(或你預期的錯誤)。
- 用辦公網 IP 測試 SSH:能登入。
- 在 CVM 內執行更新/解析域名測試:確認 DNS 與出站有效。
如果某一步失敗,就沿著排查路徑縮小範圍:安全組是否命中、來源是否正確、服務是否監聽、系統防火牆是否攔截。
第八章:讓安全組配置「可運維」的技巧
騰訊雲企業帳號代理 真正把安全做起來的人,不只會「配」,還會「讓後來的人也能改」。以下是幾個實用技巧。
8.1 規則要有理由:在命名或備註中留下上下文
例如把安全組命名為「prod-web-https-from-clb」,或規則註明「為憑證驗證臨時開放 80,期限一週」。當你回看時,腦子不需要重新推理。
8.2 把變更拆開:先放行,再收斂
排查問題時先放寬是可以的,但要設定截止。你可以先確保服務通了,再逐步縮小來源/端口。
8.3 定期盤點:把「曾經需要」變成「現在仍需要」
定期盤點規則可以避免權限膨脹。每次釋出後,最好由一個人對安全組清單做簡短核對:端口是否仍存在、來源是否仍有效、出站是否仍需要。
結語:安全組不是一次性任務
為騰訊雲 CVM 配置安全組防火牆規則,本質上是把網路風險用可控的方式落地。你不需要追求複雜技巧,但要做到三件事:把需求列清楚、把規則設得足夠精準、並用驗證與日誌形成閉環。安全組更像是一套「流程與習慣」,而不是單次設定。
當你能把「開什麼、為什麼開、什麼時候收回」講清楚,配置就不再是焦慮的來源,反而成為讓系統更穩、更可維護的基礎。


