LINUX.ORG.RU

Не проходит авторизация vsftpd

 ,


0

1

Вот такой конфиг:

anonymous_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO

local_enable=YES
write_enable=YES
#local_umask=022

#chown_uploads=YES
#chown_username=whoever

chroot_local_user=YES
user_sub_token=$USER
local_root=/home/$USER/ftp
userlist_enable=NO
userlist_file=/etc/vsftpd.users
userlist_deny=NO

#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd.chroot_list
pam_service_name=vsftpd



dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
#ls_recurse_enable=YES
listen=YES
#listen_ipv6=YES
#xferlog_file=/var/log/vsftpd.log
#xferlog_std_format=YES
#idle_session_timeout=600
#data_connection_timeout=120
#nopriv_user=ftpsecure
#async_abor_enable=YES
#ascii_upload_enable=YES
#ascii_download_enable=YES
#ftpd_banner=Welcome to blah FTP service.
#deny_email_enable=YES
#banned_email_file=/etc/vsftpd.banned_emails

Если включить анона, то по нему заходит.

Ответ на: комментарий от ia666

vsftpd.log:

Fri May 24 14:29:09 2019 [pid 1] [kaya613] FAIL LOGIN: Client "192.168.0.108"
Fri May 24 14:29:10 2019 [pid 1] [kaya613] FAIL LOGIN: Client "192.168.0.108"
Fri May 24 14:36:17 2019 [pid 2] CONNECT: Client "192.168.0.108"
Fri May 24 14:36:17 2019 [pid 1] [ftpt] FAIL LOGIN: Client "192.168.0.108"
Fri May 24 14:39:08 2019 [pid 2] CONNECT: Client "192.168.0.108"
Fri May 24 14:39:09 2019 [pid 1] [ftpt] FAIL LOGIN: Client "192.168.0.108"
Fri May 24 14:45:26 2019 [pid 2] CONNECT: Client "192.168.0.108"
Fri May 24 14:45:26 2019 [pid 1] [ftpt] FAIL LOGIN: Client "192.168.0.108"
Fri May 24 14:46:10 2019 [pid 1] [ftpt] FAIL LOGIN: Client "192.168.0.108"
Fri May 24 14:46:12 2019 [pid 1] [ftpt] FAIL LOGIN: Client "192.168.0.108"
Fri May 24 15:00:34 2019 [pid 2] CONNECT: Client "192.168.0.108"
Fri May 24 15:00:35 2019 [pid 1] [ftpt] FAIL LOGIN: Client "192.168.0.108"
Fri May 24 15:01:46 2019 [pid 2] CONNECT: Client "192.168.0.108"
Fri May 24 15:01:46 2019 [pid 1] [ftpt] FAIL LOGIN: Client "192.168.0.108"
Fri May 24 15:01:48 2019 [pid 1] [ftpt] FAIL LOGIN: Client "192.168.0.108"
Fri May 24 15:03:31 2019 [pid 1] [ftpt] FAIL LOGIN: Client "192.168.0.108"
Fri May 24 15:11:29 2019 [pid 2] CONNECT: Client "192.168.0.108"
Fri May 24 15:11:31 2019 [pid 1] [sayakuja] FAIL LOGIN: Client "192.168.0.108"
Fri May 24 15:13:30 2019 [pid 1] [sayakuja] FAIL LOGIN: Client "192.168.0.108"
Fri May 24 15:13:32 2019 [pid 1] [sayakuja] FAIL LOGIN: Client "192.168.0.108"
Fri May 24 15:14:47 2019 [pid 2] CONNECT: Client "192.168.0.108"
Fri May 24 15:14:48 2019 [pid 1] [sayakuja] FAIL LOGIN: Client "192.168.0.108"
Fri May 24 15:14:50 2019 [pid 1] [sayakuja] FAIL LOGIN: Client "192.168.0.108"
Fri May 24 15:16:37 2019 [pid 2] CONNECT: Client "192.168.0.108"
Fri May 24 15:16:38 2019 [pid 1] [sayakuja] FAIL LOGIN: Client "192.168.0.108"
Fri May 24 15:20:35 2019 [pid 2] CONNECT: Client "192.168.0.108"
Fri May 24 15:20:35 2019 [pid 1] [sayakuja] FAIL LOGIN: Client "192.168.0.108"
Fri May 24 21:38:42 2019 [pid 2] CONNECT: Client "192.168.0.108"
Fri May 24 21:38:42 2019 [pid 1] [anonymous] FAIL LOGIN: Client "192.168.0.108"
Sat May 25 20:08:49 2019 [pid 2] CONNECT: Client "192.168.0.108"
Sat May 25 20:08:49 2019 [pid 1] [kaya613] OK LOGIN: Client "192.168.0.108"
Sat May 25 20:08:51 2019 [pid 2] CONNECT: Client "192.168.0.108"
Sat May 25 20:08:53 2019 [pid 1] [kaya613] OK LOGIN: Client "192.168.0.108"
Sat May 25 20:08:54 2019 [pid 2] CONNECT: Client "192.168.0.108"
Sat May 25 20:08:55 2019 [pid 1] [kaya613] OK LOGIN: Client "192.168.0.108"
Sat May 25 20:08:56 2019 [pid 2] CONNECT: Client "192.168.0.108"
Sat May 25 20:18:52 2019 [pid 2] CONNECT: Client "192.168.0.108"
Sat May 25 20:18:52 2019 [pid 1] [sayakuja] FAIL LOGIN: Client "192.168.0.108"
Sat May 25 20:19:03 2019 [pid 1] [sayakuja] FAIL LOGIN: Client "192.168.0.108"
Sat May 25 20:19:46 2019 [pid 1] [sayakuja] FAIL LOGIN: Client "192.168.0.108"
Sat May 25 20:19:58 2019 [pid 2] CONNECT: Client "192.168.0.108"
Sat May 25 20:20:12 2019 [pid 1] [sayakuja] FAIL LOGIN: Client "192.168.0.108"
Sat May 25 20:23:26 2019 [pid 2] CONNECT: Client "192.168.0.108"
Sat May 25 20:23:26 2019 [pid 1] [sayakuja] OK LOGIN: Client "192.168.0.108"
Sat May 25 20:23:28 2019 [pid 2] CONNECT: Client "192.168.0.108"
Sat May 25 20:23:29 2019 [pid 1] [sayakuja] OK LOGIN: Client "192.168.0.108"
Sat May 25 20:23:29 2019 [pid 2] CONNECT: Client "192.168.0.108"
Sat May 25 20:23:53 2019 [pid 1] [sayakuja] FAIL LOGIN: Client "192.168.0.108"
Sat May 25 20:23:57 2019 [pid 1] [sayakuja] FAIL LOGIN: Client "192.168.0.108"

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

