Créez une clé ssh:
Commander:
ssh-keygen -t rsa –P ""
Déplacer 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 registered_keys la première fois.
Créez le répertoire .ssh
:
mkdir ~/.ssh
Définissez les permissions adéquates:
chmod 700 ~/.ssh
Créez le fichier allowed_keys:
touch ~/.ssh/authorized_keys
Définissez les permissions adéquates:
chmod 600 ~/.ssh/authorized_keys
Les permissions sont importantes! Cela ne fonctionnera pas sans les bonnes permissions!
Vous pouvez maintenant append la clé publique au fichier allowed_keys:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
Vous devez append la clé publique de votre ordinateur au fichier registered_keys de l’ ordinateur auquel vous souhaitez accéder à l’aide de clés SSH !
Comme terdon l’a mentionné, 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 id_rsa.pub
de l’ordinateur distant, créant ainsi le répertoire .ssh
et le fichier id_rsa.pub
avec les permissions appropriées, si nécessaire.
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
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.
Cela peut également échouer si, lors de la création de la clé avec ssh-keygen
, vous lui atsortingbuez un nom de fichier. J’ai entré un nom my-ssh-file-name
et la clé a été écrite dans /Users/MyUserName
au lieu du dossier .ssh
. Si vous laissez le nom de fichier vide, il écrira dans .ssh
comme prévu.
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 d’ autorisation du propriétaire que vous devez append à 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 permissions en tant qu’utilisateur root , mais pas en tant que nom d’ utilisateur avec lequel vous souhaitez accéder au serveur.
J’espère que ça aide quelqu’un.