Страница 3 из 6

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-01-27 1:15:47
Plohish
Для gyurza2000 и таких же начинающих как я...
В скрипте ftp.php тупо поменяйте $HTTP_GET_VARS на $_GET
всё заработает...
обидно что такую фигню и не мог никто тут подсказать...

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-02-11 16:41:33
Anton_Astrogor
Вот написал на днях. Из возможностей
  • Вывод списка пользователей
  • Редактирование пользователей
  • Редактирование квот
  • Создание каталога при добавлении пользователя

Вопрос по правам доступа

Добавлено: 2010-03-02 12:50:00
Avdey
Уже крыша едет, не могу понять с правами.
Вобщем кусок когфига сервака:

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

<Anonymous /cached/ftp>
   User			ftp
   Group			ftp
   HideUser root
   UserAlias		anonymous ftp
   MaxClients		4

<Directory /cached/ftp>
    <Limit WRITE>
	DenyUser ftp
    </Limit>
</Directory>

<Directory /cached/ftp/incoming>
    <Limit ALL>
        AllowAll
    </Limit>
</Directory>

<Limit LOGIN READ DIRS>
    AllowAll
</Limit>
</Anonymous>

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

[root@proxybsd ~]# ls -ld /cached/ftp/*
drwxr-xr-x  2 ftp  ftp  512 Mar  2 11:40 /cached/ftp/Incoming
drwxr-xr-x  2 ftp  ftp  512 Mar  2 10:39 /cached/ftp/NotPublic
Хочу чтоб анонимус (т.е. ftp) не мог записывать в корень фтп (/cached/ftp), но в папке incoming мог делать все что угодно. При таком конфиге не дает ничего делать, ни в корне, ни в папке incoming.
Если закомментить:

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

<Directory /cached/ftp>
    <Limit WRITE>
	DenyUser ftp
    </Limit>
</Directory>
То естественно дает полный доступ к корню и к папке incoming.

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-03-02 16:09:00
UDAR_nick
Очень прошу помощи в небольшой доработке версии PROMA от Hamless

а именно в admin.lib.php сделать так чтобы при открытии аккаунта на FTP пользователю
отправлялось письмо, где указан не только его логин но и действующий пароль (и после изменения этого пароля админом, также высылался новый пароль)

Я несколько подправил эту редакцию, так, что у меня все пароли в базе MySQL хранятся в открытом виде и извлечь их оттуда просто... но не мне, так плохо знакомому с PHP и MySQL


Большое Спасибо.
Александр

Re: Вопрос по правам доступа

Добавлено: 2010-03-02 16:46:31
AzureZ
Avdey писал(а):Уже крыша едет, не могу понять с правами.
Вобщем кусок когфига сервака:

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

<Anonymous /cached/ftp>
   User			ftp
   Group			ftp
   HideUser root
   UserAlias		anonymous ftp
   MaxClients		4

<Directory /cached/ftp>
    <Limit WRITE>
	DenyUser ftp
    </Limit>
</Directory>

<Directory /cached/ftp/incoming>
    <Limit ALL>
        AllowAll
    </Limit>
</Directory>

<Limit LOGIN READ DIRS>
    AllowAll
</Limit>
</Anonymous>

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

[root@proxybsd ~]# ls -ld /cached/ftp/*
drwxr-xr-x  2 ftp  ftp  512 Mar  2 11:40 /cached/ftp/Incoming
drwxr-xr-x  2 ftp  ftp  512 Mar  2 10:39 /cached/ftp/NotPublic
Хочу чтоб анонимус (т.е. ftp) не мог записывать в корень фтп (/cached/ftp), но в папке incoming мог делать все что угодно. При таком конфиге не дает ничего делать, ни в корне, ни в папке incoming.
Если закомментить:

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

<Directory /cached/ftp>
    <Limit WRITE>
	DenyUser ftp
    </Limit>
</Directory>
То естественно дает полный доступ к корню и к папке incoming.

Попробуйте заменить

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

<Directory /cached/ftp/incoming>
    <Limit ALL>
        AllowAll
    </Limit>
</Directory>
на

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

