Шрифт:
Как вы уже знаете, конфигурационные файлы находятся в каталоге /etc. В идеале сервер wu-ftp использует следующие конфигурационные файлы:
• ftpaccess
• ftpservers
• ftpusers
• ftphosts
• ftpgroups
• ftpconversion
Рассмотрим подробно каждый конфигурационный файл.
Файл ftpaccess
Этот конфигурационный файл, используется для определения прав доступа к серверу. Здесь определяется, какие и сколько пользователей, могут получить доступ к серверу, а также важные элементы настройки безопасности сервера.
Рассмотрим подробно конфигурационные параметры, используемые в этом файле.
Управление правами доступа:
• autogroup имя_группы класс … – в том случае, если анонимный пользователь является членом указанного класса, то сервер использует заданную группу, что позволяет анонимным пользователям из разных классов получать доступ к различным наборам каталогов;
• class класс typelist шаблон_адресов … – позволяет закрепить клиента за указанным классом, исходя из IP-адреса и типа клиента, где:
– typelist – список из ключевых слов, обычно anonymous, guest и real (зарегистрированные на локальном хосте – /etc/passwd), через запятую;
– шаблон_адресов – шаблон имени или адреса хоста клиента или адрес: маска или имя файла (имя файла должно начинаться с /, а файл – содержать шаблоны адресов);
• deny шаблон_адресов файл_с_текстом_сообщения – запретить доступ клиентов с указанного адреса с выдачей текста сообщения;
• guestgroup имя_группы … – если реальный пользователь является членом указанной группы, то с ним поступают так же, как с анонимным. Вместо имени группы можно использовать номер, перед которым надо поставить знак процента, или интервал номеров, или звездочку для всех групп;
• guestuser имя_пользователя … – аналогично guestgroup, НО используется имя реального пользователя;
• realgroup имя_группы … – инвертирует действие guestgroup и guestuser;
• realuser имя_пользователя … – инвертирует действие guestgroup и guestuser;
• defumask umask [класс] – задание umask, применяемой при создании файлов;
• keepalive { yes | no } – установить tcp so_keepalive;
• timeout accept секунд – сколько ожидать входного соединения для передачи данных (pasv);
• timeout connect секунд – сколько ожидать установления выходного соединения для передачи данных (port);
• timeout data секунд – максимальный период неактивности пользователя при передаче данных;
• timeout idle секунд – сколько ожидать следующей команды;
• timeout maxidle секунд – поскольку клиент имеет возможность установить idle самостоятельно, параметр maxidle позволяет установить верхний предел для клиента;
• timeout RFC931 секунд – максимальное время ожидания ответа для протокола ident;
• file-limit [raw] { in | out | total } число [класс] – ограничивает число передаваемых файлов;
• byte-limit [raw] { in | out | total } число [класс] – ограничивает число передаваемых байтов;
• limit-time { * | anonymous | guest } минут – ограничение времени сессии. Реальные пользователи не ограничиваются никогда;
• guestserver [имя_серверного_хоста] – гостевой и анонимный доступ предоставляется только к указанному хосту. Имеет смысл, если сервер обслуживает несколько виртуальных доменов;
• limit класс число временной_интервал имя_файла_с_сообщением – ограничение на число одновременно работающих клиентов из данного класса. Проверка производится только в момент входа. Если к сеансу применимо несколько команд limit, то используется первая;
• noretrieve [absolute | relative] { class=класс } имя_файла … – запретить клиенту читать указанные файлы. Если имя начинается с /, то только этот файл, иначе любой файл с соответствующим именем. Если указан каталог, то любой файл из этого каталога;
• allowretrieve [absolute | relative] { class=класс } имя_файла … – отменить действие директивы noretrieve;
• loginfaiis число – после указанного числа неудачных попыток зайти на сервер, сделать запись в журнале и разорвать соединение;
• private { yes | no } Нестандартные команды site group и site gpass позволяют пользователю поменять текущую группу.
Выдача сообщений клиенту:
• greeting { full | brief | terse | text строка } – определяет, какой текст будет выдаваться в строке приветствия: