SFTP Chroot 書き込み chrooted /

SFTP Chroot 書き込み chrooted /

おい

chroot されたユーザーで / に書き込みたいのですが、できません。

例: /home/sftponly/ChrootDirectoryとして

内部にはこのユーザーに対する権限を持つ別のディレクトリが必要です。そうでないと接続できません。

接続するユーザーにはサブディレクトリが表示されませんが、書き込み可能にしたいです。何が間違っているのか、何かアドバイスはありますか?

私のsshd_config

Match User sftponly
  ChrootDirectory /home/sftponly
  ForceCommand internal-sftp
  AllowTcpForwarding no
  X11Forwarding no

答え1

私の理解が正しければ、ユーザーが chroot されている間にホーム ディレクトリに書き込めるようにしたいということですね。

chroot を有効にして sftp を使用して接続すると、次のようになります。

  • ユーザーはメインの「chroot」ディレクトリにchrootされます(ここでは、/home/sftponly
    • メイン chroot は root が所有し、ユーザーに対して読み取り専用である必要があります。
  • ユーザーはchrootされるまた/etc/passwdメイン chroot から開始する場合の説明に従って、ホーム ディレクトリに移動します。これホームディレクトリはユーザーが書き込み可能です。

したがって、/etc/passwd に次のような行がある場合:

sftponly:x:1002:1002:,,,:/home/sftponly:/bin/bash

sshd はユーザーを に chroot しようとします/home/sftponly/home/sftponly

だからもしあなたが絶対に必要この正確なパスに chroot するには、/home/sftponlyメインの chroot をsshd_config次のように設定する必要があります/home

ChrootDirectory /home

次にホームディレクトリを設定しますsftpのみ/etc/passwdの中へ/sftponly

sftponly:x:1002:1002::/sftponly:/bin/bash

その後、/home/sftponlysftponly ユーザーが書き込み可能になります。問題ありません。

関連情報