j'ai compris

[Dr.WoW] [No.39] Mécanismes VPN SSL - partie 1

publié il y a  2020-4-28 15:48:47 11 0 0 0

1 Avantages du VPN SSL

Internet s'est développé de manière rapide et imprévisible, et on peut désormais affirmer que "les connexions réseau sont disponibles partout et à tout moment". Bien que les PC et les ordinateurs portables soient omniprésents, ils sont déjà considérés comme trop lourds et peu pratiques, et tout le monde a maintenant un téléphone intelligent ou une tablette, ce qui leur permet de profiter d'un accès Internet à tout moment / en tout lieu. Les temps changent sans cesse et les progrès de la science et de la technologie continuent d'être réalisés, mais ce qui reste le même, c'est que la science et la technologie sont centrées sur les personnes - les gens recherchent plus de commodité, de simplicité et de sécurité. Pour des scénarios d'utilisation spécifiques impliquant des connexions à distance et l'accès aux réseaux internes, quelques fissures sont apparues dans la principale technologie VPN traditionnelle, IPSec:

l   Réseautage inflexible. Lors de la construction d'un VPN IPSec, si de l'équipement est ajouté ou si la stratégie IPSec de l'utilisateur est modifiée, la configuration IPSec existante doit être ajustée.

l   Le logiciel client doit être installé pour les VPN IPSec, ce qui entraîne de nombreux problèmes en termes de compatibilité, de déploiement et de maintenance.

l   IPSec n'est pas assez strict concernant le contrôle d'accès des utilisateurs; IPSec ne peut entreprendre que le contrôle de la couche réseau, mais n'est pas en mesure d'effectuer un contrôle d'accès granulaire des ressources de la couche application.

Comme le dit le proverbe, "il y a un moyen de monter chaque montagne; s'il y a un problème, il doit y avoir une solution", et en conséquence un nouveau type de technologie a commencé à prendre le devant de la scène: Secure Sockets Layer VPN (SSL VPN), un nouveau solution d'accès à distance légère, résout efficacement les problèmes susmentionnés et a une très large application dans les solutions d'accès à distance du monde réel.

l Le   VPN SSL fonctionne entre la couche transport et la couche application et ne modifie pas les en-têtes IP ou TCP et n'a pas d'impact sur la topologie réseau existante. Si un pare-feu est déployé sur le réseau, un VPN SSL nécessite uniquement que le HTTPS traditionnel (port 443) soit activé sur le pare-feu.

l   VPN SSL utilise l'architecture navigateur / serveur (B / S). Par conséquent, le VPN SSL ne nécessite pas d'applications clientes et ne nécessite qu'un navigateur pour faciliter son utilisation.

REMARQUE:

Bien que SSL VPN ne nécessite pas l'installation de clients supplémentaires, les fonctionnalités SSL VPN ont des exigences explicites concernant le type et la version du navigateur et du système d'exploitation. Pour des exigences spécifiques, veuillez consulter les documents du produit.

l   Plus important encore, par rapport au contrôle de la couche réseau IPSec, tout le contrôle d'accès dans un VPN SSL est basé sur la couche application, et le niveau de granularité peut atteindre les niveaux d'URL ou de fichier, ce qui peut améliorer considérablement la sécurité de l'accès à distance.

Ci-dessous, Dr. WoW, je prendrai tout le monde sur une introduction détaillée de la technologie VPN SSL.

2 scénarios d'utilisation du VPN SSL

La technologie dite VPN SSL est en fait un nom créé par les fournisseurs VPN et fait référence aux utilisateurs connectés à distance à l'aide de la fonction SSL intégrée dans les navigateurs Web standard pour se connecter à un serveur VPN SSL sur un intranet d'entreprise, après quoi le serveur VPN SSL peut transférer paquets vers un serveur interne spécifique, permettant ainsi aux utilisateurs connectés à distance d'accéder à des ressources de serveur spécialement désignées au sein de l'entreprise après avoir passé l'authentification. Dans ce scénario, les utilisateurs connectés à distance et les serveurs VPN SSL utilisent le protocole SSL standard pour crypter les données transmises entre eux, ce qui revient à établir un tunnel entre l'utilisateur connecté à distance et le serveur VPN SSL.

