証明書を生成してエクスポートするGenerate and export certificates

ポイント対サイト接続では、認証に証明書を使用します。Point-to-Site connections use certificates to authenticate. この記事では、Linux CLI と strongSwan を使用した自己署名ルート証明書の作成方法とクライアント証明書の生成方法について説明します。This article shows you how to create a self-signed root certificate and generate client certificates using the Linux CLI and strongSwan. 別の証明書の手順が必要な場合は、Powershell または MakeCert の記事を参照してください。If you are looking for different certificate instructions, see the Powershell or MakeCert articles. CLI の代わりに GUI を使用して strongSwan をインストールする方法については、「クライアント構成」の記事で手順を参照してください。For information about how to install strongSwan using the GUI instead of CLI, see the steps in the Client configuration article.

strongSwan のインストールInstall strongSwan

以下の手順では、次の構成を使用しました。The following configuration was used for the steps below:

ComputerComputer Ubuntu Server 18.04Ubuntu Server 18.04
依存関係Dependencies strongSwanstrongSwan

次のコマンドを使用して、必要な strongSwan 構成をインストールします。Use the following commands to install the required strongSwan configuration:

sudo apt install strongswan
sudo apt install strongswan-pki
sudo apt install libstrongswan-extra-plugins

次のコマンドを使用して、Azure コマンド ライン インターフェイスをインストールします。Use the following command to install the Azure command-line interface:

curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash

Azure CLI のインストール方法の詳細Additional instructions on how to install the Azure CLI

証明書を生成してエクスポートするGenerate and export certificates

キーと証明書を生成します。Generate the CA certificate.

ipsec pki --gen --outform pem > caKey.pem
ipsec pki --self --in caKey.pem --dn "CN=VPN CA" --ca --outform pem > caCert.pem

CA 証明書 を base64 形式で印刷します。Print the CA certificate in base64 format. これは Azure でサポートされている形式です。This is the format that is supported by Azure. この証明書は、P2S 構成手順の一部として Azure にアップロードします。You upload this certificate to Azure as part of the P2S configuration steps.

openssl x509 -in caCert.pem -outform der | base64 -w0 ; echo

ユーザー証明書を生成します。Generate the user certificate.

export PASSWORD="password"
export USERNAME="client"

ipsec pki --gen --outform pem > "${USERNAME}Key.pem"
ipsec pki --pub --in "${USERNAME}Key.pem" | ipsec pki --issue --cacert caCert.pem --cakey caKey.pem --dn "CN=${USERNAME}" --san "${USERNAME}" --flag clientAuth --outform pem > "${USERNAME}Cert.pem"

ユーザー証明書を収納している p12 バンドルを生成します。Generate a p12 bundle containing the user certificate. このバンドルは、クライアント構成ファイルと連携する場合に、次の手順で使用されます。This bundle will be used in the next steps when working with the client configuration files.

openssl pkcs12 -in "${USERNAME}Cert.pem" -inkey "${USERNAME}Key.pem" -certfile caCert.pem -export -out "${USERNAME}.p12" -password "pass:${PASSWORD}"

次の手順Next steps

ポイント対サイト構成を継続して、VPN クライアント構成ファイルを作成してインストールしますContinue with your Point-to-Site configuration to Create and install VPN client configuration files.