Шрифт:
Интервал:
Закладка:
Остается только отметить, что файл xferlog используется обоими серверами FTP — wu-ftpd и ProFTPD.
15.2. Сервер ProFTP
15.2.1. Установка и запуск ProFTPD
Альтернативой, и, на мой взгляд, достаточно хорошей, серверу wu-ftpd является сервер ProFTPD. Он намного проще в конфигурировании, чем сервер wu-ftpd, и обладает достаточно гибкими возможностями. Для его установки достаточно установить пакет proftpd. Подобно серверу wu-ftpd, ProFTPD может запускаться автоматически при запуске системы или вызываться суперсервером при наличии запроса на установку соединения. Сервер ProFTPD может вызываться с ключами, указанными в табл. 15.4.
Параметры сервера ProFTPD Таблица 15.4
Ключ Назначение -h Справочная информация -n Запускает сервер в автономном режиме. Для этого в файле конфигурации нужно указать режим запуска standalone -d уровень_отладки Устанавливает уровень отладки сервера (1-5) -с файл_конфигурации Задает использование альтернативного файла конфигурации вместо стандартного /etc/proftpd.conf -p 0 | 1 Запрещает (0) или разрешает (1) использование постоянного пароля. Для получения более подробной информации смотрите документацию по серверу -l Выводит список всех модулей, откомпилированных для использования сервером ProFTPD -v Выводит версию15.2.2. Настройка ProFTPD. Файл /etc/proftpd.conf
Сервер ProFTPD использует всего один файл конфигурации — /etc/proftpd.conf.
В листинге 15.7 представлен простейший файл конфигурации сервера ProFTPD.
Листинг 15.7. Пример файла конфигурации /etc/proftpd.conf
# Этот файл устанавливает один сервер и одну учетную запись
ServerName "My ProFTPD server"
ServerType standalone
DefaultServer on
# Используем стандартный порт
Port 21
Umask 022
MaxIstances 30
# Пользователь и группа, обслуживающие сервер
User nobody
Group nobody
# Параметры корневого каталога. Блочная директива Directory
<Directory /*>
# Директива, определяющая параметр AllowOverwrite
AllowOverwrite on
</Directory>
Директивы конфигурации делятся на две группы: директивы, определяющие параметры, и блочные директивы. Блочные директивы конфигурирования похожи на тэги языка HTML: конечная директива имеет то же имя, что и начальная, но с наклонной чертой в начале. Например, начальная директива <Directory /*>, а конечная — </Directory > (листинг 15.7).
Действия каждой пары директив распространяются только на блок, расположенный между ними. Директива <Directory> определяет свойства какого-нибудь каталога. В вышеприведенном листинге определяются свойства корневого каталога.
В таблице 15.5 представлены все директивы файла конфигурации сервера ProFTPD.
Директивы файла конфигурации сервера ProFTPD Таблица 15.5
Директива Описание AccessGrantMsg сообщение Ответное сообщение, которое будет отправлено пользователю в случав его регистрации или получения анонимного доступа. Символы %u будут заменены на имя пользователя которое он ввел при регистрации Allow from all | host | network [,host | network[, …]] Используется внутри блока Limit. Ограничивает доступ к серверу (а именно, разрешает доступ). По умолчанию allow from all AllowAll Разрешает доступ к блокам Directory, Anonymous, Limit AllowForeignAddress on | off Разрешает клиенту указывать при установке соединения адрес, который не соответствует ему. По умолчанию off. Может использоваться в блоках VirtualHost, Anonymous, <Global> AllowGroup список_групп Разрешает доступ определенным группам. Используется в блоке Limit AltowUser список_пользователей Разрешает доступ определенным пользователям. Используется в блоке Limit AnonRequirePassword on | off Требует пароль при анонимной регистрации. Пароль должен совпадать с паролем того пользователя, который запустил демон. По умолчанию данная опция выключена <Anonymous directory> Создает анонимную учетную запись, directory — корневой каталог анонимного сервера AuthGroupFile путь Позволяет указать путь к альтернативному файлу group. По умолчанию используется файл /etc/group AuthUserFile путь Указывает альтернативный файл passwd Bind ip-адрес Разрешает привязку дополнительного IP-адреса к основному или виртуальному хосту DefaultRoot каталог Задает корневой каталог по умолчанию Deny from all | host | network Запрещает доступ к серверу. Используется в блоке Limit DenyAll Запрещает анонимным пользователям доступ к объектам, указанным в блоке Limit DenyUser список_пользователей Запрещает доступ определенным пользователям <Directory> путь Используется в VirtualHost, Anonymous для того, чтобы определить особенные параметры доступа к каталогу и его подкаталогам DisplayFirstChdir файл_сообщения Указанный текстовый файл будет выводиться, когда пользователь впервые за время сеанса войдет в данный каталог. Используется в VirtualHost, Directory, Anonymous DisplayLogin файл_сообщения Этот файл будет отображен, когда пользователь зарегистрируется <Global> Используется для задания параметров, которые будут использоваться как основным, так и всеми виртуальными серверами <Limit command> Ограничение на выполнение данной FTP-команды, например, LOGIN, WRITE, READ, STOR MaxClients number | none сообщение Ограничение на количество клиентов. Приведенное сообщение будет отображено, если пользователю будет отказано в доступе. Блоки Anonymous, Global MaxLoginAttempts Максимальное количество попыток зарегистрироваться. По умолчанию 3. Блоки VirtualHost, Global Order allow, deny | deny, allow Порядок выполнения директив Allow и Deny в блоке Limit PersistentPassword on | off При значении on будут использованы системные файлы /etc/passwd и /etc/group, несмотря на то, что командой chroot корневой каталог был изменен RequireValidShell on | off Разрешает или запрещает регистрацию при использовании оболочек (shells), которые не указаны в файле /etc/shells ServerAdmin email Определяет email администратора сервера ServerType Определяет режим работы сервера standalone (по умолчанию) или inetd. В первом случае сервер будет запускаться автоматически из стартовых сценариев системы, во втором — его будет запускать сервер inetd при попытке соединения TimeoutIdle секунды Время в секундах, в течение которого пользователь имеет право не проявить активности. По умолчанию 60 (1 минута) Umask маска Определяет права доступа для созданного файла. Маска — число в восьмеричной системе, определяющее набор прав доступа (см. главу 2) User имя пользователя Имя пользователя, присвоенное демону ProFTP UserAlias псевдоним пользователь Создает указанный псевдоним для указанного пользователя <Virtual Host address> Создает виртуальный сервер15.2.3. Разграничение доступа к серверу ProFTP
- Операционная система UNIX - Андрей Робачевский - Программное обеспечение
- Разработка приложений в среде Linux. Второе издание - Майкл Джонсон - Программное обеспечение
- Искусство программирования для Unix - Эрик Реймонд - Программное обеспечение
- Linux - Алексей Стахнов - Программное обеспечение
- Fedora 8 Руководство пользователя - Денис Колисниченко - Программное обеспечение
- Недокументированные и малоизвестные возможности Windows XP - Роман Клименко - Программное обеспечение
- Изучаем Windows Vista. Начали! - Дмитрий Донцов - Программное обеспечение
- Windows Vista - Виталий Леонтьев - Программное обеспечение
- Архитектура операционной системы UNIX - Морис Бах - Программное обеспечение
- Windows Vista. Трюки и эффекты - Юрий Зозуля - Программное обеспечение