web-dev-qa-db-ja.com

SFTP接続に失敗しました

既存のApache所有ディレクトリのsftpにユーザーftpuserを設定したい/ var/www/webiste

それを新しいユーザーとして追加し、/ var/www/webisteをホームディレクトリにし、

useradd -md /var/www/website -s /bin/bash ftpuser

in sshd_config

Subsystem sftp internal-sftp

Match User ftpuser
    ChrootDirectory /var/www/website
    X11Forwarding no
    AllowTcpForwarding no
    ForceCommand internal-sftp

現在、ディレクトリはrootによって所有されており、www-dataユーザーに対するacl権限があります。

# ls -ltr
   drwxrwx---+  5 root     root     4096 Nov  8  2012 website

# getfacl website/
   # file: website/
   # owner: root
   # group: root
   user::rwx
   user:www-data:rwx
   group::rwx
   group:www-data:rwx

しかし、SFTPで接続しようとすると、次のデバッグエラーが発生します。

ftpuser@ftp_server's password: 
debug3: packet_send2: adding 32 (len 80 padlen 16 extra_pad 64)
debug2: we sent a password packet, wait for reply
debug1: Authentication succeeded (password).
Authenticated to ftp_server ([ftp_server]:22).
debug2: fd 4 setting O_NONBLOCK
debug3: fd 5 is O_NONBLOCK
debug1: channel 0: new [client-session]
debug3: ssh_session2_open: channel_new: 0
debug2: channel 0: send open
debug1: Requesting [email protected]
debug1: Entering interactive session.
debug1: channel 0: free: client-session, nchannels 1
debug3: channel 0: status: The following connections are open:
  #0 client-session (t3 r-1 i0/0 o0/0 fd 4/5 cc -1)

debug1: fd 0 clearing O_NONBLOCK
debug3: fd 1 is not O_NONBLOCK
Connection to 104.237.139.76 closed by remote Host.
Transferred: sent 2408, received 2020 bytes, in 0.0 seconds
Bytes per second: sent 627244.1, received 526176.5
debug1: Exit status -1
Couldn't read packet: Connection reset by peer

その問題をトラブルシューティングするためのアイデアはありますか?

編集:

from / var/log/authz

fatal: bad ownership or modes for chroot directory component "/var/www/"
1
MohammedSimba

_sshd_config_でChrootDirectoryオプションを使用するには、書かれたテキストの基本的な理解が必要です。

これは、sshd_config(5)のマニュアルページからのスナップショットです。

ChrootDirectory

認証後にchroot(2)へのディレクトリのパス名を指定します。 パス名のすべてのコンポーネントは、他のユーザーまたはグループが書き込みできないルート所有ディレクトリでなければなりません。 chrootの後、sshd(8)は作業ディレクトリをユーザーのホームディレクトリに変更します。

これはエラーログです。

_fatal: bad ownership or modes for chroot directory component "/var/www/"
_

そして、1つを追加すると、_/var/www/webiste_がルートによって所有されるだけでなく、_/var/www_および_/var_ディレクトリも所有する必要があることを理解できます。

1
Jakuje