Как и обещал, для начала кратко о том, что такое FTP для тех, кто не знает:
FTP (от англ. File Transport Protocol) – это протокол передачи данных, который позволяет получить доступ к файлам на удаленном сервере. В данной технологии различают две стороны, серверную (FTP сервер) и клиентскую (FTP клиент).
В случае, если вы хотите поделиться своей коллекцией музыки или художественными изысканиями, Вам понадобится FTP сервер, т.е место куда все будут подключаться и скачивать всё, что Вы разрешили. Как раз о том, как это настроить, и пойдет речь в данной статье.
Хочется сразу отметить, что в статье будет рассматриваться вариант домашнего использования, без хитрых и тонких настроек, которые используются в случае с полноценными корпоративными серверами.
Для установки Вам необходимо скачать FileZilla Server, ибо он, предельно прост в установке и настройке, и к тому же бесплатен.
Скачать его можно, например, по этой ссылке.
После скачивания дистрибутива, собственно, запустите его установку (имеется ввиду, что надо кликнуть по скачанному exe-файлу) и следуйте рекомендациям ниже.
На первом окне нужно согласиться с лицензионным соглашением, нажмите “I Аgree”.
Далее надо выбрать тип установки. Всего их пять:
Стандартный (Standart) – вариант для установки с нуля для полного функционирования сервера.
Полный (Full) – почти тоже самое, но так же в папку установки будут скопированы исходный код программы, на случай, если вы что-то захотите в ней изменить.
Только FTP сервис (Service only) – устанавливается непосредственно FTP сервис, без доступа к нему через интерфейс. Полезно, если вы планируете управлять своим файлохранилищем с другого компьютера.
Интерфейс управления (Interface only) – в отличие от предыдущего пункта, ставится только графическая оболочка управления сервером, но не он сам. Используйте, если вы хотите удаленно получить доступ к своему FTP серверу.
Выборочная установка (Custom) – Вы вольны выбирать, что хотите поставить на свой компьютер.
Для первой установки рекомендую выбрать стандартный вариант (Standart). Нажмите “Next“.
На следующем окне необходимо выбрать папку установки, например, “C:\Program Files\FileZilla Server”. После выбора переходите к следующему окну (Next).
Теперь установщик попросит нас выбрать способ установки и запуска сервера.
Есть три варианта:
Рекомендуется выбрать первый или второй вариант. Разница лишь в том, что во втором случае для работы сервера, Вам необходимо будет переходить в “Панель управления – Администрирование – Управление службами“, находить там службу в списке и запускать её самостоятельно, надавив на кнопочку запуск.
Кроме того, на этом этапе следует указать порт, по которому будет подключаться интерфейс управления сервером, т.е так сказать, Ваша консоль администрирования, которая позволит Вам задавать настройки, смотреть кто и куда подключился и тп. Для повышения безопасности, смените его со стандартного (14147) на какой-нибудь еще.
Так же по-умолчанию, отмечена опция запустить сервер после установки (Start Server after setup completes). Можете оставить эту галочку, а можете убрать. Дело Ваше. Сделав оное, переходим к последнему окну, используя кнопочку Next.
Здесь выбираем варианты запуска интерфейса.
Их опять же три:
Первый вариант сгодится, если вы единственный пользователь компьютера, куда устанавливается сервер, и Вам, в принципе, всё равно под всеми аккаунтами операционной системы интерфейс будет запускаться автоматически или же только под одним.
Второй подходит для тех, кто работает на компьютере не один (т.е на компьютере несколько аккаунтов, используемых разными людьми) и хочет, чтобы никто другой не управлял его FTP сервером, т.е запуск интерфейса осуществлялся только из под аккаунта, в котором сейчас и производится установка.
И третий вариант задает параметр запуска только вручную, т.е оный не будет стартовать вместе с системой вовсе.
Напомню, что интерфейс представляет собой нечто вроде административной программы, которая позволяет следить за состоянием сервера, запускать-останавливать и настраивать оный.
Галочка (Start Interface after setup completes) в данном окне, опять же, задает запуск интерфейса сразу в конце установки.
Ну и, разобравшись со всем оным, наконец-то можно начать установку сервера (используя, само собой, кнопочку “Install“)
Итак, после установки, при первом запуске интерфейса, появится маленькое окошко, где требуется указать адрес и порт для подключения, а так же пароль администратора (при первой установки его нет). Можно отметить опцию “Всё время подключаться к этому серверу” (Always connect to this server). Нажимаем “Ok“.
Хочется подчеркнуть, что это есть подключение к серверу локально, а именно, подключение к интерфейсу администрирования, т.е выдавать адрес 127.0.0.1 и порт 14147 для друга, который захочет подключиться, бесполезно. О внешних адресах, паролях и явках, необходимых для подключения к серверу, будет написано по ходу статьи.
Теперь перейдем к настройкам. Это делается путем перехода по адресу “Edit → Settings” или кликом на кнопку на панели интерфейса:
Перед вами откроется окно настроек. На первой вкладке (General Settings) можно задать следующие параметры:
Сверху вниз по скриншоту:
В рамках данной статьи нас интересуют первые два пункта. Порт можно оставить как есть, а можно и сменить для повышения безопасности, но тогда придется сообщать об оном всем желающим подключиться.
Вторая настройка отвечает за максимальное количество подключений. По-умолчанию значение параметра стоит “0”, это означит, что их количество не ограничено. Менять этот параметр стоит в том случае, например, если Ваш интернет канал не справляется с нагрузкой, т.к к Вам подключается уж очень много людей.
Остальное можно оставить без изменений, т.к для домашнего использования настройки оптимальны.
Поехали дальше.
В следующем подпункте можно настроить приветственное сообщение, которое будут видеть пользователи при подключении. Например: “Hello World”. Здесь же можно воспользоваться, так называемыми, текстовыми параметрами. Например, можно задать вывод для клиентов версии ftp-сервера. Для этого введите, помимо приветствия, сочетание символов %v . В месте где Вы их введете, будет автоматически выводится вышеупомянутая версия.
Далее переходим на подпункт “IP bindings”. Здесь настраиваются IP-адреса, по которым будет доступен наш FTP сервер. Если Вам хочется, чтобы сервер был доступен только из локальной сети, то вместо звёздочки, следует указать ваш локальный IP-адрес, как например, 192.168.1.5. В противном случае, здесь трогать ничего не стоит.
В подпункте “IP Filter” можно задать IP адреса (или их диапазон), которым будет запрещено подключаться к Вашему серверу, а так же задать исключения из заданного диапазона (второе поле). Т.е, например, если Вы хотите кого-то забанить и запретить ему попадать на Ваш сервер, то укажите его в первом окошке. Так же, если Вы хотите предоставить доступ только кому-то определенному и запретить всем остальным, то поставьте звёздочку в первом поле и задайте список IP-адресов во втором.
Вкладка “Passive mode settings” регламентирует параметры для пассивного подключения к серверу и отклик оного. Менять здесь что-либо стоит только в том случае, если Вы подключены к интернету не напрямую, а через роутер, на котором обитает фаерволл и NAT. В этом случае может потребоваться указать в поле “Use the following IP” свой внешний IP-адрес (можно узнать у провайдера или в интерфейсе роутера), а так же задать диапазон портов (Use custom port range), через которые клиент сможет подключаться к Вашему серверу в пассивном режиме. Трогать эти настройки стоит, пожалуй, только в случае проблем с подключением пользователей. В случае оных и невозможности разобраться самостоятельно.
Идем далее. В пункте настроек “Security Settings” задаются ограничения на входящие и исходящие соединения типа “сервер-сервер”. Здесь ничего менять не стоит.
Раздел настроек “Miscellaneous” содержат малозначительные для домашнего фтп-сервера настройки. Например, такие как “Не показывать пароль в лог-файлах” (Don’t show passwords in message log), “Запускать интерфейс свернутым” (Start minimized), а так же размеры буферов передачи. Трогать здесь, в общем-то, ничего не нужно.
На вкладке “Admin Interface Settings” можно задать IP-адрес и порт, по которым будет доступен интерфейс управления сервером (тот самый, что мы вначале использовали как 127.0.0.1 и 14147, т.е, если есть желание, то Вы можете их сменить). Кроме того, можно указать IP-адреса, которым разрешено подключаться к нему.
Раздел настроек “Logging” позволяет включать запись лог-файлов (Enable logging to file), настроить их максимальный размер (Limit log file size to), писать все в один файл (Log all to “FileZilla Server.log”) или для каждого дня создавать отдельный (в этом случае можно ограничить их максимальный срок хранения).
Вкладка “GSS Settings” отвечает за использования протокола Kerberos GSS. Для обычного использования эта опция не требует настройки.
Далее у нас “Speed Limits”. Оная может помочь ограничить скорость входящих и исходящих соединений. Есть два пути ограничения: задать постоянное ограничение на все время или создать правила на конкретный день и/или час. Ограничения задаются в килобайтах.
Вкладка “Filetransfer compression” позволяет включить режим сжатия файлов при передаче. При этом можно настроить минимальный и максимальный уровни сжатия, а так же указать IP-адреса, для которых не будет использоваться компрессия. Трогать что-либо совсем не обязательно.
Чтобы настроить защищенное соединение между клиентом и сервером, надо перейти к пункту настроек “SSL/TLS Settings”. Здесь нужно включить поддержку этих протоколов и указать пути к закрытому ключу, файлу сертификата и пароль. Для среднестатистического пользователя в этом нет необходимости, поэтому в этой статье рассматриваться не будет.
И наконец, можно включить автоматический бан пользователей после n-ых попыток неудачных подключений, и время бана. Для этого стоит перейти на вкладку “Autobans” и, если Вам оное необходимо, то выставить галочку “Enable automatic bans“, указать в графе “Ban IP adress after” количество попыток после которых будет осуществляться блокировка, а так же время блокировки в поле “Ban for“. Оное бывает нужно, чтобы нежелательные личности не спамили Ваш сервер своими попытками подключений.
Теперь настроим доступы пользователей, а именно их аккаунты, пароли, папки и тп.
В качестве примера создадим самого, так сказать, распространенного пользователя и дадим ему доступ.
Итак, для добавления нового аккаунта следуем, в главном окне интерфейса, по пути “Edit → Users”. Перед нами предстанет окно работы с пользователями.
Для добавления нового необходимо нажать “Add”. Далее необходимо будет задать его имя, например, anonymous, и принадлежность к группе (в нашем случае указывать не будем). Задаем, жмем “Ok”.
Теперь для нашего нового пользователя можно задать пароль и ограничение по количеству соединений. При необходимости сделайте оное, выставив галочку “Password” и указав его (пароль) в окошке напротив.
Задаём необходимые Вам параметры и папки и.. нажимаем ОК
На этом первоначальная настройка закончена. Для домашнего пользования большего и не надо .
Для того, чтобы ваши знакомые могли использовать Ваш FTP сервер, необходимо предоставить им его IP-адрес, а так же заданные Вами логин(ы), пароль(и) и, при необходимости, порт (если меняли), которые они должны указать в своем, предварительно установленном FTP-клиенте.
Узнать внешний IP-адрес можно, обратившись к провайдеру, посмотрев в настройках роутера или же, попросту, воспользовавшись одним из многочисленных сервисов, как например, www.2ip.ru