chmodは「認証拒否:無効な所有権またはモード」には役立ちません。

chmodは「認証拒否:無効な所有権またはモード」には役立ちません。

序文:私は宿題をしたと信じています。関連ファイルの所有権/モードを確認してみました。しかし、まだエラーが発生します。

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ファイルに正しくアクセスできないとします。

既存の問題

どちらも所有権/モードを正しく設定する必要があることを示唆しています。たとえば、次のようになります。

$ 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現在のコマンドを使用すると、サーバー側に存在しないユーザーを使用してサーバーにログインします。

おすすめ記事