Чтение онлайн

ЖАНРЫ

Сетевые средства Linux

Смит Родерик В.

Шрифт:

Основное назначение анонимного FTP-сервера — обеспечивать передачу файлов с сервера на клиентский компьютер. На анонимном FTP-сервере можно разместить программы, документацию и другие сведения, которые вы собираетесь предоставить всем желающим. В состав HTML-документов можно включать ссылки на файлы, находящиеся на анонимном FTP-сервере; такие ссылки должны начинаться последовательностью символов

ftp://
(например,
ftp://ftp.threeroomco.com/pub/manual.pdf
). Некоторые особенности работы подобных FTP-серверов требуют специального рассмотрения.

• Файлы, расположенные на анонимном FTP-сервере, копируются в одном направлении: с сервера на клиентский компьютер. Подобным образом настроено большинство Web-серверов. Существуют исключения из данного правила, но файлы, скопированные на анонимный FTP-сервер, обычно становятся недоступными

остальным пользователям. К подобным мерам администраторы прибегают для того, чтобы их компьютеры не стали пунктом для обмена незаконной информацией. Если вы хотите получать файлы от удаленных пользователей, лучше всего настроить сервер так, чтобы перед передачей данных пользователь должен был зарегистрироваться на сервере. В качестве альтернативы FTP-серверу можно рассмотреть обмен документами по электронной почте.

• Файлы, расположенные на анонимном FTP-сервере, доступны всем желающим. Это означает, что на том компьютере, на котором размещен анонимный FTP-сервер, нельзя размещать важные данные. Для того чтобы организовать защиту системных файлов, пользователю, обратившемуся на анонимный FTP-сервер, предоставляется лишь ограниченное подмножество файловой системы. Вся информация, находящаяся за пределами выделенной области, скрыта от него. На большинстве FTP-серверов для обеспечения защиты создается поддерево chroot, которое будет рассматриваться в главе 23.

Внимание

Несмотря на то что поддерево

chroot
повышает уровень защиты системы, оно не гарантирует ее безопасность. Лучше всего удалить всю секретную информацию с компьютера, на котором работает анонимный FTP-сервер. В результате, даже если взломщику удастся проникнуть в систему, он не сможет похитить важные данные.

Если FTP-сервер использует поддерево

chroot
, вам придется скопировать в соответствующие каталоги некоторые системные конфигурационные файлы. Во многих пакетах, реализующих FTP-серверы для системы Linux, такие копии файлов создаются по умолчанию. Некоторые серверы, в том числе ProFTPd, перед тем как ограничить сферу своего доступа поддеревом
chroot
, имеют возможность прочитать свои конфигурационные файлы, поэтому объем данных, которые необходимо скопировать в каталоги поддерева, остается минимальным.

Некоторые варианты конфигурации FTP-сервера (в особенности это касается ProFTPd) лучше работают при запуске сервера посредством сценария SysV. В других случаях нормальная работа обеспечивается и при использовании суперсервера (это справедливо для WU-FTPD). Одна из особенностей настройки FTP-сервера состоит в том, что системный вызов

chroot
может использоваться только в том случае, если программа запускается от имени пользователя
root
. Если в конфигурационном файле суперсервера указан запуск FTP-сервера от имени другого пользователя, создать поддерево
chroot
невозможно. (Как было сказано ранее, вскоре после запуска FTP-сервер переходит к работе с ограниченными полномочиями, но происходит это после вызова системной функции
chroot
.)

Для работы анонимного FTP-сервера необходимо, чтобы некоторые файлы располагались в определенных каталогах. Этот вопрос будет подробнее рассмотрен далее в этой главе.

Обеспечение безопасности при работе анонимного FTP-сервера

Поскольку анонимный FTP-сервер доступен всем желающим, он может создавать серьезную угрозу для системы. Считается, что поддерживать на компьютере анонимный FTP-сервер не более опасно, чем Web-сервер или почтовый сервер. Однако, как показывает опыт многих администраторов, риск оказывается намного больше. Одна из причин состоит в том, что в защите многих программ, реализующих FTP-серверы (и особенно в WU-FTPD) были обнаружены многочисленные недостатки. Еще один источник опасности связан с тем, что FTP-сервер обеспечивает двунаправленную передачу данных, поэтому, если взломщику удастся воспользоваться недостатками защиты и выйти за пределы поддерева

