web-dev-qa-db-fra.com

bash: /home/user/.ssh/authorized_keys: aucun fichier ou répertoire de ce type

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
24
user282060

Vous devez créer le répertoire .ssh et le fichier authorized_keys la première fois.

  1. Créez le répertoire .ssh:

    mkdir ~/.ssh
    
  2. Définissez les autorisations adéquates:

    chmod 700 ~/.ssh
    
  3. Créez le fichier authorized_keys:

    touch ~/.ssh/authorized_keys
    
  4. 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.

65

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.

2
Shivam Sharma

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
2
KalenGi

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.

0
DGA