Linux - Алексей Стахнов
Шрифт:
Интервал:
Закладка:
• unrestricted-gid интервал … – запретить группе пользователей доступ вовне его домашнего каталога;
• site-exec-max-lines число [класс] … – ограничивает число строк, посылаемых командой site exec;
• dns refuse_mismatch файл_с_сообщением [override] – выдавать сообщение, если прямой и обратный адреса клиента не совпадают. Если не указано override, то прекращать сеанс;
• dns refuse_no_reverse файл_с_сообщением [override] – выдавать сообщение, если клиент не имеет обратного адреса. Если не указано override, то прекращать сеанс.
Разное:
• alias строка имя_каталога – позволяет переходить в указанный каталог по команде cd строка из любого каталога;
• cdpath имя_каталога – добавляет каталог к переменной cdpath, которая используется в качестве списка поиска для команды cd;
• compress { yes | no } шаблон_классов … – разрешить/запретить компрессию/декомпрессию для классов, подпадающих под шаблон;
• tar { yes | no } шаблон_классов … – разрешить/запретить использование tar для классов, подпадающих под шаблон;
• shutdown имя_управляющего_файла – файл содержит описание для остановки сервера;
• passive address возвращаемый_iр-адрес cidr_шаблон – если клиент выдает команду pass, то сервер определяет возвращаемый адрес исходя из соответствия IP-адреса клиента CIDR-шаблону;
• pasive ports cidr_шаблон min max – определяется интервал портов, из которых сервер выбирает порт для прослушивания случайным образом и передает его номер клиенту;
• pasv-allow класс шаблон_адресов – позволяет пользователям указанного класса соединяться не только с исходного адреса, но и с заданных шаблоном адресов;
• port-allow класс шаблон_адресов – позволяет пользователям данного класса указывать в команде port адрес, подходящий под шаблон;
• islong команда [параметры] – какую команду и параметры использовать для генерации расширенного списка файлов в каталоге;
• isshort команда [параметры] – какую команду и параметры использовать для генерации списка файлов в каталоге;
• lsplain команда [параметры] – какую команду и параметры использовать для генерации списка файлов в каталоге;
• incmail email-адрес – кого извещать в случае анонимной загрузки файлов;
• maiiserver имя-хоста – какой почтовый сервер использовать для рассылки сообщений об анонимной загрузке файлов;
• mailfrom email-адрес – какой обратный адрес подставлять при рассылке сообщений об анонимной загрузке файлов.
Файл ftpservers
Этот файл определяет набор файлов конфигурации для каждого виртуального сервера. Каждая строка в этом конфигурационном файле описывает виртуальный сервер и состоит из двух полей:
• имя и IP-адрес виртуального сервера;
• имя каталога, содержащего конфигурационные файлы. Имена файлов фиксированы: ftpaccess, ftpusers, ftpgroups, ftphosts, ftpconversions. Если какой-либо конфигурационный файл отсутствует, то вместо него используется конфигурационный файл основного сервера.
Файл ftpconversions
В этом файле каждая строка описывает возможное преобразование файлов «налету» и состоит из 8-ми полей, разделенных двоеточиями:
• удаляемый префикс;
• удаляемый суффикс;
• добавляемый префикс;
• добавляемый суффикс;
• используемая для преобразования внешняя программа и ее параметры;
• типы преобразуемого файла: Т_REG – обычный файл, T_ASCII – текстовый, T_DIR – каталог или сочетание перечисленных типов;
• опции: O_COMPRESS, O_UNCOMPRESS, O_TAR или их сочетание;
• комментарий к строке преобразования.
Файл ftpgroups
Этот файл используется для поддержки функционирования нестандартных команд типа site group и site gpass. В файле ftpgroups находятся строки, состоящие из трех полей, разделенных двоеточием:
• задаваемое клиентом имя группы;
• зашифрованный пароль группы;
• реальное имя группы.
Файл ftphosts
Этот файл предназначен для ограничения доступа к FTP-серверу с определенных хостов. Используется всего две команды:
• allow имя_пользователя шаблон_IР-адреса … – разрешить доступ;
• deny имя_пользователя шаблон_IР-адреса … – запретить доступ.
Файл ftpusers
Этот файл предназначен для того чтобы запретить некоторым реальным пользователям доступ к FTP-серверу. Используется обычно для повышения безопасности системы, чтобы исключить доступ пользователей типа root, news и т. п.
Параметры запуска программ, входящих в пакет
ftpd
Эта программа – собственно, сервер. При запуске можно использовать следующие ключи (приведены только основные):
• -d – выдавать отладочную информацию;
• -l – вести протокол по каждой сессии;
• -t число_секунд – время бездействия клиента, после которого сервер автоматически разрывает соединение (может быть изменен клиентом);
• -T число_секунд – время бездействия клиента, после которого сервер автоматически разрывает соединение;
• -а – использовать файл ftpaccess;
• -A – не использовать ftpaccess;
• -i – вести протокол о полученных файлах в файле xferlog;
• -I – запрещает использовать протокол ident;
• -о – записывать имена переданных файлов в xferlog;
• -X – делать записи о полученных и переданных файлах в файле syslog;
• -u umask – маска файла по умолчанию;
• -w – записывать заходы в wtmp;
• -W – не записывать заходы в wtmp;
• -s – самостоятельный запуск без использования inetd;
• -S – самостоятельный запуск без использования inetd, отсоединиться от терминала;
• -р порт – управляющий порт, по умолчанию берется FTP-порт из файла /etc/services, при использовании inetd не применяется;
• -P порт – порт данных, по умолчанию берется значение ftp-data 20 (20-й порт) из файла /etc/services;
• -q – использовать файлы для хранения номеров процессов;
• -Q – не использовать файлы для хранения номеров процессов; при использовании этого параметра не будет работать ограничение на количество пользователей в классе;
• -r rootdir – сделать chroot (определение корневого каталога для программы) немедленно после запуска, не дожидаясь ввода имени пользователя; используется для построения защищенной (может быть избыточно) системы.
ftpwho
Эта утилита показывает информацию о каждом подключенном в данный момент клиенте.
ftpcount
Утилита показывает текущее и максимальное количество пользователей для каждого класса пользователей.
ftpshut
Утилита используется для безаварийного завершения работы FTP-сервера. Представляют интерес следующие ключи запуска:
• -l – минуты – позволяет задать время, за сколько минут до завершения работы сервера запрещать установку новых соединений;
• -d минуты – задает время, за сколько минут до завершения работы сервера разрывать текущие соединения;
• время_завершения – время завершения работы сервера. Может быть задано в следующем виде:
– now – немедленно завершить работу сервера;
– +минут – через сколько минут завершить работу сервера;
– ччмм – время завершения работы сервера.
ftprestart
Утилита производит запуск FTP-сервера, если он был завершен командой stop.
ckconfig
Утилита, позволяющая проверить конфигурацию FTP-сервера. Позволяет выявить случаи явных ошибок.
Формат файла журнала xferlog
Как и положено, FTP-сервер ведет журнал событий. Файл журнала событий называется xferlog, и в нем протоколируется любой прием или передача файла. Информация о событии записывается строкой, состоящей из более чем десятка полей. Ниже приведено описание полей записи.
• Название дня недели, например sat.
• Название месяца.
• День.
• Часы: минуты: секувды.
• Год.
• Продолжительность передачи в секундах.
• Имя удаленного хоста.
• Размер файла в байтах.
• Имя файла.
• Тип передачи:
– a – текстовый;
– b – бинарный.
• Действие над файлом в процессе передачи:
– C – сжат;
–U – разархивирован;
– T – обработан программой tar;
– _ (символ подчеркивания) – не было произведено никаких действий.
• Направление передачи:
– о – с сервера;
– i – на сервер.
• Тип пользователя:
– a – анонимный;
– g – guest;
– r – real.
• Имя реального пользователя или идентификационная строка для анонимного или гостевого пользователя.
• Имя сервиса.
• Способ аутентификации:
– 0 – отсутствует;
– 1 – ident (rfc931).
• Аутентифицированный идентификатор пользователя. Если аутентификация не использовалась – *.
• Состояние передачи:
– с – передача была закончена;
– i – не закончена.
Безопасность
После (а лучше во время) конфигурации очень желательно подумать о безопасности FTP-сервера. Зачастую неправильно сконфигурированный FTP-сервер становится тем слабым местом, через которое осуществляется прорыв безопасности вашей операционной системы.
Чрезвычайно важно, чтобы ваши анонимные и гостевые пользователи FTP не имели доступа к реальному командному процессору. Тогда, даже если они по каким-либо причинам смогут покинуть окружение FTP, то не смогут выполнить никаких посторонних задач. Для обеспечения этого требования убедитесь, что в файле /etc/passw у пользователей guest и anonymous в поле, где находится командная оболочка пользователя, находится что-то типа /dev/null.