bash:/home/user/.ssh/authorized_keys:そのようなファイルまたはディレクトリはありません


30

sshキーを作成します。
コマンド:

ssh-keygen -t rsa –P ""

キーを認証キーに移動:
コマンド:

cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
bash: /home/user/.ssh/authorized_keys: No such file or directory

1
~/.ssh/authorized_keys自分のキーではなく、接続/信頼している他のコンピューターキーです。
saiarcot895

一部のアプリケーションでは、自分のマシンに対してパスワードなしのsshが必要です。
ネハルJワニ

Stack Exchangeネットワークの複数のサイトに同じ質問を投稿しないでください。
テルドン

所有するキーを信頼する必要があるのはなぜですか?正確に何をしようとしていますか?
Braiam

回答:


74

最初に.sshディレクトリとauthorized_keysファイルを作成する必要があります。

  1. .sshディレクトリを作成します。

    mkdir ~/.ssh
    
  2. 適切な許可を設定します。

    chmod 700 ~/.ssh
    
  3. authorized_keysファイルを作成します。

    touch ~/.ssh/authorized_keys
    
  4. 適切な許可を設定します。

    chmod 600 ~/.ssh/authorized_keys
    

権限は重要です!適切な権限がないと機能しません!

これで、公開鍵authorized_keysファイルに追加できます。

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

SSHキーを使用して、アクセスするコンピューターのファイルにコンピューターの公開キーを追加する必要がありますauthorized_keys


terdonが述べたように、次のコマンドも使用できます。

ssh-copy-id user@host

これにより、id_rsa.pub~/.sshコンピューターのディレクトリに)リモートコンピューターのauthorized_keysファイルが配置され、必要に応じて適切なアクセス許可を持つ.sshディレクトリとauthorized_keysファイルが作成されます。


5
いずれにせよ、あなたはcatそれだけをしたくありません、それssh-copy-idが目的です。
テルドン

1
うわー、クール、私はそれを追加しました。
ルイ・マットハイセン

@LouisMatthijssenキーをリモートサーバーにコピーしました。authorized_keysに公開キーが追加されたことを確認するにはどうすればよいですか。
アマン

2

リモートサーバーにインストールするための電子メールで公開キーが送信された場合:

1)サーバーにSSHで接続します。WindowsでPuTTYを使用しました。

2)キーをセットアップします。

mkdir ~/.ssh
chmod 700 ~/.ssh
vi ~/.ssh/authorized_keys

キーを正確にコピーして、エディターウィンドウの新しい行に貼り付けてください。1行に収まっていることを確認して保存します。

chmod 600 ~/.ssh/authorized_keys

2

私には十分な評判がないので、これをここに追加します。あなたがまだ作成したユーザーとしてsshを介してログインできない場合のLouis Matthijssenの答えに加えて、

ssh username@host

これは、/ home / username / .sshフォルダーに追加する必要がある所有者のアクセス許可がないためです。私は同じ問題を抱えていて、この許可を次のように与えることができます:

chown -R username:username /home/username/.ssh

これはおそらく、ディレクトリを作成し、パーミッションをrootとして設定していたが、サーバーにアクセスするユーザー名としてではなく、単に発生した可能性があります。

これが誰かを助けることを願っています。


0

試してみる

 touch $HOME/.ssh/authorized_keys

そのユーザーの権限で空のファイルを作成します。

このファイルは、そのユーザーが最初にリモートホストにアクセスしたときに作成されます。


0

でキーを作成するときにssh-keygenファイル名を指定すると、これも失敗します。名前を入力すると、フォルダの代わりにmy-ssh-file-nameキー/Users/MyUserName.ssh書き込まれました。ファイル名を空白のままにすると.ssh、期待どおりに書き込みます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.