chroot
, он сможет изменить конфигурацию системы в соответствии со своими потребностями. По сравнению с FTP-сервером почтовый сервер дает злоумышленнику гораздо меньше возможностей для воздействия на систему. Это связано с особенностями обработки почты.

Одно из положительных качеств анонимного FTP-сервера состоит в том, что он не позволяет перехватить пароль. Связано это с тем, что при обращении на анонимный FTP-сервер пользователь может указать любой пароль на свой выбор. (Большинство

серверов предлагает пользователю ввести в качестве пароля свой почтовый адрес.) С этой точки зрения анонимный FTP-сервер является более защищенным, чем обычный FTP-сервер.

Если вы сконфигурируете одну программу для работы в качестве как анонимного, так и обычного FTP-сервера, вы тем самым объедините недостатки обоих типов серверов. Лучше всего, если анонимный FTP-сервер будет поддерживать только анонимные обращения (по крайней мере от внешних пользователей). Чтобы повысить уровень защиты, минимизируйте число учетных записей на компьютере, на котором работает анонимный сервер, и запретите запуск ненужных серверов.

Опции, используемые для настройки анонимного FTP-сервера

Большинство FTP-пакетов, поставляемых в составе различных версий Linux, полностью или частично сконфигурированы для функционирования в качестве анонимного FTP-сервера. Для того чтобы окончить настройку, вам надо приложить лишь минимальные усилия. В данном разделе описываются опции, позволяющие реализовать анонимный FTP-сервер как с помощью WU-FTPD, так и посредством ProFTPd. Вначале будет рассмотрено создание дерева каталогов (эта задача решается одинаково для обоих серверов), а затем — средства конфигурации для каждого из серверов.

Создание поддерева каталогов

Первый шаг по организации работы FTP-сервера — это создание поддерева каталогов. Как правило, корнем этого поддерева является каталог

/home/ftp
, но при необходимости вы можете разместить его в другой позиции файловой системы. В большинстве случаев в качестве владельца каталогов указывается
root
, либо пользователь, который должен непосредственно заниматься поддержкой FTP-узла, а права доступа к каталогам задаются равными 755 (
rwxr-xr-x
). Это позволяет администратору редактировать файлы, содержащиеся в каталоге, но другим пользователям запись данных запрещена. В отличие от каталогов, при определении прав доступа к файлам не устанавливается бит исполняемой программы.

В большинстве случаев в составе поддерева FTP задаются следующие подкаталоги.

• 

pub
. В этом каталоге размещаются файлы, предназначенные для копирования на пользовательские компьютеры. Вы можете создавать в каталоге
pub
любую структуру подкаталогов и помещать в них любые файлы. Необходимо лишь обеспечить, чтобы пользователь имел право чтения этих файлов.

• 

bin
. Для выполнения некоторых действий FTP-сервер обращается к другим программам. Эти программы должны находиться в каталоге
/bin
(путь к каталогу определяется относительно корневого каталога, заданного с помощью функции
chroot
). Чаще всего серверу требуется утилита
ls
, кроме того, в процессе работы ему могут понадобиться программы
tar
,
gzip
и
zcat
(последний файл представляет собой символьную ссылку на
gzip
). Установив FTP-сервер, вы, возможно, обнаружите, что в каталоге
bin
уже находятся некоторые программы, причем размер их превышает размер соответствующих программ, находящихся в каталоге
/bin
системы. Причина в том, что при установке FTP-сервера в состав исполняемого файла помещаются все необходимые коды, в результате чего исключается необходимость в библиотечных файлах. Убедитесь, что для файлов, находящихся в этом каталоге, установлен бит исполняемой программы.

• 

lib
. В этом каталоге содержатся динамические библиотеки, используемые при работе программ в
/bin
. Если вы скопируете в каталог
/bin
поддерева FTP утилиты из каталога
/bin
операционной системы, вам надо выяснить, какие библиотеки требуются для работы каждой из них. Это позволяет сделать команда
ldd
. Так, например, чтобы определить, какие библиотеки нужны для программы надо выполнить команду
ldd /bin/ls
.

• 

etc
. Для работы FTP-сервера требуются два файла, содержащихся в каталоге
/etc
:
passwd
и
group
. Вам нет необходимости копировать соответствующие файлы из каталога
/etc
системы. Вам нужна лишь запись для пользователя ftp (либо другого пользователя, учетную запись которого вы используете для организации анонимного доступа).

Поделиться с друзьями: