レッスン 2: 別のコンピューターからの接続

適用対象:SQL Server

セキュリティを強化するため、SQL Server Developer、Express、および Evaluation エディションの データベース エンジンは、最初にインストールした状態では別のコンピューターからアクセスできないようになっています。 このレッスンでは、別のコンピューターから接続するために、プロトコルの有効化、ポートの構成、Windows ファイアウォールの構成を行う方法について学習します。

このレッスンの内容は次のとおりです。

プロトコルを有効にする

セキュリティを強化するために、SQL Server Express、Developer、Evaluation エディションは、ネットワーク接続が制限された状態でインストールされます。 データベース エンジンへの接続は、同じコンピュータ上で実行されているツールから行うことができますが、他のコンピューターからは行うことができません。データベース エンジンと同じコンピューターで開発作業を行う場合、追加のプロトコルを有効にする必要はありません。 Management Studio は、共有メモリ プロトコルを使用してデータベース エンジンに接続します。 このプロトコルは既に有効になっています。

別のコンピューターからデータベース エンジンに接続する場合は、TCP/IP などのプロトコルを有効にする必要があります。

別のコンピューターからの TCP/IP 接続を有効にするには

  1. [スタート] メニューで、[すべてのプログラム][Microsoft SQL Server][構成ツール] の順にポイントして、[SQL Server 構成マネージャー] を選択します。

    Note

    32 ビットと 64 ビットの両方のオプションが利用できるかどうか確認してください。

    バージョン Path
    SQL Server 2022 (16.x) C:\Windows\SysWOW64\SQLServerManager16.msc
    SQL Server 2019 (15.x) C:\Windows\SysWOW64\SQLServerManager15.msc
    SQL Server 2017 (14.x) C:\Windows\SysWOW64\SQLServerManager14.msc
    SQL Server 2016 (13.x) C:\Windows\SysWOW64\SQLServerManager13.msc
    SQL Server 2014 (12.x) C:\Windows\SysWOW64\SQLServerManager12.msc
    SQL Server 2012 (11.x) C:\Windows\SysWOW64\SQLServerManager11.msc
  2. SQL Server 構成マネージャー[SQL Server ネットワークの構成] を展開し、[<InstanceName>のプロトコル] を選択します。

    既定のインスタンス (名前のないインスタンス) は、MSSQLSERVER として表示されます。 名前付きインスタンスをインストールした場合は、指定した名前が表示されます。 SQL Server Express は SQLEXPRESS としてインストールされます (セットアップ中に名前を変更した場合を除く)。

  3. プロトコルの一覧で、有効にするプロトコル ([TCP/IP]) を右クリックし、[有効化] を選択します。

    Note

    ネットワーク プロトコルを変更したら SQL Server サービスを再起動しますが、これは次のタスクで実行されます。

固定ポートの構成

セキュリティ強化のために、Windows および Windows Server では Windows ファイアウォールが有効になっています。 別のコンピューターからこのインスタンスに接続する場合は、ファイアウォールで通信ポートを開放する必要があります。 データベース エンジンの既定のインスタンスはポート 1433 でリッスンするので、固定ポートを構成する必要はありません。 ただし、SQL Server Express などの名前付きインスタンスは、動的ポートでリッスンします。 ファイアウォールでポートを開く前に、まずデータベース エンジンが固定ポートまたは静的ポートと呼ばれる特定のポートでリッスンするように構成する必要があります。構成が行われていないと、データベース エンジンは起動のたびに異なるポートでリッスンする可能性があります。 ファイアウォール、Windows ファイアウォールの既定の設定の詳細と、データベース エンジン、Analysis Services、Reporting Services、および Integration Services に影響する TCP ポートの説明については、「SQL Server のアクセスを許可するための Windows ファイアウォールの構成」を参照してください。

Note

ポート番号の割り当ては、Internet Assigned Numbers Authority によって管理され、https://www.iana.org に一覧が掲載されています。ポート番号は、 49152 から 65535 の間で割り当てる必要があります。

SQL Server が特定のポートでリッスンするよう構成するには

  1. SQL Server 構成マネージャーで [SQL Server ネットワークの構成] を展開し、構成するサーバー インスタンスを選択します。

  2. 右側のペインで、 [TCP/IP]をダブルクリックします。

  3. [TCP/IP のプロパティ] ダイアログ ボックスの [IP アドレス] タブを選択します。

  4. [IP All] セクションの [TCP ポート] ボックスで、使用可能なポート番号を入力します。 このチュートリアルでは、49172 を使用します。

  5. [OK] を選択してダイアログ ボックスを閉じ、サービスを再起動する必要があるという警告が表示されたら [OK] を選択します。

  6. 左側のウィンドウで、[SQL Server サービス] を選択します。

  7. 右側のペインで SQL Server のインスタンスを右クリックし、[再起動]を選択します。 データベース エンジンが再起動すると、ポート 49172 でリッスンします。

