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

ISA Server 2000 代理 SQL Server 實作完整部署指南

     編輯:關於SqlServer

背景動機

傳統 C/S 架構開發效率高、介面豐富,但直接暴露資料庫連接埠於廣域網極不安全。B/S 架構雖安全,但複雜業務需撰寫中間層,開發效率低。ISA Server 充當 SQL Server 代理與防火牆,可隱藏真實資料庫伺服器,讓外部客戶端像連接本地 SQL Server 一樣透明存取,兼顧開發效率與安全性。

核心架構

  • 外部客戶端 → ISA Server 外部 IP (如 203.x.x.x) → ISA 依規則重導 → 內部 SQL Server 內部 IP (如 192.168.1.10)
  • 客戶端連接字串指向 ISA 伺服器名稱/IP,不知真實 SQL Server 位址
  • ISA 依發布規則、存取規則、封包篩選決定是否轉發

安裝前置作業

ISA Server 2000

  1. 確認硬體/軟體需求 (Win2K SP1+、雙網卡:內網/外網)
  2. 設定 TCP/IP:內部/外部 IP、預設閘道、DNS
  3. 執行 ISA Server Enterprise Initialization 設定陣列模式:
    • 僅陣列原則 / 僅企業原則 / 企業+陣列混合
    • 允許發布規則 / 封包篩選
  4. 完成後 Schema 寫入 AD,等待複寫再安裝陣列成員

SQL Server 2000

  1. 建立專用網域服務帳戶 (非 Administrator)
  2. 以本機管理員登入,關閉所有 SQL 相關服務 (含 IIS/ODBC)
  3. 關閉事件檢視器、登錄編輯器

關鍵配置步驟

1. SQL Server 啟用 TCP/IP 並設定 WinSock Proxy

SQL Server Network Utility → 啟用 TCP/IP → WinSock Proxy 索引標籤 → 勾選啟用 → Proxy IP 填 ISA 外部 IP (非內部 IP) → 設定連接埠 (預設 1433)

2. 建立 Wspcfg.ini (SQL Server 機器上)

[sqlservr]
ServerBindTCPPorts=1433
Persistent=1
KillOldSession=1

存放於 sqlservr.exe 同目錄。若連接埠非 1433,同步修改。

3. SQL Server 安裝 Firewall Client

連線 ISA → 找 \\ISA_Server\MSPCLNT 共享 → 執行安裝 → 重啟 SQL Server

4. ISA 設定 LAT (Local Address Table)

ISA 管理主控台 → 網路配置 → LAT → 新增 SQL Server 內部 IP 與 ISA 內部 IP 範圍

5. 建立伺服器發布規則

  • 動作:發布伺服器
  • 內部伺服器 IP:SQL Server 內部 IP
  • ISA Server IP:ISA 外部 IP
  • 協定:Microsoft SQL Server (預設 1433)
  • 設定存取規則:允許特定用戶/群組/時間

6. 客戶端測試

  1. hosts 檔對應 ISA 外部 IP → ISA 伺服器名稱
  2. ping ISA_Server_Name 確認連通
  3. SQL 客戶端工具以 ISA 伺服器名稱連線測試

部署完成後,外部應用維持原有 C/S 開發模式,連線字串僅改指向 ISA,即可獲得防火牆保護與連線透明度。生產環境建議啟用 ISA 記錄稽核、定期檢視防火牆日誌。

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