Partager via


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 :

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 :

  1. Générez et installez les certificats clients si vous ne l’avez pas déjà fait.
  2. 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é.
  3. Configurer le client OpenVPN Connect.
  4. 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 :

  1. Recherchez le certificat client. Pour plus d’informations sur les certificats clients, consultez Installer des certificats clients.
  2. 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

  1. Téléchargez, puis installez le client OpenVPN version 3 .x depuis le site web OpenVPN officiel.

  2. 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.

  3. 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.

  4. À 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"
    
  5. 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’attribut subject=CN = P2SChildCert.
    • Pour chaque certificat de la chaîne, copiez le texte (y compris et entre) « -----BEGIN CERTIFICATE-----" et "-----END CERTIFICATE----- ».
  6. 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.

  7. 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>
    
  8. 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.

  9. Ne modifiez aucun autre champ. Utilisez la configuration complétée dans l’entrée client pour vous connecter au VPN.

  10. Importez le fichier vpnconfig.ovpn dans le client OpenVPN.

  11. 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.

Certificat intermédiaire pour la configuration de point à site.

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.