URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 35718
[ Назад ]

Исходное сообщение
"ProFtpd + Mysql"

Отправлено Zheka , 09-Окт-03 08:04 
Уже весь запутался с настройкой. У кого нить есть рабочий конфиг proftpd.conf c поддержкой Mysql и структурой таблиц. Буду примного благодарен.

Содержание

Сообщения в этом обсуждении
"ProFtpd + Mysql"
Отправлено Zheka , 09-Окт-03 08:54 
Это мой не действующий конфиг. Работает только при условии что пользователь добавлен в систему, как я понимаю к базе он вообще не коннектится.
-----------------------------------------------------------------------
ServerName                      "My Server"
ServerType                      standalone
DefaultServer                   off
Port                            21
Umask                           022
<Global>
  SQLConnectInfo proftpd@localhost:3306 root rootpass
  SQLAuthTypes Backend Plaintext
  SQLUserInfo users userid passwd uid gid NULL NULL
  SQLDefaultHomedir "/tmp"
  RequireValidShell off
  SQLAuthenticate users groups usersetfast groupsetfast
</Global>
MaxInstances                    30
User                            nobody
Group                           nobody
<Directory /*>
  AllowOverwrite                on
</Directory>
<Anonymous ~ftp>
  User                          ftp
  Group                         ftp
  UserAlias                     anonymous ftp
  MaxClients                    10
  DisplayLogin                  welcome.msg
  DisplayFirstChdir             .message
</Anonymous>
--------------------------------------------------------------------

Это моя таблица users

userid  passwd  uid  gid   homedir  shell  
vasya   123    65533 65533 /home/vasya 0

Таблица groups пустая


"ProFtpd + Mysql"
Отправлено Евгений Гейнак , 04-Июл-05 03:25 
Вместо SQLAuthenticate users groups usersetfast groupsetfast

Напиши SQLAuthenticate users
И всё заработает:)


"ProFtpd + Mysql"
Отправлено b2d , 10-Июл-07 14:00 
вообщем на сколько я понимаю... 65533:65533
это вообще полная ЛАЖА...
дело в том что uid и gid должен быть такой как 'id ftp'
и владелец каталога должен быть ftp:ftp (1001:21) в моем случе.
так есть определенная Логика во всем этом
табличек должно быть так
test  test  1001  21  /home/vftp/zina  /sbin/nologin

а вот откудова вообще вылазит 65533:65533 непонятно...
У меня 2 FTP сервака ...
Proftpd v.1.3.1rc2 (Fedora 5)
Proftpd v.1.3.1rc2 (Gentoo)

так вот на Gentoo все ок...
конфиги симметричные...

а на Fedora 655333 вылезло...
Рассудите если не прав. Вот пример конфига:
#-------------------- proftpd.conf ---------------------------#
ServerName              "FTP"
ServerType              standalone
DefaultServer           on
ServerIdent             on
Port                    21
Umask                   022
MaxClients              10 "Sorry, the maximum number of allowed users are already connected (%m)"
MaxClientsPerHost       10  "Sorry, you may not connect more than one time. %m allowed users already connected"
MaxLoginAttempts        3
User                    ftp
Group                   ftp
SyslogLevel             notice
UseReverseDNS           off
IdentLookups off
SystemLog               /var/log/proftpd/proftpd.log
TransferLog             /var/log/proftpd/proftpd-tranfer.log
ExtendedLog             /var/log/proftpd/proftpd-extended.log read,write
ExtendedLog             /var/log/proftpd/proftpd-auth.log AUTH  auth
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"
TimeoutIdle             300
TimeoutLogin            300
TimeoutNoTransfer       360
TimeoutStalled          640
DefaultTransferMode     binary
AllowForeignAddress     off

DisplayConnect /etc/ftp_connect.msg
DisplayLogin /etc/ftp_login.msg
AccessDenyMsg "ATTENTION!!! ALL CONNECTIONS LOGED"
AccessGrantMsg "Now upload/download files"
DisplayGoAway "Go Away"
PersistentPasswd        off
DefaultRoot             ~

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


<Anonymous ~ftp>
          User                          ftp
          Group                         ftp
          UserAlias                     anonymous ftp
          MaxClients                    10
          <Limit WRITE>
            AllowAll
         </Limit>
</Anonymous>

#sql info
SQLAuthTypes            Plaintext
SQLAuthenticate         users
SQLConnectInfo          proftpd@localhost proftpd proftpd
SQLUserInfo             users username password uid gid homedir shell
RequireValidShell       off
SQLLogFile             /var/log/proftpd/sql.log

# config 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 quotalimits 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 quotatallies     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}'" quotatallies
SQLNamedQuery insert-quota-tally INSERT "%{0}, %{1}, %{2}, %{3}, %{4}, %{5}, %{6}, %{7}" quotatallies
QuotaLimitTable sql:/get-quota-limit
QuotaTallyTable sql:/get-quota-tally/update-quota-tally/insert-quota-tally
QuotaLog                        /var/log/proftpd/quota.log

#----------------------------- end config --------------------------------#


"ProFtpd + Mysql"
Отправлено b2d , 13-Сен-07 19:45 
Сам отвечаю на свой же вопрос...
Значи у обычного юзверя uid > 1000
<1000 uid расщитаны под демоны...
соответственно

uid ftp > 1000
gid ftp > 1000


и все прекрасно работает, не забываем поменять uid && gid в табличке users;

:)