Configurer le client OpenVPN Connect 3.x pour les connexions d’authentification par certificat P2S – Windows
Si votre passerelle VPN point à site (P2S) est configurée pour utiliser OpenVPN et l’authentification par certificat, vous pouvez vous connecter à votre réseau virtuel en utilisant le client OpenVPN. Cet article vous guide tout au long des étapes de configuration du client OpenVPN Connect 3.x, puis de connexion à votre réseau virtuel. Il existe certaines différences de configuration entre le client OpenVPN 2.x et le client OpenVPN Connect 3.x. Cet article se concentre sur le client OpenVPN Connect 3.x.
Avant de commencer
Avant de commencer les étapes de configuration du client, vérifiez que vous suivez l’article de configuration de client VPN approprié. Le tableau suivant présente les articles de configuration disponibles pour les clients VPN point à site de la passerelle VPN. Les étapes diffèrent selon le type d’authentification, le type de tunnel et le système d’exploitation client.
Authentification | Type de tunnel | Système d’exploitation client | Client VPN |
---|---|---|---|
Certificat | |||
IKEv2, SSTP | Windows | Client VPN natif | |
IKEv2 | macOS | Client VPN natif | |
IKEv2 | Linux | strongSwan | |
OpenVPN | Windows | Client VPN Azure Version 2.x du client OpenVPN Version 3.x du client OpenVPN |
|
OpenVPN | macOS | Client OpenVPN | |
OpenVPN | iOS | Client OpenVPN | |
OpenVPN | Linux | Client VPN Azure Client OpenVPN |
|
Microsoft Entra ID | |||
OpenVPN | Windows | Client VPN Azure | |
OpenVPN | macOS | Client VPN Azure | |
OpenVPN | Linux | Client VPN Azure |
Remarque
Le client OpenVPN est géré indépendamment et non sous le contrôle de Microsoft. Cela signifie que Microsoft ne supervise pas son code, ses builds, sa feuille de route ou ses aspects juridiques. Si les clients rencontrent des bogues ou des problèmes avec le client OpenVPN, ils doivent contacter directement le support OpenVPN Inc. Les instructions de cet article sont fournies « en l’état » et n’ont pas été validées par OpenVPN Inc. Ils sont destinés à aider les clients qui connaissent déjà le client et souhaitent l’utiliser pour se connecter à la passerelle VPN Azure dans une configuration VPN point à site.
Prérequis
Cet article suppose que vous avez déjà effectué les étapes prérequises suivantes :
- Vous avez créé et configuré votre passerelle VPN pour l’authentification par certificat point à site et le type de tunnel OpenVPN. Pour connaître les étapes, consultez Configurer les paramètres du serveur pour les connexions de passerelle VPN P2S – Authentification par certificat.
- Vous avez généré et téléchargé les fichiers de configuration du client VPN. Consultez Générer les fichiers de configuration de profil du client VPN pour connaître les étapes.
- Vous pouvez générer des certificats clients ou acquérir les certificats clients appropriés nécessaires à l’authentification.
Exigences relatives aux connexions
Pour vous connecter à Azure à l’aide du client OpenVPN Connect 3.x en utilisant l’authentification par certificat, chaque ordinateur client qui se connecte a besoin des éléments suivants :
- Le logiciel client OpenVPN Connect doit être installé et configuré sur chaque ordinateur client.
- L’ordinateur client doit disposer d’un certificat client installé localement.
- Si votre chaîne de certification inclut un certificat intermédiaire, veuillez consulter d’abord la section Certificats intermédiaires pour vérifier que votre configuration de passerelle VPN P2S est configurée pour prendre en charge cette chaîne de certification. Le comportement d’authentification par certificat pour les clients 3.x est différent des versions précédentes, où vous pouvez spécifier le certificat intermédiaire dans le profil client.
Workflow
Cet article a été élaboré de la manière suivante :
- Générez et installez les certificats clients si vous ne l’avez pas déjà fait.
- Affichez les fichiers de configuration du profil client VPN contenus dans le paquet de configuration du profil client VPN que vous avez généré.
- Configurer le client OpenVPN Connect.
- Connexion à Azure.
Générez et installez des certificats clients
Pour l’authentification par certificat, un certificat client doit être installé sur chaque ordinateur client. Le certificat client que vous souhaitez utiliser doit être exporté avec la clé privée et contenir tous les certificats dans le chemin de certification. En outre, pour certaines configurations, vous devez également installer les informations de certificat racine.
Dans de nombreux cas, vous pouvez installer le certificat client directement sur l’ordinateur client en double-cliquant. Toutefois, pour certaines configurations de client OpenVPN, vous devrez sans doute extraire des informations du certificat client pour terminer la configuration.
- Pour plus d’informations sur l’utilisation des certificats, consultez Point à site : générer des certificats.
- Pour afficher un certificat client installé, ouvrez Gérer les certificats utilisateur. Le certificat client est installé dans Current User\Personal\Certificates.
Installer le certificat client
Chaque ordinateur a besoin d’un certificat client pour s’authentifier. Si le certificat client n’est pas déjà installé sur l’ordinateur local, vous pouvez l’installer en procédant comme suit :
- Recherchez le certificat client. Pour plus d’informations sur les certificats clients, consultez Installer des certificats clients.
- Installez le certificat client. En règle générale, vous pouvez effectuer cette opération en double-cliquant sur le fichier de certificat et en fournissant un mot de passe (si nécessaire).
Afficher les fichiers de configuration
Le package de configuration du profil du client VPN contient des dossiers spécifiques. Les fichiers dans les dossiers contiennent les paramètres nécessaires pour configurer le profil du client VPN sur l’ordinateur client. Les fichiers et les paramètres qu’ils contiennent sont spécifiques à la passerelle VPN et le type d’authentification et de tunnel de votre passerelle VPN est configuré pour l’utiliser.
Localisez et décompressez le package de configuration du profil du client VPN que vous avez généré. Pour l’authentification par certificat et OpenVPN, veuillez consulter le dossier OpenVPN. Si vous ne voyez pas le dossier, vérifiez les éléments suivants :
- Vérifiez que votre passerelle VPN est configurée pour utiliser le type de tunnel OpenVPN.
- Si vous utilisez l’authentification Microsoft Entra ID, vous ne disposerez sans doute pas d’un dossier OpenVPN. Consultez plutôt l’article sur la configuration de Microsoft Entra ID.
Configurer le client
Téléchargez, puis installez le client OpenVPN version 3 .x depuis le site web OpenVPN officiel.
Recherchez le package de configuration du profil client VPN que vous avez généré et téléchargé sur votre ordinateur. Extrayez le package. Utilisez ensuite le bloc-notes pour ouvrir le fichier de configuration vpnconfig.ovpn à partir du dossier OpenVPN.
Ensuite, recherchez le certificat enfant que vous avez créé. Si vous n’avez pas le certificat, utilisez l’un des liens suivants pour connaître les étapes d’exportation du certificat. Vous utiliserez les informations de certificat à l’étape suivante.
- Instructions sur la passerelle VPN
- Instructions sur Virtual WAN
À partir du certificat enfant, extrayez la clé privée et l’empreinte numérique base64 du fichier .pfx. Il y a plusieurs manières de procéder. Vous devez utiliser OpenSSL sur votre ordinateur. Le fichier profileinfo.txt contient la clé privée et l’empreinte numérique pour l’autorité de certification et le certificat client. Assurez-vous d’utiliser l’empreinte numérique du certificat client.
openssl pkcs12 -in "filename.pfx" -nodes -out "profileinfo.txt"
Basculez vers le fichier vpnconfig.ovpn que vous avez ouvert dans le Bloc-notes. Renseignez la section entre
<cert>
et</cert>
, en obtenant les valeurs de$CLIENT_CERTIFICATE
et$ROOT_CERTIFICATE
comme indiqué dans l’exemple suivant.# P2S client certificate # please fill this field with a PEM formatted cert <cert> $CLIENT_CERTIFICATE $ROOT_CERTIFICATE </cert>
- Ouvrez le fichier profileinfo.txt de l’étape précédente dans le Bloc-notes. Vous pouvez identifier chaque certificat en examinant la ligne
subject=
. Par exemple, si votre certificat enfant se nomme P2SChildCert, votre certificat client sera après l’attributsubject=CN = P2SChildCert
. - Pour chaque certificat de la chaîne, copiez le texte (y compris et entre) « -----BEGIN CERTIFICATE-----" et "-----END CERTIFICATE----- ».
- Ouvrez le fichier profileinfo.txt de l’étape précédente dans le Bloc-notes. Vous pouvez identifier chaque certificat en examinant la ligne
Ouvrez profileinfo.txt dans le Bloc-notes. Pour obtenir la clé privée, sélectionnez le texte (y compris et entre) « ---BEGIN PRIVATE KEY--- » et « ---END PRIVATE KEY--- », puis copiez-le.
Revenez au fichier vpnconfig.ovpn dans le Bloc-notes et recherchez cette section. Collez la clé privée, en remplaçant tout le contenu compris entre
<key>
et</key>
.# P2S client root certificate private key # please fill this field with a PEM formatted key <key> $PRIVATEKEY </key>
Excluez par des commentaires la ligne « journal openvpn.log ». Si vous n’excluez pas cette ligne par des commentaires, le client OpenVPN signale que le journal n’est plus une option prise en charge. Veuillez consulter l’exemple de profil utilisateur pour obtenir un exemple sur la manière d’exclure par des commentaires la ligne de journal. Après avoir exclu par des commentaires la ligne de journal, vous pouvez toujours accéder aux journaux via l’interface cliente OpenVPN. Pour y accéder, cliquez sur l’icône de journal en haut à droite de l’interface utilisateur cliente. Microsoft recommande aux clients de consulter la documentation sur OpenVPN Connect pour l’emplacement du fichier journal, car la journalisation est contrôlée par le client OpenVPN.
Ne modifiez aucun autre champ. Utilisez la configuration complétée dans l’entrée client pour vous connecter au VPN.
Importez le fichier vpnconfig.ovpn dans le client OpenVPN.
Cliquez avec le bouton droit de la souris sur l’icône OpenVPN de la barre d’état du système et cliquez sur l’option Connexion.
Exemple de profil utilisateur
L’exemple suivant présente un fichier de configuration de profil utilisateur pour les clients OpenVPN Connect 3.x. Cet exemple montre le fichier journal exclu par des commentaires et l’option « ping-restart 0 » ajoutée pour empêcher les reconnexions périodiques en raison de l’absence de trafic envoyé au client.
client
remote <vpnGatewayname>.ln.vpn.azure.com 443
verify-x509-name <IdGateway>.ln.vpn.azure.com name
remote-cert-tls server
dev tun
proto tcp
resolv-retry infinite
nobind
auth SHA256
cipher AES-256-GCM
persist-key
persist-tun
tls-timeout 30
tls-version-min 1.2
key-direction 1
#log openvpn.log
#inactive 0
ping-restart 0
verb 3
# P2S CA root certificate
<ca>
-----BEGIN CERTIFICATE-----
……
……..
……..
……..
-----END CERTIFICATE-----
</ca>
# Pre Shared Key
<tls-auth>
-----BEGIN OpenVPN Static key V1-----
……..
……..
……..
-----END OpenVPN Static key V1-----
</tls-auth>
# P2S client certificate
# Please fill this field with a PEM formatted client certificate
# Alternatively, configure 'cert PATH_TO_CLIENT_CERT' to use input from a PEM certificate file.
<cert>
-----BEGIN CERTIFICATE-----
……..
……..
……..
-----END CERTIFICATE-----
</cert>
# P2S client certificate private key
# Please fill this field with a PEM formatted private key of the client certificate.
# Alternatively, configure 'key PATH_TO_CLIENT_KEY' to use input from a PEM key file.
<key>
-----BEGIN PRIVATE KEY-----
……..
……..
……..
-----END PRIVATE KEY-----
</key>
Certificats intermédiaires
Si votre chaîne de certification inclut des certificats intermédiaires, vous devez charger les certificats intermédiaires sur la passerelle VPN Azure. Nous vous recommandons d’utiliser cette méthode, quel que soit le client VPN depuis lequel vous choisissez de vous connecter. Dans les versions précédentes, vous pouviez spécifier des certificats intermédiaires dans le profil utilisateur. Cette fonction n’est plus prise en charge dans le client OpenVPN Connect version 3.x.
Lorsque vous utilisez des certificats intermédiaires, le certificat intermédiaire doit être chargé après le certificat racine.
Reconnexions
Si vous rencontrez des reconnexions périodiques en raison de l’absence de trafic envoyé au client, vous pouvez ajouter l’option « ping-restart 0 » au profil pour empêcher les déconnexions de provoquer des reconnexions. Cette procédure est décrite dans la documentation OpenVPN Connect comme suit : « --ping-restart n Similaire à --ping-exit, mais déclenchez un redémarrage SIGUSR1 après n secondes sans réception d’un test Ping ou d’un autre paquet depuis un site distant. »
Veuillez consulter l’exemple de profil utilisateur pour obtenir un exemple d’ajout de cette option.
Étapes suivantes
Poursuivez avec n’importe quel paramètre de serveur ou de connexion supplémentaire. Consultez Étapes de la configuration point à site.