如何:設定用於 Database Engine 存取的 Windows 防火牆
防火牆系統有助於預防未經授權存取電腦資源。若要透過防火牆存取 SQL Server Database Engine 的執行個體,您必須在執行 SQL Server 之電腦上的防火牆設定為允許存取。
如需有關預設 Windows 防火牆設定的詳細資訊以及影響 Database Engine、Analysis Services、Reporting Services 和 Integration Services 之 TCP 通訊埠的描述,請參閱<將 Windows 防火牆設定成允許 SQL Server 存取>和<透過網際網路連接到 SQL Server>。目前有很多種防火牆系統。如需系統專用的資訊,請參閱防火牆文件集。
重要事項 |
---|
在防火牆中開啟通訊埠可能會讓您的伺服器面臨惡意攻擊的威脅。請先確定您已了解防火牆系統,然後再開啟通訊埠。如需詳細資訊,請參閱<SQL Server 安裝的安全性考量>。 |
允許存取的主要步驟包括:
將 Database Engine 設定為使用特定 TCP/IP 通訊埠。Database Engine 的預設執行個體會使用 1433 通訊埠,不過這是可以變更的。SQL Server Express、SQL Server Compact 3.5 SP1 的執行個體及 Database Engine 的具名執行個體都使用動態通訊埠。若要將這些執行個體都設定為使用特定通訊埠,請參閱<如何:設定伺服器接聽特定 TCP 通訊埠 (SQL Server 組態管理員)>。
針對經過授權的使用者或電腦,將防火牆設定為允許存取該通訊埠。
[!附註]
SQL Server Browser 服務可讓使用者連接至並未接聽通訊埠 1433 的 Database Engine 執行個體,而不用知道通訊埠編號。若要使用 SQL Server Browser,您必須開啟 UDP 通訊埠 1434。若要提升至最安全的環境,請將 SQL Server Browser 服務保留在停止狀態,並將用戶端設定為使用此通訊埠編號連接。
[!附註]
依預設,Microsoft Windows XP Service Pack 2 啟用 Windows 防火牆,它會關閉通訊埠 1433 來防止網際網路電腦連接到您電腦上 SQL Server 的預設執行個體。除非您重新開啟通訊埠 1433,否則無法使用 TCP/IP 連接至預設執行個體。下列程序將說明設定 Windows XP 防火牆的基本步驟。如需詳細資訊,請參閱 Windows 文件集。
除了將 SQL Server 設定為接聽固定通訊埠並開啟此通訊埠以外,您也可以列出 SQL Server 可執行檔 (Sqlservr.exe) 做為被封鎖程式的例外。當您想要繼續使用動態通訊埠時,請使用此方法。不過,這個方法只能存取 SQL Server 的其中一個執行個體。
下列程序會使用 [控制台] 中的 [Windows 防火牆] 項目來設定 Windows 防火牆,該項目只針對目前的網路位置設定檔來設定防火牆。若要設定 Windows 防火牆,也可以使用「具有進階安全性的 Windows 防火牆」Microsoft Management Console (MMC) 嵌入式管理單元和 netsh 命令列工具。如需有關這些工具的詳細資訊,請參閱<將 Windows 防火牆設定成允許 SQL Server 存取>。
在 Windows 防火牆中開啟通訊埠以便 TCP 存取
在 [控制台] 中,開啟 [網路連線]、以滑鼠右鍵按一下使用中連線,然後按一下 [內容]。
按一下 [進階] 索引標籤,然後再按一下 [Windows 防火牆設定]。
在 [Windows 防火牆] 對話方塊中,按一下 [例外狀況] 索引標籤,然後按一下 [加入通訊埠]。
在 [加入通訊埠] 對話方塊的 [名稱] 方塊中,輸入 SQL Server<instance name>。
在 [通訊埠號碼] 文字方塊中,輸入 Database Engine 執行個體的通訊埠編號,例如預設執行個體的通訊埠編號是 1433。
確認已選取 [TCP],然後按一下 [確定]。
若要開啟通訊埠以便公開 SQL Server Browser 服務,請按一下 [加入通訊埠],在 [名稱] 文字方塊中輸入 SQL Server Browser,在 [通訊埠編號] 文字方塊中輸入 1434,選取 [UDP],然後按一下 [確定]。
[!附註]
若要允許具名管道透過防火牆存取,您也必須透過防火牆啟用 [檔案及印表機共用]。
關閉 [Windows 防火牆] 和 [內容] 對話方塊。
[!附註]
按一下 [Windows 防火牆] 對話方塊中的 [新增程式] 以設定其他選項,例如授與對特定程式存取的權限及限制對特定 IP 位址或子網路的存取。如需詳細資訊,請參閱 Windows 文件集。
透過 Windows 防火牆存取程式
在 [Windows 防火牆] 對話方塊中,按一下 [例外] 索引標籤,然後再按一下 [新增程式]。
按一下 [瀏覽],然後導覽至您想要透過防火牆存取的 SQL Server 執行個體,然後按一下 [開啟]。SQL Server 預設位於 C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn\Sqlservr.exe。
若要關閉 Windows 防火牆程式,請按兩次 [確定]。
如需如何設定靜態通訊埠、開啟防火牆及使用 SQL Server Management Studio 連接至 Database Engine 的簡短教學課程,請參閱<教學課程:Database Engine 使用者入門>。