Debianを実行しているvpsがあり、sshを介してrootとしてアクセスできます。 SSHアクセスを許可するようにユーザーアカウントを設定したいと思います。私はrootとしてログインし、ユーザーを作成しました。
useradd -m user
ユーザー用に生成されたパスワード:
passwd user
そして、このユーザーを/etc/ssh/sshd_configファイルに追加します。
AllowUsers user
その後、ローカルコンピュータでキーを作成しました。
ssh-keygen -t rsa -b 4096 -C "user"
vpsで/home/user/.ssh/authorized_keysファイルを作成しました。
公開鍵に貼り付けます。
ただし、次のユーザーとしてログインできません。
$ ssh user@vpshost
user@vpshost: Permission denied (publickey).
$
私は何が間違っていましたか?ある場所ではSSHサービスを再起動する必要があることを読んでいましたが(他の場所では必要ありません)、vpsへの唯一のアクセスはsshを介してのみ行われるため、sshでsshを再起動できないことを読んでいました。 )、それが問題なのかと思います。
提案?
答え1
一般的な問題は、サーバーまたはクライアントの.sshフォルダにある無効なファイル権限です。公開鍵をサーバーにコピーする最も安全な方法は、ssh-copy-id コマンドを使用することです。これにより、Authorized_keysファイルに適切な権限が設定されます(正確に覚えている場合は600または640)。
詳細レベルを上げることもできます。
ssh -vvvユーザー@vpshost