De manière générale, les serveurs VPN SSL sont déployés derrière des pare-feu à la sortie; le scénario d'utilisation typique du VPN SSL est illustré à la figure 1-1 .

Figure 1-1 Scénario d'utilisation typique pour VPN SSL


 102658r6rlc44pp42h43l5.png? 8.1-fig01.png

REMARQUE:

Les utilisateurs connectés à distance seront ci-après appelés "utilisateurs distants".

Les familles de pare-feu USG2000 / 5000/6000 de Huawei peuvent servir directement de serveurs VPN SSL, ce qui réduit les coûts de construction et d'administration du réseau. Pendant que j'en ai l'occasion, permettez-moi de dire un mot au nom de Huawei, qui a publié les séries spécialisées SVN2000 et SVN5000 de produits de serveur VPN SSL. Ceux-ci prennent en charge un plus grand nombre d'utilisateurs et prennent en charge les solutions VPN SSL pour un nombre encore plus élevé de scénarios d'utilisation.

Dans cette section, je présenterai principalement l'établissement d'une connexion entre des utilisateurs distants et un serveur VPN SSL, ainsi que le processus de connexion réussie au serveur VPN SSL. La façon dont les serveurs VPN SSL transmettent les demandes des utilisateurs distants à divers serveurs internes sera présentée dans les sections suivantes.

Avant de commencer une introduction théorique plutôt ennuyeuse, je vais faire une démonstration des étapes de la connexion à un serveur VPN SSL, afin que la facilité et la commodité des VPN SSL puissent être observées visuellement.

Les étapes généralement impliquées dans l'accès utilisateur à distance d'un serveur VPN SSL sont extrêmement simples, comme le montre le tableau 1-1 .

Tableau 1-1 Étapes pour l'accès utilisateur à distance d'un serveur VPN SSL


Étape

Description détaillée

1

Ouvrez un navigateur, entrez l'adresse du serveur VPN https: // SSL: port ou le domaine https: //, pour établir une connexion.

2

La page Web peut vous rappeler qu'il y a un problème avec le certificat de sécurité pour le site Web sur le point d'être consulté, mais nous sélectionnerons «continuer sur ce site Web».

3

L'interface de connexion au serveur SSL s'affiche avec succès. Le côté droit de l'interface demande la saisie du nom d'utilisateur / mot de passe.

4

Saisissez le nom d'utilisateur / mot de passe (précédemment obtenu auprès de l'administrateur du réseau d'entreprise), connectez-vous avec succès au serveur SSL VPN et accédez à la page d'accès aux ressources intranet.


 

Ces quelques étapes peuvent-elles garantir l'établissement d'une connexion VPN SSL et d'un accès sécurisé? Pourquoi est-il rappelé qu'il y a un problème avec le certificat de sécurité de l'adresse Web à laquelle accéder? Je suis sûr que de nombreuses questions tourbillonnent dans l'esprit de tout le monde maintenant. Avec ces questions à l'esprit, nous allons explorer comment les utilisateurs distants échangent des paquets avec le serveur VPN SSL dans ces quelques brèves étapes.

Je crois que cela implique deux clés, qui affichent également deux fonctions de sécurité de base de la technologie VPN SSL:

1.         Sécurité du processus de transmission

Dans la définition susmentionnée de VPN SSL, nous avons mentionné que les utilisateurs distants et les serveurs VPN SSL utilisent le protocole SSL standard pour crypter les données transmises entre eux. Le protocole SSL commence à fonctionner à partir du moment où un utilisateur ouvre son navigateur et accède à l'adresse du serveur VPN SSL. Par conséquent, nous devons explorer plus en détail les mécanismes par lesquels le protocole SSL fonctionne.

2.         Sécurité des identités des utilisateurs.

