この記事では、Azure ポータルから直接、Azure仮想ネットワーク内にある Linux VM への SSH 接続を安全かつシームレスに作成する方法について説明します。 Azure Bastionを使用する場合、VM にはクライアント、エージェント、または追加のソフトウェアは必要ありません。
Azure Bastionは、プロビジョニングされている仮想ネットワーク内のすべての VM に安全な接続を提供します。 Azure Bastionを使用すると、RDP/SSH ポートを外部に公開せずに仮想マシンを保護しながら、RDP/SSH を使用してセキュリティで保護されたアクセスを提供できます。 詳細については、Azure Bastionとはに関する記事を参照してください。
SSH を使用して Linux 仮想マシンに接続する場合は、認証にユーザー名およびパスワードと SSH キーの両方を使用できます。
前提条件
VM が存在する仮想ネットワークのAzure Bastion ホストが設定されていることを確認します。 詳細については、「Azure Bastion ホストの作成を参照してください。 Bastion サービスをプロビジョニングし、仮想ネットワークにデプロイしたら、それを使用してこの仮想ネットワーク内の任意の VM に接続できます。
使用できる接続設定と機能は、使用している Bastion SKU によって異なります。 Bastion デプロイで必要な SKU が使用されていることを確認します。
- SKU ごとに使用可能な機能と設定については、Bastion の概要に関する記事の 「SKU と機能 」セクションを参照してください。
- Bastion デプロイの SKU を確認し、必要に応じてアップグレードするには、「 Bastion SKU のアップグレード」を参照してください。
必要な役割
接続を作成するには、次のロールが必要です。
- 仮想マシンのリーダーロール。
- 仮想マシンのプライベート IP を使用する NIC に対する閲覧者ロール。
- Azure Bastion リソースの閲覧者ロール。
- ターゲット仮想マシンの仮想ネットワークに対する閲覧者ロール (Bastion デプロイが、ピアリングされた仮想ネットワーク内の場合)。
Port
SSH 経由で Linux VM に接続するには、お使いの VM で次のポートを開いておく必要があります。
- 受信ポート: SSH (22) "または"
- 受信ポート: カスタム値 (Azure Bastion経由で VM に接続するときに、このカスタム ポートを指定する必要があります)。 この設定は、Basic SKU または Developer SKU では使用できません。
Bastion 接続ページ
Azure ポータルで、接続先の仮想マシンに移動します。 仮想マシンの [概要] ページの上部で [接続] を選択し、ドロップダウンから [Bastion 経由で接続] を選択します。 これで Bastion ページが開きます。 Bastion ページには左側のウィンドウで直接移動できます。
[ Bastion ] ページで構成できる設定は、要塞ホストが使用するように構成されている Bastion SKU によって異なります。
Basic SKU より上位の SKU を使用している場合は、[接続の設定] の値 (ポートとプロトコル) が表示され、構成できます。
Basic SKU または Developer SKU を使用している場合は、[接続の設定] の値を構成できません。 代わりに、接続には次の既定の設定が使用されます: SSH およびポート 22。
使用可能な [認証の種類] を表示して選択するには、ドロップダウンを使用します。
この記事の次のセクションを使用して、認証設定を構成し、VM に接続します。
Microsoft Entra ID認証
注記
ポータル内の SSH 接続に対する Microsoft Entra ID 認証のサポートは、Linux VM でのみサポートされます。
次の前提条件が満たされている場合、Microsoft Entra IDは VM に接続するための既定のオプションになります。 そうでない場合、Microsoft Entra IDはオプションとして表示されません。
前提条件:
Microsoft Entra IDログインは VM で有効にする必要があります。 Microsoft Entra IDログインは、VM の作成時に、または既存の VM に Microsoft Entra ID Login 拡張機能を追加することで有効にすることができます。
ユーザーに対して VM で次のいずれかの必要なロールを構成する必要があります。
- 仮想マシン管理者ログイン: 管理者特権でサインインする場合は、このロールが必要です。
- 仮想マシン ユーザー ログイン: 通常のユーザー特権でサインインする場合は、このロールが必要です。
Microsoft Entra IDを使用して認証するには、次の手順に従います。
Microsoft Entra IDを使用して認証するには、次の設定を構成します。
設定 説明 接続設定 Basic SKU より上位の SKU にのみ使用できます。 プロトコル [SSH] を選択します。 ポート ポート番号を指定します。 認証の種類 ドロップダウンから Microsoft Entra ID を選択します。 新しいブラウザー タブで VM を操作するには、[新しいブラウザータブで開く] を選択します。
[接続] をクリックして VM に接続します。
パスワード認証
ユーザー名とパスワードを使用して認証するには、次の手順に従います。
ユーザー名とパスワードを使用して認証するには、次の設定を構成します。
設定 説明 接続設定 Basic SKU より上位の SKU にのみ使用できます。 プロトコル [SSH] を選択します。 ポート ポート番号を指定します。 認証の種類 ドロップダウンで [パスワード] を選択します。 ユーザー名 ユーザー名を入力します。 パスワード パスワード を入力します。 新しいブラウザー タブで VM を操作するには、[新しいブラウザータブで開く] を選択します。
[接続] をクリックして VM に接続します。
パスワード認証 - Azure Key Vault
Azure Key Vaultのパスワードを使用して認証するには、次の手順に従います。
Azure Key Vaultのパスワードを使用して認証するには、次の設定を構成します。
設定 説明 接続設定 Basic SKU より上位の SKU にのみ使用できます。 プロトコル [SSH] を選択します。 ポート ポート番号を指定します。 認証の種類 ドロップダウンから Azure Key Vault の Password を選択します。 ユーザー名 ユーザー名を入力します。 Subscription [サブスクリプション] を選択します。 Azure Key Vault Key Vaultを選択します。 Azure Key Vault シークレット SSH 秘密キーの値を含むKey Vault シークレットを選択します。 Azure Key Vault リソースを設定していない場合は、Create a key vault を参照して、新しい Key Vault の秘密キーの値として SSH 秘密キーを格納します。
List と Get Key Vault リソースに格納されているシークレットへのアクセス権があることを確認します。 Key Vault リソースのアクセス ポリシーを割り当てて変更するには、「Key Vault アクセス ポリシーの割り当てを参照してください。
PowerShell または Azure CLI エクスペリエンスを使用して、ssh 秘密キーをシークレットとしてAzure Key Vaultに格納します。 Azure Key Vault ポータル経由で秘密キーを格納すると、書式設定が妨げられるので、ログインに失敗します。 ポータル エクスペリエンスを使用して秘密キーをシークレットとして保存し、元の秘密キー ファイルにアクセスできなくなった場合は、「SSH キーを更新する」を参照して、新しい SSH キー ペアでターゲット VM へのアクセスを更新してください。
新しいブラウザー タブで VM を操作するには、[新しいブラウザータブで開く] を選択します。
[接続] をクリックして VM に接続します。
SSH 秘密キーの認証 - ローカル ファイル
ローカル ファイルからの SSH 秘密キーを使用して認証するには、次の手順に従います。
ローカル ファイルからの秘密キーを使用して認証するには、次の設定を構成します。
設定 説明 接続設定 Basic SKU より上位の SKU にのみ使用できます。 プロトコル [SSH] を選択します。 ポート ポート番号を指定します。 認証の種類 ドロップダウンから [ローカル ファイルからの SSH 秘密キー] を選択します。 ユーザー名 ユーザー名を入力します。 ローカル ファイル ローカル ファイルを選択します。 SSH パスフレーズ 必要に応じて SSH パスフレーズを入力します。 新しいブラウザー タブで VM を操作するには、[新しいブラウザータブで開く] を選択します。
[接続] をクリックして VM に接続します。
SSH 秘密キー認証 - Azure Key Vault
Azure Key Vaultに格納されている秘密キーを使用して認証するには、次の手順に従います。
Azure Key Vaultに格納されている秘密キーを使用して認証するには、次の設定を構成します。 Basic SKU の場合、接続設定を構成することはできません。代わりに、既定の接続設定 (SSH とポート 22) が使用されます。
設定 説明 接続設定 Basic SKU より上位の SKU にのみ使用できます。 プロトコル [SSH] を選択します。 ポート ポート番号を指定します。 認証の種類 ドロップダウンから Azure Key Vault から SSH 秘密キーを選択します。 ユーザー名 ユーザー名を入力します。 Subscription [サブスクリプション] を選択します。 Azure Key Vault Key Vaultを選択します。 Azure Key Vault シークレット SSH 秘密キーの値を含むKey Vault シークレットを選択します。 Azure Key Vault リソースを設定していない場合は、Create a key vault を参照して、新しい Key Vault の秘密キーの値として SSH 秘密キーを格納します。
List と Get Key Vault リソースに格納されているシークレットへのアクセス権があることを確認します。 Key Vault リソースのアクセス ポリシーを割り当てて変更するには、「Key Vault アクセス ポリシーの割り当てを参照してください。
PowerShell または Azure CLI エクスペリエンスを使用して、ssh 秘密キーをシークレットとしてAzure Key Vaultに格納します。 Azure Key Vault ポータル経由で秘密キーを格納すると、書式設定が妨げられるので、ログインに失敗します。 ポータル エクスペリエンスを使用して秘密キーをシークレットとして保存し、元の秘密キー ファイルにアクセスできなくなった場合は、「SSH キーを更新する」を参照して、新しい SSH キー ペアでターゲット VM へのアクセスを更新してください。
新しいブラウザー タブで VM を操作するには、[新しいブラウザータブで開く] を選択します。
[接続] をクリックして VM に接続します。
次のステップ
Azure Bastionの詳細については、Bastion FAQ を参照してください。