さて、公開鍵を使用してSSH経由でログインするためのログインを設定しようとしています。
まず、puttygenを使用してパスワードを使用してrsa-ssh2公開鍵を生成しました。指示に従ってキーを生成しました。パテ独自のファイルに秘密鍵を保存し、パテジェンも公開鍵を生成しました。
Puttyは秘密鍵ファイルを使用し、rsa-ssh2などを有効にしました。
だから私はputtygenのhoutput ssh2公開鍵コンテンツをc / pしてサーバーに入れました。
username/.ssh/authorized_keys
私はパテでログインしようとしましたが、まずパスワードを求めるのではなく、ユーザー名を求めるメッセージが表示されました。その後、入力したとき(ユーザー名とパスワードを試しましたが)、私の公開鍵が無効であることが示されました。
おそらく私は何とかc / p'dしたか、情報をAuthorized_keysで誤ってフォーマットしたかもしれないと思って戻ってもう一度確認しました。私はそれがすべて一行にあるか、適切な間隔を置いているかなどを確認します。
また、次のファイルを確認しましたが、/etc/ssh/ssh_config
次の内容があります。
IdentityFile ~/.ssh/id_rsa
Authorized_keysファイルの名前をid_rsaに変更しようとしましたが、面白くありませんでした。
ssh_configでその行を次のように変更してみました。
IdentityFile ~/.ssh/authorized_keys
…喜びはありません。
私の公開鍵の形式が正しくないか、PuTTYが正しく構成されていない可能性があると思われたので、友人にサーバーに一時アカウントを作成し、公開鍵を追加するように依頼してからPuTTYを介してログインできました。 ..彼のサーバーに接続すると、キーのパスワードを求めるメッセージが表示され、問題なくログインします。
それで彼は私に上記のものを見るように提案しましたが、彼は何を確認するのかわかりませんでした。ここに専門家を引き付けるようです:P
アイデア?
答え1
権限を確認してください。 OpenSSH は、ユーザーのホームディレクトリ ~/.ssh または ~/.ssh/authorized_keys が誰でも書き込み可能な場合、公開鍵認証を許可しません。また、~/.ssh および ~/.ssh/authorized_keys もグループの書き込みはできません。 IdentityFile をデフォルト値のままにします。サーバー側とは何の関係もありません。これは、UNIX / LinuxのSSHクライアントが使用するデフォルトの秘密鍵ファイルを指します。 ssh_config は、OpenSSH sshd サーバーではなく ssh クライアントでのみ使用されます。 Authorized_keysの内容は、次のようにログインが承認された各公開鍵に対して1行でなければなりません。
ssh-rsa AAA.../Us=私の公開鍵の説明
ここで...はBase64文字の束です([a-zA-Z/+=]
)。 PuTTYGenは、PuTTYとOpenSSH互換の2種類のキーを生成できます。 OpenSSH互換は、上記の形式で1つの長い行です。 PuTTY形式の場合は、PuTTYGenに再インポートしてOpenSSHとして保存できます。
答え2
結局のところ、ssh-keygenを使用して私のサーバーから公開/秘密鍵を生成し、秘密鍵をputtygenにインポートしてパテ用の.ppkファイルとして保存しました。
それでも何が問題なのかはわかりませんが、puttygenによって生成された公開および/または秘密鍵に関連しているようです... :/
編集する:
ああああ、見つけました!これは、私のサーバーが2048ビットキーを必要とし、Puttygenを使用して1024ビットキーを生成するためです。