<Directory /cached/ftp/incoming/*>
    <Limit WRITE>
        AllowAll
    </Limit>
</Directory>

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-03-02 16:56:37
AzureZ
UDAR_nick писал(а):Очень прошу помощи в небольшой доработке версии PROMA от Hamless

а именно в admin.lib.php сделать так чтобы при открытии аккаунта на FTP пользователю
отправлялось письмо, где указан не только его логин но и действующий пароль (и после изменения этого пароля админом, также высылался новый пароль)

Я несколько подправил эту редакцию, так, что у меня все пароли в базе MySQL хранятся в открытом виде и извлечь их оттуда просто... но не мне, так плохо знакомому с PHP и MySQL


Большое Спасибо.
Александр
Там же вроде высылается какое то письмо при регистрации аккаунта.

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-03-02 17:05:04
UDAR_nick
AzureZ писал(а):
Там же вроде высылается какое то письмо при регистрации аккаунта.
именно так, только без пароля.
я хотел бы сделать чтобы и пароль высылался.... Но самому не справится

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-03-02 19:16:32
harmless
UDAR_nick писал(а):Очень прошу помощи в небольшой доработке версии PROMA от Hamless

а именно в admin.lib.php сделать так чтобы при открытии аккаунта на FTP пользователю
отправлялось письмо, где указан не только его логин но и действующий пароль (и после изменения этого пароля админом, также высылался новый пароль)

Я несколько подправил эту редакцию, так, что у меня все пароли в базе MySQL хранятся в открытом виде и извлечь их оттуда просто... но не мне, так плохо знакомому с PHP и MySQL


Большое Спасибо.
Александр
Здравствуйте однофорумчане!
Если можете подождать пару дней - помогу!(На работе завал полный(()

Re: Вопрос по правам доступа

Добавлено: 2010-03-02 19:31:47
Avdey
Ув. AzureZ
Большое спасибо, заменил ALL на WRITE и все зафурычило как надо)))
Только вопрос, разве ALL не разрешает запись???

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-03-02 19:36:40
AzureZ
Тут дело не в ALL или WRITE, а в

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

<Directory /cached/ftp/incoming/*>
точнее в

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-03-02 21:14:40
Avdey
AzureZ писал(а):Тут дело не в ALL или WRITE, а в

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

<Directory /cached/ftp/incoming/*>
точнее в
При тесте разницы между incoming/* и просто incoming небыло, дело было в ALL.
Я оставил так:

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

<Directory /cached/ftp/incoming>
    <Limit [b]WRITE[/b]>
        AllowAll
    </Limit>
</Directory>
Теперь анонимус в корне не может писать, а в incoming может.

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-03-09 11:18:00
xopc
Народ подскажите, имеем такой запрос в базу

SQLLog RETR,STOR,DELE log_story_transfer
SQLNamedQuery log_story_transfer INSERT "'', UNIX_TIMESTAMP(),'%u', '%f', '%b', '%h', '%a', '%m', '%T'" `xfer_table`

тоесть пишем в базу кто что скачал залил удалил. все отлично. Проблема в следующем, если использовать модуль перекодировки налету mod_lang.c
(из utf8 в cp1251) то в базу пишет с двойной перекодировкой и посмотреть имена файлов в читаемом виде через php скрипт не получается.
proftpd 1.3.3

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-03-11 18:17:25
harmless
xopc писал(а):Народ подскажите, имеем такой запрос в базу

SQLLog RETR,STOR,DELE log_story_transfer
SQLNamedQuery log_story_transfer INSERT "'', UNIX_TIMESTAMP(),'%u', '%f', '%b', '%h', '%a', '%m', '%T'" `xfer_table`

тоесть пишем в базу кто что скачал залил удалил. все отлично. Проблема в следующем, если использовать модуль перекодировки налету mod_lang.c
(из utf8 в cp1251) то в базу пишет с двойной перекодировкой и посмотреть имена файлов в читаемом виде через php скрипт не получается.
proftpd 1.3.3
Смотрите мой переделанный скрипт ProMA'ы там в admin.lib.php есть перекодировка на лету в php тех пунктов базы где необходимо!(Сам помню сидел придумывал как бы его так замутить)))

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-03-11 18:27:19
harmless
UDAR_nick писал(а):
AzureZ писал(а):
Там же вроде высылается какое то письмо при регистрации аккаунта.
именно так, только без пароля.
я хотел бы сделать чтобы и пароль высылался.... Но самому не справится
admin.lib.php 551 рядок

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

"Your account at $info_host with username \"$userid\" has been opened.
заменить на

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

"Your account at $info_host with username: \"$userid\" with password: \"$newpasswd\" has been opened.
должно помочь(но самому проверить не на чем так как у меня пароли MD5)

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-05-25 13:17:28
zeus4all
доброго времени суток. фтп закрутился, причем даже пользователи с нереальным гид уид пашут,но при записи файлов правда оставляют свой нераельный уид в графе пользователя,но вопрос не в етом (видно сие упущение заработало когда я расшарил папку пользователя Chmod 777), проблема в том что при закачке файла рвется соединение, все бы ничего но возникают проблемы на закачку групп файлов, при выгрузки с фтп клиенту все работает нормально можно скачивать и по 1 файлу и пачкой, вот хочется сделать также и на загрузку на фтп от клиента. :st:
работает так:
идет закачка 1 файла (вместе с несущ. каталогами если речь идет о копировании папки с файлами) после завершения закачки соединение рвется и скажем Тотал коммандер предлагает его восстановить , изза етой грабли закачать больше 1 файла разом не реально.

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-05-25 13:36:01
zeus4all
вот скринлог с "соседней" фряхи:

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

ftp> passive on
Passive mode: on; fallback to active mode: off.
ftp> put /root/sputnik.rc sputnik
local: /root/sputnik.rc remote: sputnik
229 Entering Extended Passive Mode (|||12581|)
150 Opening BINARY mode data connection for sputnik
100% |***********************************************************************************|    93     458.68 KB/s    00:00 ETA
421 Service not available, remote server has closed connection.
93 bytes sent in 00:00 (41.39 KB/s)

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-05-28 10:37:36
harmless
zeus4all писал(а):доброго времени суток. фтп закрутился, причем даже пользователи с нереальным гид уид пашут,но при записи файлов правда оставляют свой нераельный уид в графе пользователя,но вопрос не в етом (видно сие упущение заработало когда я расшарил папку пользователя Chmod 777), проблема в том что при закачке файла рвется соединение, все бы ничего но возникают проблемы на закачку групп файлов, при выгрузки с фтп клиенту все работает нормально можно скачивать и по 1 файлу и пачкой, вот хочется сделать также и на загрузку на фтп от клиента. :st:
работает так:
идет закачка 1 файла (вместе с несущ. каталогами если речь идет о копировании папки с файлами) после завершения закачки соединение рвется и скажем Тотал коммандер предлагает его восстановить , изза етой грабли закачать больше 1 файла разом не реально.
Всем добрый День, и с прадником - Днем Погранвойск!!!
Телепала поломалась!)
Конфиг сервера в студию!

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-06-25 12:00:20
Orator
Доброго времени суток господа!
У меня тут тоже вопросик появился может кто стыкался.
А можно переопределить запрос, который использует SQLUSerInfo для получения данных с таблички?
А то просто есть уже база пользователей с паролями, поля добавлять неохота.
Остальные сервисы которые имеются в наличии используют свою табличку с id пользователя и нужными параметрами
при запросе просто left join по полю id с таблицей юзеров и все.
Хочется так же :smile:

З.Ы. Что-то текста многовато.

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-06-25 13:49:06
Orator
В общем как обычно со мной бывает...
Сам задал вопрос, и сам нашел ответ.
Отпишусь может пригодится кому-то.
Гугление мне ничего стоящего не подсказало, а вот курение исходников модуля mod_sql дало ответ.
Кстати это еще раз подтверждает истину, что лучшей документации чем исходные тексты - не существует.

А тепер к делу, достаточно поставить

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

SQLUserInfo     custom:/userinfos
а дальше

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

SQLNamedQuery userinfos ...........
наше фсьо :smile:

З.Ы. Кто не понял userinfos - просто имя, может быть любым.

--------------------
Как всегда забыл,
mod_sql.c,v 1.181 2010/02/10 18:26:25
proftpd-1.3.3_5

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-08-14 11:03:26
Anton_Astrogor
Встал вопрос выдачи логинов на определенное время(1, 2, 3, 6 мес), как по вашему лучше организовать проверку на "свежесть" логина? Обещаю в последствии добавить это в код своей админки и перевыложить ее сюда.

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-08-16 15:44:02
kolossus
А как сделать разным пользователям разные права доступа к папкам?
Пока что SQL используется для входа, а как раздавать права?

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-09-03 11:25:48
kolossus
Если имя пользователя состоит только из цифр (например - 12548746614) - не пускает.
Может кто знает, как это перебороть?
Поменять имя - не предлагать :)
Спасибо...

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-09-03 14:14:52
Orator
Anton_Astrogor писал(а):Встал вопрос выдачи логинов на определенное время(1, 2, 3, 6 мес), как по вашему лучше организовать проверку на "свежесть" логина? Обещаю в последствии добавить это в код своей админки и перевыложить ее сюда.
У меня в мускуле есть отдельное поле "часХ".
Соответственно прямо в запросе SELECT которым запрашиваем, логин/пароль проверяем что-бы дата указанная в "часХ" была больше текущей.
Я заодно проверяю еще одно поле active, что-бы пользователей можно было отключать не удаляя.
Правда я использую свой запрос в UserInfo, а не просто перечисляю поля, как предлагается по умолчанию.

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-09-03 14:20:10
Orator
kolossus писал(а):А как сделать разным пользователям разные права доступа к папкам?
Пока что SQL используется для входа, а как раздавать права?
Смотря какой сложности доступ,
можно создать разные групы в том же sql и пользователей причислять к групам
можно создать пользователя одного в системе например с уидом 10000, в базу если пользователю надо писать ставить ему уид 10000 если нет 65534
права на папку соответственно 700.

Есть более сложные схемы и способы, приветствуется также комбинирования многих способов.

Интересует более конкретный ответ?
Опишите конкретную ситуацию с примерами, что-бы можно было судить о масштабности и не внедрять фиг-поймеш-что где можно обойтись велосипедом.

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2010-09-03 14:20:54
Orator
kolossus писал(а):Если имя пользователя состоит только из цифр (например - 12548746614) - не пускает.
Может кто знает, как это перебороть?
Поменять имя - не предлагать :)
Спасибо...
Какой тип аутентификации используете?