пт, 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

Ответить