次の方法で共有


P2S 証明書認証接続用に OpenVPN クライアントを構成する - Linux

この記事では、ユーザーが Linux から OpenVPN クライアントを使用して VPN Gateway ポイント対サイト (P2S) と証明書認証を使用して Azure 仮想ネットワーク (VNet) に接続するのを支援します。

開始する前に

正しい記事が表示されていることを確認します。 次の表は、Azure VPN Gateway P2S VPN クライアントで使用できる構成記事を示しています。 手順は、認証の種類、トンネルの種類、クライアント OS によって異なります。

認証 トンネルの種類 クライアントの OS VPN client
証明書
IKEv2、SSTP Windows ネイティブ VPN クライアント
IKEv2 macOS ネイティブ VPN クライアント
IKEv2 Linux strongSwan
OpenVPN Windows Azure VPN クライアント
OpenVPN クライアント
OpenVPN macOS OpenVPN クライアント
OpenVPN iOS OpenVPN クライアント
OpenVPN Linux Azure VPN クライアント
OpenVPN クライアント
Microsoft Entra ID
OpenVPN Windows Azure VPN クライアント
OpenVPN macOS Azure VPN クライアント
OpenVPN Linux Azure VPN クライアント

前提条件

この記事では、次の前提条件が既に実行されていることを前提としています。

接続の要件

証明書認証を使用する OpenVPN クライアントを使用して Azure に接続するには、各接続クライアントに次のものが必要です。

  • Open VPN クライアント ソフトウェアを各クライアントにインストールして構成する必要があります。
  • クライアントには、適切な証明書がローカルにインストールされている必要があります。

ワークフロー

この記事のワークフローは次のとおりです。

  1. OpenVPN クライアントをインストールします。
  2. 生成した VPN クライアント プロファイル構成パッケージに含まれている VPN クライアント プロファイル構成ファイルを表示します。
  3. OpenVPN クライアントを構成します。
  4. Azure に接続します。

証明書について

証明書認証の場合は、1 つのクライアント証明書を各クライアント コンピューターにインストールする必要があります。 使用するクライアント証明書は秘密キーを含めてエクスポートし、証明書パスにすべての証明書が含まれている必要があります。 さらに、一部の構成では、ルート証明書情報もインストールする必要があります。

この記事の OpenVPN クライアントでは、.pfx 形式でエクスポートされた証明書を使用します。 Windows の手順を使用して、クライアント証明書をこの形式に簡単にエクスポートできます。 「クライアント証明書のエクスポート」を参照してください。 Windows コンピューターがない場合は、回避策として、小さな Windows VM を使用して、必要な .pfx 形式に証明書をエクスポートできます。 現時点では、OpenSSL Linux の手順では、.pem 形式のみが提供されます。

構成手順

このセクションは、OpenVPN トンネルの種類を使用する証明書認証用に Linux クライアントを構成するのに役立ちます。 Azure に接続するには、OpenVPN クライアントをダウンロードし、接続プロファイルを構成します。

注意

OpenVPN クライアント バージョン 2.6 はまだサポートされていません。

  1. 新しいターミナル セッションを開きます。 新しいセッションを開くには、Ctrl キーと Alt キーを押しながら t キーを押します。

  2. 次のコマンドを入力して、必要なコンポーネントをインストールします。

    sudo apt-get install openvpn
    sudo apt-get -y install network-manager-openvpn
    sudo service network-manager restart
    
  3. 次に、VPN クライアント プロファイル フォルダーに移動し、解凍してファイルを表示します。

  4. 作成してゲートウェイ上の P2S 構成にアップロードした P2S クライアント証明書をエクスポートします。 手順については、VPN Gateway のポイント対サイトに関する記事を参照してください。

  5. .pfx から秘密キーと base64 サムプリントを抽出します。 これを行うには複数の方法があります。 1 つの方法として、コンピューター上で OpenSSL を使用します。

    openssl pkcs12 -in "filename.pfx" -nodes -out "profileinfo.txt"
    

    profileinfo.txt ファイルには、CA およびクライアント証明書の秘密キーとサムプリントが含まれています。 必ず、クライアント証明書のサムプリントを使用してください。

  6. テキスト エディターで profileinfo.txt を開きます。 クライアント (子) 証明書のさむプリントを取得するには、子の証明書の "-----BEGIN CERTIFICATE-----" および "-----END CERTIFICATE-----" とその間のテキストを選択してコピーします。 subject=/ 行を確認して、子の証明書を識別できます。

  7. vpnconfig.ovpn ファイルを開き、次の例のセクションを見つけます。 "cert" と "/cert" の間をすべて置き換えます。

    # P2S client certificate
    # please fill this field with a PEM formatted cert
    <cert>
    $CLIENTCERTIFICATE
    </cert>
    
  8. テキスト エディターで profileinfo.txt を開きます。 秘密キーを取得するには、"-----BEGIN PRIVATE KEY-----" および "-----END PRIVATE KEY-----" とその間のテキストを選択してコピーします。

  9. テキスト エディターで vpnconfig.ovpn ファイルを開き、このセクションを見つけます。 秘密キーを貼り付けて、"key" と "/key" の間をすべて置き換えます。

    # P2S client root certificate private key
    # please fill this field with a PEM formatted key
    <key>
    $PRIVATEKEY
    </key>
    
  10. その他のフィールドは変更しないでください。 クライアント入力に入力された構成を使用して VPN に接続します。

    • コマンド ラインを使用して接続するには、以下のコマンドを入力します。

      sudo openvpn --config <name and path of your VPN profile file>&
      
    • コマンド ラインを使用して切断するには、以下のコマンドを入力します。

      sudo pkill openvpn
      
    • GUI を使用して接続するには、システム設定に移動します。

  11. + を選択して新しい VPN 接続を追加します。

  12. [VPN の追加][ファイルからインポート] を選択します。

  13. プロファイル ファイルを参照して、ダブルクリックするか [開く] を選択します。

  14. [VPN の追加] ウィンドウで [追加] を選択します。

    [VPN の追加] ページの [ファイルからインポート] を示すスクリーンショット。

  15. 接続するには、[ネットワーク設定] ページで VPN をオンにするか、システム トレイのネットワーク アイコンを選択します。

次のステップ

その他の手順については、P2S Azure portal に関する記事に戻ります。