Configurez des connexions SSH sans mot de passe en seulement 3 étapes

Salut,

Vous verrez ici comment vous connecter à un PC à distance en SSH Il suffit de saisir le mot de passe la première fois, même si nous redémarrons les deux ordinateurs, le mot de passe ne nous sera plus demandé.

Mais voyons d'abord une brève explication de ce que c'est SSH:

SSH c'est un protocole, un moyen de communication entre deux ordinateurs. Cela nous permet de gérer une équipe à distance. Lorsque nous accédons à un autre ordinateur par SSH, la commande que nous entrons dans ce terminal sera exécutée sur l'autre ordinateur, de cette manière nous la gérons / la contrôlons.

Tout ce qui est transmis par SSH, il est crypté et avec une sécurité considérablement bonne.

Maintenant, nous allons voir comment en seulement trois étapes nous allons configurer PC # 1 accéder PC # 2 sans saisir le mot de passe:

Nous avons la situation suivante:

PC n ° 1 - » Vous souhaitez vous connecter à PC # 2, sans avoir à saisir un mot de passe à chaque fois que vous essayez de vous connecter à cet autre PC.

PC n ° 2 - » Vous avez installé le serveur SSH. C'est le bon PC # 1 il se connectera, et il le fera sans entrer de mot de passe. Sur ce PC, il y a un utilisateur nommé racine.

Commençons…

1. En PC # 1 nous écrivons ce qui suit:

  • ssh-keygen -b 4096 -t rsa

Cela générera une clé publique. Afin de ne pas trop me confondre avec les "clés publiques et privées", je vais l'expliquer très simplement.

Supposons que vous ayez deux clés de votre maison dans votre poche, l'une que vous donnez à votre petite amie depuis que vous vivez ensemble, et avec l'autre vous restez seule, vous ne la donnez à personne. Eh bien, cette clé que vous avez donnée à votre petite amie lui permettra d'entrer dans votre maison sans vous le dire, sans demander votre permission, non? c'est-à-dire une clé publique, une "clé" qui permet à un PC d'accéder à un autre sans avoir à demander votre permission (c'est-à-dire sans saisir de nom d'utilisateur + mot de passe)

Quand ils mettent cette commande, cela apparaîtra:

2. Appuyez simplement sur [Entrer], une seconde plus tard on presse à nouveau [Entrer], et une seconde plus tard, nous appuyons une fois de plus [Entrer]. Je veux dire, nous presserions [Entrer] un total de trois (3) fois, on appuie seulement dessus ... on n'écrit rien ????

Lorsque nous faisons cela, quelque chose de très similaire à ce qui suit apparaîtra:

