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ディレクトリにも適切な権限があることを確認することをお勧めします。
可能であれば、コマンドラインツール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
に書き込まれます。