ファイアウォールでポートを開く

ファイアウォール システムは、コンピューター リソースへの不正アクセスを防ぐのに役立ちます。 ファイアウォールが有効になっている場合、別のコンピューターから SQL Server に接続するには、ファイアウォールでポートを開く必要があります。

重要

ファイアウォールのポートを開くと、サーバーが悪意のある攻撃にさらされる可能性があります。 ポートを開く前に、ファイアウォール システムに関する理解を深めておいてください。 詳細については、「 Security Considerations for a SQL Server Installation」を参照してください。

固定ポートを使用するようデータベース エンジンを構成した後、次の手順に従って、Windows ファイアウォールで固定ポートを開きます (既定のインスタンスに固定ポートを構成する必要はありません。既定では TCP ポート 1433 になっています)

TCP アクセス用に Windows ファイアウォールでポートを開く (Windows 7)

  1. [スタート] メニューで [ファイル名を指定して実行] を選択し、「WF.msc」と入力して、 [OK] を選択します。

  2. [セキュリティが強化された Windows ファイアウォール]で、左側のペインの [受信の規則]をクリックし、[操作] ペインの [新しい規則] をクリックします。

  3. [規則の種類] ダイアログ ボックスで、 [ポート] を選択し、 [次へ] を選択します。

  4. [プロトコルおよびポート] ダイアログ ボックスで、 [TCP] をクリックします。 [ローカル ポートを指定する] を選択し、データベース エンジンのインスタンスのポート番号を入力します。 既定のインスタンスの場合は「1433」と入力してください。 名前付きインスタンスを構成する場合や、前のタスクで固定ポートを構成した場合は、「49172 」と入力します。 [次へ] を選択します。

  5. [操作] ダイアログ ボックスで、 [接続を許可する] を選択して、 [次へ] を選択します。

  6. [プロファイル] ダイアログ ボックスで、データベース エンジンに接続するときのコンピューター接続環境を表すプロファイルをすべて選択し、 [次へ] を選択します。

  7. [名前] ダイアログ ボックスで、この規則の名前と説明を入力し、 [完了] を選択します。

TCP アクセス用に Windows ファイアウォールでポートを開く (Windows 10)

Windows 10 コンピューター上で TCP アクセス用に Windows ファイアウォールでポートを開くには、次の手順に従います。

  1. Windows ファイアウォールの設定へのアクセス:

    • キーボードの Windows キーまたはタスクバーの Windows アイコンを選択して、スタート メニューを開きます。
  2. Windows Security」と入力します:

    • スタート メニューの検索バーに「Windows セキュリティ」と入力し、[Enter] キーを押します。 Windows セキュリティ アプリが開きます。
  3. Windows セキュリティのファイアウォールとネットワーク保護を開きます:

    • 左側のサイドバーの Windows セキュリティ アプリで [ファイアウォールとネットワーク保護] を選択します。
  4. [ファイアウォールによるアプリケーションの許可] の選択:

    • [ファイアウォールとネットワーク保護] の下で、[ファイアウォールによるアプリケーションの許可] を選択します。
  5. 設定の変更 (管理者アクセス許可):

    • 変更するには、管理者アクセス許可が必要な場合があります。 プロンプトが表示されたら [設定の変更] ボタンを選択し、管理者資格情報を入力します。
  6. プログラムまたはポートの検索:

    • [許可されたアプリと機能] セクションで、下にスクロールして、開きたいプログラムまたはポートを見つけます。 特定のアプリケーションのポートを開く場合は、一覧からそのアプリケーションを探します。 カスタム ポートを開く場合は、ルールを作成する必要があります。それ以外の場合は、手順 12 に進みます。
  7. 新しいルールの作成 (カスタム ポート用):

    • 開きたいプログラムまたはポートが一覧にない場合は、新しいルールを作成する必要があります。 特定の要件に応じて、[別のアプリの許可] または [別のプログラムの許可] を選択します。
  8. プログラムまたはポートの選択:

    • ポートを開く場合は、[ポート] を選択し、ポート番号と TCP か UDP かを指定します。 アプリケーションを許可する場合は、アプリケーションの実行可能ファイルを参照します。
  9. 規則に名前を付ける:

    • すばやく識別できるように、ルールに名前を付けます。
  10. アクションの指定:

    • [接続を許可する] を選択して、TCP アクセス用のポートを開きます。
  11. ルールの保存:

    • [次へ] を選択してから、[完了] を選択してルールを作成します。
  12. 新しいルールの確認:

    • [許可されたアプリと機能] セクションで、新しく作成したルールが目的のポートまたはプログラムと共に一覧表示され、有効になっていることを確認します。
  13. Windows セキュリティを閉じる:

    • Windows セキュリティ アプリを閉じます。
  14. ポート アクセスのテスト:

    • ポートが確実に開くように、特定のポートに依存するネットワーク ユーティリティまたはアプリケーションで接続を確立できるかどうかを確認します。

