この行は私のサーバーに存在しますが、/etc/ssh/ssd_config
RSAAuthentication yes
PubkeyAuthentication yes
認証に使用される秘密鍵を明示的に提供して上記のサーバーにログインしようとすると、パスワードの入力を求められます。
$ ssh -i ~/Desktop/some_id_rsa myusername@server-hostname
myusername@server-hostname's password:
答え1
権限を変更してくださいauthorized_keys
chmod 600 ~/.ssh/authorized_keys
答え2
authorized_keys
すべてのキーを削除してキーをバックアップしたら、次の手順に従ってください。
1. クライアントからキーを生成します。
ssh-keygen -t rsa -b 4096
2. 公開鍵をリモートデバイスにコピーします。
2.A.使用ssh-copy-id
(最良の選択)
ssh-copy-id <user>@<remote-host>
2.B.セキュリティレプリケーションの使用(リモートCentOSホストに推奨)
- B.1.まず、リモートユーザーとのSSH接続を確立します。
ssh <user>@<remote-host> -p <port>
- B.2.次に、
~/.ssh
ディレクトリとauthorized_keys
ファイルを作成します。
mkdir -vp ~/.ssh
touch ~/.ssh/authorized_keys
- B.3。
chmod
ファイル権限を変更するには、次のコマンドを使用します。
sudo chmod -v 700 ~/.ssh
sudo chmod -v 600 ~/.ssh/authorized_keys
- B.4。次のように入力して、
id_rsa.pub
コンテンツ(SSH公開鍵)をauthorized_keys
リモートサーバーに以前に作成されたファイルにコピーします。
scp ~/.ssh/id_rsa.pub -P <port> <user>@<remote-host>:~/.ssh/authorized_keys
メモ:
ディレクトリ$HOME
と.ssh
ファイルがauthorized_keys
クライアントで正しい権限を持っていることを確認してください。
sudo chmod -v 700 ~
sudo chmod -v 700 ~/.ssh
sudo chmod -v 600 ~/.ssh/authorized_keys
chmod 700
ファイルを実行可能にするchmod 600
ユーザーがファイルを読み書きできるようにします。