序文:私は宿題をしたと信じています。関連ファイルの所有権/モードを確認してみました。しかし、まだエラーが発生します。
GNU / LinuxでSFTPサーバーを起動しようとしています。という名前の新しいユーザーを作成、作成、sftp_server
入力し/home/sftp_server/.ssh
ました/home/sftp_server/.ssh/sshd_config
。
AuthorizedKeysFile /home/sftp_server/.ssh/authorized_keys
HostKey /home/sftp_server/.ssh/server_key
Subsystem sftp internal-sftp
PubkeyAuthentication yes
PasswordAuthentication no
ChallengeResponseAuthentication no
Port 2222
AddressFamily any
ListenAddress 0.0.0.0
ListenAddress ::
次に、クライアントの公開鍵を/home/sftp_server/.ssh/authorized_keys
。
私はサーバーを次のように実行しますsftp_server
:
sftp_server@system ~> /usr/bin/sshd -f /home/sftp_server/.ssh/sshd_config -D -d
そして正常に開始されます
debug1: sshd version OpenSSH_8.4, OpenSSL 1.1.1i 8 Dec 2020
…
Server listening on 0.0.0.0 port 2222.
しかし、クライアントはこのサーバーに接続しようとしています。
user@DESKTOP:~$ sftp -P 2222 192.168.0.102
失敗(サーバー側):
…
Authentication refused: bad ownership or modes for file /home/sftp_server/.ssh/authorized_keys
debug1: restore_uid: (unprivileged)
Failed publickey for user from 192.168.0.103 port 64450 ssh2: ED25519 SHA256:...
Connection closed by authenticating user user 192.168.0.103 port 64450 [preauth]
…
修正する:ログインしてもsftp_server
役に立ちません。
user@DESKTOP:~$ sftp -P 2222 [email protected]
同じエラーメッセージでサーバー側が失敗します。
これはサーバー側のメッセージなので、サーバーがauthorized_keys
ファイルに正しくアクセスできないとします。
既存の問題
- 公開鍵認証を使用してもSSHパスワードプロンプトが表示され続けるのはなぜですか?
- 認証が拒否されました:/var/git/.ssh/authorized_keysファイルの所有権またはモードが無効です。
どちらも所有権/モードを正しく設定する必要があることを示唆しています。たとえば、次のようになります。
$ sudo chmod 0700 /home/sftp_server/.ssh
$ sudo chmod 0600 /home/sftp_server/.ssh/authorized_keys
しかし、私はこれを適用しました。
[root@system user]# ls -al /home
…
drwxr-xr-x 7 sftp_server root 4096 Mar 24 15:07 sftp_server
…
[root@system user]# ls -al /home/sftp_server
drwxr-xr-x 7 sftp_server root 4096 Mar 24 15:07 .
drwxr-xr-x 6 root root 4096 Nov 17 2018 ..
…
drwx------ 2 sftp_server sftp_users 4096 Mar 24 14:53 .ssh
…
[root@system user]# ls -al /home/sftp_server/.ssh
…
drwx------ 2 sftp_server sftp_users 4096 Mar 24 14:53 .
drwxr-xr-x 7 sftp_server root 4096 Mar 24 15:07 ..
-rw------- 1 sftp_server sftp_users 162 Mar 24 14:15 authorized_keys
-rw-r--r-- 1 sftp_server sftp_users 410 Mar 24 14:53 sshd_config
…
私は考えています
drwxr-xr-x
【755】/home/sftp_server
drwx------
(700)/home/sftp_server/.ssh
-rw-------
(600)/home/sftp_server/.ssh/authorized_keys
これは正しいモードで、どちらもsftp_server
ファイル所有者として正しく設定されています。
これによりbad ownership or modes for file
エラーメッセージが表示され、混乱して不満を感じました。
助けやアドバイスをいただきありがとうございます。ありがとうございます!
答え1
sftp コマンドが無効です。次のようにする必要があります。
sftp -P 2222 [email protected]
user
現在のコマンドを使用すると、サーバー側に存在しないユーザーを使用してサーバーにログインします。