/etc/ftpd.conf

Конфигурационный файл для ftpd

Синтаксис:

/etc/ftpd.conf

Платформы:

ЗОСРВ «Нейтрино»

Описание:

В файле /etc/ftpd.conf определены различные конфигурационные опции для ftpd, которые применяются после аутентификации соединения пользователя.

Каждый прошедший аутентификацию пользователь является членом класса (согласно определению в файле /etc/ftpusers), от которого зависит, какие записи в файле соответствуют данному пользователю. При синтаксическом анализе записей различают следующие специальные классы:

all
Соответствует любому классу.
none
Не соответствует ни одному классу.

Файл /etc/ftpd.conf содержит набор строк, каждая из которых содержит конфигурационную директиву или комментарий, либо является пустой. Директивы, которые представленные в файле последними, переопределяют значения, заданные предыдущими директивами. Это позволяет использовать "групповые символы" для определения значений по умолчанию, после чего обеспечить переопределение на основе классов.

"\" – символ начала управляющей последовательности. Этот символ используется для экранирования символа комментария или, если он является последним символом в строке, – для распространения конфигурационной директивы на несколько строк. "#" – символ комментария. Все последующие символы до конца строки игнорируются (за исключением случаев, когда этот символ экранируется символом начала управляющей последовательности).

Команда STAT ftpd возвращает параметры класса для текущего пользователя в соответствии с файлом /etc/ftpd.conf.

Каждая конфигурационная строка может выглядеть как одна из следующих:

checkportcmd класс [off]
Проверить, действительна ли команда PORT. Выполнение команды PORT завершается неуспешно, если указанный IP-адрес не соответствует параметрам соединения команды FTP или номер удаленного порта TCP меньше, чем значение IPPORT_RESERVED. Эта опция настоятельно рекомендуется к использованию, особенно в компаниях с высоким уровнем риска скрытых атак по FTP. Если аргумент класс принимает значение none или off, эта возможность отключается.
chroot класс [формат_пути]
Указать корневой каталог, используемый chroot() при входе в систему. Имя каталога создается путем синтаксического анализа аргумента формат_пути. Можно использовать следующие управляющие последовательности:
Управляющая последовательность: Описание:
%c Имя класса
%d Основной каталог пользователя
%u Имя пользователя
%% Символ %
Если аргумент формат_пути не задан или аргумент класс принимает значение none, каталогом по умолчанию для пользователей REAL (или основным каталогом для пользователей GUEST и CHROOT) является /.
classtype класс тип
Установить для типа класса значение тип, где аргумент тип принимает одно из следующих значений:
CHROOT
Пользователи, определенные функцией chroot() (в соответствии с /etc/ftpchroot). Функция chroot() выполняется после входа в систему.
GUEST
Гостевые пользователи (в соответствии с учетными данными пользователей anonymous и ftp). Функция chroot() выполняется после входа в систему.
REAL
Обычные пользователи.
conversion класс суффикс [тип деактивация команда]
Настроить автоматическое преобразование inline-файла. Если извлекаемый файл завершается суффиксом и существует реальный файл (без суффикса), вместо содержимого файла возвращается результат команды.
суффикс
Суффикс для инициирования преобразования.
тип
Список действительных типов файлов для преобразования. Допустимыми являются следующие типы: f (файл) и d (каталог).
деактивация
Файл, предотвращающий преобразование (если он существует). Имя файла "." препятствует выполнению этого действия (т.е. преобразование разрешено без ограничений).
команда
Выполняемая команда преобразования. Поскольку для выполнения команды используется функция execv(), первым словом должно быть полное путевое имя команды. Все инстанции слова %s в команде заменяются требуемым файлом (без суффикса).

Директивы преобразования, указанные в файле далее, переопределяют директивы преобразования с таким же суффиксом.
display класс [файл]
Вывести содержимое файла (если он существует) при каждом переходе пользователя в другой каталог. Поддерживаются управляющие последовательности. Для получения дополнительной информации см. раздел "Display file escape sequences" ("Просмотр управляющих последовательностей файла" в разделе ftpd в документации по NetBSD).

