У меня есть три различных пользователя в Сервере Ubuntu 18.04.4:
ls -la /home
total 28
drwxr-xr-x 7 root root 4096 Mar 6 17:17 .
drwxr-xr-x 25 root root 4096 Mar 4 15:06 ..
drwxr-xr-x 2 Acap Acap 4096 Mar 6 17:17 Acap
drwxr-xr-x 5 administrator administrator 4096 Mar 6 17:08 administrator
drwxr-xr-x 2 Dgaiec Dgaiec 4096 Mar 6 17:25 Dgaiec
drwxr-xr-x 4 ipt ipt 4096 Feb 26 18:34 ipt
drwxr-xr-x 5 sivhappftp sivhappftp 4096 Mar 6 17:06 sivhappftp
Мой vsftpd.conf файл следующий:
~$ cat /etc/vsftpd.conf
listen=YES
#listen_ipv6=NO
connect_from_port_20=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
local_umask=022
user_sub_token=$USER
local_root=/home/$USER/sivh
allow_writeable_chroot=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
pasv_enable=YES
pasv_min_port=40000
pasv_max_port=45000
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO
vsftpd.userlist:
~$ cat /etc/vsftpd.userlist
sivhappftp
Dgaiec
Acap
Мой запрос следующий, как я добираюсь, чтобы позволить пользовательскому доступу Dgaiec и Acap sivhappftp chroot среда? Я не хочу, когда они входят в сервер, чтобы войти в их соответствующие chroots среды, но переместиться непосредственно в sivhappftp chroot по среде.
Мне удалось достигнуть того, в чем я нуждаюсь путем монтирования, что необходимый каталог с помощью - связывает параметр:
mkdir /home/ftp_user/sivh/
sudo mount --bind /home/sivhappftp/sivh/ftp_user/ /home/ftp_user/sivh/
После того, как этот каждый пользователь FTP сможет видеть необходимые файлы в своем корневом каталоге и использовать их в его клиенте ftp, как будто они были локальными файлами.
Сделанный этой конфигурацией, постоянной включая строку, для каждого, в/etc/fstab:
/home/sivhappftp/sivh/ftp_user/ /home/ftp_user/sivh/ none bind 0 0