Если в /etc/pam.d/vsftpd такое содержимое, то при попытке подключения ошибка «В соединении отказано»:

#%PAM-1.0
session    optional     pam_keyinit.so    force revoke
auth       required     pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
#auth       required     pam_shells.so
auth       include      password-auth
account    include      password-auth
session    required     pam_loginuid.so
session    include      password-auth

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

Либо я дурак, либо дурят.
Я чего то не пониманю, сначала выдаешь

pam_service_name=vsftpd

Потом пишешь, что такого модуля у тебя в pam.d нету, потом даешь листинг модуля с пометкой «если». А в обычном состоянии там что?

Ты же хочешь логиниться под локальными пользователями?
У пользователя задан правильный shell?
Папка, куда пользователя будет кидать по умолчанию, создана, права прописаны правильно?

Попробуй исключить pam, поменяв pam_service_name. Если зайдет - надо копать pam модуль
Попробуй включить более детальный лог, чтобы узнать где именно идет отказ в авторизации

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

Просто я по ходу дела добавил pam модуль. Права на папку одного пользователя:
drwxr-xr-x 2 kaya613 users 4096 мая 24 17:21 ftp
Второго:
dr-------- 3 sayakuja users 4096 мая 24 18:11 ftp
В большинстве случаев тесчу первым, а у второго такие права, т.к. на форумах говорили, что из-за прав на запись может не пускать [это конечно нужно как-то иначе исправлять, но если дажет так не пускает, то проблема пока не в этом].

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

Бит на исполнение надо ставить на папку, иначе пользователя туда не пустит тупо. Чтение дает право только на получение списка файлов в папке

dr--------

говорит о том, что пользователю обрубят доступ к папке, а я не помню как у vsftpd оно отыграется.
Тестируй пока на первом пользователе, pam_service_name поменяй на то, что точно даст добро кому угодно, можешь попробовать указать несуществующий, только после теста не забудь вырубить фтп

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

Если вам не нужен /etc/vsftpd/ftpusers, то закомментируйте в pam эту строку.

