Обратная сторона интернета
Создание собственного FTP-сервера
Рано или поздно каждый пользователь убеждается в том, что расшаривание ресурсов эквивалентно открыванию дверей незнакомым людям. Кто-то после этого раз и навсегда усваивает истину о том, что всякое добро наказуемо. А кто-то создаёт самый настоящий FTP-сервер. Выбор программной платформы для FTP-сервера на сегодняшний день достаточно велик. Если вы планируете установить сервер на рабочую станцию, которая функционирует под управлением системы Windows, то имеет смысл остановиться на программе Serv-U FTP Server (www.serv-u.com). В настоящее время Serv-U является одной из лучших программ для создания "любительских" FTP-серверов. Несмотря на то, что её корпоративная версия стоит немалых денег, стандартный вариант можно использовать бесплатно, причём его возможностей вполне хватает для организации частного ресурса, особенно если идеология вашего сервера соответствует изложенной во врезке "Самые первые действия". Одно из достоинств этой программы, которое может стать для части пользователей решающим - наличие весьма корректного русификатора. |
Первые шаги Перед тем как открыть в локальной сети свой ресурс, надо сделать то, что обычно делается перед началом любого дела: сесть и подумать. Подумать нужно над двумя вещами. |
Подготовка Первым делом установите в систему один FTP-клиент и один менеджер закачек, которые будут использоваться для тестирования сервера. При выборе конкретных программ учитывайте не столько ваши личные пристрастия, сколько внутрисетевую популярность конкретных инструментов. Если же такой статистики нет, то выбирайте FAR и FlashGet - они бесплатны, русифицированы и широко распространены в нашей стране. Базовая настройка Во время установки пакета Serv-U фактически будут установлены три программы. Доступ пользователей к файлам, передачу данных и рассылку сообщений выполняет служба ServUDaemon.exe. Функции администрирования сервера возложены на программу ServUAdmin.exe. Наконец, ServUTray.exe поместит в трей анимированную иконку, показывающую текущее состояние сервера. Иконка имеет форму подковы, по цвету которой можно определить, что именно происходит на сервере в данный момент. Если иконка зелёная, то пользователей на нём нет. Как только на сервер зайдут посетители, то иконка станет синей. Если же кто-то из пользователей сервера начнёт закачивать на него файлы, на синей иконке появится красный ободок. Тонкая настройка После того как Мастер закончит свою работу, сервером можно будет пользоваться. Более того, довольно значительная часть владельцев домашних FTP-серверов этим и ограничивается. Однако Serv-U предлагает намного больше возможностей, которыми непременно следует воспользоваться. |
![]() |
Правила сервера Правила поведения на частном ресурсе определяет хозяин сервера, который должен понимать, что большинство посетителей начисто лишены экстрасенсорных способностей. Поэтому эти правила следует изложить и довести до сведения всех гостей ресурса. Обычно правила помещаются в текстовый файл с названием Readme.txt, который выкладывается в корневой каталог сервера. Разумеется, прочитают эти правила немногие, но у вас хотя бы появится моральное право на большинство вопросов и жалоб отвечать коротким RTFM. |
Основные опции, на которые следует обратить внимание в первую очередь - ограничение на максимальную скорость всех потоков и максимальное количество пользователей, которые могут одновременно подключиться к серверу. Доступ к этим настройкам можно получить на вкладке "Локальный сервер - Параметры - Общие". Правильное определение первой опции важно не столько для той машины, на которой установлен сервер, сколько для всего домена, в котором расположен этот сервер. Дело в том, что пропускная способность сети ограничена. Таким образом, элементарные нормы приличия заставляют каждого абонента следить за тем, чтобы не загружать весь канал самому, так как следует думать и о соседях. Если же абонент активно пренебрегает этим правилом, то ему на это укажет провайдер, обязанность которого следить за порядком в сети. Разумеется, в условиях рынка никакой речи о принудительном отключении быть не может. Но убедительно попросить абонента оплатить дополнительные работы по расширению канала, которые необходимо провести для обеспечения нормального функционирования его сервера, провайдер может. Причём таких же убедительных аргументов для отказа у пользователя не будет. Для того чтобы правильно рассчитать максимальную скорость всех потоков, следует узнать у провайдера максимальную пропускную способность вашего сегмента сети. Затем выясните, сколько ещё серверов функционирует в вашем сегменте. После этого определите максимально допустимую скорость таким образом, чтобы вместе взятые серверы потребляли не более 50% всей пропускной способности канала. Конечно, это значение будет довольно перестраховочным, но зато убережёт от конфликта с провайдером. Решение о максимальном количестве пользователей принимается исходя из аппаратных возможностей машины. Большинство владельцев домашних серверов, которые как-то регулируют этот параметр, считают, что оптимальное значение лежит в промежутке от пяти до десяти. Ещё один полезный параметр, который можно определить на этой вкладке - блокировка так называемых переподключений. По умолчанию программа предлагает блокировать переподключающихся более четырёх раз в пределах от 30 секунд до четырёх минут посетителей. Это очень разумная мера противодействия пользователю, который сам не знает, чего хочет (или наоборот, слишком хорошо это знает). Адекватным гостям, использующим для взаимодействия с сервером специально предназначенные для этого программы, такая мера повредить не может. Особо осторожные товарищи могут использовать такой механизм защиты, как запрет и разрешение доступа. Эти настройки доступны на вкладке "<Имя сервера> - Параметры - IP доступ". Правда, при наличии нескольких аккаунтов, которые могут иметь различные настройки, лучше воспользоваться вкладками "<Пользователь> - IP доступ". Более жёсткой политикой является разрешительная, при которой сервер будет отвергать все соединения, кроме явно разрешённых. К таким ограничениям имеет смысл прибегать только в том случае, когда сеть представляет собой группу сегментов, внутри которых канал намного шире каналов, соединяющих сегменты в единую сеть (весьма распространённая практика в небольших городах, в которых иная топология невозможна). Хорошим решением для обеспечения доступа к файлам в таких сетях является набор зеркал, каждое из которых располагается в своём сегменте, что позволяет резко сократить межсегментный трафик. А единомышленники, готовые предоставить свои ресурсы для зеркал, при правильной концепции сервера находятся достаточно быстро. В этом случае анонимный вход на сервер разрешён только с адресов собственного сегмента. А для обмена данными с зеркалами используется привилегированный пользователь, от имени которого должны действовать владельцы зеркал. Проще всего владельцам FTP-серверов договориться между собой о единой паре "логин-пароль", чтобы перекачка с сервера на сервер происходила в приоритетном режиме. После этого нужно перейти во вкладку Anonymous. Если этот пользователь не был создан Мастером, то следует во вкладке "Пользователи" кликнуть правой кнопкой мыши на рабочем поле для запуска Мастера создания нового пользователя. Во вкладке "Общие" нас интересуют всего несколько опций. Во-первых, активируем запрет на просмотр скрытых файлов. Причём дело тут даже не в безопасности, а в том, что система Windows имеет привычку такие файлы создавать. Демонстрировать их всему сетевому народу - признак плохого тона. Во-вторых, ограничим число входов в систему с одного адреса. При этом важно учитывать ранее наложенное ограничение на общее количество подключений. Например, если мы определили, что к серверу не может подключаться более пяти пользователей, но не задали точное значение максимального числа подключений с одного адреса, то можно с полной уверенностью сказать, что одновременно на сервере будет находиться только один человек. Этот пользователь, применяя любую современную "качалку", будет получать файлы в пять потоков. Казалось бы, в сети с хорошей пропускной способностью следует ограничить пользователя одним подключением, чего вполне достаточно для полноценной работы при помощи того же FAR, умеющего докачивать файлы после обрыва связи. Однако при такой конфигурации не будет работать весьма популярная, хотя и абсолютно неправильная схема работы с FTP-сервером, при которой его содержимое просматривается браузером, а ссылки переносятся в менеджер закачек. Ведь браузер - это одно соединение, а менеджер закачек - уже второе. Поэтому оптимальное число заходов с одного IP-адреса равняется двум. Доступ к папкам и файлам определяется отдельно для каждого пользователя. Делается это во вкладке "<Имя пользователя> - Доступ к папкам". Для редактирования прав доступа следует учитывать, что все файлы одного каталога могут иметь только равные права. Доступ к файлам может предусматривать права на скачку файла, на его закачку, дописывание, удаление и право на запуск программы на сервере. Очевидно, что право на запуск следует отключить - обыкновенному пользователю в нём нет никакой необходимости. Как правило, пользователю Anonymous разрешено только читать файлы. А вот привилегированным пользователям следует разрешить запись, дозаписывание и удаление. Права для каталогов могут быть такими: на просмотр списка файлов в директории, на создание и удаление директорий. При этом разрешается применять права, назначенные для одной директории, ко всем вложенным в неё директориям. Тут самое время решить вопрос о папке Upload. Многие владельцы серверов никому не разрешают писать в общую папку, резонно считая, что папка для заливки должна быть отдельной. При этом привилегированный аккаунт не создаётся вообще, а доступ в Upload предоставляется всем. Такой подход чреват очень быстрым замусориванием этой папки, которую начинают использовать для обмена всем, чем угодно. Как бы странно это ни прозвучало, но в данном случае самым правильным является максимально жёсткий подход. Домашним каталогом для привилегированных пользователей делается Upload, где они наделяются всеми необходимыми для себя правами. А для анонимного пользователя этот каталог просто закрывается - ему там делать нечего. Но из каждого правила бывают исключения. Иногда возникает необходимость открыть на время доступ к каталогу, наличие которого на сервере противоречит концепции ресурса. Или просто захотелось дать переписать приятелю новый компакт-диск. Serv-U позволяет подключать так называемые виртуальные папки, физический прообраз которых может находиться где угодно, хоть на другом диске. Для создания виртуальной папки надо отправляться на вкладку "Параметры - Общие". В разделе "Добавление виртуальных путей" нажимаете кнопку "Добавить". Затем последовательно указываете физический путь к подключаемой папке, точку сервера, в которую будет помещена виртуальная папка (в данном случае проще всего указать параметр %HOME%, тогда виртуальная папка окажется в домашней директории анонимного пользователя), и имя виртуальной папки, под которым она будет отображаться на сервере. После этого во вкладке "<Имя пользователя> - Доступ к папкам" определяем права доступа к этому каталогу, причём в этом случае следует указывать полный физический путь к нужной директории. И, наконец, о самом неприятном, но необходимом - о наказании пользователей, которые злоупотребляют гостеприимством. Выявлять нарушителей правил можно двумя способами: непосредственно наблюдая за их действиями либо просматривая содержимое лог-файла. И то, и другое осуществляется в разделе "Активность". Во вкладке "Пользователи" владелец ресурса может непосредственно наблюдать за всеми активными подключениями. Если посетитель делает что-то не то, можно отправить ему сообщение, остановить передачу или вообще его отключить. Желание более тщательно понаблюдать за поведением гостя реализуется в режиме "Шпионить", когда открывается новая вкладка, на которой отображается самая подробная информация о действиях посетителя. Однако постоянно наблюдать за тем, что творится на сервере, могут только те, кому время девать некуда. А для людей занятых существует лог-файл, параметры которого определяются во вкладке "Параметры-Логи". Выявив нарушителя, отправляйтесь в уже знакомую нам вкладку "IP-доступ" и заносите злоумышленника в чёрный список. |