Prêt, nous avons déjà la clé publique ... maintenant nous devons la donner à qui nous voulons (comme l'exemple, donnez-la à notre petite amie haha)

Ce que nous voulons c'est que PC # 1 se connecter à PC # 2, déjà à PC # 1 nous avons fait tout ce qui précède, en PC # 2 Nous n'avons rien fait. Bien, PC # 2 a une adresse IP par exemple 10.10.0.5.

3. Nous mettons PC # 1 à la suite:

  • ssh-copy-id root@10.10.0.5

Cela vous donne simplement la clé publique de PC # 1 a PC # 2, c'est-à-dire qu'il donne à PC # 2 la clé publique de PC # 1, pendant que PC # 1 il garde sa clé privée, vous savez; cette clé qui n'est donnée à personne. Il est important de ne pas faire d'erreur avec l'utilisateur, c'est-à-dire si l'utilisateur "racine"Cela n'existe pas dans le PC # 2, cela nous donnera une erreur, il est important de savoir clairement dans quel utilisateur nous allons utiliser pour cela, en plus du fait que cet utilisateur avec lequel nous configurons l'accès sans mot de passe sera le même avec lequel nous devrons accéder à l'avenir. Une fois que cela est fait, cela devrait ressembler à ceci:

À l'étape précédente, ils doivent mettre le mot de passe de l'utilisateur dans PC # 2.

Et voila ... tout est configuré 😀

Comme il nous apparaît dans le terminal, testons si tout a vraiment fonctionné à 100% OK. Pour tester, nous mettons:

  • racine ssh@10.10.0.5

S'ils veulent également accéder à un autre ordinateur sans toujours entrer un mot de passe (PC # 3 par exemple), on lui donne simplement notre clé publique et c'est tout, c'est-à-dire une fois qu'on a fait l'étape #1 y #2 nous n'aurons plus à le faire. Si nous voulons accéder PC # 3 par exemple, qui a par IP 10.10.99.156 on vient de mettre:

  • racine ssh@10.10.99.156

Jusqu'à présent, le tutoriel.

Expliquez que le niveau de sécurité lorsque nous parlons de SSH est vraiment élevé, la métaphore avec laquelle j'ai expliqué certaines étapes (celle de donner la clé à notre petite amie) n'est peut-être pas la plus appropriée haha, puisque notre petite amie pourrait donner la clé à quelqu'un d'autre. Lorsque nous parlons de SSH, les principes de sécurité sont faciles à expliquer, lorsque nous essayons d'accéder à notre ordinateur (PC # 1) vérifie si dans le PC # 2 il y a une clé publique de notre ordinateur (dans ce cas il y en a, car nous la configurons ainsi), puis, s'il y en a une, c'est simple, il vérifie si cette clé publique est identique à notre clé privée nous ne l'avons donné à personne). Si les clés sont identiques cela nous permet d'y accéder, sinon et par mesure de sécurité, cela ne nous permet pas d'accéder à distance à l'autre ordinateur.

Alors maintenant, vous savez ... donner à notre petite amie la clé de la maison n'est pas la chose la plus sûre, mais partager les clés et accéder à un autre ordinateur à distance via SSH est sûr ^ _ ^

Des doutes ou des questions, des plaintes ou des suggestions me le font savoir.

Bonjour à tous.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.

  1.   elav <° Linux dit

    Je ne comprends vraiment pas comment vous êtes si paranoïaque à propos de la sécurité faites une telle erreur. Si dans l'étape où il est dit:

    Enter passphrase (empty for no passphrase)

    On n'écrit rien, on est perdu si un utilisateur parvient à accéder à notre PC et ouvrir un terminal, puisqu'il exécute automatiquement:

    ssh root@10.10.0.5

    Il entrera sans demander de mot de passe.

    1.    KZKG ^ Gaara <° Linux dit

      Si quelqu'un accède à mon ordinateur portable, oui, il peut accéder au PC # 2 sans avoir à entrer son mot de passe, cependant, comme vous le dites, je suis paranoïaque à propos de la sécurité, pensez-vous vraiment qu'accéder à mon ordinateur portable est quelque chose si simple? HAHA.

      Quand je me lève toujours, je verrouille toujours l'écran, sinon après 30 secondes sans activité sur la souris ou le clavier de l'ordinateur portable, il se verrouille toujours 😉

      1.    Jésus dit

        Si quelqu'un vole votre ordinateur portable, quel que soit le niveau de verrouillage de session que vous avez, accéder aux fichiers est trivial, une question de 5 minutes avec un Linux amorçable depuis USB. Et une fois que les fichiers sont accédés, comme la clé privée n'est pas protégée, vous pouvez l'utiliser directement, ou mieux la copier et accéder à n'importe lequel de vos serveurs confortablement depuis votre domicile. En fait, le processus est si rapide que vous n'auriez même pas besoin de le savoir. En 5 minutes, vous allez à la salle de bain ou autre, tout peut être fait.

        Le moyen le plus sûr est de mettre un mot de passe sur la clé privée, puis d'utiliser ssh-agent pour qu'il se souvienne du mot de passe pour toute la session (juste ssh-add). De cette façon, il ne demanderait le mot de passe que la première fois, et en pratique vous auriez une connexion sans mot de passe 90% du temps, en plus d'être protégé contre le vol ou les intrusions.

        1.    x11tête11x dit

          Est-ce facile d'accéder aux fichiers? Avez-vous déjà entendu parler du chiffrement intégral du disque? (luks + cryptsetup)

          1.    Jésus dit

            Oui, bien sûr, si vous faites chiffrer l'intégralité du disque, c'est une autre histoire, mais 90% des utilisateurs ne le font pas car ils ne savent pas comment le faire et dans de nombreux cas, cela ne les indemnise même pas. En revanche, ne pas enregistrer les mots de passe non chiffrés ou les clés privées non protégées sur le disque est quelque chose que tout le monde peut faire, et une bonne pratique en général.

            Enregistrer des clés privées non protégées sur un disque crypté revient à garer votre voiture en laissant les portes ouvertes, mais en engageant un agent de sécurité avec un doberman pour la protéger. Cela fonctionne, oui, mais il est beaucoup plus facile et plus efficace de le verrouiller directement.

    2.    Changoléon dit

      MMm ne font pas grand-chose à la pipe, bien qu'ils puissent créer une interface virtuelle, attribuer une adresse IP et se connecter à cette adresse IP virtuelle, donc même s'ils suppriment la clé, ils ne pourront pas trouver la machine car la clé ne fonctionne que pour une certaine adresse IP. Cela dépend aussi de ce qu'ils veulent, cela fonctionne parfaitement pour moi comme le décrit le camarade, j'ai un serveur privé chez moi, je n'ai pas besoin d'augmenter la sécurité car il a un VPN configuré.

  2.   samquejo dit

    Et tout cela peut-il s'appliquer à un terminal Windows qui doit se connecter à plusieurs * NIX?
    J'ai du mastic mais je peux aussi utiliser Securecrt (maintenant je l'ai scripté)

    1.    KZKG ^ Gaara <° Linux dit

      Dans le terminal Windows (cmd), je suis convaincu que non, ce ne sera pas possible là-bas.
      Cependant, si vous utilisez Putty, vous pouvez l'essayer, cela pourrait fonctionner.

      Salutations et bienvenue sur notre site 😀

    2.    euh3nda dit

      Putty accepte déjà le paramètre -pw dans des commandes supplémentaires. (ex: -pw12345)
      En fait, Super Putty est plus cool que le simple Putty. (C'est un cadre pour Putty)

      Vous n'avez donc pas à le dire.

  3.   higi dit

    Merci pour le message, très utile. C'est un peu ennuyeux de se connecter à SSH pour tout.

    1.    KZKG ^ Gaara dit

      Bonjour et merci beaucoup pour ta visite et ton commentaire 🙂
      Rien d'ami, un plaisir de savoir que cela a été utile ... si nous pouvons vous aider d'une autre manière, nous sommes plus que ravis 😉

      Salutations et bienvenue sur le site.

      1.    à droite dit

        J'ai besoin de me connecter à un pc windonws depuis mon Linux comme je le fais depuis mon terminal

  4.   Roberto dit

    Excellent .. ça inspire vraiment de voir ce type de tutoriels, ça me donne envie de contribuer aussi mes expériences déjà simplifiées pour que la communauté puisse en profiter. Merci vraiment du Salvador.

  5.   José Gregorio dit

    Je me connecte avec une machine avec ubuntu à une qui a debian mais cela me donne une erreur dans laquelle il ne peut pas s'authentifier et donc il me demande le mot de passe .. pourquoi cela arrivera-t-il? Est-ce que les versions de ssh-keygen diffèrent ou que se passe-t-il?

    1.    KZKG ^ Gaara dit

      Mettez ici l'erreur que cela vous donne pour pouvoir mieux vous aider 😉
      En outre, vous pouvez essayer de mettre ceci dans un terminal:
      sudo mv $HOME/.ssh/known_hosts /opt/

      Cela nettoie les connexions (historique des connexions) SSH que vous avez eues.

  6.   kinon dit

    Et si je voulais utiliser la même clé publique pour plusieurs serveurs, pourrais-je le faire, ou dois-je créer une clé pour chaque serveur auquel je souhaite accéder? Je vais quand même l'essayer, mais sur un serveur inutile pour ne pas ruiner quelque chose d'utile.

    Gracias y saludos.

    1.    KZKG ^ Gaara dit

      Comme je l'ai fait sur mon ordinateur portable, c'est une clé différente pour chaque serveur, en fait, je pense qu'il n'est pas possible d'utiliser la même clé pour plusieurs ... car l'ID de chaque serveur est unique, comme une empreinte digitale 🙂

      salutations

      1.    kinon dit

        Bonjour seigneur du sable. J'ai lu des clés et j'ai trouvé que la paire de clés (publique et privée) sert au serveur-client pour envoyer et recevoir des défis et ainsi s'identifier mutuellement, donc cela n'a rien à voir avec le mot de passe que vous utilisez pour accéder au serveur, ce dernier sert à "coller" la clé publique dans les clés de confiance du serveur. Vous pouvez donc l'utiliser autant que vous le souhaitez ou en avez besoin.

        Je ne sais pas si je me suis expliqué, mais la blague c'est que pour pouvoir utiliser votre paire de clés sur d'autres serveurs, après avoir suivi votre tutoriel, il vous suffit de faire:

        ssh-copie-id other.user@otra.ip
        écrivez votre mot de passe pour cet autre serveur

        Et prêt.
        salutations

  7.   Raul dit

    Bonjour, merci pour le guide, c'est le seul qui m'a aidé. Maintenant que je veux le faire sur une autre paire d'ordinateurs, j'obtiens ce qui suit:

    $ssh-copy-id -p 4000 lm11@148.218.32.91

    Mauvais port 'umask 077; test -d ~ / .ssh || mkdir ~ / .ssh; cat >> ~ / .ssh / clés_autorisées '

    Merci pour votre aide.

  8.   Allemand dit

    J'ai fait ce que vous nous avez dit, mais il ne cesse de me demander le mot de passe. Je clarifie cette connexion que je fais entre deux serveurs Linux Red Hat ... Que pourrait-il être d'autre?

    J'ai déjà regardé le fichier / etc / ssh / sshd_config

    J'ai déjà redémarré les deux serveurs

    PC2 = chapeau rouge Linux 6.4
    PC2 = chapeau rouge Linux 5.1

    1.    Xavier dit

      Le service ssh doit être correctement configuré (fichier / etc / ssh / sshd_config sur PC2) pour qu'il fonctionne.

  9.   Allemand dit

    correction…

    PC1 = Centos 6.4
    PC2 = Red Hat 5.1

  10.   grivas dit

    Bonjour collègues, j'ai le besoin d'établir une relation de confiance entre 1 serveur Linux Centos 5.3 et un Unix Sco5.7 mais j'ai le problème que lors de l'étape 3 de copie de la clé de Linux vers Unix, je reçois le message / usr / bin / ssh-copy-id: ERREUR: Aucune identité trouvée, pourquoi est-ce possible?

    merci

  11.   Namek dit

    J'ai suivi le tutoriel étape par étape. Cela ne me donne aucune erreur, mais à la fin, lorsque je me connecte de PC1 à PC2, il ne cesse de me demander le mot de passe root à chaque fois que je me connecte.

    Quelqu'un pense-t-il ce que cela pourrait être?

  12.   Voler dit

    Il semble qu'après avoir généré la clé, vous devez exécuter ssh-add pour que l'agent d'authentification puisse l'utiliser.

  13.   Andréa Colodro dit

    Comme je supprime la clé d'accès, il ne reconnaît rien que j'ai été piraté, aidez-vous, il n'entre rien

  14.   Jordanie Acosta dit

    Merci beaucoup, cela a parfaitement fonctionné

  15.   minimini dit

    Merci beaucoup pour le guide! C'est très facile et c'est pratique lorsque vous avez vos serveurs en marche et que vous n'avez pas à entrer les clés et donc à automatiser les choses 😀

  16.   euh3nda dit

    Merci.

    Je n'étais pas au courant de l'utilisation de ssh-copy-id et cela a été assez automatique.
    La vérité est que j'étais au point d'écrire le mot de passe, donc ce que je fais est de le sauvegarder avec une paraphrase DEFAULT, qui est maintenue pendant la session.

    Cela ne me dérange pas de l'écrire une fois à chaque fois que j'allume le PC, le rouleau doit le mettre à chaque fois qu'il se déconnecte ou des choses comme ça

    SSH Pas de Jutsu!

  17.   lizz dit

    Salut

    bon tutoriel ... mais si je veux passer des informations ??? comment je peux le faire?

  18.   Diego González dit

    Bonjour, votre contribution est très intéressante, mais j'ai quelques doutes sur un sujet similaire

  19.   Carlos Hernandez dit

    Salut.

    Essayez les étapes ci-dessus, mais lorsque vous essayez de copier la clé sur le serveur 2 (PC2), cela m'indique que la commande n'existe pas.

    bash: ssh-copy-id: commande introuvable

    Puis-je copier la clé manuellement?

  20.   bonjour dit

    Excellent!! Je cherchais une explication aussi simple et cela fonctionnait parfaitement

    merci!

  21.   Yarumal dit

    Excellente contribution.
    Merci beaucoup, cela m'a beaucoup aidé.

  22.   Pedro dit

    Salut, je me demande s'il existe un moyen de faire cette commande ssh-copy-id. Depuis que j'installe Open ssh pour Windows, ssh fonctionne pour moi sous DOS mais il n'a pas cette commande ssh-copy-id. J'aimerais savoir comment envoyer cette clé publique à l'autre serveur linux (serveur linux). Merci beaucoup.

  23.   Pedro dit

    Salut. J'ai besoin d'établir une relation de confiance entre un serveur Linux et une machine Windows. Installez le SSH pour Windows et cela fonctionne pour moi. Mais cette commande ssh-copy-id n'est pas disponible dans cet outil.

    Ils connaissent une autre façon de le faire sans utiliser ssh-copy-id.

    Merci beaucoup pour vos commentaires.

  24.   Andrinho dit

    Mais la question est de pouvoir se connecter sans mot de passe, si on met une phrase de passe on nous demanderait ce pass pour se connecter et ce n'était pas l'objectif de cela

  25.   Andrinho dit

    Cela m'a été très utile pour le module fp de mon ordinateur, merci 🙂

  26.   Vicent dit

    Je vous remercie!

  27.   x-man dit

    Certains s'inquiètent de l'ennui qu'il peut être d'avoir à entrer le mot de passe (phrase de passe), pour cela, comme ils l'ont dit ci-dessus, c'est «user-agent» et que je l'ai également configuré avec Keepass et sa fonction Auto-Type, donc je viens de J'invoque le terminal et avec la combinaison de touches qu'ils ont configurée prête, j'ai aussi des "alias" pour chaque requête et tout est très simple.

    Bon tutoriel.

    Avoir beaucoup de plaisir !!

  28.   Philippe Oyarce dit

    Très bonne info 🙂 mais j'ai une question ...

    J'ai PC10 qui est l'endroit où je garde les informations, les informations sont envoyées de pc1 - pc2 - pc3, à PC10, comment puis-je faire en sorte que pc1, pc et pc3 utilisent la même clé pour accéder à PC10 sans clé.

    À votre santé…

  29.   Nestor dit

    Comment puis-je lister ce qu'il y a dans machine1 dans le bash de machine2 sans aller mettre ssh ip @ hosts au bash de machine1. Je ne sais pas si je comprends xD

  30.   Martin dit

    10 ans se sont écoulés depuis cette publication et je continue à la visiter chaque fois que j'en ai besoin. Comme certains autres tutoriels ici, ils ont résisté à l'épreuve du temps. Merci et salutations!