回答:
最初に.sshディレクトリとauthorized_keysファイルを作成する必要があります。
.sshディレクトリを作成します。
mkdir ~/.ssh
適切な許可を設定します。
chmod 700 ~/.ssh
authorized_keysファイルを作成します。
touch ~/.ssh/authorized_keys
適切な許可を設定します。
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ファイルが作成されます。
catそれだけをしたくありません、それssh-copy-idが目的です。
私には十分な評判がないので、これをここに追加します。あなたがまだ作成したユーザーとしてsshを介してログインできない場合のLouis Matthijssenの答えに加えて、
ssh username@host
これは、/ home / username / .sshフォルダーに追加する必要がある所有者のアクセス許可がないためです。私は同じ問題を抱えていて、この許可を次のように与えることができます:
chown -R username:username /home/username/.ssh
これはおそらく、ディレクトリを作成し、パーミッションをrootとして設定していたが、サーバーにアクセスするユーザー名としてではなく、単に発生した可能性があります。
これが誰かを助けることを願っています。
でキーを作成するときにssh-keygenファイル名を指定すると、これも失敗します。名前を入力すると、フォルダの代わりにmy-ssh-file-nameキー/Users/MyUserNameが.ssh書き込まれました。ファイル名を空白のままにすると.ssh、期待どおりに書き込みます。
~/.ssh/authorized_keys自分のキーではなく、接続/信頼している他のコンピューターのキーです。