Comment configurer l'authentification par clé publique pour SSH?Comment configurer l'authentification par clé publique?
Répondre
Si vous avez SSH installé, vous devriez être en mesure de fonctionner ..
ssh-keygen
Ensuite, passer par les étapes, vous aurez deux fichiers, id_rsa
et id_rsa.pub
(le premier est votre clé privée, le second est votre clé publique - celui que vous copiez sur la machine distante s)
Ensuite, connectez-vous à l'ordinateur distant auquel vous voulez vous connecter, au fichier ~/.ssh/authorized_keys
ajoutez le contenu de ce fichier id_rsa.pub
.
Oh, et chmod 600
tous les, donc pas d'autres utilisateurs des fichiers id_rsa*
(à la fois localement et à distance) peuvent les lire:
chmod 600 ~/.ssh/id_rsa*
De même, assurez-vous le fichier ~/.ssh/authorized_keys
à distance est chmod 600
aussi:
chmod 600 ~/.ssh/authorized_keys
Ensuite, quand vous faites ssh remote.machine
, il devrait vous demander le mot de passe de la clé, pas la machine distante.
Pour le rendre plus agréable à utiliser, vous pouvez utiliser ssh-agent
pour tenir les clés déchiffrées en mémoire - cela signifie que vous ne devez pas taper votre mot de passe keypair à chaque fois. Pour lancer l'agent, vous exécutez (y compris les citations back-tiques, qui Eval la sortie de la commande ssh-agent
)
`ssh-agent`
Sur certains distros, ssh-agent est démarré automatiquement. Si vous exécutez echo $SSH_AUTH_SOCK
et qu'il affiche un chemin (probablement dans/tmp /), il est déjà configuré, vous pouvez donc ignorer la commande précédente.
Ensuite, pour ajouter votre clé, vous
ssh-add ~/.ssh/id_rsa
et entrez votre mot de passe. Il est stocké jusqu'à ce que vous le supprimiez (à l'aide de la commande ssh-add -D
, qui supprime toutes les clés de l'agent)
Pour fenêtres this est une bonne introduction et le guide
Voici quelques bons agents ssh pour les systèmes autres que Linux.
- Windows - pageant
- OS X - SSHKeychain
Si vous devez créer le dossier .ssh ne le définissez pas sur 600 comme moi ou vous allez avoir un mauvais moment . Au lieu de cela, réglez-le à 700. :-) –
Puis-je me connecter à partir d'une machine inconnue en utilisant la clé privée qui a été générée pour que le client connu/configuré communique avec le serveur? Je veux dire, est-ce que cette clé privée est portable et pourrait être utilisée pour m'authentifier auprès du serveur d'autres machines, en cas d'urgence? –
@ user01 Oui, vous pouvez copier la clé privée sur plusieurs systèmes et accéder à un autre serveur disposant de la clé publique correspondante. –