Derrière une double armure. Comment configurer l'accès à distance via la connexion RDP Rdp à l'aide d'un certificat personnel

Beaucoup d'entre vous ont sûrement déjà entendu et vu cette abréviation - elle se traduit littéralement par Remote Desktop Protocol. Si quelqu'un est intéressé par les subtilités techniques du fonctionnement de ce protocole de niveau application, il peut lire la littérature, en commençant par le même Wikipédia. Nous considérerons des aspects purement pratiques. A savoir, le fait que ce protocole permet de se connecter à distance à des ordinateurs sous Contrôle Windows différentes versions utilisant le module intégré Outil Windows"Connexion à un poste de travail distant."

Quels sont les avantages et les inconvénients de l’utilisation du protocole RDP ?

Commençons par l'agréable - par les pros. L'avantage est que cet outil, plus correctement appelé RDP Client, est disponible pour tout utilisateur Windows, aussi bien sur l'ordinateur à partir duquel la télécommande sera gérée, que pour ceux qui souhaitent ouvrir l'accès à distance à leur ordinateur.

Grâce à une connexion à un bureau distant, il est possible non seulement de voir le bureau distant et d'utiliser les ressources de l'ordinateur distant, mais également de s'y connecter disques locaux, imprimantes, cartes à puce, etc. Bien sûr, si vous souhaitez regarder une vidéo ou écouter de la musique via RDP, il est peu probable que ce processus vous procure du plaisir, car... dans la plupart des cas, vous verrez un diaporama et le son sera probablement interrompu. Mais le service RDP n'a pas été développé pour ces tâches.

Un autre avantage incontestable est que la connexion à l'ordinateur s'effectue sans aucun programme supplémentaire, qui est pour la plupart payant, bien qu'il ait ses avantages. Le temps d'accès au serveur RDP (qui est votre ordinateur distant) n'est limité que par votre désir.

Il n'y a que deux inconvénients. L’un est important, l’autre moins. La première et essentielle est que pour fonctionner avec RDP, l'ordinateur auquel la connexion est établie doit avoir une IP blanche (externe), ou il doit être possible de « rediriger » un port du routeur vers cet ordinateur, qui encore une fois doit avoir une adresse IP externe. Que ce soit statique ou dynamique n’a pas d’importance, mais cela doit l’être.

Le deuxième inconvénient n'est pas si important : les dernières versions du client ne prennent plus en charge la palette de couleurs à 16 couleurs. Minimum - 15 bits. Cela ralentit considérablement RDP lorsque vous vous connectez sur un Internet rabougri et mort avec une vitesse ne dépassant pas 64 kilobits par seconde.

Pourquoi pouvez-vous utiliser l’accès à distance via RDP ?

Les organisations utilisent généralement des serveurs RDP pour collaboration dans le programme 1C. Et certains y déploient même des postes de travail utilisateurs. Ainsi, l'utilisateur, surtout s'il a un travail itinérant, peut, s'il dispose d'un Internet 3G ou du Wi-Fi d'un hôtel/café, se connecter à distance à son lieu de travail et résoudre tous les problèmes.

Dans certains cas, les utilisateurs à domicile peuvent utiliser l'accès à distance à leur ordinateur de famille pour obtenir des données à partir des ressources domestiques. En principe, le service de bureau à distance vous permet de travailler pleinement avec du texte, de l'ingénierie et applications graphiques. Pour les raisons évoquées ci-dessus, il ne fonctionnera pas avec le traitement vidéo et audio, mais cela reste un plus très appréciable. Vous pouvez également afficher les ressources fermées par la politique de l'entreprise au travail en vous connectant à votre ordinateur personnel sans aucun anonymiseur, VPN ou autre mauvais esprit.

Préparation d'Internet

Dans la section précédente, nous avons évoqué le fait que pour activer l'accès à distance via RDP, nous avons besoin d'une adresse IP externe. Ce service peut être fourni par le fournisseur, nous appelons donc ou écrivons, ou allons à Espace personnel et prendre les dispositions nécessaires pour fournir cette adresse. Idéalement, il devrait être statique, mais en principe, vous pouvez vivre avec des dynamiques.

Si quelqu'un ne comprend pas la terminologie, alors une adresse statique est constante et une adresse dynamique change de temps en temps. Afin de fonctionner pleinement avec les adresses IP dynamiques, divers services ont été inventés pour fournir une liaison de domaine dynamique. Quoi et comment, il y aura bientôt un article sur ce sujet.

Préparation du routeur

Si votre ordinateur n'est pas connecté directement au câble du FAI à Internet, mais via un routeur, nous devrons également effectuer quelques manipulations avec cet appareil. À savoir, transférez le port de service - 3389. Sinon, le NAT de votre routeur ne vous laissera tout simplement pas entrer. réseau domestique. Il en va de même pour la configuration d'un serveur RDP dans une organisation. Si vous ne savez pas comment transférer un port, lisez l'article Comment transférer des ports sur un routeur (s'ouvre dans un nouvel onglet), puis revenez ici.

Préparation de l'ordinateur

Afin de créer la possibilité de vous connecter à distance à un ordinateur, vous devez faire exactement deux choses :

Autoriser la connexion dans les propriétés système ;
- définir un mot de passe pour l'utilisateur actuel (s'il n'a pas de mot de passe), ou créer un nouvel utilisateur avec un mot de passe spécifiquement pour la connexion via RDP.

Décidez vous-même quoi faire avec l'utilisateur. Cependant, gardez à l’esprit que les systèmes d’exploitation non-serveurs ne prennent pas nativement en charge les connexions multiples. Ceux. si vous vous connectez en tant que vous-même localement (console), puis que vous vous connectez en tant que même utilisateur à distance, l'écran local sera verrouillé et la session au même endroit s'ouvrira dans la fenêtre Connexion Bureau à distance. Si vous entrez le mot de passe localement sans quitter RDP, vous serez expulsé de l'accès à distance et vous verrez l'écran actuel sur votre moniteur local. La même chose vous attend si vous vous connectez à la console en tant qu'utilisateur et que vous essayez de vous connecter à distance en tant qu'autre. Dans ce cas, le système vous demandera de mettre fin à la session utilisateur locale, ce qui n'est pas toujours pratique.

