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

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

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

bash: /home/user/.ssh/authorized_keys: No such file or directory

path 要素が/home/user/.ssh/存在しません。 shell()はコマンド()を実行する前にリダイレクト()を確認しますbash。存在する場合は、以下を試してください。>>cat/home/user

cat $HOME/.ssh/id_rsa.pub >> $HOME/test_this

これで次のようになります。

cat: /home/user/.ssh/id_rsa.pub: No such file or directory

ファイルが/home/user/.ssh/最初に存在しない場合、その場所には存在できないためです。

いくつかの指示に従いますが、いくつかのビットをスキップした可能性があります。ディレクトリを作成します。

mkdir $HOME/.ssh
chmod 700 $HOME/.ssh

しかし、id_rsa.pubそこにはないでしょう。ssh-keygen元のコマンドを実行した場所に配置されます。

答え2

SSHキーを作成したいユーザーとして最初にログインしていることを確認してください(または、コマンドでパスを正しいホームディレクトリに変更する準備をしてください)。

次にディレクトリを作成します。

mkdir ~/.ssh

cat上記のコマンドを使用してファイルを作成します。その後、権限を正しく設定することを忘れないでください。

chmod 400 ~/.ssh/authorized_keys

.sshディレクトリにも適切な権限があることを確認できます。

答え3

可能であれば、人々にコマンドラインツールを使用することを常に勧めますssh-copy-id

$ ssh-copy-id -h
Usage: /usr/bin/ssh-copy-id [-i [identity_file]] [user@]machine

デフォルトのSSH公開鍵をリモートサーバーにコピーするには、次のコマンドを実行します。

$ ssh-copy-id user@remoteserver

このQ&Aは、このツールの使用方法の実用的で完全な例を示しています。rsyncとSSH接続を共有できません

答え4

Createを使用しているときにキーのファイル名を指定しても、ssh-keygenこの操作は失敗する可能性があります。名前を入力しましたが、フォルダの代わりにmy-ssh-file-nameキーが記録されました。ファイル名を空白のままにすると、期待どおりに記録されます。/Users/MyUserName.ssh.ssh

関連情報