В большинстве случаев тесчу первым

И при этом в ″journalctl″ нет сообщения ″authentication failure″ для пользователя ″kaya613″?

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

Ты же хочешь логиниться под локальными пользователями?

да

У пользователя задан правильный shell?

kaya613- zsh
sayakuja- bash

Попробуй включить более детальный лог, чтобы узнать где именно идет отказ в авторизации

Как?

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

Закомментировал pam в конфиге vsftpd и выставил права на папку:
dr-x------ 2 kaya613 users 4096 мая 24 17:21 ftp
Выдача journalctl:
vsftpd[4919]: pam_warn(ftp:auth): function=[pam_sm_authenticate] flags=0 service=[ftp] terminal=[ftp] user=[kaya613] ruser=[kaya613] rhost=[192.168.0.108]

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

Закомментировал pam в конфиге vsftpd

Ну было, что vsftp использовал /etc/pam.d/vsftp, теперь, после вашего комментировани, он пытается использовать /etc/pam.d/ftp (или other). Теперь в этом топике ещё меньше информации о настройках, будем ждать бабу Вангу.

P.S. Как я понимаю, исходно у вас не было /etc/pam.d/vsftp, в его откуда-то скопировали, но /etc/pam.d/password-auth у вас нет и include не работает ?

P.P.S. Какой дистрибутив?

mky ★★★★★ ()
Последнее исправление: mky (всего исправлений: 1)
Ответ на: комментарий от mky

Да, файл был где-то взят.
Дистр: arch for arm, но так-же были попытки настройки vsftpd на arch и mint, ничего не получалось, даже при чистом копировании конфига с гайдов.

kaya613:~/ $ cat /etc/vsftpd.conf                                                                                                                                                   [21:18:28]
anonymous_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO

local_enable=YES
write_enable=YES
#local_umask=022

#chown_uploads=YES
#chown_username=whoever

chroot_local_user=YES
user_sub_token=$USER
local_root=/home/$USER/ftp
userlist_enable=NO
userlist_file=/etc/vsftpd.users
userlist_deny=NO

#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd.chroot_list
#pam_service_name=vsftpd



dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
#ls_recurse_enable=YES
listen=YES
#listen_ipv6=YES
#xferlog_file=/var/log/vsftpd.log
#xferlog_std_format=YES
#idle_session_timeout=600
#data_connection_timeout=120
#nopriv_user=ftpsecure
#async_abor_enable=YES
#ascii_upload_enable=YES
#ascii_download_enable=YES
#ftpd_banner=Welcome to blah FTP service.
#deny_email_enable=YES
#banned_email_file=/etc/vsftpd.banned_emails
kaya613:~/ $                                                                                                                                                                        [21:18:45]
kaya613:~/ $                                                                                                                                                                        [21:18:51]
kaya613:~/ $ cat /etc/pam.d/vsftpd                                                                                                                                                  [21:18:51]
#%PAM-1.0
session    optional     pam_keyinit.so    force revoke
#auth       required     pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
#auth       required     pam_shells.so
auth       include      password-auth
account    include      password-auth
session    required     pam_loginuid.so
session    include      password-auth
kaya613:~/ $                                                                                                                                                                        [21:19:07]
kaya613:~/ $                                                                                                                                                                        [21:19:12]
kaya613:~/ $ ls /etc/pam.d                                                                                                                                                          [21:19:12]
chage  chgpasswd  chsh   cups      groupdel   groupmod  newusers  passwd    rlogin  runuser    screen  sshd  sudo  system-auth   system-local-login  system-remote-login  useradd  usermod
chfn   chpasswd   crond  groupadd  groupmems  login     other     polkit-1  rsh     runuser-l  shadow  su    su-l  systemd-user  system-login        system-services      userdel  vsftpd

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

Так, очень загадочные обстоятельства, лучше всё по порядку:
-установил рабочий pam модуль
-перезагрузил всё
-зашёл на ftp(первый пользователь, прав на запись в папку нет)
-выдал права на запись
-всё работает
-перезахожу на ftp, не пускает
-убрал права на запись
-при добавлении ftp в nemo добавляется пункт, но сам не открывается
-открываю сам, выдаёт «Адрес не является папкой»
-захожу во второго пользователя, не имеющего прав на запись в ftp
-спокойно зашёл

Что тут не так? Journalctl при этом молчит.

stripwire ()