The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Проблема установки GID в proftpd+mod_sql"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Проблема установки GID в proftpd+mod_sql"
Сообщение от MayVortex emailИскать по авторуВ закладки on 17-Апр-03, 16:56  (MSK)
Приветствую!

Есть proftpd с mod_sql, SQL'евская база,  таблица users и поля: fio pass login homedir uid gid shell id
Всё это описано в proftpd.conf (ниже)
Всё работает, anonymous входит, юзеры, у которых логин и пароль правильный - тоже входят (то есть запросы к базе идут)... Но вот в чём проблема: когда авторизованный юзер закачивает файл на сервер владельцем этого файла становится тот, кто его залил (uid из базе), а группа выставляется в 65533, а не gid из базы... Что такое - не понятно, помогите пожалуйста!

У меня в базе у каждого юзера уникальная группа (GID) и UID, через ФТП юзеры попадают в папки своих хостов и творят там странички... На сервере поднят apach+suexec+perl+php+MySQL - уникальные UID и GID нужны для suexec, чтобы одни юзеры не читали программно файлы других юзеров...

P.S. пробовал менять SQLAuthenticate на всякие значения вплоть до on - не помогает, только anonymous перестаёт логинится, а так всё остаётся.
P.P.S. А в файлах passwd и group я не нашёл хоть что-нибудь похожего на 65533...

==== rpoftpd.conf ====

ServerName                      "Server-Name"
ServerType                      standalone
DefaultServer                   on
DefaultRoot ~
Port                            21
Umask                           022
UseReverseDNS                   off
IdentLookups                    off
<Global>
  SQLConnectInfo ftp@127.0.0.1:3306 root password
  SQLAuthTypes Backend Plaintext
  SQLUserInfo users login pass uid gid homedir NULL
  RequireValidShell off
  SQLAuthenticate users groups usersetfast groupsetfast
</Global>

MaxInstances                    100
User                            ftp
Group                           ftp

