我在生產中的SQL服務器日誌中看到多次失敗的登錄嘗試。我相信有人試圖使用「sa」憑證進行登錄。我禁用了「sa」登錄。我的SQL服務器位於互聯網(公共IP)上,我想創建一個只允許本地連接的防火牆規則,即我的LAN上的APP服務器。阻止SQL服務器上的遠程連接並僅允許本地連接
我打開了Windows防火牆和增加了入站規則,它說,只允許來自特定IP地址(我的應用程序服務器的ip)在端口1433連接,並且不允許遠程連接。
但是現在,我的應用服務器只能連接到sql server。
任何想法?
我在生產中的SQL服務器日誌中看到多次失敗的登錄嘗試。我相信有人試圖使用「sa」憑證進行登錄。我禁用了「sa」登錄。我的SQL服務器位於互聯網(公共IP)上,我想創建一個只允許本地連接的防火牆規則,即我的LAN上的APP服務器。阻止SQL服務器上的遠程連接並僅允許本地連接
我打開了Windows防火牆和增加了入站規則,它說,只允許來自特定IP地址(我的應用程序服務器的ip)在端口1433連接,並且不允許遠程連接。
但是現在,我的應用服務器只能連接到sql server。
任何想法?
我通過在允許的地址中輸入本地子網的整個IP範圍來解決此問題,並且我能夠從我的APP服務器訪問數據庫服務器並阻止所有其他遠程連接。
好的,這是可以修復的。如果您轉到服務器上的防火牆控制(控制面板 - 管理工具),則會看到所有入站防火牆規則的列表。
在該列表中,你應該能夠找到在端口1433上雙擊打開SQL Server的這一規則,然後去「範圍」選項卡。在那裏你會發現一些框來規定通過牆壁允許哪些本地IP地址,以及允許通過牆壁的遠程IP地址框。利用這一點,並與網絡管理員交談,你應該能夠得到一個有效的IP列表(或者可能是一個IP通配符,如191.100.100。*),以阻止不需要的入侵。
顯然,儘管有暴露給外界一個SQL Server是一個沒有沒有,但我猜你不負責。
由於缺少使用外部方法(如網絡防火牆和ACL),因此可以在本地計算機上使用Windows防火牆。我發現剛開放這個端口會很麻煩 - 另外它不會限制通過該端口進入的不需要的流量。我在Windows防火牆中使用程序規則取得了成功。
首先在具有高級安全性的Windows防火牆中創建新的入站規則。
%ProgramFiles%\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn\sqlservr.exe
發現在入站規則標籤規則。打開規則的「屬性」對話框,然後轉到「範圍」選項卡。您可以規定要在遠程IP地址框中訪問該框的計算機的服務器IP,子網等。
腦,這個防火牆規則會阻止所有的匿名IP連接到SQL服務器。因爲我做了相同的測試,但我仍然可以從多個IP訪問SQL服務器(這不在範圍列表中)以下是我所嘗試的:http://stackoverflow.com/questions/19640819/protect-sql-server - 來自黑客 – Vicky
是的 - 一定要查看上面的最後一部分,並且只將您想要允許的IP /子網添加到遠程IP地址框中。我會嘗試禁用並重新啓用防火牆,以確保它能夠接受更改。請記住,防火牆不知道本地或公共的IP,你必須告訴它。 –
以下是SQL 2008的端口列表:http://support.microsoft.com/kb/968872/de –
@DavinTryon:沒有工作。該腳本創建一個防火牆規則以允許所有連接。我的問題是:如何通過創建防火牆規則來允許本地機器(通過LAN)? – Taher