Linux - Алексей Стахнов
Шрифт:
Интервал:
Закладка:
Файл 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 строка } – определяет, какой текст будет выдаваться в строке приветствия:
– full – имя хоста и версия сервера;
– brief – имя хоста;
– terse – ничего, кроме факта готовности к обслуживанию;
– text – произвольная строка текста;
• banner имя_файла – определяет текст сообщения, выдаваемого клиенту до ввода имени/пароля;
• hostname имя_хоста – определяет имя хоста по умолчанию (имя локального хоста);
• email адрес – адрес администратора;
• message имя_файла { LOGIN | CWD=имя_каталога { класс } } – содержимое файла выдается клиенту при входе или смене каталога;
• readme имя_файла { LOGIN | CWD=имя_каталога { класс } } – при входе или смене каталога сервер информирует клиента о наличии указанного файла и дате его создания или последней модификации.
Журнализация:
• log commands ???сок_типов – выводить в журнал все команды клиента, где список_типов—список через запятую слов real, guest и anonymous;
• log transfers список_типов список_направлений – выводить в журнал пересылки файлов, где список_типов – список через запятую слов real, guest и anonymous; список_направлений – список через запятую слов incoming и outbound;
• log security список_типов – выводить в журнал нарушения правил безопасности, где список_типов – список через запятую слов real, guest и anonymous;
• log syslog – перенаправлять сообщения о пересылках в syslog вместо файла xferlog;
• log sysiog+xferiog – направлять сообщения о пересылках в syslog и файл xferlog.
Виртуальные серверы:
• daemonaddress ip-адрес – прислушиваться к соединениям только по указанному адресу;
• virtual ip-адрес { root | banner | logfile } имя_файла – определить соответственно: корень файловой системы, файл, содержащий баннер приветствия, и журнал для указанного виртуального сервера;
• virtual ip-адрес { hostname | email } строка – определить имя хоста (отображаемое в приветствии) и адрес администратора для указанного виртуального сервера;
• virtual ip-адрес private – закрыть анонимный доступ по указанному адресу;
• virtual ip-адрес incmail email-адрес – кого извещать в случае анонимной загрузки файлов;
• virtual ip-адрес mailfrom email-адрес – какой обратный адрес подставлять при рассылке сообщений об анонимной загрузке файлов;
• defaultserver { deny | allow } имя_пользователя … – по умолчанию доступ разрешен всем;
• defaultserver private – закрыть анонимный доступ;
• defaultserver incmail email-адрес – кого извещать в случае анонимной загрузки файлов;
• defaultserver mailfrom email-адрес – какой обратный адрес подставлять при рассылке сообщений о анонимной загрузке файлов.
Права доступа:
• { chmod | delete | overwrite | rename | umask } { yes | no } список типов – разрешить/запретить пользователям выполнять соответствующее действие. По умолчанию – все разрешено. список_типов – список через запятую слов anonymous, guest, real или с1аэз=имя_класса;
• passwd-check { none | trivial | rfc822 } ({ enforce | warn }) – уровень проверки правильности вводимых анонимными пользователями в качестве пароля email-адресов и реакция сервера в случае ошибки:
– none – никакой проверки;
– trivial – строка должна содержать @;
– rfс822 – полная проверка согласно стандарту rfc-822;
– warn – если обнаружена ошибка, то выдавать предупреждение;
– enforce – если обнаружена ошибка, то не впускать пользователя;
• deny-email email-адрес – считать данный адрес неправильным;
• path-filter список-типов имя_файла_сообщения шаблон_допустимых_ имен шаблон_недопустимых … – когда пользователь типа из списка типов пытается загрузить файл на сервер, то сервер проверяет имя файла на соответствие регулярному выражению, указанному в шаблоне допустимых имен, и на несоответствие ни одному из регулярных выражений в шаблонах недопустимых имен;
• upload [absolute | relative] [class=имя-класса]. [—] корень шаблон)_каталога { yes | no } owner group mode [dirs | nodirs] [dir_mode] – определяет каталоги, в которые разрешено/запрещено записывать файлы пользователям из указанного класса.
Все создаваемые файлы будут иметь соответствующие права доступа и принадлежность;
• throughput – позволяет задать скорость передачи определенных файлов на определенные хосты;
• anonymous – root корень [класс] … – определяет корневой каталог (chroot) для анонимных пользователей указанного класса и их домашний каталог;
• guest-root корень [интервал-uid] … корень – определяет аргумент chroot для гостевых пользователей и их домашний каталог. Можно задавать отдельные uid или интервалы через дефис;
• deny-uid интервал … – запрещает доступ к серверу определенным пользователям и может использоваться вместо файла ftpusers;
• deny-gid интервал … – запрещает доступ к серверу определенным группам пользователей и может использоваться вместо файла ftpusers;
• allow-uid интервал … – разрешает доступ к серверу определенным пользователям и может использоваться вместо файла ftpusers;
• allow-gid интервал … – разрешает доступ к серверу определенным группам пользователей и может использоваться вместо файла ftpusers;
• restricted-uid интервал … – разрешить реальному или гостевому пользователю доступ вовне его домашнего каталога;
• restricted-gid интервал … – разрешить группе пользователей доступ вовне его домашнего каталога;
• unrestricted-uid интервал … – запретить реальному или гостевому пользователю доступ вовне его домашнего каталога;