Вход/Регистрация
Linux-сервер своими руками
вернуться

Колисниченко Денис Николаевич

Шрифт:

Направление передачи, как вы уже догадались, обозначается символами о — прием файла пользователем и i — прием файла сервером. Остается только отметить, что файл xferlog используется обоими серверами FTP — wu-ftpd и ProFTPD.

11.2.СерверProFTP

Альтернативой, и, на мой взгляд, достаточно хорошей, сервера wu-ftpd является сервер ProFTPD. Он намного проще в плане конфигурирования, чем сервер wu-ftpd, и обладает достаточно гибкими возможностями. Для его установки достаточно установить пакет proftpd. Подобно серверу wu-ftpd, ProFTPD может запускаться автоматически при запуске системы или вызываться суперсервером при наличии запроса на установку соединения. Первый режим называется standalone.

Сервер ProFTPD может вызываться с параметрами, указанными в табл. 11.4.

Параметры сервера ProFTPD Таблица 11.4 

Параметр Описание
– h Справочная информация
– n Запускает сервер в автономном режиме. Для этого в файле конфигурации нужно указать режим запуска standalone (см. ниже)
– d уровень_отладки Устанавливает уровень отладки сервера (1-5)
– с файл_конфигурации Задает использование альтернативного файла конфигурации вместо стандартного /etc/proftpd.conf
– p 0|1 Запрещает (0) или разрешает (1) использование постоянного пароля. Для получения более подробной информации (смотрите документацию по серверу)
– I Выводит список всех модулей, откомпилированных для использования сервером ProFTPD
– v Выводит версию

11.2.1. Файл /etc/proftpd.conf

Сервер ProFTPD использует всего один файл конфигурации. — /etc/proftpd.conf, который по своей структуре чем-то похож на файл конфигурации Web-сервера Apache (а именно — директивами конфигурирования).

В листинге 11.8 представлен простейший файл конфигурации сервера ProFTPD.

Листинг 11.8. Пример файла конфигурации /etc/proftpd.conf

# Этот файл устанавливает один сервер и одну

# учетную запись

ServerName "My ProFTPD server"

ServerType standalone

DefaultServer on

# Используем стандартный порт

Port 21

Umask 022

MaxInstances 30

# Пользователь и группа, обслуживающие сервер

User nobody

Group nobody

# Параметры корневого каталога. Блочная директива Directory

<Directory /*>

# Директива, определяющая параметр AllowOverwrite

 AllowOverwrite on

</Directory>

Директивы конфигурации делятся на две группы: директивы, определяющие некоторые параметры, и блочные директивы. Блочные директивы конфигурирования похожи на тэги языка HTML. С помощью блочных директив задаются блоки, содержащие директивы, которые определяют параметры (см. листинг 11.8). При этом используются начальные и конечные блочные директивы. Конечная директива имеет то же имя, что и начальная, но с наклонной чертой в начале. Например, начальная директива <Directory /*>, а конечная — </Directory> (см. листинг 11.8). Действия каждой пары директив распространяются только на блок, который они задают (который расположен между ними). Директива <Directory> определяет свойства какого-нибудь каталога. В вышеприведенном листинге (листинг 11.8) определяются свойства корневого каталога.

В табл. 11.5 представлены все директивы файла конфигурации сервера ProFTPD.

Директивы файла конфигурации сервера ProFTPD Таблица 11.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
AllowUser список_пользователей Разрешает доступ определенным пользователям. Используется в блоке 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, несмотря на то, что командой enroot корневой каталог был изменен
RequireValidShell on|off Разрешает или запрещает регистрацию при использовании оболочек (shells), которые не указаны в файле /etc/shells
ServerAdmin email Определяет email администратора сервера
ServerType Определяет режим работы сервера standalone (по умолчанию) или inetd. В первом случае сервер будет запускаться автоматически из стартовых сценариев системы, во втором — его будет запускать сервер inetd при попытке соединения
TimeoutIdle секунды Время в секундах, в течение которого пользователь имеет право не проявить активности. По умолчанию 60 (1 минута)
Umask маска Определяет права доступа для созданного файла. Маска — число в восьмеричной системе, определяющее набор прав доступа (см. главу 4)
User имя пользователя Имя пользователя, присвоенное демону ProFTP
UserAlias псевдоним пользователь Создает указанный псевдоним для указанного пользователя
<VirtualHost address> Создает виртуальный сервер

11.2.2. Ограничение доступа

Я считаю необходимым подробно рассмотреть блочную директиву Limit. Эта директива определяет вид и параметры доступа к тому или иному каталогу. Рассмотрим листинг 11.9.

Листинг 11.9. Пример использования директивы Limit

<Directory incoming>

 <Limit WRITE>

AllowAll

 </Limit>

 <Limit READ>

DenyAll

 </Limit>

</Directory>

Директива Directory определяет свойства каталога incoming, а директива Limit задает вид доступа к этому каталогу. Команда WRITE директивы Limit вместе с директивой AllowAll разрешает всем пользователям записывать информацию в этот каталог. Команда READ директивы Limit задает ограничение на чтение этого каталога. В рассматриваемом случае чтение запрещено для всех пользователей. Кроме команд WRITE и READ в директиве Limit можно задавать команды STOR и LOGIN (см. табл. 11.6).

  • Читать дальше
  • 1
  • ...
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: