SQL Server アクセスに対してファイアウォールを構成する方法

更新 : 2006 年 4 月 14 日

ファイアウォール システムは、コンピュータ リソースへの不正アクセスを防ぐのに役立ちます。ファイアウォールを経由して Microsoft SQL Server データベース エンジンのインスタンスにアクセスするには、SQL Server を実行しているコンピュータで、アクセスを許可するようにファイアウォールを構成する必要があります。

SQL Server とファイアウォール システムの連携に関する一般的な情報については、「インターネットを介しての SQL Server への接続」を参照してください。現在、多くのファイアウォール システムが市販されています。システム固有の情報については、ファイアウォールのマニュアルを参照してください。

ms175043.note(ja-jp,SQL.90).gif重要 :
ファイアウォールのポートを開くと、サーバーが攻撃を受けやすくなります。ポートを開く前に、ファイアウォール システムについて理解しておいてください。詳細については、「SQL Server インストールのセキュリティに関する注意点」を参照してください。

アクセスを許可するための主な手順を次に示します。

  1. 特定の TCP/IP ポートを使用するようにデータベース エンジンを構成します。データベース エンジンの既定のインスタンスはポート 1433 を使用しますが、使用するポートは変更できます。SQL Server 2005 Express Edition と SQL Server 2005 Compact Edition のインスタンス、およびデータベース エンジンの名前付きインスタンスは動的ポートを使用します。特定のポートを使用するようにこれらのインスタンスを構成するには、「特定の TCP ポートで受信待ちするようにサーバーを構成する方法 (SQL Server Configuration Manager)」を参照してください。
  2. 認証済みのユーザーまたはコンピュータが上記で構成したポートにアクセスできるように、ファイアウォールを構成します。
ms175043.note(ja-jp,SQL.90).gifメモ :
SQL Server Browser サービスを使用すると、ユーザーはポート番号を意識することなく、ポート 1433 でリッスンしていないデータベース エンジンのインスタンスに接続できます。SQL Server Browser を使用するには、UDP ポート 1434 を開く必要があります。環境のセキュリティを最大限に強化するには、SQL Server Browser サービスを停止した状態で、ポート 1434 を使用して接続するようにクライアントを構成します。
ms175043.note(ja-jp,SQL.90).gifメモ :
Microsoft Windows XP Service Pack 2 では、既定で Windows ファイアウォールが有効になっており、ポート 1433 が閉じられ、インターネットからコンピュータの SQL Server の既定のインスタンスに接続できない状態になっています。TCP/IP を使用して既定のインスタンスに接続するには、再度ポート 1433 を開く必要があります。Windows XP ファイアウォールの基本的な構成手順を次に示します。詳細については、Windows のマニュアルを参照してください。

手順

TCP アクセス用に Windows ファイアウォールのポートを開くには

  1. [コントロール パネル] の [ネットワーク接続] を開き、アクティブな接続を右クリックして、[プロパティ] をクリックします。

  2. [詳細設定] タブをクリックし、[Windows ファイアウォール] の [設定] をクリックします。

  3. [Windows ファイアウォール] ダイアログ ボックスで、[例外] タブをクリックして、[ポートの追加] をクリックします。

  4. [ポートの追加] ダイアログ ボックスの [名前] ボックスに、「SQL Server<instance name>」と入力します。

  5. [ポート番号] ボックスに、データベース エンジンのインスタンスのポート番号を入力します。たとえば、既定のインスタンスの場合は「1433」と入力します。

  6. [TCP] が選択されていることを確認して、[OK] をクリックします。

  7. ポートを開いて SQL Server Browser サービスを公開するには、[ポートの追加] をクリックし、[名前] ボックスに「SQL Server Browser」と入力します。次に、[ポート番号] ボックスに「1434」と入力し、[UDP] をクリックして、[OK] をクリックします。

    ms175043.note(ja-jp,SQL.90).gifメモ :
    ファイアウォール経由で名前付きパイプのアクセスを許可するには、ファイアウォール経由の [ファイルとプリンタの共有] も有効にする必要があります。
  8. [Windows ファイアウォール] ダイアログ ボックスと、接続のプロパティ ダイアログ ボックスを閉じます。

ms175043.note(ja-jp,SQL.90).gifメモ :
特定のプログラムへのアクセスを許可したり、特定の IP アドレスまたはネットワーク サブネットへのアクセスを制限したりするなど、他のオプションを設定するには、[Windows ファイアウォール] ダイアログ ボックスで [プログラムの追加] をクリックします。詳細については、Windows のマニュアルを参照してください。

上記の方法のように、特定のポートでリッスンするように SQL Server を構成してそのポートを開く代わりに、ブロックするプログラムの例外の一覧に SQL Server の実行可能ファイル (Sqlservr.exe) を追加することもできます。この方法は、引き続き動的ポートを使用するときに使用します。この方法でアクセスできる SQL Server のインスタンスは 1 つだけです。

Windows ファイアウォールを経由してプログラムにアクセスするには

  1. [Windows ファイアウォール] ダイアログ ボックスで、[例外] タブをクリックし、[プログラムの追加] をクリックします。

  2. [参照] をクリックし、ファイアウォール経由でアクセスする SQL Server のインスタンスに移動して、[開く] をクリックします。既定では、SQL Server は C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn\Sqlservr.exe にあります。

  3. [OK] を 2 回クリックし、Windows ファイアウォール プログラムを閉じます。

静的ポートを構成する方法、ファイアウォールを開く方法、および SQL Server Management Studio を使用してデータベース エンジンに接続する方法に関する簡単なチュートリアルについては、「データベース エンジンの概要」を参照してください。

参照

概念

SQL Server Browser サービス
プロキシ サーバー経由での SQL Server への接続

ヘルプおよび情報

SQL Server 2005 の参考資料の入手