LINUX.ORG.RU

Загадочное поведение vsftpd

 , ,


1

1

Здравствуйте!

Прошу помочь разобраться с vsftpd.

Вводные следующие: VPS. Centos 7, vsftpd. Ставил по гайдам, которых перечитал множество. Конфиг лаконичный. selinux выключен, firewalld работает, порты нужные вроде открыты.

Структура следующая:

/var/www/domains/site1
/var/www/domains/site2
/var/www/domains/site3

Задача банальная, но… бьюсь третий день. Иметь группу пользователей(троих), у которой будет доступ в /var/www/domains но чтобы у user1 были права на подключение к …site1 и загрузку туда файлов по ftp У user2 к site2 и т.д.

Я создал группу (ftpgroup) и создал пользователей и они состоят группе. Вычитал немало про chmod и chown и перепробовал массу вариаций. Колдовал над /etc/shells и над домашними папками в /etc/passwd. Но магии не случилось. На мой взгляд все работает абсолютно алогично

chown -R :ftpgroup /var/www/domains и chmod -R 775 /var/www/domains не спасают. От разных вариаций настроек бывает разное. То ftp не пускает вообще. То не дает удалять файлы по ftp. То одного юзера пускает, второго нет. Причины остаются загадкой. Прошу помочь разобраться. Изгуглил уже все что можно.

Ответ на: пальцем в небо от Twissel

Спасибо. Прочел второй ответ, но эта опция у меня включена. Логи, которые /var/log/xferlog ?

Пока прикладываю /etc/vsftpd/vsftpd.conf

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/xferlog
xferlog_std_format=YES
chroot_local_user=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
pasv_min_port=40900
pasv_max_port=40999

также /etc/passwd в части ftp юзеров

ftp1:x:1001:1001::/var/www/domains:/bin/false
ftp2:x:1002:1001::/var/www/domains:/bin/false

и /etc/group

ftpgroup:x:1001:
omgconsole ()
Ответ на: комментарий от omgconsole

Да, этот файл. Для порядка.

Директиву

userlist_enable

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

userlist_file

Смотреть тут https://asplinux.net/node/71

Тему оформил нормально, FTP не rocket science, значит помогут)

Twissel ★★★★★ ()
Ответ на: комментарий от Twissel

/var/log/xferlog прилагаю

Mon Apr 13 13:25:16 2020 1 ::ffff:23.456.789.012 142 /domain.ru/index.html b _ o r ftp1 ftp 0 * c
Mon Apr 13 13:25:35 2020 1 ::ffff:23.456.789.012 142 /domain2.com/index.html b _ o r ftp1 ftp 0 * c
Mon Apr 13 13:25:46 2020 1 ::ffff:23.456.789.012 0 /domain2.com/index.html b _ i r ftp1 ftp 0 * i
Mon Apr 13 14:01:42 2020 1 ::ffff:23.456.789.012 0 /domain.ru/index.html b _ i r ftp1 ftp 0 * i
Mon Apr 13 14:07:36 2020 1 ::ffff:23.456.789.012 0 /domain.ru/index.html b _ i r ftp1 ftp 0 * i
Mon Apr 13 14:13:57 2020 1 ::ffff:23.456.789.012 0 /domain.ru/index.html b _ i r ftp2 ftp 0 * i
Mon Apr 13 14:16:17 2020 1 ::ffff:23.456.789.012 0 /domain.ru/index.html b _ i r ftp1 ftp 0 * i
Mon Apr 13 14:21:34 2020 1 ::ffff:23.456.789.012 142 /domain.ru/index.html b _ i r ftp1 ftp 0 * c
Mon Apr 13 14:53:24 2020 1 ::ffff:23.456.789.012 142 /domain.ru/index.html b _ o r ftp1 ftp 0 * c
Mon Apr 13 14:54:06 2020 1 ::ffff:23.456.789.012 0 /index.html b _ i r ftp1 ftp 0 * i
Mon Apr 13 14:59:08 2020 1 ::ffff:23.456.789.012 142 /www/domains/domain.ru/index.html b _ i r ftp1 ftp 0 * c
Mon Apr 13 15:01:21 2020 1 ::ffff:23.456.789.012 142 /www/domains/domain.ru/index.html b _ i r ftp1 ftp 0 * c
Mon Apr 13 15:01:50 2020 1 ::ffff:23.456.789.012 142 /www/domains/domain.ru/index.html b _ i r ftp1 ftp 0 * c
Mon Apr 13 15:14:03 2020 1 ::ffff:23.456.789.012 993 /html/1.txt b _ o r ftp1 ftp 0 * c
Mon Apr 13 15:14:06 2020 1 ::ffff:23.456.789.012 993 /html/1.txt b _ o r ftp1 ftp 0 * c
Mon Apr 13 15:14:23 2020 1 ::ffff:23.456.789.012 0 /domains/untitled_file b _ i r ftp1 ftp 0 * c
Mon Apr 13 15:26:41 2020 1 ::ffff:23.456.789.012 0 /domain.ru/index.html b _ i r ftp2 ftp 0 * i
Mon Apr 13 15:32:04 2020 1 ::ffff:23.456.789.012 0 /domain.ru/index.html b _ i r ftp2 ftp 0 * i
Mon Apr 13 15:35:11 2020 1 ::ffff:23.456.789.012 142 /domains/domain.ru/index.html b _ i r ftp1 ftp 0 * c
Mon Apr 13 15:54:40 2020 1 ::ffff:23.456.789.012 0 /domain.ru/index.html b _ i r ftp2 ftp 0 * i
Mon Apr 13 16:05:17 2020 1 ::ffff:23.456.789.012 142 /domains/domain.ru/index.html b _ i r ftp1 ftp 0 * c
Mon Apr 13 16:20:11 2020 1 ::ffff:23.456.789.012 0 /domain.ru/index.html b _ i r ftp1 ftp 0 * i
Mon Apr 13 16:20:49 2020 1 ::ffff:23.456.789.012 142 /domain.ru/index.html b _ i r ftp1 ftp 0 * c

Опцию юзерлиста выключил

omgconsole ()
Ответ на: комментарий от omgconsole

Ну теперь сделай systemctl restart vsftpd

И отпиши сюда, что пишет сам vsftpd при подключении клиентом.

Будем думать дальше)

Twissel ★★★★★ ()
Ответ на: комментарий от Twissel

Я не совсем понимаю, как на мои вопросы влияет опция

allow_writeable_chroot=YES

Но добавление ее в конфигурации сделало поведение более предсказуемым. При этом, например, если эту опцию удалить, то одного из двух юзеров перестает пускать по фтп. Не понимаю, как это может быть связано

omgconsole ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.