8 января 2009 г. FTP FreeBSD

FreeBSD. Установка и настройка ProFTPD

freebsd_proftpdЭто скорее больше заметка для меня самого, что бы не париться с прописанием конфига раз за разом, опубликовал его тут. Но если кому вдруг пригодиться, то я немного описал конфиг, написал как установить и дал ссылки в помощь.

ProFTPD is a ftp server written for use on Unix and Unix-a-like operating systems, there is no support for native use under Microsoft Windows.

Установка

# cd /usr/ports/ftp/proftpd
# make config
# make install

Не забудьте сначала обновить дерево портов или обновите конкретный порт.

Настройка

/usr/local/etc/proftpd.conf

ServerName            "Super Server"
ServerType            standalone
DefaultServer            on
ScoreboardFile        /var/run/proftpd.scoreboard
Port                21

# Маска для назначения прав при создание файлов
Umask                022       022

# Максимальное кол-во процессов
MaxInstances            30

# Ограничение на максимальную длину комманды
CommandBufferSize    512

User                nobody
Group                nogroup

# Директория по умолчанию - домашний каталог пользователя
DefaultRoot ~

# Разрешение на смену прав файлам и создание каталогов
<limit SITE_CHMOD MKD>
  AllowAll
</limit>

# Таймауты
TimeoutIdle 3600
TimeoutLogin 3600
TimeoutNoTransfer 3600
TimeoutStalled 3600
TimeoutSession 3600

# Идентификация имени удаленного пользователя
IdentLookups off

# Обратный поиск данных IP-адресов
UseReverseDns off

# Паттерн для проверки комманд отправляемых от клиента-серверу
AllowFilter ^[-A-Za-z0-9_.(),/]*$

# Запретить пересылку сервер-сервер
AllowForeignAddress off

# Директива отвечающая за .ftaccess файлы
AllowOverride off

# Директива позволяющая переписывать файлы
AllowOverwrite on

# Логи
LogFormat default "%h %l %u %t "%r" %s %b"
TransferLog /var/log/proftpd_transferlog
ServerLog /var/log/proftpd_serverlog
SystemLog /var/log/proftpd_systemlog

# TransferRate RETR, STOR 1096
# MaxClients 20 "Sorry, max %m users, try again later."

# Анонимные пользователи
# Если не надо, то удалите или закомментите всю директиву.
# Путь до каталога, обратите внимание, на него DefaultRoot не распространяется.
<anonymous /home/ftp>

User ftp
Group ftp

# Назначение псевдонима anonymous для ftp
UserAlias anonymous ftp

# Не всем, имеющим доступ к ftp, нужен shell
RequireValidShell off

# Запрашивать ли пароль для анонимного подключения
AnonRequirePassword off

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

# Лимит максимума клиентов
MaxClients 10 "The server is full, hosting %m users"

# DisplayLogin welcome.msg
# DisplayFirstChdir .msg

<limit LOGIN>
  Allow from all
  Deny from all
</limit>

<limit WRITE>
  DenyAll
</limit>

<limit SITE SITE_CHMOD SITE_CHGRP MTDM >
  DenyAll
</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>
</anonymous>

Ссылки на документацию

P.S. Версия ProFTPD - 1.3.1

Комментарии

Константин 8 февраля 2009 г. 17:13

Пока успел прочитать только эту одну статью, если и все остальное также хорошо, то автору респект :)

Не знаю почему, но pure-ftpd мне больше по душе. За статью -спасибо.

Спасибо за конфпг! Очень долго искал рабочий...

Спасибо за статью.

Здесь http://www.artcom-ufa.ru/?posts/2011/05/19/ustanovka-i-nastr... я описал как настроить proftpd на debian для небольшого хостинга, думаю во фряхе будет не сильно различаться ;-)

ссылка кривая)) вот норм http://www.artcom-ufa.ru/?posts/2011/05/19/ustanovka-i-nastroika-proftpd

Добавьте пожалуйста в статью, что если пользователь перечислен в /etc/ftpusers, тогда он не сможет войти с ошибкой Login incorrect
Я так пытался заломиться под рутом =)

Немного не понятно

<limit LOGIN>
  Allow from all
  Deny from all
</limit>

Сперва разрешаем доступ всем, потом всем запрещаем. Что это такое?

Статья закрыта для комментариев