Proftpd - три вопроса..

Проблемы с установкой, настройкой и работой системных и сетевых программ.

Модераторы: GRooVE, alexco

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
vovs
проходил мимо
Сообщения: 6
Зарегистрирован: 2007-12-04 14:23:40
Откуда: Cherkassy
Контактная информация:

Proftpd - три вопроса..

Непрочитанное сообщение vovs » 2008-12-11 12:14:18

Вопрос такого плана:

Код: Выделить всё

/usr/storage/Incomming - владелец ftp:ftp
Права на запись есть у владельца и у группы.

В /usr/local/etc/proftpd.conf:

Код: Выделить всё

#
# For more informations about Proftpd configuration
# look at : http://www.proftpd.org/
#
# This is a basic ProFTPD configuration file (rename it to 
# 'proftpd.conf' for actual use.  It establishes a single server
# and a single anonymous login.  It assumes that you have a user/group
# "nobody" and "ftp" for normal operation and anon.

ServerName			"ProFTPD Default Installation"
ServerType			standalone
DefaultServer			on
#ScoreboardFile		/var/run/proftpd.scoreboard

# Port 21 is the standard FTP port.
Port				21

# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask				022

# To prevent DoS attacks, set the maximum number of child processes
# to 30.  If you need to allow more than 30 concurrent connections
# at once, simply increase this value.  Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
# (such as xinetd).
MaxInstances			30

CommandBufferSize	512

# Set the user and group under which the server will run.
User				ftp
Group				ftp

SQLAuthTypes            Plaintext
SQLAuthenticate         users
SQLConnectInfo          ftp@localhost:3306 ftp ftp
SQLUserInfo             `users_table` `username` `password` `uid` `gid` \
                        `homedir` `shell`
RequireValidShell off
SQLLogFile      /var/log/proftpd.log
SQLLog          PASS            counter_login
SQLNamedQuery   counter_login   UPDATE "`last_login`=UNIX_TIMESTAMP(), \
                                `login_count`=`login_count`+1 WHERE \
                                `username`='%u'" `users_table`
SQLLog          ERR_PASS        counter_err
SQLNamedQuery   counter_err     UPDATE "`last_err_login`=UNIX_TIMESTAMP(), \
                                `err_login_count`=`err_login_count`+1 WHERE \
                                `username`='%U'" `users_table`
SQLLog          RETR,STOR               log_story_transfer
SQLNamedQuery   log_story_transfer      INSERT "'',\
                                        UNIX_TIMESTAMP(),'%u',\
                                        '%f', '%b', '%h', \
                                        '%a', '%m', '%T'" \
                                        `xfer_table`
					
SQLLOG          ERR_RETR,ERR_STOR,ERR_DELE,ERR_RMD,ERR_RNTO\
                                        log_err_modify
					SQLNamedQuery   log_err_modify          INSERT "'',\
                                        UNIX_TIMESTAMP(),\
                                        '%u', '%f', '%h', \
                                        '%a', '%m'" `xfer_errors`

UseReverseDNS     off
IdentLookups      off
#ause every FTP user to be "jailed" (chrooted) into their home
# directory, uncomment this line.
DefaultRoot ~ !vovs

# Normally, we want files to be overwriteable.
#AllowOverwrite		on
#<Directory ~>
#AllowOverwrite          on
#<Limit Write>
#AllowAll
#</Limit>
#<Limit READ>
#AllowAll
#</Limit>
#</Directory>



#<Directory /usr/storage/Incomming>
<Directory ~/Incomming>
AllowOverwrite          on
<Limit Write>
AllowAll
</Limit>
<Limit READ>
AllowAll
</Limit>
</Directory>

#<Directory /usr/storage/pub>
<Directory ~/pub>
AllowOverwrite          off
<Limit Write>
AllowAll
</Limit>
<Limit READ>
AllowAll
</Limit>
</Directory>

