From: Александр <firmord@front.ru> To: ALT Linux sysadmins' discussion <sysadmins@lists.altlinux.org> Subject: Re: [Sysadmins] vsftpd + pam-mysql auth problem Date: Tue, 25 Jan 2011 19:14:54 +0300 Message-ID: <4D3EF6FE.3060604@front.ru> (raw) In-Reply-To: <4D3AB39C.5090601@front.ru> 22.01.2011 13:38, Александр пишет: > попробую описать процесс: > имеем 530 ошибку - проблема в логине/пароле и/или правах. > проверяем пошагово. > mysql, БД vsftpd: > --- > CREATE TABLE IF NOT EXISTS `users` ( > `id` int(11) NOT NULL auto_increment, > `name` char(128) character set utf8 collate utf8_bin NOT NULL, > `passwd` char(128) character set utf8 collate utf8_bin NOT NULL, > PRIMARY KEY (`id`) > ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=8 ; > +таблица для логов, но в аутентификации она не участвует. опустим. > в БД ходит юзер vsftpd с паролем LRqwQ > --- > pam.d/vsftpd: > #%PAM-1.0 > session optional pam_keyinit.so force revoke > auth required /lib/security/pam_mysql.so user=vsftpd passwd=LRqwQ > host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=passwd > crypt=0 sqllog=1 logtable=logs logmsgcolumn=msg logusercolumn=user > logpidcolumn=pid loghostcolumn=host logrhostcolumn=rhost > logtimecolumn=logtime verbose=1 debug > > account required /lib/security/pam_mysql.so user=vsftpd passwd=LRqwQ > host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=passwd > crypt=0 sqllog=1 logtable=logs logmsgcolumn=msg logusercolumn=user > logpidcolumn=pid loghostcolumn=host logrhostcolumn=rhost > logtimecolumn=logtime verbose=1 debug > --- > заходим (пытаемся) на ФТП пользователем test с plain-text паролем 111 > логи mysql queries: > --- > 89 Connect vsftpd@localhost on vsftpd > 89 Init DB vsftpd > 89 Query SELECT passwd FROM users WHERE name = 'test' > 89 Query INSERT INTO logs (msg, user, host, rhost, pid, logtime) VALUES > ('AUTHENTICATION FALURE (FIRST_PASS)', 'test', '(unknown)', > '192.168.хх.хх', '1', NOW()) > --- > логи PAM secure: > --- > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - option verbose is set to "1" > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - option debug is set to "" > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - pam_mysql_close_db() called. > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - pam_sm_authenticate() called. > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - pam_mysql_open_db() called. > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - pam_mysql_open_db() > returning 0. > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - pam_mysql_check_passwd() > called. > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - pam_mysql_format_string() > called > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - pam_mysql_quick_escape() > called. > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - SELECT passwd FROM users > WHERE name = 'test' > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - pam_mysql_check_passwd() > returning 6. > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - pam_mysql_sql_log() called. > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - pam_mysql_format_string() > called > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - pam_mysql_quick_escape() > called. > Jan 22 11:49:33 nanoRED last message repeated 3 times > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - INSERT INTO logs (msg, user, > host, rhost, pid, logtime) VALUES ('AUTHENTICATION FALURE (FIRST_PASS)', > 'test', '(unknown)', '192.168.', '1', NOW()) > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - pam_mysql_sql_log() > returning 0. > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - pam_mysql_converse() called. > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - pam_sm_authenticate() > returning 3. > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - pam_mysql_release_ctx() called. > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - pam_mysql_destroy_ctx() called. > Jan 22 11:49:33 nanoRED vsftpd: pam_mysql - pam_mysql_close_db() called. > --- > проблем с соединением с БД нет, данные читаются. > пароль выбирается из таблицы. > верно-ли из логов не ясно, но если повторить запрос напрямую, выбирается > верно. > интересное сообщение тут: > http://forum.altlinux.org/index.php/topic,5038.msg71717.html#msg71717 > > что дальше попробовать? > --- > vftpd.log > --- > Sat Jan 22 11:49:33 2011 [pid 2] CONNECT: Client "192.168." > Sat Jan 22 11:49:33 2011 [pid 2] FTP response: Client "192.168.", "220 > (vsFTPd 2.2.1)" > Sat Jan 22 11:49:33 2011 [pid 2] FTP command: Client "192.168.", "USER > test" > Sat Jan 22 11:49:33 2011 [pid 2] [test] FTP response: Client > "192.168.88.253", "331 Please specify the password." > Sat Jan 22 11:49:33 2011 [pid 2] [test] FTP command: Client > "192.168.88.253", "PASS <password>" > Sat Jan 22 11:49:33 2011 [pid 1] [test] FAIL LOGIN: Client "192.168.88.253" > Sat Jan 22 11:49:34 2011 [pid 2] [test] FTP response: Client > "192.168.88.253", "530 Login incorrect." > Sat Jan 22 11:49:35 2011 [pid 2] FTP command: Client "192.168.", "QUIT" > Sat Jan 22 11:49:35 2011 [pid 2] FTP response: Client "192.168.", "221 > Goodbye." > --- > на папки /home/ftp и ниже даны права 777 для отладки > --- > vsftpd.conf: > --- > listen=YES > > #анонимам > anonymous_enable=NO > local_enable=YES > write_enable=YES > dirmessage_enable=YES > anon_mkdir_write_enable=YES > anon_upload_enable=YES > anon_other_write_enable=YES > > #логи > xferlog_enable=YES > log_ftp_protocol=YES > > connect_from_port_20=YES > nopriv_user=novsftpd > > #запираем юзеров в их папках > chroot_local_user=YES > > pam_service_name=vsftpd > > #говорим, что входящие - гости с именем ... > guest_enable=YES > guest_username=ftp_virtual > > secure_chroot_dir=/home/ftp > > #пользовательские конфиги > user_config_dir=/usr/local/etc/vsftpd/user_conf > > local_root=/home/ftp/$USER > user_sub_token=$USER > virtual_use_local_privs=YES > > --- > > > 21.01.2011 21:39, Александр пишет: >> разбираться будем с проблемой? >> имею мнение, что проблема с дистрибутивом ШС 5.0.2. >> если кто поопытней сможет проверить работоспособность связки >> vsftpd+pam-mysql буду оч благодарен. >> или как-то иначе, но надо решать. >> модуль pam-mysql - pam-mysql-0.7-alt10.RC1.i586.rpm >> >> >> 15.01.2011 17:26, Александр пишет: >>> Добрый день, >>> проблема состоит в невозможности аутентификации в vsftpd через pam-mysql >>> при хранении юзеров и паролей в БД. >>> как прийти к пониманию, на чём затык? >>> пароль не криптованные и криптованные не проходят. >>> в vsftpd.log >>> [login] fail login >>> >>> подобная тема уже была, но решения, я так понимаю, не нашли: >>> http://lists.altlinux.org/pipermail/sysadmins/2009-December/031524.html >>> проблема не в NSS. >>> >>> -- >>> С Уважением, Александр >> > Извиняюсь что ранее топ-квотинг использовал. одумался. узнавал у автора старого топика, годовалой давности, как он заборол проблему с авторизацией. ответ лаконичен - перешёл на FreeBSD. мне кажется, это не лучший выход для альт-линукса, когда с него слазят из-за проблем с авторизацией. может, кто-то может принять участие в локализации проблемы, поиске источника и устранении? переписка с самим-собой утомляет :) -- С Уважением, Александр
next prev parent reply other threads:[~2011-01-25 16:14 UTC|newest] Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top 2011-01-15 14:26 Александр 2011-01-21 18:39 ` Александр 2011-01-22 10:38 ` Александр 2011-01-25 16:14 ` Александр [this message] 2011-01-25 19:51 ` Afanasov Dmitry 2011-01-26 12:31 ` Afanasov Dmitry 2011-01-28 16:23 ` Александр 2011-01-28 19:04 ` Afanasov Dmitry 2011-01-28 23:36 ` Alexey Borisenkov
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=4D3EF6FE.3060604@front.ru \ --to=firmord@front.ru \ --cc=sysadmins@lists.altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux sysadmins discussion This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/sysadmins/0 sysadmins/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 sysadmins sysadmins/ http://lore.altlinux.org/sysadmins \ sysadmins@lists.altlinux.org sysadmins@lists.altlinux.ru sysadmins@lists.altlinux.com public-inbox-index sysadmins Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.sysadmins AGPL code for this site: git clone https://public-inbox.org/public-inbox.git