既定では、名前付きインスタンス (SQL Server Express を含む) では動的ポートを使用します。 したがって、データベース エンジンが起動するたびに使用可能なポートが特定され、そのポート番号が使用されます。 インストールされているデータベース エンジンのインスタンスが名前付きインスタンスのみの場合、通常は TCP ポート 1433 が使用されます。 データベース エンジンの他のインスタンスがインストールされている場合は、別の TCP ポートが使用される可能性が高くなります。 選択されたポートは、データベース エンジンが起動するたびに変わる可能性があるので、正しいポート番号にアクセスできるようにファイアウォールを構成することは容易ではありません。 したがって、ファイアウォールを使用する場合は、毎回同じポート番号を使用するようにデータベース エンジンを再構成することをお勧めします。 このポートを固定ポートまたは静的なポートと呼びます。 詳細については、「特定の TCP ポートで受信待ちするようにサーバーを構成する方法 (SQL Server 構成マネージャー)」を参照してください。
固定ポートでリッスンするように名前付きインスタンスを構成する代わりに、sqlservr.exe (データベース エンジン) などの SQL Server プログラムを対象としてファイアウォールで例外を作成することもできます。 この方法が有効な場合もありますが、セキュリティが強化された Windows ファイアウォールの MMC スナップインを使用しているときは、[受信の規則] ページの [ローカル ポート] 列にポート番号が表示されません。 そのため、どのポートが開いているかを調べるのが難しくなる可能性があります。もう 1 つの注意事項は、Service Pack または累積された更新によって SQL Server 実行可能ファイルへのパスが変更され、ファイアウォールのルールが無効になる可能性があるということです。
注 |
---|
次の手順では、コントロール パネルの [Windows ファイアウォール] を使用します。 セキュリティが強化された Windows ファイアウォールの MMC スナップインを使用して、より複雑なルールを構成できます。 その場合は、サービスの例外の設定も行います。これは、多層防御を実装する場合に有効です。 後の「セキュリティが強化された Windows ファイアウォールのスナップインの使用」を参照してください。 |
コントロール パネルの [Windows ファイアウォール] を使用して、ファイアウォールにプログラムの例外を追加するには
コントロール パネルの [Windows ファイアウォール] の [例外] タブをクリックし、[プログラムの追加] をクリックします。
ファイアウォールを通過することを許可する SQL Server のインスタンスの場所 (たとえば、C:\Program Files\Microsoft SQL Server\MSSQL11.<instance_name>\MSSQL\Binn) を参照し、sqlservr.exe を選択して [開く] をクリックします。
[OK] をクリックします。
エンドポイントの詳細については、「複数の TCP ポートでリッスンするデータベース エンジンの構成」および「エンドポイントのカタログ ビュー (Transact-SQL)」を参照してください。