SQL Server 2008 - 安全遠端訪問
我希望允許從 Microsoft Access 數據庫遠端訪問 SQL Server 數據庫,以允許我的客戶根據需要建構報告。
通過在伺服器上的 Windows 防火牆中打開相關埠,我可以毫無問題地做到這一點。然而,這似乎是一種非常不安全的允許訪問方式,並且我的伺服器正被試圖猜測“sa”密碼的某人(或多個人)以驚人的方式作為目標。
雖然此密碼已根據已發布的指南非常嚴格地設置,但我想防止這種情況發生。
允許以這種方式訪問伺服器的最佳實踐是什麼?
非常感謝,安東尼
如果你能提供幫助,你不應該像這樣直接向公共網際網路開放服務。
我建議使用某種形式的 VPN,它可以提供適當的安全性(完全加密的流量等),只允許那些擁有 VPN 密鑰的人甚至可以看到 SQL 伺服器的存在,甚至可以通過添加壓縮來加快速度混合。它也不需要任何成本:OpenVPN是免費的(和 OSS),穩定可靠——我們一直將它用於類似的事情。
如果您不想要完整的 VPN,請在您的機器上安裝 SSH 伺服器,並讓您的客戶端通過使用其隧道功能將連接轉發到埠 1433 進行連接。Windows 的完整 OpenSSH 設置有許多埠,所以這個解決方案也是 F+OSS。
如果您的客戶端真的無法應付 VPN 或 SSH 客戶端帶來的額外麻煩,那麼您無能為力。如果他們有一個固定的 IP 地址,您可以通過將防火牆的“接受埠 1433 連接”規則限制為該地址來刪除來自其他來源的登錄嘗試。如果它們具有動態地址但來自固定範圍(即它們總是從同一個 ISP 連接),那麼您至少可以將規則的範圍限制在該地址範圍內。
如果您的客戶不願意使用 VPN 或 SSH 隧道,您可以通過讚美適當加密的流量(直接連接將以純文字形式發送數據)、壓縮流量(如果他們執行的報告輸出了許多行),並且在 OpenVPN 之類的情況下,連接更可靠(OpenVPN 比直接連接更能適應丟棄和重新連接或其他網路故障)。讓公共網路直接定址的 SQL 伺服器通常被認為是一個壞主意。