首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

Azure VM 部署 SQL Server 網路不通?防火牆開啟 1433 埠完整圖文教學

     編輯:關於SqlServer

問題背景

Azure 虛擬機器預設**關閉所有輸入埠**,SQL Server 預設埠 1433 自然無法連線。錯誤訊息通常為:「無法連線到伺服器」「逾時」或「網路路徑未找到」。

解決方案:Windows 防火牆新增輸入規則

  1. 開啟高階安全防火牆:Win+R → WF.msc → Enter。
  2. 新建輸入規則:左側「輸入規則」右鍵 → 「新增規則」。
  3. 規則類型:選「連接埠」→ 下一步。
  4. 通訊協定與埠:
    • 協定:TCP
    • 特定本機連接埠:1433 (或你在 SQL Server 組態管理員設定的埠號)
  5. 動作:選「允許連線」→ 下一步。
    • 進階可選「僅允許安全連線」(需 IPSec),一般環境選預設即可。
  6. 設定檔:勾選「公用」(**必選**,Azure VM 網路介面屬於公用設定檔) → 下一步。
    • 若有私人/網域環境可視情況勾選。
  7. 名稱與描述:輸入 Allow SQL Server 1433 Inbound → 完成。

圖文對照

步驟1 開啟 WF.msc

步驟2 新增規則

步驟4 設定 TCP 1433

步驟5 允許連線

步驟6 勾選公用

步驟7 命名完成


同步必做:SQL Server 組態管理員啟用 TCP/IP

  1. 開啟「SQL Server 組態管理員」。
  2. 「SQL Server 網路組態」→ 選對應執行個體 (預設 MSSQLSERVER) → 「TCP/IP」右鍵「啟用」。
  3. 右鍵「TCP/IP」→「屬性」→ 「IP Addresses」分頁 → IPAll 區段:
    • TCP 動態連接埠:清空 (刪除預設值 0)。
    • TCP 連接埠:輸入 1433。
  4. 重啟 SQL Server 服務 (`MSSQLSERVER`)。

驗證連線

本機或用戶端機器開啟命令提示字元:

telnet  1433
  • 畫面只剩閃爍游標 → **埠已通**。
  • 顯示「連線失敗」→ 檢查 Azure NSG (網路安全性群組) 是否也開放 1433 輸入規則、SQL Server 服務是否運行、埠號是否一致。

安全強化建議 (生產環境必做)

  • 🔒 **修改預設埠**:將 1433 改為高位埠 (如 2433、51433),同步更新防火牆、NSG、連線字串。
  • 🔒 **限制來源 IP**:防火牆規則「範圍」頁僅允許應用伺服器/跳板機 IP 段。
  • 🔒 **強制加密連線**:SQL Server 組態管理員 → 「Flags」→ `ForceEncryption = Yes`,並部署有效憑證。
  • 🔒 **停用 sa / 強密碼 / 登入稽核**:`ALTER LOGIN sa DISABLE;`、設定密碼原則、啟用登入失敗稽核。
  • 🔒 **Azure NSG 雙層防護**:子網路/網卡層級 NSG 僅放行必要埠,拒絕其餘所有輸入。

總結

Azure VM 部署 SQL Server 網路不通,**90% 是防火牆/NSG 埠未開**。依循「Windows 防火牆開 1433 → SQL 組態管理員固定 1433 → NSG 開 1433 → telnet 驗證」四步驟,立即解決。生產環境請務必疊加「改埠、限 IP、加密、稽核」四層防護。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved