GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment approuver des ordinateurs spécifiques pour Ssh dans une machine avec l'authentification par mot de passe désactivée ?

Les instructions de help.ubuntu.com/community/SSH/OpenSSH/Configuring recommandent de désactiver l'authentification par mot de passe afin qu'"il ne soit possible de se connecter qu'à partir d'ordinateurs que vous avez spécifiquement approuvés". Mais ils ne disent pas comment approuver spécifiquement un ordinateur. Comment faire ?

Réponse acceptée :

Sur chaque utilisateur auquel vous voulez avoir accès au serveur, lancez dans un terminal :

ssh-keygen
ssh-copy-id <username>@<serverIPorDNSname>

Il vous demandera où l'enregistrer, la valeur par défaut est très bien. Il vous demandera d'entrer une phrase de passe. Il s'agit de chiffrer la clé au cas où l'ordinateur serait volé ou compromis. Si vous ne voulez pas de phrase secrète, laissez les deux invites de phrase secrète vides.

La première commande crée une clé ssh pour l'utilisateur actuel sur lequel elle est exécutée. La deuxième commande ssh dans le serveur et ajoute la clé de l'utilisateur actuel à la liste du serveur des personnes autorisées à se connecter. Étant donné que ssh-copy-id utilise ssh, vous devrez le faire avant de désactiver les connexions par mot de passe.

Les clés SSH sont deux moitiés correspondantes. Une moitié est dite à tout le monde, l'autre est gardée secrète. À l'aide d'un algorithme mathématique, la moitié publique peut être utilisée pour déchiffrer les données chiffrées avec la clé privée. Si les données sont déchiffrées avec succès avec la clé publique, vous savez sans aucun doute que c'est la moitié privée de la clé qui les a chiffrées. Ainsi, lorsque vous vous connectez avec une clé ssh, le client envoie un message (chiffré à l'aide de la clé privée) qui dit essentiellement "laissez-moi entrer". Le serveur vérifie à l'aide de la clé publique et si la clé publique figure dans la liste des ordinateurs autorisés, la connexion est réussie.

ssh-copy-id copie (en utilisant ssh) la moitié publique sur la liste des serveurs des clés autorisées à se connecter (cette liste est stockée dans /home//.ssh/authorized_keys2, ou dans le cas de root à /root/.ssh/authorized_keys2). Si vous avez déjà désactivé l'authentification par mot de passe, vous pouvez toujours ajouter un ordinateur. Il vous suffit de copier la clé publique (à /home/username/.ssh/id_rsa.pub sur un ordinateur client) sur quelque chose comme une clé USB, puis d'ajouter le contenu de id_rsa.pub à la fin du /home//.ssh/authorized_keys2 sur le serveur. (Vous pouvez le faire en exécutant une commande telle que cat /media/USB/stick/path/to/id_rsa.pub >>/home/<username>/.ssh/authorized_keys2 sur le serveur.)

En relation :Le pavé tactile a soudainement cessé de fonctionner ?
Ubuntu
  1. Connexion SSH au serveur RHEL 7 sans mot de passe

  2. Comment utiliser les clés SSH avec Plesk

  3. SSHPass :comment se connecter en SSH à un serveur à l'aide d'un script sans mot de passe (de manière non interactive)

  4. Comment se connecter au serveur ssh avec plink et cmd et clé publique

  5. Comment Ssh dans un répertoire spécifique ?

Comment configurer l'authentification à deux facteurs SSH sur Ubuntu 16.04 avec Google Authenticator

Comment configurer l'authentification basée sur la clé Ssh pour Github en utilisant le fichier ~/.ssh/config ?

Comment configurer une clé SSH sur un serveur Plesk

Comment ajouter une clé publique SSH au serveur

Comment configurer l'authentification par mot de passe avec Apache sur Ubuntu 18.04

Comment sécuriser SSH avec Fail2Ban