次の手順に従って、Windows 10 コンピューター上で TCP アクセス用に Windows ファイアウォールで特定のポートを開きます。 ファイアウォール設定を変更する場合は、システムのセキュリティに影響を与える可能性があるため、 必要な場合にのみ、信頼されたアプリケーションまたはサービスに対してポートを開くように注意してください。

Note

Windows Vista 用のインストラクションを含む、ファイアウォールの構成に関する詳細については、「データベース エンジン アクセスを有効にするための Windows ファイアウォールを構成する」を参照してください。 Windows ファイアウォールの既定の設定に関する詳細と、データベース エンジン、Analysis Services、Reporting Services および Integration Services に影響する TCP ポートの説明については、「SQL Server のアクセスを許可するための Windows ファイアウォールの構成」をご覧ください。

別のコンピューターからデータベース エンジンに接続する

固定ポートでリッスンするように SQL Server を構成し、ファイアウォールでそのポートを開いたら、別のコンピューターから SQL Server に接続できます。

サーバー コンピューターで SQL Server Browser サービスが実行され、ファイアウォールで UDP ポート 1434 が開いている場合は、コンピューター名とインスタンス名を使用して接続を確立できます。 セキュリティ強化のため、今回の例では SQL Server Browser サービスは使用しません。

別のコンピューターからデータベース エンジンに接続する

  1. SQL Server クライアント ツールがインストールされている別のコンピューターに、SQL Server への接続権限のあるアカウントを使用してログインし、Management Studio を開きます。

  2. [サーバーへの接続] ダイアログ ボックスで、 [サーバーの種類] ボックスが [データベース エンジン] になっていることを確認します。

  3. [サーバー名] ボックスに「tcp:」と入力してプロトコルを指定し、続けてコンピューター名、コンマ、ポート番号の順に入力します。 既定のインスタンスに接続する場合、ポート 1433 が暗黙的に設定されるためポート番号を省略できます。したがって、tcp:<computer_name> がコンピューターの名前である場合は「<computer_name>」と入力します。 今回の名前付きインスタンスの例では、「tcp:<computer_name>,49172」と入力します。

    [サーバー名] ボックスで tcp: を省略した場合、クライアントは、有効になっているすべてのプロトコルをクライアント構成に指定された順番で試行します。 詳細については、「データベース エンジンへの接続」を参照してください。

    リモート サーバーへの接続中にインスタンス名との接続を確立するには、SQL Server Browser サービスがリモート サーバー上で実行されている必要があります。 SQL Server Browser サービスが実行されていない場合、インスタンス名ポートマッピングは機能しません。

  4. [認証] ボックスで、[Windows 認証] が選択されていることを確認し、[接続] を選択します。

SQL Server Browser サービスを使用した接続

SQL Server Browser サービスは、SQL Server の各種リソースに関する着信要求を受信し、コンピューターにインストールされている SQL Server インスタンスに関する情報を提供します。 SQL Server Browser サービスが実行されている場合、ユーザーはコンピューター名とポート番号の代わりにコンピューター名とインスタンス名を指定して、名前付きインスタンスに接続できます。 SQL Server Browser は、認証されていない UDP 要求を受信します。そのため、セットアップでオンにしない場合もあります。 サービスの詳細と、オンにする場合の説明については、「SQL Server Browser サービス (データベース エンジンと SSAS)」を参照してください。

SQL Server Browser を使用するには、前の作業と同じ手順に従い、ファイアウォールの UDP ポート 1434 を開放します。

これで、基本的な接続に関する簡単なチュートリアルを終了します。

チュートリアル ポータルに戻る

チュートリアル:データベース エンジンの概要