Настройка proftpd (Помогите из настройкой proftpd)

Модератор: /dev/random

Ответить
Аватара пользователя
viktor6
Сообщения: 87
ОС: Debian

Настройка proftpd

Сообщение viktor6 »

Уважаемые гуру у меня proftpd так настроен что если давать какойто доступ через ftp то нужно обязательно заводить пользователя в систему.
Вот я хочу както изменить настройки чтоб только правкой конфига proftpd можно было давать доступ.
proftpd.conf

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

ServerIdent         off
ServerName         domen.ua
ServerAdmin         test@ukr.net
ServerType standalone
DefaultServer on

Include /etc/proftpd/modules.conf

# CharsetLocal UTF-8  только при ручном сборе ProPTPD с опцией ./configure --with-modules=mod_codeconv
# CharsetRemote CP1251 можно указать кодировку отображения файлов для клиентов, тоже с опцией --with-modules=mod_codeconv

# Allow FTP resuming.
# Remember to set to off if you have an incoming ftp for upload.
AllowStoreRestart on

# Port 21 is the standard FTP port.
Port 21

# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
# При использовании стандартной маски 022, права досткпа к файлам с полным доступом только создавших, остальным только чтение.
# При использовании маски 002, права доступа к файлам с полным доступом для владельца и его группы, остальным только чтение.
Umask            002

# To prevent DoS attacks, set the maximum number of child processes
# to 30.  If you need to allow more than 30 concurrent connections
# at once, simply increase this value.  Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
# (such as xinetd).
# Максимальное кол-во процессов
MaxInstances 30

# Set the user and group under which the server will run.
User            root
Group            root

# To cause every FTP user to be "jailed" (chrooted) into their home
# directory, uncomment this line.
#DefaultRoot ~

# Перезаписывание файлов
AllowOverwrite on

# Bar use of SITE CHMOD by default
#<Limit SITE_CHMOD>
#  DenyAll
#</Limit>

# Needed for NIS.

PersistentPasswd off

# Default root can be used to put users in a chroot environment.
# As an example if you have a user foo and you want to put foo in /home/foo
# chroot environment you would do this:
# Доманний каталог для авторизированных пользователей с глобальными правами
# DefaultRoot /home/foo foo
DefaultRoot /home/ftp/pub
Include            /etc/proftpd/proftpd-anonymous.conf

# --------------------------------начало, конфиг глабальных настроек пользователей ---------------------------------------
<Global>
  <Limit LOGIN>
    Order allow,deny
    Allow from all
    Deny from all
  </Limit>
</Global>

# --------------------------------конец конфига глабальных настроек пользователей -----------------


RootLogin off
AllowForeignAddress on
AllowRetrieveRestart on

DirFakeUser off nobody
LogFormat auth "%a %v [%P] %h %t "%r" %s"
Extendedlog /var/log/proftpd/ftp.log
UseReverseDNS off
LogFormat default "%a %h %l %u %t "%r" %s %b"
SystemLog /var/log/proftpd/proftpd.log
DisplayConnect /etc/banner-proftpd
DirFakeGroup off nobody
DeleteAbortedStores off
IdentLookups off
DeferWelcome on
TimesGMT off
TransferLog /var/log/proftpd/xferlog
AccessGrantMsg " -- Guest access granted for %u --"
ServerIdent off
LogFormat write "%a %h %l %u %t "%r" %s %b"
AccessDenyMsg " !-!! Вы ввели неправильно логин или пароль !!"

proftpd-anonymous.conf

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

# --------------------------------начало конфига для не авторизированных пользователей - анонимный доступ -----------------
<Anonymous /home/melomania/ftp>
  User            ftp
  Group            ftp
  # We want clients to be able to login with "anonymous" as well as "ftp"
  # Назначение псевдонима anonymous для ftp
  UserAlias         anonymous ftp

  # Limit the maximum number of anonymous logins
