The OpenNET Project / Index page

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

Хранение учетных записей proftpd в MySQL (ftp mysql)


<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>
Ключевые слова: ftp, mysql,  (найти похожие документы)
From: root <[email protected]> Date: Mon, 16 Jan 2004 14:31:37 +0000 (UTC) Subject: Хранение учетных записей proftpd в MySQL Оригинал: http://bsddoc.ru/index.php?stati_freebsd&submit=dalee&num=6 Установка и настройка proftpd с хранением пользователей в БД MySQL на FreeBSD устанавливаем из портов: #cd /usr/ports/ftp/proftpd/ #make install WITH_MYSQL=yes #make clean proftpd установлен, приступим к его настроки. Для начала посмотрим, подключился ли модуль для работы с MySQL. #cd /usr/local/libexec/ #./proftpd -l | grep mod_sql.c mod_sql_mysql.c Всё нормально, можно продолжать. Конфигурационный файл находится в /usr/local/etc/proftpd.conf ---------------------------------------- ServerName "My FTP Server" ServerType standalone DefaultServer on Port 21 Umask 022 MaxInstances 30 # Под кем будет запускаться FTP демон User nobody Group nogroup # Разршим доступ, только группе ftp <Limit LOGIN> AllowGroupftp DenyALL </Limit> # настройки для авторизации через mysql. (пароли используются в открытом виде: PlainText) <Global> SQLConnectInfo proftpd@localhost:3306 proftpd myftpserver SQLAuthTypes PlainText SQLUserInfo users userid passwd uid gid homedir shell DefaultRoot ~ RequireValidShell off SQLGroupInfo groups groupname gid members SQLAuthenticate users groups SQLLogFile/var/log/proftpd.log </Global> ----------------------------------------- Создание БД для FTP. Для начала создадим пользователя, который будет владельцем данной базы данных, пусть это будет proftpd: mysql -u root -p Enter password: mysql>grant select,insert,update,delete,create,drop ->on proftpd.* ->to proftpd@localhost ->identified by 'myftpserver'; Query OK, 0 rows affected (0.16 sec) mysql>exit; Зайдём теперь под только что созданным пользователем, и собственно создадим саму БД: mysql -u proftpd -p Enter password: mysql>create database proftpd; Далее создадим две табилци users и groups: mysql>use proftpd; Database changed mysql> CREATE TABLE users ( -> userid VARCHAR(30) NOT NULL UNIQUE, -> passwd VARCHAR(80) NOT NULL, -> uid INTEGER UNIQUE, -> gid INTEGER, -> homedir VARCHAR(255), -> shell VARCHAR(255) -> ); Query OK, 0 rows affected (0.03 sec) mysql> CREATE TABLE groups ( -> groupname VARCHAR(30) NOT NULL, -> gid INTEGER NOT NULL, -> members VARCHAR(255) -> ); Query OK, 0 rows affected (0.01 sec) mysql> mysql> use proftpd Database changed mysql> CREATE TABLE users ( -> userid VARCHAR(30) NOT NULL UNIQUE, -> passwd VARCHAR(80) NOT NULL, -> uid INTEGER UNIQUE, -> gid INTEGER, -> homedir VARCHAR(255), -> shell VARCHAR(255) -> ); Query OK, 0 rows affected (0.03 sec) #добавим тестового пользователя: mysql>insert into groups values('ftp','5001',''); mysql>insert into users values('test','testftp','5001','5001','/home/ftp/test','/sbin/nologin' ); mysql>exit; mkdir /home/ftp/test chown 5001.5001 /home/ftp/test создаём лог-файл: touch /var/log/proftpd.log Запуск демона: cd /usr/local/etc/rc.d cp proftpd.sh.sample proftpd.sh chmod +x proftpd.sh sh proftpd start ps ax | grep proftpd 10544 ?? Is 0:00,01 proftpd: (accepting connections) (proftpd) Proftpd ждёт ваших коннектов :) (c) root. ICQ: 3317665 mail: [email protected]

