umask виртуальных пользователей в fly-admin-ftp

Truf

New member
Сообщения
15
#1
Поставил fly-admin-ftp, он потянул vsftpd. Тот создал юзера ftp и папку /srv/ftp.

Создал виртуального пользователя test. Дал ему все права, какие можно. В настройках включил гостевой доступ, доступ локальным пользователям, запись во все. Опция изменения владельца загружаемого файла отключена.

Итого - могу подключится вирт пользователем, могу создавать папки и загружать файлы в корень.

Но, если я создаю папку в корне,и загружаю что-то в нее - я этот файл потом не вижу.
Насколько я понял, проблема в том, что пользователь ftp, на которого map'пится виртуальный пользователь, имеет umask=077, а нужно 022 или типа того. Если поменять руками атрибуты на папке - все работает. Гостю нужны права категории other.

Пробовал поменять umask юзеру ftp с помощью
sudo chfn --other='umask=000' ftp
не помогает - все равно создает папки с 700.

При этом
$ sudo -u ftp bash
ftp@host:/home/me$ umask
говорит 0022

но виртуальный пользователь все равно создает папки с drwx------

есть идеи куда копать?
 

ZeV$

New member
Сообщения
21
#3
Хай ;)
Сам мучился с настройками долго и в итоге работает так, но сегодня выгрузка и загрузка из - в 1с глючит.

vsftpd.conf:
listen=yes
listen_ipv6=no
anonymous_enable=yes
dirmessage_enable=yes
use_localtime=yes
xferlog_enable=yes
connect_from_port_20=yes
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
userlist_file=/etc/vsftpd.d/allowed_user_list.conf
user_config_dir=/etc/vsftpd.d/users.d
anon_other_write_enable=yes
anon_upload_enable=yes
anon_mkdir_write_enable=yes
userlist_enable=yes
allow_writeable_chroot=yes
idle_session_timeout=99
no_anon_password=yes
ftpd_banner=Добро пожаловать на ftp сервер ООО "Рога и Копыта"
anon_root=/opt/HDD/ftp
chown_upload_mode=0777
chown_username=ftp
chown_uploads=yes
session_support=yes
anon_umask=0000
#local_umask=022
ls_recurse_enable=yes
guest_enable=yes
write_enable=yes
ascii_download_enable=yes
ascii_upload_enable=yes
 

Truf

New member
Сообщения
15
#4
local_umask=
пробовал, не помогло

Хай ;)
Сам мучился с настройками долго и в итоге работает так, но сегодня выгрузка и загрузка из - в 1с глючит.

vsftpd.conf:
...
anonymous_enable=yes
anon_other_write_enable=yes
anon_upload_enable=yes
anon_mkdir_write_enable=yes
anon_umask=0000
#local_umask=022
ls_recurse_enable=yes
guest_enable=yes
write_enable=yes
....
А вот anon_umask - помог! Не смотря на то, что у меня anonymous_enable=no.
Т.е. как я понял, виртуальные (они же guest) пользователи наследуют umask анонимных, даже если те отключены. Если только не врублен virtual_use_local_privs=YES , но вот его точно не надо включать - а то у меня юзер ftp весь корень диска начинает видеть, несмотря на chroot. Итого мой заработавший vsftpd.conf:

Код:
listen=no
listen_ipv6=yes
anonymous_enable=no
local_enable=yes
dirmessage_enable=yes
use_localtime=yes
xferlog_enable=yes
connect_from_port_20=yes
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
userlist_file=/etc/vsftpd.d/allowed_user_list.conf
user_config_dir=/etc/vsftpd.d/users.d
userlist_enable=yes
guest_enable=yes
idle_session_timeout=99
write_enable=yes
allow_writeable_chroot=yes
anon_umask=000