MaxClients 300 "Слишком много соединений с сервером"

  # Don't make it require a valid password or shell.
  RequireValidShell      off
    # Запрашивать ли пароль для анонимного подключения
  AnonRequirePassword      off

  # We want 'welcome.msg' displayed at login, and '.message' displayed
  # in each newly chdired directory.
  DisplayLogin         welcome.msg
  DisplayFirstChdir      .message

  # Limit WRITE everywhere in the anonymous chroot
  <Limit WRITE>
DenyAll
AllowUser ftp
  </Limit>
  # Для директории public, запрет на группу комманд WRITE и создание директории,
# читайте подробнее How-To по Limit, в ссылка ниже
<directory public/*>
  <limit WRITE MKD>
    DenyAll
  </limit>
</directory>

# Для директории uploads, разрешим WRITE и запрещаем при этом удаление файлов и каталогов
<directory uploads/*>
  <limit WRITE>
    AllowAll
  </limit>
  <limit DELE RMD>
    DenyAll
  </limit>
</directory>
HideNoAccess on
HideUser musicsiteadmin
</Anonymous>
# --------------------------------конец конфига для не авторизированных пользователей - анонимный доступ -----------------

# -----начало конфига для не глобального пользователя user1 - имеет доступ к указанному каталогу только для чтения ------
<Anonymous /mnt/ftp/pub/user1>
User user1
Group users
AnonRequirePassword on
MaxClients 300 "Сервер полон, принимая %m пользователи"
MaxClientsPerHost 4 "%m клиента уже подключены с Вашего хоста, больше не разрешено"
DisplayLogin welcome.msg
DisplayFirstChdir .msg
AllowOverwrite off
  <Limit WRITE>
    DenyAll
  </Limit>
<Limit LOGIN>
Allow from all
Deny from all
</Limit>
</Anonymous>
# -----конец конфига для не глобального пользователя user1 - имеет доступ к указанному каталогу только для чтения ------

# -----начало конфига для не глобального пользователя user2 - имеет доступ к указанному каталогу с полным доступом, но без права перезаписи ------
<Anonymous /mnt/ftp/pub/user2>
User user2
Group users
AnonRequirePassword on
MaxClients 300 "Сервер полон, принимая %m пользователи"
MaxClientsPerHost 4 "%m клиента уже подключены с Вашего хоста, больше не разрешено"
DisplayLogin welcome.msg
DisplayFirstChdir .msg
AllowOverwrite off
  <Limit WRITE>
    AllowAll
  </Limit>
<Limit LOGIN>
Allow from all
Deny from all
</Limit>
</Anonymous>
# -----конец конфига для не глобального пользователя user2 - имеет доступ к указанному каталогу с полным доступом, но без права перезаписи ------

# -----начало конфига для не глобального пользователя user3 - имеет доступ к указанному каталогу с полным доступом, с правом перезаписи файлов ---
<Anonymous /mnt/ftp/pub/user3>
User user3
Group users
AnonRequirePassword on
MaxClients 300 "Сервер полон, принимая %m пользователи"
MaxClientsPerHost 4 "%m клиента уже подключены с Вашего хоста, больше не разрешено"
DisplayLogin welcome.msg
DisplayFirstChdir .msg
AllowOverwrite on
  <Limit WRITE>
    AllowAll
  </Limit>
<Limit LOGIN>
Allow from all
Deny from all
</Limit>
</Anonymous>
# -----конец конфига для не глобального пользователя user3 - имеет доступ к указанному каталогу с полным доступом, с правом перезаписи файлов---

# -----начало конфига для не глобального пользователя viktor - имеет доступ к указанному каталогу с полным доступом, с правом перезаписи файлов ---
<Anonymous /home>
User viktor
Group users
AnonRequirePassword on
MaxClients 300 "Сервер полон, принимая %m пользователи"
MaxClientsPerHost 4 "%m клиента уже подключены с Вашего хоста, больше не разрешено"
DisplayLogin welcome.msg
DisplayFirstChdir .msg
AllowOverwrite on
  <Limit WRITE>
    AllowAll
  </Limit>
<Limit LOGIN>
Allow from all
Deny from all
</Limit>
</Anonymous>
# -----конец конфига для не глобального пользователя viktor - имеет доступ к указанному каталогу с полным доступом, с правом перезаписи файлов---
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Настройка proftpd

Сообщение drBatty »

viktor6
в линуксе нет понятия "обычный юзер", и "фтп юзер". Рут он всегда рут, и не важно, как он зашёл (потому на FTP его не пускают). можно сделать так, что-бы все входили под одним юзером, а идентифицировались скажем используя БД. или скажем разрешить заход только с определённых IP.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
viktor6
Сообщения: 87
ОС: Debian

Re: Настройка proftpd

Сообщение viktor6 »

drBatty писал(а):
18.04.2011 20:49
viktor6
в линуксе нет понятия "обычный юзер", и "фтп юзер". Рут он всегда рут, и не важно, как он зашёл (потому на FTP его не пускают). можно сделать так, что-бы все входили под одним юзером, а идентифицировались скажем используя БД. или скажем разрешить заход только с определённых IP.

В тупик меня загнал :(
вот смотрите в конфиге есть user1 user2 user3 viktor и этих узеров мне нужно добавить useradd для того чтобы пускало под логином м паролем.
Вот я и хочу чтоб user1 user2 user3 viktor модно было в конфиге proftpd прописать и пароль в БД или в другое место, веть это не безопасно так useradd добавлять пользователей для ftp
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Настройка proftpd

Сообщение drBatty »

viktor6 писал(а):
18.04.2011 21:14
вот смотрите в конфиге есть user1 user2 user3 viktor и этих узеров мне нужно добавить useradd для того чтобы пускало под логином м паролем.
Вот я и хочу чтоб user1 user2 user3 viktor модно было в конфиге proftpd прописать и пароль в БД или в другое место, веть это useradd не безопасно так добавлять пользователей для ftp

понимаете, в конфиге proftpd прописаны дополнительные ограничения для перечисленных вами юзеров. Которые админ не может/не хочет прописывать в системе. Например, админ не может ограничить скорость копирования файлов для юзера1 средствами системы. Ещё админ не может запретить удалять файлы, но разрешить создавать - удаление/создание файлов это одно право, а не два. Ну это в ФС. А на FTP можно просто запретить выполнять команду DELE. тогда у юзера будет право удаления (и создания), но он не сможет им воспользоваться (по фтп. по другому - сможет) (правда админ может и заюзать ACL, и ещё кое что, но это уже сложности лишние).

Встречный вопрос - почему опасно добавлять новых юзеров? ИМХО это более безопасно, чем давать одному юзеру максимальные права. И одному юзеру нельзя запретить разное. И разделить одного юзера нельзя, а значит сама система не сможет защитить данные одного юзера, от данных другого. а proftpd он не для этого делался, не как замена, а как дополнение - что-бы можно было войти в туже комнату через другую дверь.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
BoDun
Сообщения: 44
ОС: ROSA

Re: Настройка proftpd

Сообщение BoDun »

Имеются ли команды, для создания пользователя и пароля к нему, плюс задать ему директорию и выставления прав доступа на каталог через консоль?
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Настройка proftpd

Сообщение drBatty »

BoDun писал(а):
12.11.2011 09:35
1.Имеются ли команды, для создания пользователя и пароля к нему, плюс задать ему директорию и
2.выставления прав доступа на каталог через консоль?

1.по FTP? Это вообще-то протокол передачи данных. Используйте SSH.
в консоли можно useradd (часто есть обёртка adduser).
2.а это можно по FTP (если сервер позволяет) SITE CHMOD
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
BoDun
Сообщения: 44
ОС: ROSA

Re: Настройка proftpd

Сообщение BoDun »

Да, пардон имелось ввиду ssh. Спасибо.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Настройка proftpd

Сообщение drBatty »

BoDun писал(а):
12.11.2011 10:51
имелось ввиду ssh

по ssh также как и всегда
вопрос очень дистроспецифичный кстати. Всегда есть useradd, но она не очень удобная. Иногда есть adduser и/или гуи.

PS: и это злостный оффтопик имхо
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Ответить