Dans la démonstration ci-dessus de la connexion aux serveurs SSL VPN, l'utilisateur distant a accédé à l'interface de connexion du serveur SSL VPN et le serveur SSL VPN a demandé que le nom d'utilisateur / mot de passe soit saisi. Il s'agit en fait du serveur SSL VPN demandant l'authentification de l'identité de l'utilisateur. Les serveurs VPN SSL prennent généralement en charge plusieurs types de méthodes d'authentification des utilisateurs pour garantir la sécurité et la légitimité de l'accès. Les pare-feu de Huawei prennent en charge plusieurs méthodes d'authentification des noms d'utilisateur / mots de passe, y compris l'authentification locale, l'authentification du serveur, l'authentification par certificat, l'authentification à deux facteurs (nom d'utilisateur / mot de passe + certificat), etc.

3 Mécanismes d'exploitation du protocole SSL

SSL est une sorte de protocole qui établit un chemin sécurisé entre les clients et les serveurs. Il s'agit d'un protocole de sécurité basé sur une application Web développé par la société Netscape, et fournit le cryptage des données, l'authentification du serveur, l'intégrité des informations et l'authentification client facultative pour les protocoles d'application basés sur les connexions TCP / IP (comme HTTP, Telnet et FTP, etc.) . C'est-à-dire que le protocole SSL possède les fonctionnalités suivantes:

l   Toutes les données à transmettre sont cryptées pour la transmission, de sorte que les tiers ne peuvent pas écouter.

l   Il possède des mécanismes de vérification, de sorte que les deux parties communicantes découvriront immédiatement toute falsification d'informations.

l   Il est équipé d'un certificat d'identité pour empêcher la falsification des identités.

Le protocole SSL a été développé en continu depuis sa sortie en 1994. Les versions SSL 2.0 et SSL 3.0 publiées par la société Netscape ont été largement utilisées. Suite à cela, une organisation de normalisation Internet a publié le protocole TLS 1.0 (également connu sous le nom de SSL 3.1) basé sur SSL 3.0, puis a également publié les versions TLS1.1 et TLS 1.2. À l'heure actuelle, la plupart des navigateurs grand public prennent désormais en charge TLS 1.2. Les pare-feu de Huawei prennent en charge les versions SSL 2.0, SSL 3.0 et TLS 1.0.

La structure du protocole SSL est composée de deux couches. La couche inférieure est le protocole d'enregistrement SSL et la couche supérieure a le protocole d'établissement de liaison SSL, le protocole de spécification de changement de chiffrement SSL et le protocole d'alerte SSL; les rôles de chaque protocole sont indiqués dans la figure 1-2 .

Figure 1-2 Structure et utilisations du protocole SSL



102830rsdk0d0elhm77d9c.png? 8.1-fig02.png

 104035zcixlyh8camkwwii.png? Snap111.png

Il est donc évident que l'établissement d'une connexion SSL repose principalement sur le protocole de négociation SSL, et ci-dessous, nous allons explorer le protocole de négociation SSL en détail.

L'approche de conception de base du protocole d'établissement de liaison SSL peut être résumée en une courte phrase: il transmet du texte chiffré à l'aide d'un algorithme de chiffrement à clé publique . Ou, pour dire les choses autrement, le serveur indique sa clé publique au client, le client utilise ensuite la clé publique du serveur pour crypter les informations, et après que le serveur a reçu le texte chiffré, il utilise sa propre clé privée pour le décryptage.

 104056x90u155myuvv0k05.png? Snap112.png

Il y a deux problèmes avec cette approche de conception qui nécessitent des solutions plus raffinées:

1.         Lorsque le serveur indique sa clé publique au client, comment peut-on garantir que la clé publique n'a pas été falsifiée?

Solution: incorporez un certificat numérique. Entrez la clé publique du serveur dans le certificat de serveur, le serveur envoyant le certificat au client. Tant que le certificat est fiable, la clé publique peut être approuvée.

2.         La sécurité de l'algorithme de chiffrement à clé publique est élevée, cependant, étant donné que les deux terminaux utilisent chacun des clés privées pour le déchiffrement, l'algorithme est relativement compliqué et l'utilisation de l'informatique pour le chiffrement et le déchiffrement est élevée ― comment accroître l'efficacité?

