RSAキーをauthorized_keysファイルに追加するにはどうすればよいですか?


93

RSA公開鍵を作成し、それをauthorized_keysファイルに追加したいのですが、Ubuntu11.10マシンにそのようなファイルがありません。

キーをに追加するにはどうすればよいauthorized_keysですか?

回答:


110

Michael Krelinのソリューションを実行するときは、次のことを確認してください。

cat <your_public_key_file> >> ~/.ssh/authorized_keys

二重の>ない二重>は、authorized_keysの既存の内容が上書きされる(裸になる!)ことに注意してください。これは望ましくない場合があります。


公開鍵情報を適切にキャットする方法を含める必要があります。単にコピーして貼り付けるだけでは機能しません。例:
einarc 2016

4
コピー/貼り付けが機能しない理由を説明できますか?私は心から興味があります。
mcsilvio

systemdを実行してsshサービスを再起動する場合、または新しいキーsudo systemctl restart sshdを吸い上げて機能しない場合は、覚えておいてください
Kes

52
mkdir -p ~/.ssh/

authorized_keysを上書きするには

cat your_key > ~/.ssh/authorized_keys

authorized_keysの末尾に追加するには

cat your_key >> ~/.ssh/authorized_keys

クライアント側でキーを生成し、そのキーをサーバーマシンにコピーしましたが、ssh192.168.2.7コマンドを使用するとログインできません。
Raji AC

何を言ってログインを許可しませんか?
MichaelKrelin-ハッカー2012年

このコマンドを実行すると、server.iのパスワードを要求されます。パスワードなしのログインが必要です
Raji AC

リモートの〜/ .ssh / authorized_keysにID(パブ部分)がありますか?ログインしようとしたときにsshがid(pub以外の部分)を使用しますか?で明示的に指定してみてください-i。また、ssh -vリモートでauthorized_keysの権限を試して確認することもできます。そして、そこでログを確認してください。
MichaelKrelin-ハッカー2012年

キーがすでに追加されているかどうかをどうにかして確認できますか?リモートシステムのssh-copy-idによって行われるように
Dmitriusan 2015

33

返信が遅すぎることはわかっていますが、これが必要な人は、ローカルマシンから次のコマンドを実行してください。

cat ~/.ssh/id_rsa.pub | ssh user@192.168.1.1 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

これは完全にうまく機能しました。あなたがする必要があるのはただ交換することです

user@192.168.1.1

その特定のホストのためにあなた自身のユーザーと


33

sshスイートには、これを自動的に行うコマンドがすでにあります。つまり、リモートホストにログインし、そのコンピューターのauthorized_keysファイルに公開鍵を追加します。

ssh-copy-id -i /path/to/key/file user@host.com

インストールするキーがである場合は~/.ssh/id_rsa-iフラグを完全に削除することもできます。

手動で行うよりもはるかに優れています!


2
>ssh user@serverip -p portnumber 
>sudo bash (if user does not have bash shell else skip this line)
>cd /home/user/.ssh
>echo ssh_rsa...this is the key >> authorized_keys
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.