Если аргумент файл не задан или аргумент класс принимает значение none, эта возможность отключается.
limit класс число [файл]
Ограничить максимальное число параллельных соединений для класса значением число, где 0 указывает на отсуствие ограничений для соединений. Если предел превышен и аргумент файл определен, то пользователю выводится содержимое файла. Эта строка игнорируется, если аргумент класс имеет значение none или значение число не определено.
homedir класс [формат_пути]
Определить каталог, к которому следует перейти при входе в систему, и использовать его в качестве основного каталога пользователя для замены тильды в путевых именах и т.д. Синтаксический анализ аргумента формат_пути выполняется в соответствии с директивой chroot.

Если аргумент формат_пути не задан или переменная класс принимает значение none, то основной каталог по умолчанию является основным каталогом для пользователей REAL или каталогом / для пользователей GUEST и CHROOT.
maxtimeout класс время
Установить максимальный таймаут, запрашиваемый клиентом (значение по умолчанию – 2 часа). Этот период не может составлять меньше 30 секунд или соответствовать значению директивы timeout. Эта строка игнорируется, если аргумент класс принимает значение none или аргумент время не задан.
modify класс [off]
Если аргумент класс принимает значение none или указано значение off, необходимо отключить команды CHMOD, DELE, MKD, RMD, RNFR и UMASK. В противном случае эти команды следует включить.
motd класс [файл]
Вывести содержимое файла файл в качестве "сообщения дня"после входа в систему. Поддерживаются управляющие последовательности. Для получения дополнительной информации см. раздел "Display file escape sequences" ("Просмотр управляющих последовательностей файла" в разделе ftpd в документации по NetBSD).

Если аргумент файл не задан или аргумент класс принимает значение none, эта возможность отключается.
notify класс [fileglob]
Уведомлять пользователя о любых файлах, соответствующих шаблону fileglob при каждом переходе пользователя в другой каталог. Если аргумент fileglob не определен или аргумент класс принимает значение none, эта опция не используется.
passive класс [off]
Если аргумент класс принимает значение none или off, пассивные соединения (PASV/LPSV/EPSV) не допускаются.
portrange класс мин макс
Установить диапазон номеров портов, используемых для порта пассивных данных. Значение макс должно быть больше значения мин, и оба эти значения должны находиться в интервале между IPPORT_RESERVED и IPPORT_ANONMAX.
rateget класс скорость
Установить максимальный коэффициент скорости входящей передачи (RETR) для класса с помощью аргумента скорость (в байтах в секунду). Если аргумент скорость принимает значение 0, коэффициент не определен. Можно использовать дополнительный суффикс, изменяющий интерпретацию аргумента скорость следующим образом:
rateput класс скорость
Установить максимальный коэффициент скорости исходящей передачи (STOR) для класса с помощью аргумента скорость (в байтах в секунду). Синтаксический анализ аргумента скорость выполняется в соответствии с rateget.
template класс [ссылочный_класс]
Определить ссылочный_класс в качестве шаблона для класса. Все последующие ссылки на ссылочный_класс в директивах также будут применены к членам класса класс. Можно определить шаблон класса, что упростит определение других классов с общими атрибутами без необходимости дублирования операций. Можно определить только один шаблон. Если аргумент ссылочный_класс не задан, отключите шаблон для класса.
timeout класс время
Установить таймаут неактивности (значение по умолчанию – 15 минут). Этот период не может составлять меньше 30 секунд или превышать значение maxtimeout. Эта строка игнорируется, если аргумент класс принимает значение none или аргумент время не задан.
umask класс значение_umask
Установить для umask значение значение_umask. Эта строка игнорируется, если аргумент класс принимает значение none или аргумент значение_umask не задан.
upload класс [off]
Если аргумент класс принимает значение none или указано значение off, необходимо отключить команды APPE, STOR, STOU и изменить команды CHMOD, DELE, MKD, RMD, RNFR, UMASK. В противном случае эти команды следует включить.

Настройки по умолчанию

Используются следующие значения по умолчанию:

checkportcmd all classtype chroot CHROOT classtype guest GUEST classtype real REAL display none limit all -1 # unlimited connections maxtimeout all 7200 # 2 hours modify all motd all motd notify none passive all timeout all 900 # 15 minutes umask all 027 upload all modify guest off umask guest 0707

Классификация:

Базовые подсистемы ЗОСРВ «Нейтрино», NetBSD

Тематические ссылки:

/etc/ftpchroot, ftpd, ftpusers




Предыдущий раздел: Конфигурационные файлы