Alors, allez dans Démarrer, faites un clic droit sur le menu Ordinateur et cliquez sur Propriétés.

Dans Propriétés système, sélectionnez Options supplémentaires systèmes

Dans la fenêtre qui s'ouvre, allez dans l'onglet Accès à distance...

...cliquez sur Plus...

Et cochez la seule case sur cette page.

C'est du "fait maison" Version Windows 7 - ceux qui ont Pro et supérieur auront plus de cases à cocher et il est possible de différencier les accès.

Cliquez sur OK partout.

Maintenant, vous pouvez accéder à Connexion Bureau à distance (Démarrer> Tous les programmes> Accessoires), y saisir l'adresse IP ou le nom de l'ordinateur si vous souhaitez vous y connecter depuis votre réseau domestique et utiliser toutes les ressources.

Comme ça. En principe, tout est simple. Si vous avez soudainement des questions ou si quelque chose reste flou, bienvenue dans les commentaires.

En bref : permet de configurer l'authentification à deux facteurs pour l'accès au serveur de terminaux. À l'aide de l'utilitaire MS Remote Desktop Connection ou Remote Desktop Web Connection, vous pouvez facilement vous connecter au Bureau à distance à l'aide d'une clé USB (jeton).

Comment Rohos Logon Key fonctionne avec Remote Desktop.

Rohos Logon Key s'intègre au processus d'autorisation des services Windows Terminal et ajoute une couche d'authentification à deux facteurs à l'infrastructure de contrôle d'accès au système existante. Après avoir configuré Rohos Logon Key, les utilisateurs pourront se connecter au bureau à distance soit à l'aide d'une clé USB uniquement, soit à l'aide d'une clé USB et d'un mot de passe.

Avantages de la protection Terminal Server.
  • La méthode permet de restreindre l'accès à distance à certains utilisateurs ou à une liste d'utilisateurs.
  • Ces utilisateurs doivent à chaque fois insérer une clé USB ou saisir un code OTP.
  • Chaque clé est unique et ne peut être falsifiée
  • Il n’est pas nécessaire de connecter la clé USB directement au serveur lors de sa configuration.
  • Il n'est pas nécessaire d'installer le programme sur chaque ordinateur à partir duquel vous accédez*.
  • L'administrateur doit simplement préconfigurer et fournir à l'utilisateur une clé USB pour y accéder.

Sécurité accrue grâce à une clé USB électronique ou des mots de passe à usage unique :

  • Mot de passe de clé USB Windows+, tel que SafeNet, eToken, iKey, ePass et autres avec prise en charge PKCS#11.
  • Mot de passe Windows + clé USB transporteur.
  • Mot de passe Windows + code OTP envoyé par SMS à téléphone mobile utilisateur.
  • Mot de passe fenêtre + code OTP avec Programmes Google Authentificateur installé sur le smartphone de l'utilisateur.
  • Uniquement le mot de passe chiffré sur la clé USB.
  • clé USB électronique + code PIN clé ;
  • Clé USB électronique + code PIN + mot de passe Windows ;

Avant de commencer à configurer la clé Rohos Logon, vous devez décider :

  • quel type de clé USB sera utilisé pour l'autorisation ;
  • quel type d'authentification souhaitez-vous utiliser :
    1) bifacteur = Clé USB + Mot de passe Windows,
    2) un facteur = Clé USB (cela inclut également l'option Clé USB + Clé PIN si disponible),
    3) utilisez la clé USB uniquement sur le PC local. Dans ce cas, le Terminal Server ne vérifiera pas si le client dispose d'une Clé USB.
Méthode d'authentification pour le serveur Terminal Server Type de clé USB Installation du logiciel Rohos Logon Key sur le client et le serveur de terminaux
Client Windows Vista/7/8 Serveur TS Windows Serveur 2008/2012
1) Authentification à deux facteurs (Clé USB et mot de passe Windows). Jetons USB (PKCS#11)
  • Carte à puce
  • Authentificateur Google
  • Yubikey
  • Clé USB*
2) Authentification à facteur unique (clé USB uniquement) clé USB
Jetons USB (PKCS#11)
Cartes à puce++3)
3) La clé USB est utilisée pour plus de commodité. Le serveur de terminaux ne vérifie pas la présence d'une clé USB. Tout type de clé USB

* Si vous utilisez une clé USB comme clé d'accès, vous devez installer l'un des deux programmes sur l'ordinateur du client : soit le programme, soit . Pendant le processus de création d'une clé sur le serveur, elle sera copiée sur la clé USB, garantissant ainsi l'utilisation de la clé USB comme clé de connexion au Bureau à distance. Ce composant portable peut être exécuté sur d'autres postes de travail utilisés pour se connecter au serveur à distance.

Une fois que vous avez décidé du type de clé USB et de la méthode d'authentification à deux facteurs, vous pouvez commencer à installer Rohos Logon Key.

Types de clés USB et technologies adaptées à l'authentification via Bureau à distance avec le programme Rohos Logon Key :
  • Cartes à puce, cartes Java (Mifare 1K)
  • Jetons basés sur PKCS11. Par exemple SafeNet eToken, Securetoken ST3/4, senseLock trueToken, RuToken, uaToken, iKey.
  • Jetons Yubikey et OTP, tels que Google Authenticator
  • Clés USB. Dans ce cas, après avoir créé la clé, le composant portable du programme sera copié sur la clé USB.
  • Étapes de préparation d'une connexion à l'aide du programme Rohos Logon Key :

    1. Installez le programme Rohos Logon Key sur le serveur de terminaux. Dans les paramètres du programme, précisez le type de clé USB.

    2. Installez le package Rohos Management Tools sur l'ordinateur à partir duquel vous accéderez au bureau distant pour créer des clés.

    3. Création de clés d'accès via RDC :

    Connectez votre future clé USB à votre ordinateur local. Connectez-vous au serveur de terminaux via RDC. Dans les paramètres du programme Remote Desktop, spécifiez quelles ressources locales ( Clés USB ou cartes à puce) doivent être fournis à l'ordinateur distant.

    Exécutez le programme Rohos Logon Key sur le serveur de terminaux. Utilisez le raccourci Configurer une clé, précisez l'utilisateur pour lequel vous créez la clé et, si nécessaire, saisissez son mot de passe.

    Remarque : certains Types USB Les clés peuvent être créées dans le programme de gestion de clés USB à partir du package d'outils de gestion Rohos. Ce package est installé sur l'ordinateur de l'administrateur. Après avoir créé toutes les clés dans ce programme, vous devez exporter leur liste vers le serveur de terminaux. . Dans le même programme, il y a un bouton qui copie vers clé USB programmes.

    4. Configuration de la clé de connexion Rohos sur le serveur Terminal Server :

    Après avoir créé toutes les clés, vous pouvez renforcer la sécurité du serveur en interdisant à certains utilisateurs d'y accéder sans clé USB. Ouvrez les paramètres du programme Rohos Logon Key, autorisez l'accès uniquement à l'aide d'une liste de clés USB.

    Possibilités :

    • Aucun
      Tous les utilisateurs peuvent se connecter en utilisant un mot de passe ou en utilisant le port USB clé Cette configuration n'est pas recommandée pour un serveur de terminaux.
    • Pour tout utilisateur
      Cette option est similaire à l’ancienne option Autoriser la connexion uniquement par clé USB. Tous les utilisateurs doivent utiliser une clé USB pour se connecter ou déverrouiller Windows.
    • Pour les utilisateurs répertoriés
      Seuls les utilisateurs de la liste doivent utiliser une clé USB pour se connecter. Tous les autres utilisateurs peuvent se connecter à l'aide d'un mot de passe. La liste est créée automatiquement lors de la création d'une clé USB pour un utilisateur. Le nom d'utilisateur de la clé USB est ajouté à cette liste. De plus, la liste des utilisateurs et des clés peut être importée depuis un autre ordinateur. Bien entendu, seul un administrateur peut le faire.
    • Pour le groupe d'utilisateurs 'rohos' dans Active Directory
      Chaque utilisateur du groupe rohos doit utiliser une clé USB.
      Attention : le groupe d'utilisateurs rohos doit être créé par un administrateur Active Directory.
    • Pour la connexion au bureau à distance
      Les utilisateurs locaux peuvent se connecter avec ou sans clé USB. La connexion à distance n'est possible qu'avec une clé USB. Cette option est idéale pour renforcer la sécurité d'un serveur de terminaux.
    • Pour la connexion au bureau à distance en dehors du réseau local
      Utilisateurs dans réseau local peut se connecter au serveur de terminaux sans clé. Seuls les utilisateurs se connectant via une connexion commutée, DSL ou depuis d'autres réseaux doivent utiliser des clés USB.
    Connexion Bureau à distance

    Une fois connecté, nous verrons cette boîte de dialogue d'identification du réseau.

    Vous devez sélectionner un nom d'utilisateur et saisir un mot de passe compte sur TS.

    Si l'authentification par mot de passe réussit, une connexion au Bureau à distance se produit. A ce stade, Rohos Logon Key vérifie la présence de la clé USB de l'utilisateur.

    Rohos Logon Key peut bloquer l'accès si la clé USB n'est pas connectée :

    Si un jeton avec un mot de passe à usage unique est utilisé, une fenêtre de saisie apparaîtra.

    Clé de connexion Rohos portable

    Le programme vous aidera si vous utilisez une clé USB, mais que vous ne pouvez ou ne voulez pas l'installer sur ordinateur local ni la clé de connexion Rohos ni les outils de gestion Rohos. Ce composant est automatiquement copié sur la clé USB lors de la création de la clé sur le serveur de terminaux. Alternativement, il peut être obtenu en exécutant Programme USB Licence Key Manager Pro - pour l'accès via le bureau à distance à un ordinateur réseau (pas un serveur de terminaux), ainsi que pour une utilisation dans un domaine.

  • Licence serveur - spécialement conçue pour Terminal Server (Windows 2003, 2008,2012 avec accès via Remote Desktop)
  • Essayez Rohos Logon Key gratuitement pendant 15 jours. Clé de connexion Rohos.

    Passé ce délai, le programme fonctionnera également, mais vous rappellera de vous inscrire.

    Si le seul obstacle à l’accès à vos données est un mot de passe, vous courez de grands risques. Le laissez-passer peut être piraté, intercepté, volé par un cheval de Troie ou récupéré à l'aide de l'ingénierie sociale. Ne pas utiliser l’authentification à deux facteurs dans cette situation est presque un crime.

    Nous avons déjà parlé plus d'une fois des clés uniques. Le sens est très simple. Si un attaquant parvient d’une manière ou d’une autre à obtenir votre mot de passe de connexion, il peut facilement accéder à votre courrier électronique ou se connecter à un serveur distant. Mais s’il y a un facteur supplémentaire sur son chemin, par exemple une clé à usage unique (également appelée clé OTP), alors rien ne fonctionnera. Même si une telle clé tombe entre les mains d'un attaquant, il ne sera plus possible de l'utiliser, puisqu'elle n'est valable qu'une seule fois. Ce deuxième facteur pourrait être un appel supplémentaire, un code reçu par SMS, une clé générée sur le téléphone à l'aide de certains algorithmes basés sur l'heure actuelle (l'heure est un moyen de synchroniser l'algorithme sur le client et le serveur). Le même Google déjà recommande depuis longtemps à ses utilisateurs d'activer l'authentification à deux facteurs (quelques clics dans les paramètres du compte). Il est maintenant temps d’ajouter une telle couche de protection à vos services !

    Que propose Duo Sécurité ?

    Un exemple trivial. Mon ordinateur dispose d'un port RDP ouvert « à l'extérieur » pour une connexion à distance au bureau. Si le mot de passe de connexion est divulgué, l'attaquant recevra immédiatement accès totalà la voiture. Par conséquent, il n'était pas question de renforcer la protection par mot de passe OTP - il fallait simplement le faire. C'était stupide de réinventer la roue et d'essayer de tout mettre en œuvre par moi-même, alors j'ai juste regardé les solutions qui existent sur le marché. La plupart d'entre eux se sont avérés commerciaux (plus de détails dans la barre latérale), mais pour un petit nombre d'utilisateurs, ils peuvent être utilisés gratuitement. Juste ce dont vous avez besoin pour votre maison. L'un des services les plus performants qui vous permet d'organiser une authentification à deux facteurs pour littéralement tout (y compris VPN, SSH et RDP) s'est avéré être Duo Security (www.duosecurity.com). Ce qui a ajouté à son attrait était le fait que le développeur et fondateur du projet est John Oberheid, un spécialiste bien connu de sécurité des informations. Par exemple, il a séparé le protocole Communication Google avec Smartphones Android, avec lequel vous pouvez installer ou supprimer des applications arbitraires. Cette base se fait sentir : pour montrer l'importance de l'authentification à deux facteurs, les gars ont lancé Service VPN Hunter (www.vpnhunter.com), qui permet de trouver rapidement les serveurs VPN non cachés de l'entreprise (et en même temps de déterminer le type d'équipement sur lequel ils fonctionnent), les services d'accès à distance (OpenVPN, RDP, SSH) et d'autres éléments d'infrastructure qui permettre à un attaquant d'accéder au réseau interne simplement en connaissant le login et le mot de passe. C'est drôle que sur le Twitter officiel du service, les propriétaires aient commencé à publier des rapports quotidiens sur l'analyse d'entreprises bien connues, après quoi le compte a été banni :). Le service Duo Security vise bien entendu principalement à introduire l’authentification à deux facteurs dans les entreprises comptant un grand nombre d’utilisateurs. Heureusement pour nous, il est possible de créer gratuitement un compte Personnel, qui permet d'organiser gratuitement une authentification à deux facteurs pour dix utilisateurs.

    Quel pourrait être le deuxième facteur ?

    Nous verrons ensuite comment renforcer la sécurité de votre connexion de bureau à distance et de SSH sur votre serveur en dix minutes seulement. Mais je veux d’abord parler de l’étape supplémentaire que Duo Security introduit comme deuxième facteur d’autorisation. Il existe plusieurs options : appel téléphonique, SMS avec codes d'accès, codes d'accès Duo Mobile, Duo Push, clé électronique. Un peu plus sur chacun.

    Combien de temps puis-je l'utiliser gratuitement ?

    Comme déjà mentionné, Duo Security propose un service spécial plan tarifaire"Personnel". C'est absolument gratuit, mais le nombre d'utilisateurs ne doit pas dépasser dix. Prend en charge l'ajout d'un nombre illimité d'intégrations, toutes les méthodes d'authentification disponibles. Fournit des milliers de crédits gratuits pour les services de téléphonie. Les crédits sont comme une monnaie interne qui est débitée de votre compte à chaque authentification par appel ou SMS. Dans les paramètres de votre compte, vous pouvez le configurer de sorte que lorsque vous atteignez un nombre de crédits spécifié, vous recevrez une notification et vous aurez le temps de recharger votre solde. Mille crédits ne coûtent que 30 dollars. Prix ​​des appels et SMS pour différents pays est différent. Pour la Russie, un appel coûtera de 5 à 20 crédits, un SMS - 5 crédits. Cependant, rien n'est facturé pour un appel effectué lors de l'authentification sur le site Web Duo Security. Vous pouvez complètement oublier les crédits si vous utilisez l'application Duo Mobile pour l'authentification - rien n'est facturé pour cela.

    Inscription facile

    Pour protéger votre serveur à l'aide de Duo Security, vous devez télécharger et installer un client spécial qui interagira avec le serveur d'authentification Duo Security et fournira une deuxième couche de protection. En conséquence, ce client sera différent dans chaque situation : selon l'endroit exact où il est nécessaire de mettre en œuvre l'authentification à deux facteurs. Nous en parlerons ci-dessous. La première chose que vous devez faire est de vous inscrire dans le système et d’ouvrir un compte. C'est pourquoi nous ouvrons page d'accueil site Web, cliquez sur « Essai gratuit », sur la page qui s’ouvre, cliquez sur le bouton « S’inscrire » sous le type de compte personnel. Après quoi, il nous est demandé de saisir notre prénom, notre nom, notre adresse e-mail et le nom de notre entreprise. Vous devriez recevoir un e-mail contenant un lien pour confirmer votre inscription. Dans ce cas, le système composera automatiquement le numéro de téléphone spécifié : pour activer votre compte, vous devez répondre à l'appel et appuyer sur la touche # du téléphone. Après cela, le compte sera actif et vous pourrez commencer les tests de combat.

    Protéger RDP

    J'ai dit plus haut que j'avais commencé avec une grande envie de sécuriser les connexions à distance sur mon bureau. Par conséquent, comme premier exemple, je décrirai comment renforcer la sécurité RDP.

  • Toute mise en œuvre d'une authentification à deux facteurs commence par une action simple : créer ce que l'on appelle une intégration dans le profil Duo Security. Allez dans la section « Intégrations  Nouvelle intégration », précisez le nom de l'intégration (par exemple, « Home RDP »), sélectionnez son type « Microsoft RDP » et cliquez sur « Ajouter une intégration ».
  • La fenêtre qui apparaît affiche les paramètres d'intégration : Clé d'intégration, Clé secrète, Nom d'hôte API. Nous en aurons besoin plus tard lors de la configuration de la partie client. Il est important de comprendre : personne ne devrait les connaître.
  • Ensuite, vous devez installer un client spécial sur la machine protégée, qui installera tout le nécessaire dans le système Windows. Il peut être téléchargé depuis le site officiel ou extrait de notre disque. Toute sa configuration se résume au fait que pendant le processus d'installation, vous devrez saisir la clé d'intégration, la clé secrète et le nom d'hôte de l'API mentionnés ci-dessus.
  • C'est tout, en fait. Désormais, la prochaine fois que vous vous connecterez au serveur via RDP, l'écran comportera trois champs : nom d'utilisateur, mot de passe et clé à usage unique Duo. En conséquence, il n'est plus possible de se connecter au système avec uniquement un identifiant et un mot de passe.
  • La première fois qu'un nouvel utilisateur tentera de se connecter, il devra passer une fois par le processus de vérification Duo Security. Le service lui fournira un lien spécial, après quoi il devra saisir son numéro de téléphone et attendre un appel de vérification. Pour obtenir des clés supplémentaires (ou pour les obtenir pour la première fois), vous pouvez saisir le mot-clé « sms ». Si vous souhaitez vous authentifier à l'aide d'un appel téléphonique, saisissez « téléphone », si vous utilisez Duo Push, saisissez « push ». L'historique de toutes les tentatives de connexion (réussies et infructueuses) au serveur peut être consulté dans votre compte sur le site Web Duo Security en sélectionnant d'abord l'intégration souhaitée et en accédant à son « Journal d'authentification ».

    Connectez Duo Security n’importe où !

    Grâce à l'authentification à deux facteurs, vous pouvez protéger non seulement RDP ou SSH, mais également les VPN, les serveurs RADIUS et tous les services Web. Par exemple, il existe des clients prêts à l'emploi qui ajoutent une couche d'authentification supplémentaire aux moteurs populaires Drupal et WordPress. S'il n'y a pas de client prêt à l'emploi, ne vous inquiétez pas : vous pouvez toujours ajouter vous-même une authentification à deux facteurs pour votre application ou votre site Web à l'aide de l'API fournie par le système. La logique de travailler avec l'API est simple : vous faites une requête à l'URL d'une méthode spécifique et analysez la réponse renvoyée, qui peut être au format JSON (ou BSON, XML). La documentation complète de l'API Duo REST est disponible sur le site officiel. Je dirai juste qu'il existe des méthodes ping, check, preauth, auth, status, au nom desquelles il est facile de deviner à quoi elles sont destinées.

    Protéger SSH

    Considérons un autre type d'intégration - "l'intégration UNIX" pour implémenter une authentification sécurisée. Nous ajoutons une autre intégration à notre profil Duo Security et procédons à l'installation du client sur le système.

    Vous pouvez télécharger le code source de ce dernier sur bit.ly/IcGgk0 ou le récupérer depuis notre disque. j'ai utilisé dernière version- 1.8. À propos, le client fonctionne sur la plupart des plates-formes nix, il peut donc être facilement installé sur FreeBSD, NetBSD, OpenBSD, Mac OS X, Solaris/Illumos, HP-UX et AIX. Le processus de construction est standard - configurez && make && sudo make install. La seule chose que je recommanderais est d'utiliser configure avec l'option --prefix=/usr, sinon le client risque de ne pas trouver les bibliothèques nécessaires au démarrage. Après une installation réussie, allez éditer le fichier de configuration /etc/duo/login_duo.conf. Cela doit être fait depuis root. Toutes les modifications qui doivent être apportées pour un fonctionnement réussi consistent à définir les valeurs de la clé d'intégration, de la clé secrète et du nom d'hôte de l'API, qui peuvent être trouvées sur la page d'intégration.

    ; Keyikey d'intégration Duo = INTEGRATION_KEY ; Clés secrètes Duokey = SECRET_KEY ; Nom d'hôte de l'API Duohost = API_HOSTNAME

    Pour forcer tous les utilisateurs se connectant à votre serveur via SSH à utiliser l'authentification à deux facteurs, ajoutez simplement la ligne suivante au fichier /etc/ssh/sshd_config :

    > ForceCommand /usr/local/sbin/login_duo

    Il est également possible d'organiser une authentification à deux facteurs uniquement pour des utilisateurs individuels en les regroupant en un groupe et en spécifiant ce groupe dans le fichier login_duo.conf :

    > groupe = roue

    Pour que les modifications prennent effet, il vous suffit de redémarrer le démon ssh. Désormais, après avoir saisi avec succès le mot de passe de connexion, l'utilisateur sera invité à se soumettre à une authentification supplémentaire. Une subtilité de la configuration de ssh doit être spécialement notée : il est fortement recommandé de désactiver les options PermitTunnel et AllowTcpForwarding dans le fichier de configuration, car le démon les applique avant de commencer la deuxième étape d'authentification. Ainsi, si un attaquant saisit correctement le mot de passe, il peut accéder au réseau interne avant que la deuxième étape d'authentification ne soit terminée grâce à la redirection de port. Pour éviter cet effet, ajoutez les options suivantes à sshd_config :

    PermitTunnel nonAllowTcpForwarding non

    Désormais, votre serveur se trouve derrière une double paroi et il est beaucoup plus difficile pour un attaquant d'y pénétrer.

    Paramètres additionnels

    Si vous vous connectez à votre compte Duo Security et accédez à la section « Paramètres », vous pouvez modifier certains paramètres à votre convenance. La première section importante est « Appels téléphoniques ». Ceci spécifie les paramètres qui seront en vigueur lorsqu'un appel téléphonique est utilisé pour confirmer l'authentification. La rubrique « Touches de rappel vocal » permet de préciser sur quelle touche du téléphone il faudra appuyer pour confirmer l'authentification. Par défaut, la valeur est « Appuyez sur n'importe quelle touche pour vous authentifier » - c'est-à-dire que vous pouvez appuyer sur n'importe quelle touche. Si vous définissez la valeur « Appuyez sur différentes touches pour authentifier ou signaler une fraude », alors vous devrez définir deux touches : cliquer sur la première confirme l'authentification (Clé pour s'authentifier), cliquer sur la seconde (Clé pour signaler une fraude) signifie que nous n'a pas lancé le processus d'authentification , c'est-à-dire que quelqu'un a reçu notre mot de passe et essaie de se connecter au serveur en l'utilisant. L'élément « Codes d'accès SMS » vous permet de définir le nombre de codes d'accès qu'un SMS contiendra et leur durée de vie (validité). Le paramètre « Verrouillage et fraude » permet de définir l'adresse email à laquelle une notification sera envoyée en cas d'un certain nombre de tentatives infructueuses de connexion au serveur.

    Utilise le!

    Étonnamment, de nombreuses personnes ignorent encore l’authentification à deux facteurs. Ne comprends pas pourquoi. Cela améliore vraiment considérablement la sécurité. Il peut être mis en œuvre pour presque tout et des solutions décentes sont disponibles gratuitement. Alors pourquoi? Par paresse ou insouciance.

    Services analogiques
    • Signify (www.signify.net) Le service propose trois options pour organiser l'authentification à deux facteurs. Le premier est l’utilisation de clés électroniques. La deuxième méthode consiste à utiliser des mots de passe, qui sont envoyés au téléphone de l'utilisateur par SMS ou envoyés à e-mail. Troisième option - application mobile Pour Téléphones Android, iPhone, BlackBerry, qui génère des mots de passe à usage unique (essentiellement un analogue de Duo Mobile). Le service s'adresse à grandes entreprises, donc entièrement payé.
    • SecurEnvoy (www.securenvoy.com) Vous permet également d'utiliser votre téléphone mobile comme deuxième couche de sécurité. Les clés d'accès sont envoyées à l'utilisateur par SMS ou par e-mail. Chaque message contient trois mots de passe, c'est-à-dire que l'utilisateur peut se connecter trois fois avant de demander une nouvelle partie. Le service est également payant, mais offre une période gratuite de 30 jours. Un avantage significatif réside dans le grand nombre d’intégrations natives et tierces.
    • PhoneFactor (www.phonefactor.com) Ce service vous permet d'organiser une authentification gratuite à deux facteurs pour jusqu'à 25 utilisateurs, offrant 500 authentifications gratuites par mois. Pour organiser la protection, vous devrez télécharger et installer un client spécial. Si vous devez ajouter une authentification à deux facteurs à votre site, vous pouvez utiliser le SDK officiel, qui fournit une documentation détaillée et des exemples pour les langages de programmation suivants : ASP.NET C#, ASP.NET VB, Java, Perl, Ruby, PHP.

    Dans les versions serveur du système d'exploitation Windows, il existe une merveilleuse opportunité d'utiliser pour les connexions les informations d'identification saisies par l'utilisateur précédemment lors de la connexion à votre ordinateur. De cette façon, ils n’ont pas besoin de saisir leur nom d’utilisateur et leur mot de passe à chaque fois qu’ils lancent une application publiée ou simplement un poste de travail distant. Cette chose s'appelle Single Sign On et utilise la technologie CréditSSP(Fournisseur de services de sécurité des informations d'identification).

    Description

    Pour que cela fonctionne, les conditions suivantes doivent être remplies :

    • Le serveur de terminaux et le client qui s'y connecte doivent être dans le domaine.
    • Le serveur de terminaux doit être configuré sur le système d'exploitation Serveur Windows 2008, Windows Server 2008 R2 ou version ultérieure.
    • L'ordinateur client doit disposer du système d'exploitation suivant : Windows XP SP3, Windows Vista, Windows Server 2008, Windows 7, Windows 8 ou Windows Server 2008 R2.

    Pour Windows XP SP3, des étapes supplémentaires seront requises. Il est nécessaire d'installer un correctif qui vous permettra de configurer les paramètres de Windows XP SP3 via des stratégies de groupe.
    Ce correctif (MicrosoftFixit50588.msi) peut être téléchargé depuis et depuis notre site Web :

    Tout d’abord, définissez le niveau de sécurité sur le serveur de terminaux sur le mode « Négociation » :

    Dans celui-ci, nous configurons 2 paramètres : Autoriser la transmission des informations d'identification par défaut et Autoriser la délégation des informations d'identification par défaut avec l'authentification du serveur « NTLM uniquement »

    Autoriser la délégation des informations d'identification par défaut avec l'authentification du serveur NTLM uniquement - doit être configuré uniquement si le serveur de terminaux n'est pas authentifié à l'aide de Kerberos ou d'un certificat SSL.

    Nous y entrons le(s) serveur(s) auquel nous souhaitons autoriser les utilisateurs sans ressaisir leur identifiant et leur mot de passe. Vous pouvez les saisir par masque, ou individuellement. L'aide le dit en détail.

    Après cela, nous appliquons la politique sur le(s) ordinateur(s) souhaité(s) et vérifions que les utilisateurs sont autorisés à accéder aux serveurs de terminaux spécifiés dans les politiques ci-dessus sans saisir de login et de mot de passe.

    Alexandre Antipov

    L'article donne un aperçu de l'algorithme de fonctionnement de la technologie d'autorisation transparente Single Sign-On et du fournisseur de services de sécurité Credential Security Service Provider (CredSSP). La méthode de configuration des parties client et serveur est prise en compte.


    L'un des principaux inconvénients pour l'utilisateur lors du lancement d'un poste de travail ou d'une application distante publiée sur un serveur de terminaux est la nécessité de saisir ses identifiants. Auparavant, un mécanisme permettant d'enregistrer les informations d'identification dans les paramètres du client Remote Desktop était utilisé pour résoudre ce problème. Cependant cette méthode présente plusieurs inconvénients importants. Par exemple, lors de la modification périodique du mot de passe, il était nécessaire de le modifier manuellement dans les paramètres du client du terminal.

    À cet égard, pour simplifier le travail avec un bureau distant dans Windows Server 2008, il est devenu possible d'utiliser la technologie d'autorisation transparente Single Sign-on (SSO). Grâce à lui, l'utilisateur, lors de sa connexion au serveur de terminaux, peut utiliser les informations d'identification qu'il a saisies lors de sa connexion à son ordinateur local, à partir duquel le client de bureau à distance est lancé.

    L'article donne un aperçu de l'algorithme de fonctionnement de la technologie d'autorisation transparente Single Sign-On et du fournisseur de services de sécurité Credential Security Service Provider (CredSSP). La méthode de configuration des parties client et serveur est prise en compte. Un certain nombre de questions pratiques liées à l'autorisation transparente pour les services de bureau à distance sont également abordées.

    Informations théoriques

    La technologie SSO vous permet de sauvegarder les identifiants des utilisateurs et de les transférer automatiquement lors de la connexion à un serveur de terminaux. À l'aide des stratégies de groupe, vous pouvez définir les serveurs pour lesquels cette méthode d'autorisation sera utilisée. Dans ce cas, pour tous les autres serveurs de terminaux, la connexion s'effectuera de manière traditionnelle : par saisie d'un login et d'un mot de passe.

    Les mécanismes d'autorisation transparents sont apparus pour la première fois dans Windows Server 2008 et Windows Vista. grâce au nouveau fournisseur de sécurité CredSSP. Il permettait de transmettre les informations d'identification mises en cache sur un canal sécurisé (à l'aide de Transport Layer Security (TLS)). Microsoft a ensuite publié les mises à jour correspondantes pour Windows XP SP3.

    Regardons cela plus en détail. CredSSP peut être utilisé dans les scénarios suivants :

    • Pour couche réseau authentification (NLA), permettant à l'utilisateur d'être reconnu avant installation complète Connexions;
    • pour le SSO, stocker les informations d'identification de l'utilisateur et les transmettre au terminal.

    Lors de la restauration d'une session au sein d'une batterie, CredSSP accélère le processus d'établissement de la connexion, car le serveur de terminaux détermine l'utilisateur sans établir une connexion complète (similaire à NLA).

    Le processus d'authentification suit l'algorithme suivant :

  • Le client initie l'établissement d'un canal sécurisé avec le serveur via TLS. Le serveur lui remet son certificat contenant le nom, l'autorité de certification et la clé publique. Le certificat du serveur peut être auto-signé.
  • Une session est établie entre le serveur et le client. Une clé correspondante est créée pour celui-ci, qui participera ensuite au cryptage. CredSSP utilise le protocole SPNEGO (Simple and Protected Negotiate) pour authentifier mutuellement le serveur et le client afin que chacun puisse se faire confiance. Ce mécanisme permet au client et au serveur de choisir un mécanisme d'authentification (tel que Kerberos ou NTLM).
  • Pour se protéger contre l'interception, le client et le serveur chiffrent alternativement le certificat du serveur à l'aide de la clé de session et se le transmettent.
  • Si les résultats de l'échange et le certificat d'origine correspondent, CredSSP sur le client envoie les informations d'identification de l'utilisateur au serveur.
  • Ainsi, la transmission des informations d'identification s'effectue via un canal crypté avec protection contre l'interception.

    Paramètres

    Le fournisseur de services de sécurité CredSSP fait partie du système d'exploitation et est inclus dans Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2. De plus, il peut être installé en tant que mise à jour distincte sur Windows XP SP3. Ce processus est décrit en détail dans l'article « Description du fournisseur de support de sécurité des informations d'identification (CredSSP) dans Windows XP Service Pack 3." Pour installer et activer CredSSP sur Windows XP SP3, vous devez suivre ces étapes.

    1. Exécutez l'éditeur de registre regedit et accédez à la branche : HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa.

    2. Ajoutez la valeur tspkg à la clé des packages de sécurité

    3. Accédez à la branche de registre : HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders.

    4. Ajoutez la valeur de credssp.dll à la clé SecurityProviders (les valeurs restantes de cette clé doivent rester inchangées).

    Une fois CredSSP activé, vous devez configurer son utilisation à l'aide des stratégies de groupe ou des clés de registre correspondantes. Pour configurer SSO sur les ordinateurs clients, utilisez les stratégies de groupe de la section :

    Configuration ordinateur\Modèles d'administration\Système\Délégation des informations d'identification .

    Dans les versions russes des systèmes d'exploitation, cela ressemble à ceci (Fig. 1).

    Riz. 1. Gérer le transfert des informations d'identification à l'aide des politiques de groupe

    Pour utiliser SSO, vous devez activer la stratégie :

    Autoriser la transmission des informations d'identification par défaut.

    De plus, après l'activation, vous devez déterminer pour quels serveurs cette méthode d'autorisation sera utilisée. Pour ce faire, vous devez effectuer les étapes suivantes.

    Dans la fenêtre d'édition de la politique (Fig. 2), cliquez sur le bouton « Afficher »

    Riz. 2. Fenêtre d'édition de la stratégie de groupe

    Ajoutez une liste de serveurs de terminaux (Fig. 3).

    Riz. 3. Ajout d'un serveur de terminaux pour une autorisation transparente

    La ligne d'ajout de serveur a le format suivant :

    TERMSRV/nom_serveur .

    Vous pouvez également spécifier les serveurs par masque de domaine. Dans ce cas, la ligne prend la forme :

    TERMSRV/*.nom_domaine .

    S'il n'est pas possible d'utiliser des stratégies de groupe, les paramètres appropriés peuvent être définis à l'aide de l'éditeur de registre. Par exemple, pour Paramètres Windows XP Sp3, vous pouvez utiliser le fichier de registre suivant :

    Éditeur de registre Windows version 5.00

    "Paquets de sécurité"=hex (7):6b,00,65,00,72,00,62,00,65,00,72,00,6f,00,73,00,00,\

    00,6d,00,73,00,76,00,31,00,5f,00,30,00,00,00,73,00,63,00,68,00,61,00,6e,00, \

    6e,00,65,00,6c,00,00,00,77,00,64,00,69,00,67,00,65,00,73,00,74,00,00,00,74, \

    00,73,00,70,00,6b,00,67,00,00,00,00,00

    "SecurityProviders" = "msapsspc.dll, schannel.dll, digest.dll, msnsspc.dll, credssp.dll"

    "AllowDefaultCredentials" = dword:00000001

    "ConcatenateDefaults_AllowDefault"=dword:00000001

    "1"="termsrv/*.mydomain.com"

    Ici, au lieu de mydomain.com, vous devez remplacer le nom de domaine. Dans ce cas, lors de la connexion aux serveurs de terminaux, nom de domaine(par exemple, termesserver1.mydomain.com), une autorisation transparente sera utilisée.

    Pour utiliser la technologie Single Sign-On sur un serveur de terminaux, vous devez effectuer les étapes suivantes.

  • Ouvrez la console de configuration des services Terminal Server (tsconfig.msc).
  • Dans la section connexion, accédez aux propriétés RDP-Tcp.
  • Dans l'onglet « Général », définissez le niveau de sécurité sur « Négociation » ou « SSL (TLS 1.0) » (Fig. 4).
  • Riz. 4. Définition du niveau de sécurité sur le serveur de terminaux

    À ce stade, la configuration des parties client et serveur peut être considérée comme terminée.

    Informations pratiques

    Dans cette section, nous examinerons les limites de l'utilisation de la technologie d'autorisation transparente et les problèmes qui peuvent survenir lors de son utilisation.

    • La technologie Single Sign-On ne fonctionne que lors de la connexion à partir d'ordinateurs exécutant des systèmes d'exploitation autres que Windows XP SP3 et les versions antérieures. Ordinateurs avec système opérateur Windows Vista, Windows Server 2008, Windows 7 et Windows Server 2008 R2.
    • Si le serveur de terminaux auquel la connexion est établie ne peut pas être authentifié via Kerberos ou un certificat SSL, le SSO ne fonctionnera pas. Cette limitation peut être contournée à l'aide de la stratégie suivante :
      Autoriser la délégation des informations d'identification définies sur l'authentification du serveur « NTLM uniquement » par défaut.
    • L'algorithme d'activation et de configuration de cette stratégie de groupe est similaire à celui présenté ci-dessus. Le fichier de registre correspondant à ce paramètre ressemble à ceci.

    "AllowDefCredentialsWhenNTLMOnly"=dword:00000001

    "ConcatenateDefaults_AllowDefNTLMOnly"=dword:00000001

    "1"="termsrv/*.mydomain.com"

    L'authentification utilisant cette méthode est moins sécurisée que l'utilisation de certificats ou de Kerberos.

    • Si les informations d'identification d'un serveur sont enregistrées dans les paramètres du client du terminal, elles ont une priorité plus élevée que les informations d'identification actuelles.
    • L'authentification unique ne fonctionne que lors de l'utilisation de comptes de domaine.
    • Si la connexion au serveur de terminal s'effectue via TS Gateway, dans certains cas, les paramètres du serveur TS Gateway peuvent avoir préséance sur les paramètres SSO du client terminal.
    • Si le serveur de terminaux est configuré pour demander à chaque fois les informations d'identification de l'utilisateur, SSO ne fonctionnera pas.
    • La technologie d'autorisation transparente ne fonctionne qu'avec des mots de passe. Si vous utilisez des cartes à puce, cela ne fonctionnera pas.

    Pour que SSO fonctionne correctement sur Windows XP SP, il est recommandé d'installer deux correctifs de KB953760 : « Lorsque vous activez SSO pour un serveur de terminaux à partir d'un ordinateur client Windows XP SP3, vous êtes toujours invité à fournir les informations d'identification de l'utilisateur lorsque vous vous connectez. au serveur de terminaux ».

    Dans certains cas, il est possible que la technologie d'autorisation transparente fonctionne ou non sur un même terminal client, selon le profil de l'utilisateur qui se connecte. Le problème est résolu en recréant le profil utilisateur. Si cette tâche prend trop de temps, vous pouvez essayer d'utiliser les conseils de la discussion : « Authentification unique RemoteApp (SSO) à partir d'un client Windows 7.»Forums Microsoft Technet. Il est notamment recommandé de réinitialiser les paramètres Internet Explorer ou approuvez le module complémentaire approprié.

    Une autre limitation majeure de la technologie SSO est qu'elle ne fonctionne pas lors de l'exécution d'applications publiées via TS Web Access. Dans ce cas, l'utilisateur est obligé de saisir ses identifiants deux fois : lors de la connexion à l'interface Web et lors de l'autorisation sur le serveur de terminaux.

    Dans Windows Server 2008 R2, la situation s'est améliorée. Plus des informations détaillées cela peut être trouvé dans l'article : « Présentation de l'authentification unique Web pour les connexions RemoteApp et Desktop » ».

    Conclusion

    L'article traite de la technologie d'autorisation transparente sur les serveurs de terminaux Single Sign-On. Son utilisation permet de réduire le temps passé par l'utilisateur pour se connecter au serveur de terminaux et lancer des applications distantes. De plus, avec son aide, il suffit de saisir une fois vos identifiants lors de la connexion à votre ordinateur local, puis de les utiliser lors de la connexion à serveurs de terminaux domaine. Le mécanisme de transfert des informations d'identification est assez sécurisé et la configuration des parties serveur et client est extrêmement simple.



    
    Haut