[proftpd] Глюки

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
MASiK
лейтенант
Сообщения: 625
Зарегистрирован: 2008-09-19 20:09:41
Откуда: Оттуда
Контактная информация:

[proftpd] Глюки

Непрочитанное сообщение MASiK » 2009-03-23 19:29:48

В общем вот такая штука

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

 proftpd -nd 3
 - mod_tls/2.2.1: using OpenSSL 0.9.8j 07 Jan 2009
 - <Directory ~>: deferring resolution of path
 - <Directory /usr/users/ftp/*>: deferring resolution of path
 - <Directory /usr/users/ftp/incoming/*>: deferring resolution of path
localhost.office - deleting existing scoreboard '/var/run/proftpd/proftpd.scoreboard'
localhost.office - ProFTPD 1.3.2 (stable) (built пятница, 20 марта 2009 г. 00:40:32 (MSK)) standalone mode STARTUP
localhost.office (79.171.168.79[79.171.168.79]) - mod_lang/0.9: using local charset 'KOI8-R', client charset 'CP1251' for path encoding
localhost.office (79.171.168.79[79.171.168.79]) - mod_sql_mysql/4.0.8: local character set 'KOI8-R' does not match MySQL character set 'cp1251', SQL injection possible, shutting down
localhost.office (79.171.168.79[79.171.168.79]) - error deleting scoreboard entry: Operation not permitted
localhost.office (79.171.168.79[79.171.168.79]) - FTP session closed.
А сам клиент пишет

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

gateway# ftp ftp.ХХХХХХ.ru
Connected to ftp.ХХХХХХ.ru.
421 Service not available, remote server has closed connection.
ftp>

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

uname -a
FreeBSD office 7.1-RELEASE-p3 FreeBSD 7.1-RELEASE-p3 #0: Fri Mar 13 12:47:48 MSK 2009     root@office:/usr/src/sys/i386/compile/OFFICE  i386
В общем перешел с 6.2 на 7.1, всё идеально, с мергмастером провели дружественные беседы, уже как неделю всё стабильно работает, и вот понадобился мне ФТП, в 6.2 он работал, и до Мергмастера он работал, что щаз не понимаю, гугл даёт ссылки на какие-то баги но они были в 2004-ом году...

Хелп плиз :)

P.S.
Папки которые расшарины

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

drwxrwxrwx  3 ftp    ftp    512 23 мар 17:59 ftp
drwxr-xr-x  2 ftp   ftp  512 23 мар 17:59 incoming
lrwxr-xr-x  1 root  ftp   23 10 ноя 16:30 pub_ftp -> /usr/home/samba/pub_ftp

Ну и сам конфиг если надо

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

ServerName              "ХХХ FTP"
ServerType              standalone
DefaultServer           on
ServerAdmin             admin@ххххх.ru
Port                    21
Umask                   022
User                    ftp
Group                   ftp
MaxInstances                    15
MaxClientsPerHost               3 		"Only %m connections per host allowed"
MaxClients                      10 		"Only %m total simultanious logins allowed"
MaxHostsPerUser                 1

#SQLLogFile      /var/log/proftpd.log

LogFormat            		default 	"%h %l %u %t \"%r\" %s %b"
LogFormat            		auth    	"%v [%P] %h %t \"%r\" %s"
LogFormat            		write   	"%h %l %u %t \"%r\" %s %b"


# Set up authentication via SQL
# ===========
AuthOrder                       mod_sql.c
SQLAuthTypes			Backend
SQLConnectInfo       		mysql_user@localhost db_name password
SQLUserInfo       		usertable userid passwd uid gid homedir shell 
SQLGroupInfo       		grouptable groupname gid members 
SQLUserWhereClause    		"disabled=0 and (NOW()<=expiration or expiration=-1 or expiration=0)"

# Log the user logging in
SQLLog PASS counter
SQLNamedQuery counter UPDATE "lastlogin=now(), count=count+1 WHERE userid='%u'" usertable

# logout log
SQLLog EXIT time_logout
SQLNamedQuery time_logout UPDATE "lastlogout=now() WHERE userid='%u'" usertable

# display last login time when PASS command is given
SQLNamedQuery login_time SELECT "lastlogin from usertable where userid='%u'"
SQLShowInfo PASS "230" "Last login was: %{login_time}"

# xfer Log in mysql
SQLLog RETR,STOR transfer1
SQLNamedQuery  transfer1 INSERT "'%u', '%f', '%b', '%h', '%a', '%m', '%T', now(), 'c', NULL" xfer_stat
SQLLOG ERR_RETR,ERR_STOR transfer2
SQLNamedQuery  transfer2 INSERT "'%u', '%f', '%b', '%h', '%a', '%m', '%T', now(), 'i', NULL" xfer_stat

# User quotas
# ===========
QuotaEngine on
QuotaDirectoryTally on
QuotaDisplayUnits Mb
QuotaShowQuotas on

SQLNamedQuery get-quota-limit SELECT "name, quota_type, per_session, limit_type, bytes_in_avail, bytes_out_avail, bytes_xfer_avail, files_in_avail, files_out_avail, files_xfer_avail FROM ftpquotalimits WHERE name = '%{0}' AND quota_type = '%{1}'"
SQLNamedQuery get-quota-tally SELECT "name, quota_type, bytes_in_used, bytes_out_used, bytes_xfer_used, files_in_used, files_out_used, files_xfer_used FROM ftpquotatallies WHERE name = '%{0}' AND quota_type = '%{1}'"
SQLNamedQuery update-quota-tally UPDATE "bytes_in_used = bytes_in_used + %{0}, bytes_out_used = bytes_out_used + %{1}, bytes_xfer_used = bytes_xfer_used + %{2}, files_in_used = files_in_used + %{3}, files_out_used = files_out_used + %{4}, files_xfer_used = files_xfer_used + %{5} WHERE name = '%{6}' AND quota_type = '%{7}'" ftpquotatallies
SQLNamedQuery insert-quota-tally INSERT "%{0}, %{1}, %{2}, %{3}, %{4}, %{5}, %{6}, %{7}" ftpquotatallies

QuotaLimitTable sql:/get-quota-limit
QuotaTallyTable sql:/get-quota-tally/update-quota-tally/insert-quota-tally


AllowStoreRestart 		on
AllowRetrieveRestart		on
RequireValidShell               off
PathDenyFilter 			"\\.ftp)|\\.ht)[a-z]+$" 
DefaultRoot 			~
DenyFilter 			\*.*/



