web-dev-qa-db-ja.com

MS SQL Server 2014のWindows 10 Defenderファイアウォールのブロック解除

Windows 10マシン(MSSQLと呼びます)にMS SQL Server 2014(WINTENと呼びます)のインスタンスがあります。

WINTENでSSMSを実行すると、ローカルSQL Serverとプライベートネットワーク上の他のマシンのSQL Serverインスタンスの両方に接続できます。

ただし、他のマシンのSSMSからSQL Serverインスタンスに接続できませんWINTEN\MSSQL(-)Windows Defender Firewallを完全にオフにしない限り

すべての指示に従って、次のようにWINTENのWindowsファイアウォールに2つの受信ルールを追加しました。

Windows Defender Firewall settings

ただし、これらのルールが適用されていても、Windows Defenderファイアウォールを有効にするとすぐに、WINTEN\MSSQLへのすべてのSSMS接続が次のメッセージで失敗します。

SSMS connection error 26

他のプライベートネットワークマシンがMS SQL Serverに接続できるようにWindows Defenderファイアウォールを構成する正しい方法は何ですか?


最初の提案ごとに更新:次のように、SQL ServerでTCPポート1433が有効になっています。

Sql Server Configuration Manager

3
feetwet

サービスを開き、次のエントリを見つけます。

SQL Serverブラウザー

SQLサーバー(WINTEN)

それらのプロパティに移動し、実行可能ファイルへのパスを書き留めます。

セキュリティが強化されたWindowsファイアウォールで、4つの新しい受信規則を作成します。これにより、TCPおよびUDPのこれらのプログラムの両方に接続できます。

Windows Defender Settings

私は通常、標準のWindowsファイアウォール(firewall.cpl)を介してこれを実行します。 firewall.cplを開き、[Windowsファイアウォールによるアプリまたは機能の許可]を選択します。 [別のアプリを許可]を選択し、前に見つかった2つの実行可能パスを追加します。

ファイアウォールのポートではなくプログラムを許可する必要がある理由は、SQLブラウザーは常にポート1433にありますが、SQLインスタンスは、SQLブラウザーが接続を指示するランダム/動的ポートにあるためです。プログラムではなくポートを許可する場合は、SQLインスタンスをデフォルトのインスタンスに変更し、SQLブラウザを無効にして固定ポートを使用するように強制する必要があります。

SQLブラウザーサービスが起動時に自動的に開始するように構成されていること、およびSQL構成マネージャーでSQLインスタンスに対してTCP/IPが有効になっていることも確認してください。

5
pholcroft

WINTENでSQL Server構成マネージャーを開きます。

SQL Serverネットワーク構成でインスタンスMSSQLを選択し、TCP/IPの設定を確認します。

プロトコルが有効になっていて、サーバーがポート1433でリッスンしていることを確認します。(タブIPアドレス、セクションIPAll、フィールドTCPポート

2
vic