Membuat dan mengekspor sertifikat - Linux (strongSwan)

Koneksi titik-ke-situs VPN Gateway dapat menggunakan sertifikat untuk mengautentikasi. Artikel ini menunjukkan cara membuat sertifikat root yang ditandatangani sendiri dan membuat sertifikat klien menggunakan strongSwan. Anda juga dapat menggunakan PowerShell atau MakeCert.

Setiap klien harus memiliki sertifikat klien yang diinstal secara lokal untuk menyambungkan. Selain itu, informasi kunci publik sertifikat akar harus diunggah ke Azure. Untuk informasi selengkapnya, lihat Konfigurasi titik-ke-situs - autentikasi sertifikat.

Pasang strongSwan

Langkah-langkah berikut membantu Anda menginstal strongSwan.

Konfigurasi berikut digunakan saat menentukan perintah:

  • Komputer: Ubuntu Server 18.04
  • Dependensi: strongSwan

Gunakan perintah berikut untuk memasang konfigurasi strongSwan yang diperlukan:

sudo apt-get update
sudo apt-get upgrade
sudo apt install strongswan
sudo apt install strongswan-pki
sudo apt install libstrongswan-extra-plugins
sudo apt install libtss2-tcti-tabrmd0

Instruksi CLI Linux (strongSwan)

Langkah-langkah berikut membantu Anda membuat dan mengekspor sertifikat menggunakan Linux CLI (strongSwan). Untuk informasi selengkapnya, lihat Petunjuk tambahan untuk menginstal Azure CLI.

Buat sertifikat CA.

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

Cetak sertifikat CA dalam format base64. Ini adalah format yang didukung oleh Azure. Anda mengunggah sertifikat ini ke Azure sebagai bagian dari langkah-langkah konfigurasi P2S.

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

Buat sertifikat pengguna.

export PASSWORD="password"
export USERNAME=$(hostnamectl --static)

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"

Buat bundel p12 yang berisi sertifikat pengguna. Bundel ini akan digunakan pada langkah berikutnya saat bekerja dengan file konfigurasi klien.

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

Langkah berikutnya

Lanjutkan dengan konfigurasi titik-ke-situs Anda ke Membuat dan menginstal file konfigurasi klien VPN - Linux.