ユーザー名/パスワードの代わりにキーファイルを使用してssh認証を設定しようとしています。クライアントはPuTTYを実行するWindowsボックスであり、サーバーはUbuntu 12.04 LTSサーバーです。
puttygen.exeをダウンロードして、キーペアを生成しました。で/etc/ssh/sshd_config
、私の行を持っています:
AuthorizedKeysFile %h/.ssh/authorized_keys
そして、私のクライアントの公開鍵ファイルには次のように書かれています:
---- BEGIN SSH2 PUBLIC KEY ----
Comment: "my@email.address.com"
ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAr3Qo6T5XU06ZigGOd3eKvfBhFLhg5kWv8lz6
qJ2G9XCbexlPQGanPhh+vcPkhor6+7OmB+WSdHeNO652kTofnauTKcTCbHjsT7cJ
GNrO8WVURRh4fabknUHPmauerWQZ6TgRPGaz0aucU+2C+DUo2SKVFDir1vb+4u83
AV1pKxs=my@email.address.com
---- END SSH2 PUBLIC KEY ----
「ssh-rsa AAA」から「my@email.address.com」に部品をコピー~/.ssh/authorized_keys
し、それをサーバー上のファイル(自分のホームフォルダー)に入れました。PuTTYの[接続]> [SSH]> [認証]で、クライアントで生成した秘密キーへのパスを入力し、セッション設定を保存しました。
でsshサーバーを再起動しました
sudo service ssh restart
プロファイルをPuTTYにロードし(秘密キーがまだ[接続]> [SSH]> [認証]にあり、パスが正しいことを確認した)、プロファイルを実行すると、
Server refused our key
ディレクトリの 下のファイルに公開鍵を入れてみました./ssh/authorized_keys/
が、それは役に立たなかったので./ssh/authorized_keys
、ファイルとして使用し、その中に鍵を貼り付けました。また、サーバーで秘密キーと公開キーのペアを生成し、公開キーを入力し./ssh/authorized_files
て、クライアントのPuTTYに秘密キーをロードしようとしました。サーバーを再起動しても解決しませんでした。
このエラーは、ユーザーのホームフォルダー以外の場所にキーを配置することで解決できることがわかりましたが、これはホームフォルダーが暗号化されている場合にのみ役立ちます。
また、おそらく1024は短すぎると考えて、4096ビットキーを生成しようとしました。
これを機能させるにはどうすればよいですか?ありがとう!
編集:
OK、/var/log/auth.log
言った:
sshd: Authentication refused: bad ownership or modes for directory /home/vorkbaard/.ssh
グーグルは、私~/.ssh/
は700歳で、~/.ssh/authorized_keys
600歳であるべきだと言っているので、そうしました。今/var/log/auth.log
言う:
sshd: error: key_read: uudecode AAAAB3N [etc etc etc until about 3/4 of my public key]
sshd: error: key_read: uudecode AAAAB3N
エラーはauth.log
どうなりましたか?