Windows Server 2008 で SQL Server のファイアウォール ポートを開く方法

適用対象: Microsoft SQL Server 2005 Developer EditionMicrosoft SQL Server 2005 Enterprise EditionMicrosoft SQL Server 2005 Standard Edition

中小企業のお客様は、中小企業向けサポートサイトで問題解決コンテンツや学習リソースもご利用ください。

問題の説明


Windows Server 2008 の Windows ファイアウォールは、コンピューター リソースへの許可されていないアクセスを防止するのに役立ちます。ただし、ファイアウォールの構成が正しくない場合、SQL Server のインスタンスに接続しようとするとブロックされることがあります。 ファイアウォールの内側にある SQL Server のインスタンスにアクセスするには、SQL Server を実行しているコンピューターでファイアウォールを構成する必要があります。


この資料では、Windows Server 2008 で SQL Server のファイアウォール ポートを開く方法について説明します。

このページでこの問題を解決するには、「Fix it で解決する」セクションに進んでください。自分でこの問題を解決するには、「自分で解決する」セクションに進んでください。

Fix it で解決する


この問題を自動的に解決するには、[この問題を解決する] リンクをクリックします。[ファイルのダウンロード] ダイアログ ボックスの [実行] をクリックして、このウィザードの手順を実行します。






: このウィザードは英語版のみである場合がありますが、自動的な解決は英語版以外の Windows でも機能します。

: 操作しているコンピューターに問題がない場合、Fix it ソリューションをフラッシュ ドライブまたは CD に保存して、問題のあるコンピューターで実行することができます。

次に、「問題が解決されたかどうかの確認」セクションに進んでください。

自分で解決する


以下に記載されているスクリプトを使用すると、SQL Server のファイアウォール ポートが開きます。


スクリプトを作成するには、以下の手順を実行します。
  1. メモ帳を起動します。
  2. 次のコードをコピーしてメモ帳に貼り付けます。


    @echo =========  SQL Server Ports  ===================
    @echo Enabling SQLServer default instance port 1433
    netsh firewall set portopening TCP 1433 "SQLServer"
    @echo Enabling Dedicated Admin Connection port 1434
    netsh firewall set portopening TCP 1434 "SQL Admin Connection"
    @echo Enabling conventional SQL Server Service Broker port 4022
    netsh firewall set portopening TCP 4022 "SQL Service Broker"
    @echo Enabling Transact-SQL Debugger/RPC port 135
    netsh firewall set portopening TCP 135 "SQL Debugger/RPC"
    @echo ========= Analysis Services Ports ==============
    @echo Enabling SSAS Default Instance port 2383
    netsh firewall set portopening TCP 2383 "Analysis Services"
    @echo Enabling SQL Server Browser Service port 2382
    netsh firewall set portopening TCP 2382 "SQL Browser"
    @echo ========= Misc Applications ==============
    @echo Enabling HTTP port 80
    netsh firewall set portopening TCP 80 "HTTP"
    @echo Enabling SSL port 443
    netsh firewall set portopening TCP 443 "SSL"
    @echo Enabling port for SQL Server Browser Service's 'Browse' Button
    netsh firewall set portopening UDP 1434 "SQL Browser"
    @echo Allowing multicast broadcast response on UDP (Browser Service Enumerations OK)
    netsh firewall set multicastbroadcastresponse ENABLE
  3. このファイルに OpenSqlServerPort.txt という名前を付け、.txt ファイルとして保存します。
  4. OpenSqlServerPort.txt ファイルの名前を OpenSqlServerPort.bat に変更します。


OpenSqlServerPort.bat スクリプトを実行する前に、ファイアウォールがあるコンピューターにスクリプトをコピーしてから、そのコンピューター上でスクリプトを実行する必要があります。スクリプトを実行するには、以下の手順を実行します。
  1. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。[名前] ボックスに「cmd」と入力し、[OK] をクリックします。
  2. コマンド プロンプトで cd コマンドを使用して、OpenSqlServerPort.bat ファイルを保存したフォルダーに移動します。
  3. OpenSqlServerPort.bat スクリプトを実行するには、コマンド プロンプトで「OpenSqlServerPort.bat」と入力し、Enter キーを押します。

問題が解決されたかどうかの確認


別のコンピューターから SQL Server のインスタンスにアクセスできるか試して、問題が解決したかどうかを確認します。問題が解決された場合、この資料の作業は完了していることになります。問題が解決されていない場合は、サポートにお問い合わせることができます。