<Anonymous /usr/home/ftp>
# РПМШЪПЧБФЕМШ ПФ ЛПФПТПЗП БОПОЙНПХУЩ ЫБТСФУС
User            ftp
# ЗТХРРБ БОПОЙНПХУПЧ
Group           ftp
# БМШСУЩ БОБОПОЙНПХУПЧ (НПЦОП ВХДЕФ ЧИПДЙФШ ЛБЛ ftp, Б
# ОЕ anonymous)
UserAlias       anonymous ftp
# НБЛУЙНБМШОП ЮЙУМП БОПОЙНПХУПЧ
MaxClients      10      "Sorry, max %m users - try again later"
<Limit WRITE>
DenyAll
</Limit>
</Anonymous>

# Bar use of SITE CHMOD by default
<Limit SITE_CHMOD>
  DenyAll
</Limit>
 

В базе MYSQL есть такие пользователи:

Код: Выделить всё

1 	vovs 	[реальный_пароль] 	wheel 	1001 	1001 	/usr/storage 	/bin/sh 	1228942756 	17 	0 	0
2 	admin 	admin 	ftp 	1000 	1000 	/usr/storage 	/sbin/nologin 	1228942682 	6 	0 	0
vovs - такой пользователь реально есть в системе.
admin - в системе нет. Просто добавил для юзания фтпшника.

1. Когда логинюсь возникает задержка 10-20секунд.
Раскомментирование строк

Код: Выделить всё

UseReverseDNS     off
IdentLookups      off
не помогает. Какие могут быть еще варианты?

2. Когда логинюсь под пользователем vovs - не могу выйти за пределы /usr/storage -- пишет

Код: Выделить всё

PWD
257 "/" is the current directory
Хотя в конфиге есть строка

Код: Выделить всё

DefaultRoot ~ !vovs
3. Когда логинюсь под пользователем admin - не могу ничего записать в директорию ~/Incomming

Код: Выделить всё

Permission denied
Удалось писать только после того, как на /usr/storage/Incomming дал права на запись абсолютно всем.
Владельцем записанного файла оказывается <Unknown user>:ftp


Получается, что группа то ftp, так почему я не могу записать? Группе же разрешена запись..

Подскажите пожалуйста как можно решить эти вопросы...

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Lycane
старшина
Сообщения: 407
Зарегистрирован: 2008-05-23 15:25:58
Откуда: Волжский
Контактная информация:

Re: Proftpd - три вопроса..

Непрочитанное сообщение Lycane » 2008-12-11 22:57:47

Мне с такой ерундой помогла вот такая строка

Код: Выделить всё

RequireValidShell            off
Вставляется после

Код: Выделить всё

<Anonymous /usr/home/ftp>
# РПМШЪПЧБФЕМШ ПФ ЛПФПТПЗП БОПОЙНПХУЩ ЫБТСФУС
User            ftp
# ЗТХРРБ БОПОЙНПХУПЧ
Group           ftp
Правда до сихЪ пор не знаю что она дает, но без нее не работает :)
Работа системного администратора заключается в том, чтобы по пЬяни разбиратЬ то, что написали укуреные программисты.

zg
полковник
Сообщения: 5845
Зарегистрирован: 2007-12-07 13:51:33
Откуда: Верх-Нейвинск

Re: Proftpd - три вопроса..

Непрочитанное сообщение zg » 2008-12-11 23:18:36

Lycane писал(а):Правда до сихЪ пор не знаю что она дает
если у пользователя шелл не является шеллом, то пользователь не является валидным. Это настройка позволяет давать доступ только реальным пользователям системы, которые могут зайти и через терминал. Если её выключить, то проверки на валидность шелла пользователя не будет, поэтому любой пользователь, который есть в системе, будет валидным.

Аватара пользователя
Lycane
старшина
Сообщения: 407
Зарегистрирован: 2008-05-23 15:25:58
Откуда: Волжский
Контактная информация:

Re: Proftpd - три вопроса..

Непрочитанное сообщение Lycane » 2008-12-12 13:49:20

О как... спасибо, буду знатЬ :)
Работа системного администратора заключается в том, чтобы по пЬяни разбиратЬ то, что написали укуреные программисты.