私は(Debian)Dreamhost VPSに取り組んでおり、パスワードベースの認証のみが必要なようです。RSAおよびDSA公開鍵を~/.ssh/authorized_keys
に追加しても、ログインにパスワードを要求する動作は変わりませんでした。
~/.ssh/authorized_keys
を受け付けるようにサーバーを設定するにはどうすればよいですか?
次のように/etc/ssh/sshd_config
を編集する必要があります。
# Both of these are probably already there, but commented
PubkeyAuthentication yes
# The next line makes sure that sshd will look in
# $HOME/.ssh/authorized_keys for public keys
AuthorizedKeysFile %h/.ssh/authorized_keys
さらに、パスワード認証を無効にするまとめたい場合(キーペアを使用する場合は通常、これは良い考えです)、次を追加します。
# Again, this rule is already there, but usually defaults to 'yes'
PasswordAuthentication no
その後、restart sshを発行して/etc/init.d/sshd restart
を発行すると、問題ありません。
上記は、あなたがすでに.ssh
ディレクトリを適切な権限で適切に作成していることを前提としています。
つまり、chmod 0700
を~/.ssh
に設定します。
手順は次のとおりです。1.公開鍵をサイトにアップロードし、〜/ .ssh/authorized_keysファイルに追加します。 2.承認済みのキーが0600(chmod 0600〜/ .ssh/authorized_keys)の属性を持っていることを確認します。3. PuTTYを使用している場合は、ページェントを実行して秘密鍵をロードし、sshを試みます。
また、ホームディレクトリの所有者と権限を確認してください。ホームディレクトリを所有している必要があり、許可は755以下である必要があります。
これらの設定は異常ですが、いつ発生するかを理解することは困難です。
パブキーは「authorized_keys2」に含まれます。2に注意してください。上記の他の誰かが投稿したように、必要に応じて「authorized_keys」ファイルを使用するようにsshd設定を調整できます。
これは、システム管理者がジャンプホストとして使用するサーバーでも問題を引き起こしていました。 /home/user[123]/authorized_keys
が存在し、そのpubキーを含める必要があるように、各ユーザーはローカルで作成する必要があることが指摘されました。このファイルは、user1:user1として変更する必要があります。
ssh-rsa ...insert pub key string... user1@local
〜/ .ssh/configをローカルホストでローカルに作成すると、接続が高速になり、便利なオプション、つまり「EscapeChar〜」を定義するのにも役立ちます
必要な場合とそうでない場合があります。chmod 0600 /user1/.ssh/authorized_keys
およびchmod 0700 /root/.ssh/
。最初にトラブルシューティングを試みたときは役に立ちませんでした。
/ etc/ssh/sshd_configを編集してコメントを外します:
AuthorizedKeysFile %h/.ssh/authorized_keys