Créez une clé ssh:
Commander:
ssh-keygen -t rsa –P ""
Déplacement de la clé sur la clé autorisée:
Commander:
cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
bash: /home/user/.ssh/authorized_keys: No such file or directory
Vous devez créer le répertoire .ssh
et le fichier authorized_keys
la première fois.
Créez le répertoire .ssh
:
mkdir ~/.ssh
Définissez les autorisations adéquates:
chmod 700 ~/.ssh
Créez le fichier authorized_keys
:
touch ~/.ssh/authorized_keys
Définissez les autorisations adéquates:
chmod 600 ~/.ssh/authorized_keys
Les permissions sont importantes! Cela ne fonctionnera pas sans les bonnes autorisations!
Vous pouvez maintenant ajouter la clé publique au fichier authorized_keys
:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
Vous devez ajouter la clé publique de votre ordinateur au fichier authorized_keys
de l'ordinateur auquel vous souhaitez accéder à l'aide de clés SSH!
Comme mentionné par terdon, vous pouvez également utiliser cette commande:
ssh-copy-id user@Host
Cela placera votre id_rsa.pub
(dans votre répertoire ~/.ssh
) dans le fichier authorized_keys
de l'ordinateur distant, créant ainsi les répertoires .ssh
et authorized_keys
avec les autorisations nécessaires, le cas échéant.
Comme je n'ai pas assez de réputation, j'ajoute ceci ici. En plus de la réponse de Louis Matthijssen, si vous ne parvenez toujours pas à vous connecter via ssh en tant qu’utilisateur créé, tel que
ssh username@Host
cela peut être dû à l'absence de permission du propriétaire que vous devez ajouter à votre dossier /home/username/.ssh. J'ai eu le même problème et vous pouvez donner cette permission en tant que:
chown -R username:username /home/username/.ssh
Cela peut probablement se produire simplement parce que vous avez créé le répertoire et défini les autorisations comme racine, mais pas comme nom d'utilisateur avec lequel vous voulez accéder au serveur.
J'espère que ça aide quelqu'un.
Si vous avez reçu la clé publique dans un courrier électronique à installer sur un serveur distant:
1) SSH sur le serveur. J'ai utilisé PuTTY sur Windows.
2) Configurer la clé:
mkdir ~/.ssh
chmod 700 ~/.ssh
vi ~/.ssh/authorized_keys
Veillez à bien copier la clé et à la coller dans une nouvelle ligne de la fenêtre de l'éditeur. Vérifiez qu'il occupe une seule ligne et sauvegardez.
chmod 600 ~/.ssh/authorized_keys
Cela peut également échouer si, lors de la création de la clé avec ssh-keygen
, vous lui attribuez un nom de fichier. J'ai entré un nom my-ssh-file-name
et il a écrit la clé sur /Users/MyUserName
au lieu du dossier .ssh
. Si vous laissez le nom de fichier vide, il écrira dans .ssh
comme prévu.
essayer
touch $HOME/.ssh/authorized_keys
créer un fichier vide avec les droits de cet utilisateur.
Ce fichier est créé lorsque vous accédez pour la première fois à un hôte distant avec cet utilisateur.