Solution: incorporez une nouvelle "clé de session". Le client et le serveur négocient la "clé de session" à l'aide d'un algorithme de chiffrement à clé publique, et les paquets de données ultérieurs utilisent tous cette "clé de session" pour le chiffrement et le déchiffrement (également connu sous le nom d'algorithme de chiffrement symétrique). La vitesse de calcul est très rapide lors de l'utilisation d'un algorithme de chiffrement symétrique, permettant une grande augmentation de l'efficacité de calcul du chiffrement et du déchiffrement.

Pour expliquer les choses plus avant, "la clé de session" est en fait une clé secrète partagée par le serveur et le client. Elle est appelée «clé de session» car elle intègre le concept de session. Chaque connexion SSL basée sur TCP est associée à une session et la session est créée par le protocole d'établissement de liaison SSL. Cela fournit un cryptage de transmission complet pour chaque connexion et signifie que le processus de prise de contact est inclus dans la session.

Étant donné que la conception du protocole d'établissement de liaison SSL a déjà résolu les questions clés, nous couvrirons ci-dessous les détails de conception spécifiques: l'approche de conception susmentionnée est obtenue grâce à quatre communications entre le serveur et le client, garantissant ainsi une transmission de paquets cryptée hautement efficace et sécurisée peut être effectuée après la phase de prise de contact.

Le contenu spécifique des quatre communications impliquées dans la négociation SSL est illustré à la figure 1-3 . Il est important de noter que toutes les communications à ce stade sont en texte clair.

Figure 1-3 Processus de prise de contact SSL


 103728o1ynd4mdj9hohodm.png? 8.1-fig03.png

3. Le          client envoie la demande (Client Bonjour)

Le client (généralement le navigateur) envoie d'abord une demande de communication chiffrée au serveur. Les informations principales fournies au serveur dans cette étape sont les suivantes:

(1)      La version du protocole prise en charge, par exemple TLS version 1.0.

(2)      Un nombre aléatoire généré par le client, à utiliser un peu plus tard pour générer la "clé de session".

4.          Réponse du serveur (Server Hello)

Après avoir reçu la demande du client, le serveur envoie une réponse au client. Cette étape comprend les informations suivantes:

(1)      Confirmation de la version du protocole de communication cryptographique utilisé, par exemple TLS version 1.0. Si la version prise en charge par le navigateur et le serveur n'est pas la même, le serveur ferme la communication cryptée.

(2)      Un nombre aléatoire généré par le serveur, à utiliser un peu plus tard pour générer la "clé de session".

(3)      Confirmation de la suite de chiffrement.

(4)      Un certificat de serveur qui contient la clé publique du serveur.

REMARQUE:

Le protocole d'établissement de liaison SSL prend en charge l'authentification bidirectionnelle entre le client et le serveur. Si le serveur doit vérifier le client, le serveur doit envoyer une demande d'authentification de certificat concernant le client à cette étape.

5.          Réponse du client

Une fois que le client a reçu la réponse du serveur, il authentifie d'abord le certificat du serveur. Si le certificat n'a pas été délivré par une institution digne de confiance, ou si le nom de domaine du certificat et le vrai nom de domaine ne sont pas identiques, ou si le certificat a expiré, il affichera une alerte dans laquelle un choix peut être fait quant à poursuivre ou non la communication. S'il n'y a aucun problème avec le certificat, le client extraira la clé publique du serveur du certificat. Ensuite, il enverra les trois informations suivantes au serveur:

(1)      Une clé pré-maître composée de nombres aléatoires, chiffrée à l'aide de la clé publique du serveur. Cela empêche l'écoute clandestine et la clé pré-maître sera utilisée momentanément pour générer la "clé de session". À ce moment, le client aura trois nombres aléatoires et pourra calculer la "clé de session" à utiliser pour cette session.

(2)      Un avis de modification de spécification de chiffrement, indiquant que toutes les informations futures seront envoyées en utilisant la méthode de chiffrement et la clé privée négociées par les deux parties.

(3)      L'avis de fin de prise de contact du client, indiquant que l'étape de prise de contact du client est déjà terminée. En même temps, il s'agit de la valeur HASH pour tout le contenu envoyé précédemment, utilisée pour l'authentification du serveur.

6.          Réponse finale du serveur

Une fois que le serveur a reçu la clé pré-maître aléatoire du client, il calcule et génère la "clé de session" à utiliser pour cette session (la méthode de calcul et les résultats calculés sont les mêmes que ceux du client). Suite à cela, les informations finales ci-dessous sont envoyées au client:

(1)      Un avis de modification de spécification de chiffrement, indiquant que les informations futures seront toutes envoyées en utilisant la méthode de chiffrement et la clé secrète négociées par les deux parties.

(2)      Le message de fin de la négociation du serveur, exprimant l'étape de la négociation du serveur.

Maintenant que tout le monde a fini d'examiner le contenu spécifique des quatre communications du protocole de prise de contact SSL, je pense qu'il est probable que des questions supplémentaires se soient posées. Comme toujours, je suis prêt à servir:

(1)      Lorsque la clé pré-maître aléatoire apparaît, le client et le serveur ont déjà trois nombres aléatoires, et les deux utilisent ensuite la méthode de chiffrement précédemment négociée pour générer chacun la même "clé de session" à utiliser dans cette session. Pourquoi faut-il utiliser trois nombres aléatoires pour générer la "clé de session"?

Réponse: Il est clair que l'utilisation par l'algorithme de chiffrement à clé publique des trois nombres aléatoires pour obtenir la clé secrète symétrique finale est effectuée afin d'augmenter la sécurité. La raison de l'existence de la clé pré-maîtresse est que le protocole SSL ne fait pas confiance à ce que chaque hôte puisse générer des nombres aléatoires "complètement aléatoires". Si les nombres aléatoires ne sont pas aléatoires, il peut être possible de les déduire, ce qui crée des problèmes de sécurité. Et, trois «faux nombres aléatoires» réunis sont extrêmement près d'être aléatoires.

(2)      Lors de la deuxième communication du protocole de prise de contact SSL, lorsque le serveur répond (bonjour au serveur), il envoie son propre certificat, et le client effectue immédiatement la vérification du certificat des serveurs; c'est-à-dire que le client vérifie la légitimité des serveurs. Est-ce lié à l'alerte rencontrée dans 1.Figure 1-1Table 1-1 lorsque nous démontrions que nous nous connections au serveur SSL VPN " qu'il y a un problème avec le certificat de sécurité de ce site Web" ?

Réponse: En fait, le protocole SSL commence à fonctionner à partir du moment où le client (l'utilisateur distant) accède au serveur VPN SSL via HTTPS à l'étape 1 de 1. Figure 1-1 Tableau 1-1 . La notification de l'étape 2 correspond simplement à la deuxième communication du protocole de prise de contact SSL ― à ce moment, le serveur envoie son propre certificat local au client, et le client doit effectuer l'authentification du certificat du serveur. L'apparition de l'alerte indique que le client pense que le certificat de ce serveur n'est pas fiable. Si ce rappel apparaît lors de notre accès quotidien aux services bancaires en ligne et à d'autres interfaces similaires, nous devons accroître notre vigilance pour empêcher la pénétration par erreur de sites Web de phishing. Cependant, nous choisirons de mandater la confiance pour ce site Web pour le moment.

 104115co7bh5orpwkrbw76.png? Snap113.png

Mon explication des mécanismes de fonctionnement du protocole de prise de contact SSL est maintenant terminée. Prenez une profonde respiration ― nous devons encore tester les principes sous-jacents d'un point de vue pratique.

                               Étape 1     Utilisez un pare-feu comme serveur VPN SSL et terminez la configuration associée sur le pare-feu.

La fonctionnalité de serveur SSL sur un pare-feu est appelée une passerelle virtuelle . L'adresse / le nom de domaine de la passerelle virtuelle est l'adresse / le nom de domaine du serveur VPN SSL.

une.           Configurez la passerelle virtuelle, activez la fonction de serveur SSL VPN, configurez l'adresse du serveur, etc.

b.          Configurez la méthode d'autorisation d'authentification en tant qu'authentification locale et créez l'utilisateur (y compris la configuration du nom d'utilisateur et du mot de passe.)

c.           Configurez les politiques de sécurité pour garantir l'interfonctionnement du réseau. Nous présenterons les méthodes de configuration des politiques de sécurité dans «8.7 Configuration des politiques de sécurité».

                               Étape 2     Suivez les étapes fournies au début de ce chapitre démontrant la connexion client au serveur SSL VPN et utilisez le nom d'utilisateur / mot de passe configuré pour vous connecter au serveur SSL VPN.

une.          Le client 10.108.84.93 lance une demande de connexion à l'aide d'un navigateur IE vers la passerelle virtuelle du pare-feu https://10.174.64.61. Dans la figure ci-dessous, les numéros 21 à 29 montrent l'ensemble du processus de prise de contact SSL à quatre communications. Une fois que le serveur a répondu avec son message de fin de serveur (déjà chiffré; il y a une note qu'il s'agit d'un message de négociation chiffré) dans le numéro 29, l'interface d'alerte indiquant que le certificat de sécurité a un problème apparaît. À ce stade, le client et le serveur n'ont pas réellement commencé la communication normale, mais sont au stade de la prise de contact SSL. Le client a vérifié que le serveur n'est pas légitime et l'interface Web du client a demandé à l'utilisateur s'il souhaite ou non continuer à naviguer sur ce site Web.


 103747k504gswf02wbxxzw.png? 8.1-fig04.png

b.          Pour rendre la confiance obligatoire, sélectionnez «continuer sur ce site Web». À partir du n ° 103, le client demande d'utiliser une nouvelle session et lance à nouveau le protocole de prise de contact SSL. Une fois la prise de contact terminée, la communication chiffrée normale est lancée et se poursuit jusqu'à ce que le navigateur de l'utilisateur charge avec succès l'interface de connexion utilisateur de la passerelle virtuelle du pare-feu.


 103757y56n6tn1o3ipit5p.png? 8.1-fig05.png

c.           Le nom d'utilisateur / mot de passe est entré. À partir du numéro 1561, l'initiation du protocole de prise de contact SSL se poursuit. Après les quatre communications, la "clé de session" est négociée, et en commençant par le paquet portant le nom d'utilisateur / mot de passe, toutes les données entre l'utilisateur et le serveur sont cryptées (indiquées comme "Données d'application") et envoyées au serveur.


 103808h2gcenlzng4kzbev.png? 8.1-fig06.png

 

 

 

 

Pour afficher la liste de tous les postes techniques du Dr. WoW, cliquez ici .


  • x
  • Standard:

Commentaire

envoyer
Connectez-vous pour répondre. Se connecter | Enregistrer

Remarque Remarque : Afin de protéger vos droits et intérêts légitimes, ceux de la communauté et des tiers, ne divulguez aucun contenu qui pourrait présenter des risques juridiques pour toutes les parties. Le contenu interdit comprend, sans toutefois s'y limiter, le contenu politiquement sensible, le contenu lié à la pornographie, aux jeux d'argent, à l'abus et au trafic de drogues, le contenu qui peut divulguer ou enfreindre la propriété intellectuelle d'autrui, y compris les secrets professionnels, les marques commerciales, les droits d'auteur et les brevets, ainsi que la vie privée personnelle. Ne partagez pas votre nom d'utilisateur ou votre mot de passe avec d'autres personnes. Toutes les opérations effectuées à partir de votre compte seront considérées comme vos propres actions, et toutes les conséquences en découlant vous seront imputées. Pour plus de détails, voir « Politique de confidentialité ».
Si le bouton de la pièce-jointe n'est pas disponible, mettez à jour Adobe Flash Player à la dernière version.

My Followers

Connectez-vous pour participer à la communication et au partage

S'identifier

Communauté de Support de Huawei Entreprise
Communauté de Support de Huawei Entreprise