Документация по ОС FreeBSD Четверг, 02.05.2024, 13:26
Приветствую Вас Гость | RSS
Меню сайта

Категории каталога
Apache [58]
DNS [25]
FTP [27]
Mail [74]
Samba [24]
Squid [46]
SSH [23]
VPN [35]
РРР [20]
Net [173]

Главная » Статьи » Сеть » FTP

Быстрая настройка ProFTPD [2008]
FTP сервер ProFTPD вполне оправдывает его название. Этот демон довольно стабильный, может работать как "самостоятельно", так и в составе супер-сервера inted, поддерживает вируальные хосты, учетные записи и многое другое.
Плюс ко всему имеет конфиги в стиле Apache, что делает его настройку весьма удобной и понятной.

В данной статье мы вкратце рассмотрим установку proftpd, т.к. он имеется в портах и, следовательно, в установке нет ничего интересного.
Подробно остановимся на настройке.

Итак, первый шаг — Установка.
Как было написано выше, ставится сервер очень просто – из коллекции портов.

Пишем:

Листинг :
# cd /usr/ports/ftp/proftpd
# make
# make install
# make clean
На этом установка закончена.
Конфиг будет лежать как /usr/local/etc/proftpd.conf,
а скрипт как /usr/local/etc/rc.d/proftpd

Теперь переходим к настройке.
Сначала рассмотрим "скелет" конфига. Он будет содержать базовые настройки.
В дальнейшем этот конфиг можно дополнять в соотвествии с задачей.

Листинг :
# Тип сервера. standalone означает отедльный демон, а inetd – в составе супер-сервера
ServerType              standalone
 
# Сообщение при подключении клиента.
ServerIdent             on "FTP Server Ready."
 
# Имя сервера
ServerName              "My FTP Server"
 
# Контактная информация админа
ServerAdmin             admin@myhost.ru
 
# Порт, на котором будет слушать сервер (21 - стандартный)
Port                    21
 
# Маска прав доступа для новых (згружаемых) файлов.
# При этом реальные права доступа будут как (777 - mask), т.е. маска 022 будет
# устанавливать права 755.
# Можно указывать свою маску для каждого каталога.
Umask                   022
 
# Настройки производительности
# Чем больше числа, тем больше клиентов одновременно сможет обслужить сервер, однако установка
# большого числа на слабом железе повышает вероятность DDoS атаки.
MaxInstances            30
MaxLoginAttempts        3
MaxClients              128
 
# "таймауты", по истечению которых сервер будет закрывать соединение
TimeoutLogin            120
TimeoutIdle             600
TimeoutNoTransfer       900
TimeoutStalled          300
 
# Показывать сообщения приветвия только после прохождения авторизации.
# Актуально для "закрытых" FTP-серверов в целях безопасности.
DeferWelcome            on
 
# Секция, действия которой распространяются на все сервера, описанные в конфиге
<Global>
                # Файл, сеодержащий сообщения привествия при подключении
        DisplayLogin            .welcome
               
                # Разрешает перезапись файлов
        AllowOverwrite          on
</Global>
 
# Настройка ограничения по умолчанию
# Запрещаем всё и для всех =)
<Limit ALL>
        DenyAll
</Limit> 

 
Основа конфига готова.
В дальнейшем будем дописывать к нему необходимые нам настройки.
 

Задача очень проста:
Необходимо настроить общедоступный "анонимный" FPT сервер, с которого пользователи смогут скачивать файлы без ввода логина и пароля.
Также необходимо позволить пользователям загружать файлы в папку с именем "incoming"

Предположим, что физически корневая папка расположена по адресу /usr/ftp.
Называется "конрневая папка", т.к. для пользователей она будет просто /
Всё, что находится в этой папке, будет доступно по FTP.
Папка для загрузки файлов раcположена непосредственно в корневой папке.

Листинг :
 
# Опеределяет анонимный FTP сервер c корнем в /usr/ftp
<Anonymous /usr/ftp>
        # Пользователь и группа от которых будет работать сервер
        User                    ftp
        Group                   ftp
       
        # Алиас имени пользователя.
        # По стандарту принято имя anonymous. Именно на него и ставим алиас.
        UserAlias               anonymous ftp
       
        # Разрешить авторизацию только по алиасу
        # это значит что
        AuthAliasOnly                   on
       
        # Отключаем требования валидного шелла пользователя
        # позволяет "пускать" в систему юзером без доступа по SSH (nologin)
        RequireValidShell       no
       
        # Скрывать файлы и папки пользователя root
        HideUser                root
       
        # Права по умолчанию для сервера
        # Разрешаем авторизацию, чтение файлов и перемещение по папкам
        <Limit LOGIN READ DIRS>
                AllowAll
        </Limit>
       
        # Права на папку incoming и все её вложенные папки
        # Разрешаем запись
        <Directory incoming/*>
                <Limit WRITE>
                        AllowAll
                </Limit>
        <Directory>
</Anonymous>

 
Проверяем владельца корневой папки, он должен быть "ftp:ftp".
Теперь можно запускать сервер.


Задача состоит в следующем:
Дать полный доступ пользователю к его домашней папке с авторизацией по логину/паролю данного пользователя.

Конфиг в будет следующим:

Листинг :
 
# Объявляем анонимный сервер с корнем в домашем каталоге пользователя myuser
<Anonymous ~myuser>                
                # От кого будет работать демон
        User                    myuser
        Group                   myuser
       
        # Установка владельца на новые файлы    
        UserOwner               myuser
        GroupOwner              myuser
       
        # Включаем запрос пароля
        AnonRequirePassword     on
       
        # Скрываем файлы пользователя root
        HideUser                root
       
        # Разрешаем все для нашего пользователя
        <Limit ALL>
                Order Allow, Deny
                AllowUser       myuser
        </Limit>
</Anonymous>

 

В статье рассмотрены только простые примеры, при помощи которых можно быстро поднять FTP сервер.
ProFTPD позволяет производить очень гибкую настройку, поэтому вариантов конфигураций очень много. Приводить хотя бы часть из них в статье считаю бессмысленым.


Источник: http://av-school.ru/article/a-47.html
Категория: FTP | Добавил: oleg (06.10.2009)
Просмотров: 1592 | Рейтинг: 0.0/0 |
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа

Beastie

Друзья сайта

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
links

Copyright MyCorp © 2024