rsyncd.conf use chroot

(3) use chroot モジュールpathへchrootするかどうか。yes にするには rsyncデーモンは root で起動されなければならない(上記の転送ユーザ指定 uid, gid と混同するな)。

  • numeric ids ファイル転送の中でファイルやディレクトリのオーナー/グループを名前でなく数値表現のuid/gidのまま遣り取りする。rsyncクライアントとサーバとで存在するユーザ/グループとそれらのuid/gidが統一されていれば `numeric id=no' でも気にする必要はないのだが、そうでない場合、例えばクライアント側のhogeのuidが500でサーバ側では501という環境では、オーナーhogeのファイルがサーバ上へはuid=501となって格納されてしまう。`use chroot=no' の時の既定値はnoつまり名前ベースだが、`use chroot=yes'時は既定値が暗黙的にyesとなる。chroot環境でユーザ名解決をするには環境内に etc/passwd, group ファイルなどが要ることを忘れずに。chroot環境の整備については vsftpd の記事をご参考に。

https://straypenguin.winfield-net.com/rsync.html#rsyndconf

use chroot=yes だと numeric ids=yes

rsyncでバックアップするだけの接続を許可する - 遠い叫び

When both "use chroot" and "daemon chroot" are false, OR the inside-chroot path of "use chroot" is not "/", rsync will: (1) munge symlinks by default for security reasons

https://manpages.ubuntu.com/manpages/jammy/en/man5/rsyncd.conf.5.html

use chroot=no だと munge symlinks

foo -> bar changed to foo -> /rsyncd-munged/bar

3.02 bug? Symlink ->foo changed to ->/rsyncd-munged/foo

https://serverfault.com/questions/1110381/how-to-force-rscync-to-unmunge-symlinks