UseReverseDNS     off
IdentLookups      off


<Directory ~>
AllowOverwrite	on
<Limit Write>
AllowAll
</Limit>
<Limit READ>
AllowAll
</Limit>
</Directory>

<Directory /usr/users/ftp/*>
AllowOverwrite	off
HideNoAccess	off
<Limit READ>
AllowAll
</Limit>
<Limit WRITE>
DenyGroup	!admins
</Limit>
</Directory>

<Directory /usr/users/ftp/incoming/*>
AllowOverwrite	on
HideNoAccess	on
<Limit READ>
DenyGroup	!admins
</Limit>
<Limit STOR MKD>
AllowAll
</Limit>
</Directory>

<Anonymous /usr/users/ftp/pub_ftp>
AllowOverwrite	on
HideNoAccess	on
MaxClientsPerHost	2
User            ftp
Group           ftp
UserAlias       anonymous ftp
MaxClients	5	"Sorry, max %m users - try again later"
#<Limit WRITE>
#DenyAll
#</Limit>
<Limit STOR MKD>
AllowAll
</Limit>
</Anonymous>

LangEngine on 
UseEncoding KOI8-R CP1251
PassivePorts 49152 65534
Самурай

Хостинговая компания 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/

Аватара пользователя
zingel
beastie
Сообщения: 6204
Зарегистрирован: 2007-10-30 3:56:49
Откуда: Moscow
Контактная информация:

Re: [proftpd] Глюки

Непрочитанное сообщение zingel » 2009-03-23 19:59:34

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

error deleting scoreboard entry: Operation not permitted
права на файл проверить?*

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

ls -la /var/run/proftpd/proftpd.scoreboard 
Z301171463546 - можно пожертвовать мне денег

Аватара пользователя
MASiK
лейтенант
Сообщения: 625
Зарегистрирован: 2008-09-19 20:09:41
Откуда: Оттуда
Контактная информация:

Re: [proftpd] Глюки

Непрочитанное сообщение MASiK » 2009-03-23 20:07:11

Вот так прикол

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

 ls -la /var/run/proftpd/proftpd.scoreboard
-rw-r--r--  1 root  wheel  16 23 мар 20:18 /var/run/proftpd/proftpd.scoreboard
А если я даю ему

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

chown ftp:ftp /var/run/proftpd/proftpd.scoreboard
То после запуска он сразу становиться root:wheel

Что за прикол?
Самурай

Аватара пользователя
zingel
beastie
Сообщения: 6204
Зарегистрирован: 2007-10-30 3:56:49
Откуда: Moscow
Контактная информация:

Re: [proftpd] Глюки

Непрочитанное сообщение zingel » 2009-03-23 20:12:19

ну потому, что от рута наверное proftpd запускаете да?
Z301171463546 - можно пожертвовать мне денег

Аватара пользователя
MASiK
лейтенант
Сообщения: 625
Зарегистрирован: 2008-09-19 20:09:41
Откуда: Оттуда
Контактная информация:

Re: [proftpd] Глюки

Непрочитанное сообщение MASiK » 2009-03-23 20:19:37

Так яж в конфиге сказал ему

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

User                    ftp
Group                   ftp
А запускаю скриптом который в /usr/local/etc/rc.d/proftpd

ну и естественно получаеться

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

sockstat -4l | grep :21
ftp      proftpd    32803 1  tcp4   *:21                  *:*
Всё чики пики, по моему тут какой-то баг в самом proftpd

P.S. Бред какой-то получается смотрите

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

localhost.office - deleting existing scoreboard '/var/run/proftpd/proftpd.scoreboard'
localhost.office - ProFTPD 1.3.2 (stable) (built пятница, 20 марта 2009 г. 00:40:32 (MSK)) standalone mode STARTUP
localhost.office (79.171.168.79[79.171.168.79]) - mod_lang/0.9: using local charset 'KOI8-R', client charset 'CP1251' for path encoding
localhost.office (79.171.168.79[79.171.168.79]) - mod_sql_mysql/4.0.8: local character set 'KOI8-R' does not match MySQL character set 'cp1251', SQL injection possible, shutting down
localhost.office (79.171.168.79[79.171.168.79]) - error deleting scoreboard entry: Operation not permitted
localhost.office (79.171.168.79[79.171.168.79]) - FTP session closed.
Вить удалил же

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

localhost.office - deleting existing scoreboard '/var/run/proftpd/proftpd.scoreboard'
И самый прикол что щаз я именно от рута и запускаю и файлик принадлежит руту, да и вообще я от рута запускаю какая разница кому он принадлежит, по моему тут в другом дело...
Самурай

Аватара пользователя
MASiK
лейтенант
Сообщения: 625
Зарегистрирован: 2008-09-19 20:09:41
Откуда: Оттуда
Контактная информация:

Re: [proftpd] Глюки

Непрочитанное сообщение MASiK » 2009-03-23 23:35:44

Вот оно решение

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

LangEngine on 
UseEncoding KOI8-R CP1251
Вот так больше делать нельзя, кодировка клиента и сервера должна теперь совпадать... не понимаю что за бредовый фикс, но пошол ка я делать даунгрейд версии

P.S. Для истории

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

LangEngine on 
UseEncoding CP1251 CP1251
Так надо
Самурай

Аватара пользователя
MASiK
лейтенант
Сообщения: 625
Зарегистрирован: 2008-09-19 20:09:41
Откуда: Оттуда
Контактная информация:

Re: [proftpd] Глюки

Непрочитанное сообщение MASiK » 2009-03-24 2:31:33

Чёж я так рано догоняю :)
проблемма в скуле

скуль 4.1 имеет возможность иньекции

а вот с 5.0 всё отличнно! :)
Самурай