Сетевые средства Linux
Шрифт:
• Директива
• Директивы
• Директива
• В блоке, созданном с помощью директивы
• Если вы хотите создать псевдоанонимный сервер, который регистрирует пользователей посредством имени
Если вы хотите, чтобы FTP-сервер работал только как анонимный сервер, вам надо принять меры для того, чтобы запретить доступ обычным пользователям. По возможности разместите FTP-сервер на том компьютере, на котором имеется как можно меньше учетных записей администраторов, и запретите доступ этим пользователям, включив их имена в файл
Резюме
Ранее FTP-серверы представляли собой чрезвычайно важный компонент Internet, но в настоящее время некоторые их функции взяли на себя Web-серверы. Однако и сейчас FTP-серверы широко используются как средства для обеспечения удаленного доступа пользователей к своим файлам (в этом случае поддерживается двунаправленный обмен информацией) и поддержки анонимных обращений (при этом чаще всего осуществляется передача данных с сервера на клиентские машины). Наибольшей популярностью в Linux пользуются FTP-серверы WU-FTPD и ProFTPd. Обе программы предоставляют широкий набор возможностей и обслуживают как пользователей, регистрирующихся на сервере, так и анонимных пользователей. Настраиваются эти программы по-разному. Структура конфигурационных файлов ProFTPd напоминает структуру файлов Apache. При установке большинство серверов настраивается для регистрации пользователей. Незначительно изменив содержимое конфигурационных файлов, вы можете настроить их для работы в качестве анонимных FTP-серверов.
ЧАСТЬ IV
Средства защиты и маршрутизации
Глава 22
Общие вопросы защиты системы
Linux — мощная система, способная поддерживать различные типы сетевого взаимодействия. Однако обилие средств обмена данными по сети неминуемо создает угрозу безопасности системы. В защите многих серверов, созданных для работы в системе Linux, неоднократно выявлялись недостатки, которые могли быть использованы для получения незаконного доступа к системе. Более того, сам принцип работы некоторых серверов не идеален с точки зрения защиты. Так, например, некоторые из них обмениваются данными с клиентом в незакодированном виде, что может привести к перехвату пароля или секретной информации, передаваемой по сети. Выполняя администрирование системы, нельзя недооценивать вопросы ее защиты. Вам необходимо принимать все меры для повышения уровня безопасности компьютеров и следить за последними сообщениями, публикуемыми на Web-серверах, в списках рассылки и в группах новостей. Если окажется, что в сервере, находящемся на вашем компьютере, была обнаружена ошибка, следует позаботиться о ее устранении, в противном случае вы рискуете стать жертвой взломщика.
В данной главе рассматриваются способы, позволяющие выявить ненужные
Тем, кто собирается тщательно изучить вопросы безопасности системы, можно посоветовать дополнительную литературу, в частности, работы Манна (Mann) и Митчела (Mitchell) Linux System Security: The Administrator's Guide to Open Source Security Tools (Prentice Hall, 1999), а также Гарфинкела (Garfinkel) и Спеффорда (Spafford) Practical UNIX & Internet Security, 2nd Edition (O'Reilly, 1996). Из изданий, специально посвященных созданию брандмауэров, стоит обратить внимание на книгу Констейнтайна (Constaintine) и Зиглера (Ziegler) Linux Firewalls (New Riders, 2001). Если же в вашей сети имеются компьютеры, выполняющиеся под управлением систем, отличных от Linux, то, возможно, вам будет полезна книга Макклуе (McClure), Скембри (Scambray) и Курца (Kurtz) Hacking Exposed, 3rd Edition (McGraw-Hill, 2001).
Отключение ненужных серверов
Серверы обеспечивают доступ к ресурсам компьютеров, поэтому каждая серверная программа, выполняющаяся на компьютере, увеличивает опасность незаконного проникновения в систему. Взломщик может воспользоваться недостатками в защите сервера, ошибками в его настройке или перехватить пароль, передаваемый по сети. Чтобы снизить риск незаконного обращения к важным данным, следует запретить выполнение ненужных серверов, но для этого надо обнаружить их. Выявив ненужный сервер, следует найти способ отключить его. Обычно отключение серверов не вызывает проблем, но существуют способы, позволяющие решить эту задачу наиболее эффективно.
Выявление ненужных серверов
Задачу выявления ненужных серверов можно разбить на две подзадачи: идентификация серверов, присутствующих в системе, и принятие решения о том, какие из них могут быть отключены без вреда для системы. Обе эти подзадачи можно решить различными способами. Применяя для обнаружения серверов разные подходы, вы увеличиваете свои шансы на успех.
В системе Linux отсутствует централизованный реестр выполняемых серверов, поэтому для обнаружения серверов необходимо объединить информацию из различных источников. Используя лишь один способ обнаружения, можно упустить из виду тот или иной сервер, поэтому лучше использовать для их выявления различные подходы.
Для обнаружения серверов, присутствующих в системе, может быть использована система управления пакетами. Если при установке программ вы пользовались исключительно диспетчером пакетов, то в базе данных диспетчера содержится информация о каждой программе, которая была инсталлирована на компьютере. Просмотрев описание пакета, содержащееся в базе, можно определить, является ли установленная программа сервером и насколько она необходима для работы системы. В качестве примеров инструментальных средств управления пакетами можно привести инструмент GNOME RPM, который используется в системе Red Hat, YaST — в SuSE, и Storm Package Manager (часть дистрибутивного пакета Storm, используемая в системе Debian). Окно GNOME RPM, предназначенное для просмотра инсталлированных пакетов, показано на рис. Выбрав пакет, вы сможете прочитать его описание. Некоторые диспетчеры пакетов распределяют информацию, которая хранится в базе, по категориям, однако на практике, чтобы найти серверы, присутствующие на компьютере, надо просмотреть все категории. Диспетчеры пакетов не позволяют выявить серверы, для инсталляции которых были использованы tar-архивы или исходные коды. Кроме того, такой подход не дает возможности ответить на вопрос, выполняется ли сервер в системе. (Сервер, который был инсталлирован, но не запущен, создает гораздо меньшую угрозу безопасности системы, чем сервер, выполняющийся на компьютере. Реальная опасность возникнет лишь в том случае, если впоследствии будет установлена конфигурация системы, предполагающая запуск сервера.)