<Directory /*>
  AllowOverwrite                on
</Directory>

<Anonymous /mnt/ftp>
  User                          ftp
  Group                         ftp
  UserAlias                     anonymous ftp
  MaxClients                    100
  DisplayLogin                  welcome.msg
  DisplayFirstChdir             .message
  <Limit WRITE>
    Order Deny,Allow
    DenyAll
  </Limit>

<Directory /upload>
  <Limit WRITE>
    Order Deny,Allow
    AllowAll
  </Limit>
</Directory>

</Anonymous>

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Проблема установки GID в proftpd+mod_sql"
Сообщение от lavr emailИскать по авторуВ закладки on 17-Апр-03, 17:33  (MSK)
>Приветствую!
>
>Есть proftpd с mod_sql, SQL'евская база,  таблица users и поля: fio
>pass login homedir uid gid shell id
>Всё это описано в proftpd.conf (ниже)
>Всё работает, anonymous входит, юзеры, у которых логин и пароль правильный -
>тоже входят (то есть запросы к базе идут)... Но вот в
>чём проблема: когда авторизованный юзер закачивает файл на сервер владельцем этого
>файла становится тот, кто его залил (uid из базе), а группа
>выставляется в 65533, а не gid из базы... Что такое -
>не понятно, помогите пожалуйста!
>
>У меня в базе у каждого юзера уникальная группа (GID) и UID,
>через ФТП юзеры попадают в папки своих хостов и творят там
>странички... На сервере поднят apach+suexec+perl+php+MySQL - уникальные UID и GID нужны
>для suexec, чтобы одни юзеры не читали программно файлы других юзеров...
>
>
>P.S. пробовал менять SQLAuthenticate на всякие значения вплоть до on - не
>помогает, только anonymous перестаёт логинится, а так всё остаётся.
>P.P.S. А в файлах passwd и group я не нашёл хоть что-нибудь
>похожего на 65533...
>
>==== rpoftpd.conf ====
>
>ServerName            
>          "Server-Name"
>
>ServerType            
>          standalone
>
>DefaultServer            
>       on
>DefaultRoot ~
>Port            
>          
>     21
>Umask            
>          
>    022
>UseReverseDNS            
>       off
>IdentLookups            
>        off
><Global>
>  SQLConnectInfo ftp@127.0.0.1:3306 root password
>  SQLAuthTypes Backend Plaintext
>  SQLUserInfo users login pass uid gid homedir NULL
>  RequireValidShell off
>  SQLAuthenticate users groups usersetfast groupsetfast
></Global>
>
>MaxInstances            
>        100
>User            
>          
>     ftp
>Group            
>          
>    ftp
>
><Directory /*>
>  AllowOverwrite          
>      on
></Directory>
>
><Anonymous /mnt/ftp>
>  User          
>          
>     ftp
>  Group          
>          
>    ftp
>  UserAlias          
>          
>anonymous ftp
>  MaxClients          
>          100
>
>  DisplayLogin          
>        welcome.msg
>  DisplayFirstChdir          
>   .message
>  <Limit WRITE>
>    Order Deny,Allow
>    DenyAll
>  </Limit>
>
><Directory /upload>
>  <Limit WRITE>
>    Order Deny,Allow
>    AllowAll
>  </Limit>
></Directory>
>
></Anonymous>

у тебя proftpd запускается со сменой uid/gid на ftp/ftp, а 65533 или что
там, grep 65533 /etc/passwd чему соответсвует? мб это предположение наведет на мысли...

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Проблема установки GID в proftpd+mod_sql"
Сообщение от MayVortex emailИскать по авторуВ закладки on 17-Апр-03, 18:35  (MSK)
>у тебя proftpd запускается со сменой uid/gid на ftp/ftp, а 65533 или
>что
>там, grep 65533 /etc/passwd чему соответсвует? мб это предположение наведет на мысли...
>

Как я и сказал, ничего похожего на эту циферку ни в /etc/passwd ни в /etc/group нету :( Откуда он её тащит - не понятно. Сейчас убрал ftp/ftp (перегрузил сервак), но толку 0, хоть сервак и запускается теперь из под рута - всё ровно UID выставляет правильный, а GID - 65533... причём эту циферку я вижу из шела (root), так что это точно не какой-нить FakeGroup...

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Проблема установки GID в proftpd+mod_sql"
Сообщение от lavr emailИскать по авторуВ закладки on 17-Апр-03, 18:54  (MSK)
>>у тебя proftpd запускается со сменой uid/gid на ftp/ftp, а 65533 или
>>что
>>там, grep 65533 /etc/passwd чему соответсвует? мб это предположение наведет на мысли...
>>
>
>Как я и сказал, ничего похожего на эту циферку ни в /etc/passwd
>ни в /etc/group нету :( Откуда он её тащит - не
>понятно. Сейчас убрал ftp/ftp (перегрузил сервак), но толку 0, хоть сервак
>и запускается теперь из под рута - всё ровно UID выставляет
>правильный, а GID - 65533... причём эту циферку я вижу из
>шела (root), так что это точно не какой-нить FakeGroup...

да я тоже после того как написал, сообразил что не должно это влиять на
real-user, а поля проверял в mysql? мб proftpd с -d поможет, чет я не
соображу, а собирать proftpd и mysql и базы городить что-то ломает...
попробуй в их maillist'ах поискать.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "Проблема установки GID в proftpd+mod_sql"
Сообщение от MayVortex emailИскать по авторуВ закладки on 17-Апр-03, 21:05  (MSK)
включил -n -d 9 и вот что интересное заметил:

hosting.dinfo.ru (192.168.50.121[192.168.50.121]) - dispatching auth request "gid_name" to module mod_sql
hosting.dinfo.ru (192.168.50.121[192.168.50.121]) - dispatching auth request "gid_name" to module mod_auth_file
hosting.dinfo.ru (192.168.50.121[192.168.50.121]) - dispatching auth request "gid_name" to module mod_auth_unix
hosting.dinfo.ru (192.168.50.121[192.168.50.121]) - dispatching auth request "uid_name" to module mod_sql

похоже он при работе пытается трижды определить GID: в auth_sql, auth_file и auth_unix - наверное последнее что находит - использует... а UID только один раз
Интересно:
как это отруббить
отчего это происходит
:) чем больше ответов - тем больше вопросов!

  Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "Проблема установки GID в proftpd+mod_sql"
Сообщение от MayVortex emailИскать по авторуВ закладки on 17-Апр-03, 21:23  (MSK)
УРЯ! Нашёл откуда это число взялос 655333: http://www.castaglia.org/proftpd/modules/mod_sql.html#SQLDefaultGID -- вот блин, на официально сайте столько доков нет, сколько на этом :)
  Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "Проблема установки GID в proftpd+mod_sql"
Сообщение от MayVortex emailИскать по авторуВ закладки on 17-Апр-03, 23:20  (MSK)
ИТОГО: ошибка была в GID, который я пыытался присвоить юзерам - он был меньше 999 (а UID изначально был больше)! Оказалось, что параметры SQLMinGID выставленный в 300 не меняет ситуацию и GID всё ровно должен быть больше 999.

Теперь всё работает!

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру