LinuxForum.Fans
Тема

Proftpd и виртуальные пользователи без MySQL

Автор: intervision 6 сообщений 5645 просмотров
#253533

имеется proftp, в качестве пользователей юзаются виртуальные которые записаны в его файлик
ftpd.passwd

в конфиге соответственно прописано

text
DefaultRoot /home/ftp
AuthUserFile /etc/proftpd/ftpd.passw
AuthGroupFile /etc/proftpd/ftpd.group

пароли генерятся скриптом который в файлик выдает нечто подобное

text
# cat /etc/proftpd/ftpd.passwd
1234:$1$A9Sq5PAQ$crsbbc9lMxACw2YDMD6y41:106:65534::/usr/ftp:/bin/false
test:$1$mhmCeqDI$77g2s7TCUf.drQmV8qsj6.:106:65534::/usr/ftp:/bin/false

сам скрипт таков:

text
#! /bin/bash
echo "enter login";
read user;
ftpasswd --passwd --file=/etc/proftpd/ftpd.passwd --name=$user --shell=/bin/false --home=/home/ftp --uid=107 --gid=65534;
ftpasswd --group --file=/etc/proftpd/ftpd.group --name=nogroup -m users --gid 65534;

где UID и GID от пользователя proftpd

то есть указывает логин, хэш пароля.. в качестве юзерИД юзается ИД ftpd юзера и его группа соответственно
но при заходе на сервак - говорит болт - логопасс не верен

полный конфиг proftpd

Показать
text
# cat /etc/proftpd/proftpd.conf
Include /etc/proftpd/modules.conf

UseIPv6 off IdentLookups off

ServerName "WebHost FTP" ServerType standalone ServerIdent off

DefaultServer on ShowSymlinks on

TimeoutNoTransfer 600 TimeoutStalled 600 TimeoutIdle 1200

DisplayChdir .message true ListOptions "-l"

DenyFilter \*.*/

Port 21 MaxInstances 175

User proftpd Group nogroup

Umask 022 022 AllowOverwrite on RequireValidShell no

TransferLog /var/log/proftpd/xferlog SystemLog /var/log/proftpd/proftpd.log # Здесь мы подкрутим формат лога - заведем ещё один лог-файл с "человеческим" форматом LogFormat custom "%t [pid %P] [%u] from ip: %a %m %f [transferred %b bytes for %T seconds]" ExtendedLog /var/log/proftpd/transfer.log read,write custom

# Modules

<IfModule mod_quotatab.c> QuotaEngine off </IfModule>

<IfModule mod_ratio.c> Ratios off </IfModule>

<IfModule mod_delay.c> DelayEngine on </IfModule>

<IfModule mod_ctrls.c> ControlsEngine off ControlsMaxClients 2 ControlsLog /var/log/proftpd/controls.log ControlsInterval 5 ControlsSocket /var/run/proftpd/proftpd.sock </IfModule>

<IfModule mod_ctrls_admin.c> AdminControlsEngine off </IfModule>

# Define Virtual users and their permissions

DefaultRoot /home/ftp AuthUserFile /etc/proftpd/ftpd.passwd AuthGroupFile /etc/proftpd/ftpd.group

<directory /home/ftp> <limit READ DIRS> Order allow,deny AllowGroup users DenyAll </limit> <limit WRITE> DenyAll </limit> </directory>

<directory /home/ftp/lord> <limit READ WRITE DIRS> Order allow,deny AllowUser lord DenyAll </limit> </directory>

<directory /home/ftp/upload> <limit READ WRITE DIRS> AllowAll </limit> </directory>

#<directory /usr/ftp/> # <limit WRITE> # Order allow,deny # AllowUser accountant # DenyAll # </limit> # <limit READ DIRS> # Order allow,deny # AllowUser accountant # AllowUser boss # DenyAll # </limit> #</directory>

#<directory /usr/ftp/office> # <limit WRITE> # Order allow,deny # AllowUser office # DenyAll # </limit> # <limit READ DIRS> # Order allow,deny # AllowUser office # AllowUser boss # DenyAll # </limit> #</directory>

Что собссно делать то?

#253548

НУ посмотри в лог файл на что ругаетса демон когда работает

#253569
kisil написал:
НУ посмотри в лог файл на что ругаетса демон когда работает

по-моему это очевидно если он не принимает логопасс то ругаться в логах будет на это:

text
мая 22 21:00:41 webhost proftpd[9884] 192.168.1.11 (192.168.0.1[192.168.0.1]): USER test: no such user found from 192.168.0.1 [192.168.0.1] to 192.168.1.11:21

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

#253670

Набери вот так

text

<Global>
DefaultRoot             /home/ftp
AuthUserFile            /etc/proftpd/ftpd.passwd
AuthGroupFile           /etc/proftpd/ftpd.group
</Global>

У меня настроенно на авторизацыю с базы, а конект к ней прописан так.

#253787
kisil написал:
Набери вот так
text

<Global>
DefaultRoot             /home/ftp
AuthUserFile            /etc/proftpd/ftpd.passwd
AuthGroupFile           /etc/proftpd/ftpd.group
</Global>

У меня настроенно на авторизацыю с базы, а конект к ней прописан так.

Спасибо огромное - то что надо!!!!!

#253806

Незачто. Пускай работает без сбоев.

Войдите или зарегистрируйтесь, чтобы ответить.