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
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
回答:
bash: /home/user/.ssh/authorized_keys: No such file or directory
パスの要素が/home/user/.ssh/存在しません。シェル(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最初にコマンドを実行した場所です。
最初にsshキーを作成するユーザーとしてログインしていることを確認してください(またはコマンドのパスを正しいホームディレクトリに変更する準備をしてください)。
次に、ディレクトリを作成します。
mkdir ~/.ssh
cat上記のコマンドを使用してファイルを作成します。次に、権限を正しく設定することを忘れないでください。
chmod 400 ~/.ssh/authorized_keys
.sshディレクトリにも適切な権限があることを確認することをお勧めします。
chmod 700 ~/.ssh
可能であれば、コマンドラインツールを使用することを常に勧めています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接続を共有できません。
これは、でキーを作成するときssh-keygenに、ファイル名を指定した場合にも失敗する可能性があります。名前を入力すると、フォルダではなくにmy-ssh-file-nameキー/Users/MyUserNameが.ssh書き込まれました。ファイル名を空白のままにすると.ssh、期待どおりに書き込まれます。
-f ~/.ssh/custom-key-name