<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>

Обсуждение [ Линейный режим | Показать все | RSS ]
  • 1.1, Stranger (??), 18:23, 07/02/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Упорно получаю в логах:
    unrecoverable backend error
    error: '1045'
    message: 'Access denied for user: 'proftpd@localhost' (Using password: YES)'
     
  • 1.2, Michael_S (?), 17:41, 25/02/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Эта ошибка вылетает когда у тебя нету доступа к mysql.
    Тоесть ты либо подключаешся под несуществующим пользователем либо пароль не правильный.
     
  • 1.3, xroot (ok), 13:23, 09/03/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    можешь временно пустить proftpd к mysql под рутом
     
  • 1.4, hash (??), 17:20, 16/03/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    а зачем в таком случае таблица groups
     
  • 1.5, ciscoios (??), 16:00, 06/05/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Спасибо автору - все получилось. Есть только 2 вопроса.
    1. Можно ли сделать чтоб в базе пароли лежали не в открытом виде?

    2. При коннекте к фтп он сначала тупит около 10 сек и только потом пускает, что это может быть?

     
     
  • 2.11, kostil (ok), 10:40, 27/02/2006 [^] [^^] [^^^] [ответить]  
  • +/
    >Спасибо автору - все получилось. Есть только 2 вопроса.
    >1. Можно ли сделать чтоб в базе пароли лежали не в открытом виде?

    можно, password=password('my_password') что бы записать в базу зашифрованый пароль, а в конфиге прописываешь SQLAuthType Backend

    2. При коннекте к фтп он сначала тупит около 10 сек и только потом пускает, что это может быть?

    попробуй прописать в конфиге
    UseReverseDNS off
    IdentLookups  off
    должно помоч

     

  • 1.6, zzz (??), 13:12, 15/06/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Таблица users создаётся 2 раза :/
    Некрасивая опечатка...
    А так вообще полезно, пробую сделать...
     
  • 1.7, zzz (??), 13:30, 15/06/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Spasibki! Rabotaet :)
     
  • 1.8, lynx (??), 22:45, 21/06/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    У меня при make install WITH_MYSQL=yes всервно не инсталируеться библиотека mysql. Почему?
     
     
  • 2.13, kostil (ok), 10:57, 27/02/2006 [^] [^^] [^^^] [ответить]  
  • +/
    >У меня при make install WITH_MYSQL=yes всервно не инсталируеться библиотека mysql. Почему?
    >
    надо делать вот так
    ./configure --with-includes=/path/to/mysql/include/files --with-libraries=/path/to/mysql/libraries

    в федоре это выглядит вот так
    ./configure --with-includes=/usr/include/mysql --with-libraries=/usr/lib/mysql


     
  • 2.14, sphelp (?), 15:23, 22/09/2006 [^] [^^] [^^^] [ответить]  
  • +/
    пиши make install --WITH_MYSQL=yes --SHELL=/bin/sh
     

  • 1.9, Valery (??), 12:42, 26/08/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Все работает, спасибо автору. Опечатка еще одна - в AllowGroupftp ftp надо отдельно. А вопрос такой, как поменять пароль юзеру при таком способе их хранения?
     
  • 1.10, Андрей (??), 01:13, 18/09/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    У меня всё путём только когда пытаюсь файлы посмотреть с разширением .pl .cgi выскакивает ошибка типа нет доступа и это при простом просмотре содержимого из под CuteFtp
     
  • 1.15, FireWall (??), 12:24, 14/11/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    если в уид и гид подставить уид и гид пользователя nobody то будут виртуальные пользователи -)
     
  • 1.16, Русаков Алексей (?), 10:48, 20/10/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Спасибо БОЛЬШОЕ. Работает.
     

    игнорирование участников | лог модерирования

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




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

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