пт, 16 февр. 2024 г. в 09:14, Misha Ramendik <
m...@ramendik.eu>:
> Я хочу, чтобы в chroot /home/user исполнялось ls . Надо для древнючего netkit ftpd, который одному товарищу хочется, потому как совместимо с живущим у него старинным FTP клиентом - а vsftpd с ним отваливается постоянно. Оный netkit ftpd по команде ls выполняет /bin/ls на машине, соответственно, если он сделал chroot юзеру - то в chrooted environment и выполняет.
Была аналогичная задача про rsync и scp в chroot
Были положены следующие файлы:
lib64/ld-linux-x86-64.so.2
lib/x86_64-linux-gnu/libacl.so.1
lib/x86_64-linux-gnu/libattr.so.1
lib/x86_64-linux-gnu/libc.so.6
lib/x86_64-linux-gnu/libnsl.so.1
lib/x86_64-linux-gnu/
libnss_compat-2.19.so
lib/x86_64-linux-gnu/
libnss_files-2.19.so
lib/x86_64-linux-gnu/libpopt.so.0
usr/bin/rssh
usr/bin/rsync
usr/bin/scp
usr/lib/openssh/sftp-server
usr/lib/rssh/rssh_chroot_helper
Ну и на всякий случай:
# ldd usr/bin/scp
linux-vdso.so.1 (0x00007ffdd4deb000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fab20926000)
/lib64/ld-linux-x86-64.so.2 (0x00007fab20ee5000)
Также созданы девайсы в чрутовом dev: null zero
Ну и /dev/log прокидывался путём дополнительной строчки в конфиге rsyslog
Домашнее задание: узнать, кто такой ld-linux.so :-)
--
Stanislav