ssh-copy-idにもかかわらず、sshにパスワードの入力を求めるメッセージが表示される

ssh-copy-idにもかかわらず、sshにパスワードの入力を求めるメッセージが表示される

私はリモートシェルを使用し、sshfsをインストールするためにしばらくリモートサーバーで公開鍵認証を使用してきました。 sshfsディレクトリを強制的にマウント解除した後、sshはパスワードを求めるメッセージを表示し始めました。ローカルコンピュータへの言及からリモート.ssh / authorized_keysを消去し、リモートコンピュータへのローカルコンピュータの参照を消去しました。その後、ssh-copy-idを繰り返すと、パスワードの入力を求められ、正常に返されます。ところで、リモートサーバーにSSH経由で接続しても、まだパスワードの入力を求められます。少し混乱し、問題が何であるかわかりません。提案はありますか?

答え1

sshdは、$ HOME、$ HOME / .ssh(両方のディレクトリ)、および$ HOME / .ssh / authorized_keysに対する権限に関して奇妙に機能します。

私のLinuxシステムの1つに私の$ HOMEディレクトリに対するdrwxrwxrwx権限がありました。 $ HOMEディレクトリ内の他のグループに対する「w」権限を削除しない限り、Arch Linuxボックスは公開キーを使用してログインしません。

$HOME と $HOME/.ssh/ をグループやその他のグループに対してさらに制限してみてください。これがsshdがそれをすることを許可しないことを確かめなさい。

答え2

次の権限が必要です。

  • フォルダ.ssh:700 (drwx------)
  • 公開鍵:644 (-rw-r--r--)
  • 秘密鍵:600 (-rw-------)

答え3

私も最近この問題に直面しました。

ディレクトリ権限を変更することで修正されました$HOME。しかし、単に走るだけではchmod g-w ~/問題は解決されません。これに加えて、次のコマンドを実行してディレクトリのchmod g-w ~/権限を変更する必要があります。others$HOMEchmod o-wx ~/

一緒に:

chmod g-w ~/
chmod o-wx ~/

必要かどうかはわからず、o-x予防レベルで実行しています。

答え4

権限が正しく設定されたら、SSHエージェントに秘密鍵を追加してみることができます。

  1. 起動していない場合は、ssh-agentを起動します。

    eval $(ssh-agent)
    
  2. 次のコマンドを使用して、SSH エージェントに秘密鍵を追加しますssh-add(id_rsa_key秘密鍵名に置き換えます).

    ssh-add ~/.ssh/id_rsa_key  
    
  3. sshリモートサーバーに接続してみてください。

関連情報