資料庫伺服器安全不容忽視。本文整理微軟官方建議的 10 項硬化措施,涵蓋補丁管理、掃描工具、驗證模式、網路隔離、帳戶權限、防火牆、檔案系統、安裝殘留清理、連線審核,可作為上線前核對清單。
10 項安全硬化清單
- 套用最新 Service Pack 與安全性更新
SP3a (8.00.760) 為 2000 基準,之後所有 GDR/累積更新必裝。訂閱 Microsoft Security Bulletin 通知。
- 執行 Microsoft Baseline Security Analyzer (MBSA)
掃描弱密碼、過度 sysadmin、脆弱驗證模式、錯誤 ACL、SA 密碼明文、Guest 權限、DC 上安裝 SQL、註冊表權限、服務帳戶配置、缺失補丁等 11 類風險。
- 強制 Windows 驗證模式
Enterprise Manager → 伺服器屬性 → 安全性 → 僅限 Windows。受益 Kerberos、強制密碼複雜度、憑證委派、客戶端無需存密碼。
- 物理與邏輯隔離,定期異地備份
機房門禁、水火偵測、內網區段隔離、不直連 Internet。全量/差異/記錄備份策略,備份異地保存。
- 設定強健 sa 密碼 (即使啟用 Windows 驗證)
防止未來切換混合模式時空密碼。Enterprise Manager → 安全性 → 登入 → sa → 密碼。
- 最小化 SQL Server / Agent 服務帳戶權限
使用一般網域使用者帳號,勿用 Local System / Local Admin / Domain Admin。Agent 需本地管理員權限僅當:標準驗證連線、MSX 主伺服器標準驗證、非 sysadmin 執行 CmdExec/ActiveX 作業。帳號變更必須用 Enterprise Manager (自動修正檔案/註冊表 ACL)。
- 防火牆封鎖預設埠 (TCP 1433, UDP 1434) 及具名實例埠
- 採用 NTFS 檔案系統並啟用 EFS 加密
NTFS 提供 ACL、穩定性、可恢復性。EFS 下資料檔僅服務帳號可解密;換帳號時需先解密再重新加密。
- 刪除或保護安裝殘留檔 (含明文 sa 密碼)
路徑:Program Files\Microsoft SQL Server\MSSQL\Install\sqlstp.log, sqlsp.log, setup.iss 及升級殘留 %Windir%\setup.iss、Windows Temp\sqlsp.log。官方工具 Killpwd.exe 可自動清除。
- 啟用失敗連線審核並定期檢視
Enterprise Manager → 伺服器屬性 → 安全性 → 審核等級 → 失敗。重啟服務生效。審核日誌勿與資料檔同磁碟。
執行建議
將上述 10 項做成核對表,每季巡檢一次。新佈署伺服器上線前逐項驗收,納入變更管理流程。