Заметки Сис.Админа

статьи

Как сделать FTP сервер [FileZilla Server]

Доброго времени суток, дорогие читатели! В последнее время приходит много сообщений с просьбами рассказать о том, как установить свой собственный FTP сервер в домашних (или не очень) условиях.

FTP

О том, что такое FTP, если кто-то вдруг не в курсе, Вы можете узнать в этой моей статье "Что такое FTP и как им пользоваться [FileZilla]" или сразу приступать к чтению (в рамках данной статьи есть пару слов о самом протоколе). Поехали.

Подготовка к установке своего FTP-сервера

Как и обещал, для начала кратко о том, что такое FTP для тех, кто не знает:

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

Хочется сразу отметить, что в статье будет рассматриваться вариант домашнего использования, без хитрых и тонких настроек, которые используются в случае с полноценными корпоративными серверами.

Для установки Вам необходимо скачать один из множественных дистрибутивов, которые помогут развернуть FTP-сервер. Лично я рекомендую Вам использовать FileZilla Server, ибо он, как и некогда упомянутый мной клиент (см.статью по ссылке выше), предельно прост в установки и настройке, и к тому же бесплатен.

Скачать его можно, например, по этой ссылке.

Установка FTP FileZilla Server

После скачивания дистрибутива, собственно, запустите его установку (имеется ввиду, что надо кликнуть по скачанному exe-файлу) и следуйте рекомендациям ниже.

На первом окне нужно согласиться с лицензионным соглашением, нажмите “I Аgree”.

установка и настройка ftp-сервера filezilla

Далее надо выбрать тип установки. Всего их пять:

установка и настройка ftp-сервера filezilla

  • Стандартный (Standart) - вариант для установки с нуля для полного функционирования сервера.
  • Полный (Full) - почти тоже самое, но так же в папку установки будут скопированы исходный код программы, на случай, если вы что-то захотите в ней изменить.
  • Только FTP сервис (Service only) - устанавливается непосредственно FTP сервис, без доступа к нему через интерфейс. Полезно, если вы планируете управлять своим файлохранилищем с другого компьютера.
  • Интерфейс управления (Interface only) - в отличие от предыдущего пункта, ставится только графическая оболочка управления сервером, но не он сам. Используйте, если вы хотите удаленно получить доступ к своему FTP серверу.
  • Выборочная установка (Custom) - Вы вольны выбирать, что хотите поставить на свой компьютер.

Для первой установки рекомендую выбрать стандартный вариант (Standart). Нажмите  "Next".

На следующем окне необходимо выбрать папку установки, например, “C:\Program Files\FileZilla Server”. После выбора переходите к следующему окну (Next).

Теперь установщик попросит нас выбрать способ установки и запуска сервера.

установка и настройка ftp-сервера filezilla

Есть три варианта:

  • Как службу и запускать при входе в систему
  • Как службу и запускать вручную
  • Простая установка, запускать вручную

Рекомендуется выбрать первый или второй вариант. Разница лишь в том, что во втором случае для работы сервера, Вам необходимо будет переходить в "Панель управления - Администрирование - Управление службами", находить там службу в списке и запускать её самостоятельно, надавив на кнопочку запуск.

Кроме того, на этом этапе следует указать порт, по которому будет подключаться интерфейс управления сервером, т.е так сказать, Ваша консоль администрирования, которая позволит Вам задавать настройки, смотреть кто и куда подключился и тп. Для повышения безопасности, смените его со стандартного (14147) на какой-нибудь еще.

Так же по-умолчанию, отмечена опция запустить сервер после установки (Start Server after setup completes). Можете оставить эту галочку, а можете убрать. Дело Ваше. Сделав оное, переходим к последнему окну, используя кнопочку Next.

Здесь выбираем варианты запуска интерфейса.

установка и настройка ftp-сервера filezilla

Их опять же три:

  • При вход в систему, для всех пользователей
  • При входе в систему, для текущего пользователя
  • Вручную

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

И третий вариант задает параметр запуска только вручную, т.е оный не будет стартовать вместе с системой вовсе.
Напомню, что интерфейс представляет собой нечто вроде административной программы, которая позволяет следить за состоянием сервера, запускать-останавливать и настраивать оный.

Галочка (Start Interface after setup completes) в данном окне, опять же, задает запуск интерфейса сразу в конце установки.

Ну и, разобравшись со всем оным, наконец-то можно начать установку сервера (используя, само собой, кнопочку "Install") :)

Настройка FTP FileZilla Server

Итак, после установки, при первом запуске интерфейса, появится маленькое окошко, где требуется указать адрес и порт для подключения, а так же пароль администратора (при первой установки его нет). Можно отметить опцию "Всё время подключаться к этому серверу" (Always connect to this server). Нажимаем "Ok".

запуск и настройка ftp сервера filezilla

Хочется подчеркнуть, что это есть подключение к серверу локально, а именно, подключение к интерфейсу администрирования, т.е выдавать адрес 127.0.0.1 и порт 14147 для друга, который захочет подключиться, бесполезно. О внешних адресах, паролях и явках, необходимых для подключения к серверу, будет написано по ходу статьи.

Теперь перейдем к настройкам. Это делается путем перехода по адресу "Edit -> Settings" или кликом на кнопку на панели интерфейса:

запуск и настройка ftp сервера filezilla

Перед вами откроется окно настроек. На первой вкладке (General Settings) можно задать следующие параметры:

установка и настройка ftp-сервера filezilla, вкладка General Settings

Сверху вниз по скриншоту:

  • Порт, по которому клиенты будут подключаться к серверу
  • Максимальное количество клиентов
  • Количество потоков
  • Различные таймауты (три штуки)

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

Вторая настройка отвечает за максимальное количество подключений. По-умолчанию значение параметра стоит “0”, это означит, что их количество не ограничено. Менять этот параметр стоит в том случае, например, если Ваш интернет канал не справляется с нагрузкой, т.к к Вам подключается уж очень много людей.

Остальное можно оставить без изменений, т.к для домашнего использования настройки оптимальны.

Поехали дальше.

В следующем подпункте можно настроить приветственное сообщение, которое будут видеть пользователи при подключении. Например: “Сервер Заметок Сис. Админа! :)”. Здесь же можно воспользоваться, так называемыми, текстовыми параметрами. Например, можно задать вывод для клиентов версии ftp-сервера. Для этого введите, помимо приветствия, сочетание символов %v . В месте где Вы их введете, будет автоматически выводится вышеупомянутая версия.

запуск и настройка ftp сервера filezilla, вкладка Welcome message

Далее переходим на подпункт “IP bindings”. Здесь настраиваются IP-адреса, по которым будет доступен наш FTP сервер. Если Вам хочется, чтобы сервер был доступен только из локальной сети, то вместо звёздочки, следует указать ваш локальный IP-адрес, как например, 192.168.1.5. В противном случае, здесь трогать ничего не стоит.

установка и настройка ftp-сервера filezilla, вкладка IP bindings

В подпункте “IP Filter” можно задать IP адреса (или их диапазон), которым будет запрещено подключаться к Вашему серверу, а так же задать исключения из заданного диапазона (второе поле). Т.е, например, если Вы хотите кого-то забанить и запретить ему попадать на Ваш сервер, то укажите его в первом окошке. Так же, если Вы хотите предоставить доступ только кому-то определенному и запретить всем остальным, то поставьте звёздочку в первом поле и задайте список IP-адресов во втором.

установка и настройка ftp-сервера filezilla, вкладка IP Filter

Вкладка “Passive mode settings” регламентирует параметры для пассивного подключения к серверу и отклик оного. Менять здесь что-либо стоит только в том случае, если Вы подключены к интернету не напрямую, а через роутер, на котором обитает фаерволл и NAT. В этом случае может потребоваться указать в поле "Use the following IP" свой внешний IP-адрес (можно узнать у провайдера или в интерфейсе роутера), а так же задать диапазон портов (Use custom port range), через которые клиент сможет подключаться к Вашему серверу в пассивном режиме. Трогать эти настройки стоит, пожалуй, только в случае проблем с подключением пользователей. В случае оных и невозможности разобраться самостоятельно, я дам Вам консультацию по настройкам исключительно для Вас (пишите комментарии).

 

установка и настройка ftp-сервера filezilla, вкладка Passive mode settings

Идем далее. В пункте настроек “Security Settings” задаются ограничения на входящие и исходящие соединения типа “сервер-сервер”. Здесь ничего менять не стоит.

Раздел настроек “Miscellaneous” содержат малозначительные для домашнего фтп-сервера настройки. Например, такие как “Не показывать пароль в лог-файлах(Don't show passwords in message log), “Запускать интерфейс свернутым(Start minimized), а так же размеры буферов передачи. Трогать здесь, в общем-то, ничего не нужно.

установка и настройка ftp-сервера filezilla, вкладка Miscellaneous

На вкладке “Admin Interface Settings” можно задать IP-адрес и порт, по которым будет доступен интерфейс управления сервером (тот самый, что мы вначале использовали как 127.0.0.1 и 14147, т.е, если есть желание, то Вы можете их сменить). Кроме того, можно указать IP-адреса, которым разрешено подключаться к нему.

запуск и настройка ftp сервера filezilla, вкладка Admin Interface Settings

Раздел настроек “Logging” позволяет включать запись лог-файлов (Enable logging to file), настроить их максимальный размер (Limit log file size to), писать все в один файл (Log all to "FileZilla Server.log") или для каждого дня создавать отдельный (в этом случае можно ограничить их максимальный срок хранения).

установка и настройка ftp-сервера filezilla, вкладка Logging

Вкладка “GSS Settings” отвечает за использования протокола Kerberos GSS. Для обычного использования эта опция не требует настройки.

Далее у нас “Speed Limits”. Оная может помочь ограничить скорость входящих и исходящих соединений. Есть два пути ограничения: задать постоянное ограничение на все время или создать правила на конкретный день и/или час. Ограничения задаются в килобайтах.

запуск и настройка ftp сервера filezilla, вкладка Speed Limits

Вкладка “Filetransfer compression” позволяет включить режим сжатия файлов при передаче. При этом можно настроить минимальный и максимальный уровни сжатия, а так же указать IP-адреса, для которых не будет использоваться компрессия. Трогать что-либо совсем не обязательно.

установка и настройка ftp-сервера filezilla, вкладка Filetransfer compression

Чтобы настроить защищенное соединение между клиентом и сервером, надо перейти к пункту настроек “SSL/TLS Settings”. Здесь нужно включить поддержку этих протоколов и указать пути к закрытому ключу, файлу сертификата и пароль. Для среднестатистического пользователя в этом нет необходимости, поэтому в этой статье рассматриваться не будет.

И наконец, можно включить автоматический бан пользователей после n-ых попыток неудачных подключений, и время бана. Для этого стоит перейти на вкладку “Autobans” и, если Вам оное необходимо, то выставить галочку "Enable automatic bans", указать в графе "Ban IP adress after" количество попыток после которых будет осуществляться блокировка, а так же время блокировки в поле "Ban for". Оное бывает нужно, чтобы нежелательные личности не спамили Ваш сервер своими попытками подключений.

Первоначальная настройка аккаунтов пользователей (users) и шары (share)

Теперь настроим доступы пользователей, а именно их аккаунты, пароли, папки и тп.
В качестве примера создадим самого, так сказать, распространенного пользователя и дадим ему доступ.

Итак, для добавления нового аккаунта следуем, в главном окне интерфейса, по пути “Edit -> Users”. Перед нами предстанет окно работы с пользователями.

запуск и настройка ftp сервера filezilla, создание доступа

Для добавления нового необходимо нажать “Add”. Далее необходимо будет задать его имя, например, anonymous, и принадлежность к группе (в нашем случае указывать не будем). Задаем, жмем “Ok”.

filezilla ftp-сервер, задаем доступы пользователям
filezilla ftp-сервер, задаем пароли пользователям

Теперь для нашего нового пользователя можно задать пароль и ограничение по количеству соединений. При необходимости сделайте оное, выставив галочку "Password" и указав его (пароль) в окошке напротив. Настоятельно рекомендуется использовать пароли для пользователей в целях безопасности.

Далее переходим на вкладку “Share Folders”. Здесь, собственно, мы задаем к каким именно папкам пользователь будет иметь доступ. Делается это просто: жмем “Add” и выбираем нужную папку на диске. Слева можно задать права доступа к ней: только чтение - “Read”, запись - “Write”, удаление - “Delete”  и возможность изменения существующих файлов в директории - “Append”. Ниже можно разрешить создание, удаление, получение списка файлов и распространение разрешений на подкаталоги.

запуск и настройка ftp сервера filezilla, шарим папки

Задаём необходимые Вам параметры и папки и.. Жмакаем ОК

На этом первоначальная настройка закончена. Для домашнего пользования большего и не надо ;)

Доступ пользователей к серверу.

Для того, чтобы ваши знакомые могли использовать Ваш FTP сервер, необходимо предоставить им его IP-адрес, а так же заданные Вами логин(ы), пароль(и) и, при необходимости, порт (если меняли), которые они должны указать в своем, предварительно установленном FTP-клиенте.

Узнать внешний IP-адрес можно, обратившись к провайдеру, посмотрев в настройках роутера или же, попросту, воспользовавшись одним из многочисленных сервисов, как например, www.2ip.ru (как Вы наверняка догадались, Вам нужно то, что написано под текстом “Ваш IP адрес:” ;) ).

Послесловие

Вот такие вот дела.

Не смотря на то, что статья максимально ориентирована для небольшого домашнего использования, я постарался максимально подробно объяснить все необходимые настройки и нюансы.

Как и всегда, если есть какие-то вопросы, дополнения и тп, то пишите в комментариях, - буду рад помочь.

PS: За существование оной статьи отдельное спасибо другу проекта и члену нашей команды под ником “Kellis“.

Оценить —

  1. 5
  2. 4
  3. 3
  4. 2
  5. 1
(2 голоса, в среднем: 5 из 5)

Подписаться —

RSS Email Facebook Twitter G+ YouTube
Темы:  , , , ,
  1. farzeet

    Спасибо!

    • Sonikelf

      Пожалуйста :)

  2. rusel

    Вот спасибо, как раз мне нужно FTP настроить и тут статейка, читаю сайтик постоянно, много полезного..

    • Sonikelf

      Всегда пожалуйста :)

  3. FalleN

    Хорошая статья. Но, Андрей, Вы забыли указать, что адрес нужен статический. Иначе каждый раз он будет меняться.

    • Sonikelf

      Статика не обязательна, хотя удобна. Точно не помню, но вроде в статье где-то писал, что при динамике просто нужно каждый раз говорить друзьям новый адрес.

  4. Platinum

    Хочу выделить пару ошибок в самом начале :)

    "FTP (от англ. File Transport Protocol) – это протокол передачи данных, который позволяет получить доступ к файлам на удаленном сервере."

    Правильнее будет так:
    File Transfer Protocol - Протокол передачи файлов

    Хоть это и не так важно, но всё же ;-)

    • Sonikelf

      Не люблю точный перевод, он не всегда отражает суть наиболее доступно и полно :)
      Но за дополнение спасибо ;)

      • Platinum

        Да не)) я вот как раз за суть)) Считаю что протокол передачи данных и протокол передачи файлов все же чуть разное (хотя и очень похожи) :) Привык к оригинальной расшифровке ;)

        p.s. как там с моей статьёй дела? :)
        С возвращением кстати

      • Sonikelf

        p.s. как там с моей статьёй дела? :)

        С какой именно? ;)

        С возвращением кстати

        Спасибо, правда вернулся я только сегодня ночью :)

      • Kellis

        Я тебе потом покажу :)

      • Platinum

        Интересно ваше мнение о статье))
        p.s. оставлял сообщение на форуме :)

  5. Дмитрий

    Спасибо Соник)Весьма полезная информация.Но мне бы хотелось видеть на сайте больше информации по Linux системам,так как только этот блог практически пуст.

    • Sonikelf

      Всегда пожалуйста.

      По линуксу усилим напор и начнем публиковать статьи в самом ближайшем времени.

  6. assassins

    Спасибо счас опробуем .
    З .Ы . Чтоб мы без тебя знали Соник:-)

    • Sonikelf

      Всегда пожалуйста

      ЗЫ: Вот уж не знаю :)

  7. sgospbru

    Здравствуйте! Прочитал поставил, сделал всё по инструкции, не работает, при попытки зайти на ftp (логин+пароль) просит повторно ввести логин и пароль! Что делать подскажите...

    • Kellis

      Здравствуйте!
      Попробуйте для начала убрать пароль в опциях сервера и зайти. Возможно, что вы просто ошиблись, когда его задавали, а вводите "правильный"

  8. sgospbru

    Извените, прочитал последний пункт что должен быть ftp клиент, но и через него не подключается(((
    Что то с роутером, не пропускает или ещё что-то...сделал всё как в статье.
    Роутер dlink 2640U

    • Sonikelf

      Возможно надо делать проброс портов. На роутере поднят фаерволл?

  9. lav46

    Спасибо. Надеюсь , хорошо отдохнули.

    • Sonikelf

      Пожалуйста.
      Да, очень даже ;)

  10. Zorg_pro

    Пользуюсь им уже около 2-х лет. Есть одна проблема не описаная тут - это проблема с кодировкой. То есть русские буквы на клиенте не отображаются корректно (коркозябрами:-)). Для решения надо отключить юникод либо ставить патченный exe-шник. Постоянное обновление exe-шника выходит тут - sourceforge.net/projects/filezillapv/ по выходу новой версии. Но сам пользуюсь еще старой версией 0.9.34 beta. Возможно в новых версиях проблем с кодировкой нет.

    • Sonikelf

      Спасибо за дополнение.

  11. Zorg_pro

    Ошибочку допустил в ссылке на пропатченный exe-шник sourceforge.net/projects/filezillapv/files/Patched%20FileZilla%20Server/

  12. ORTI

    Здравствуйте!
    Прошу прощения,я только начинаю пользоваться FTP и кое что не ясно.Расписано всё хорошо, в настройках я всё понял, но вот как производить соединение с тем или иным пользователем (что нажимать) не могу понять. Допустим у меня их(имён) десять.Прошу разъяснить.

    • Sonikelf

      Приветствую.
      Соединение с пользователем устанавливать не нужно - это они с Вами его должны устанавливать, т.е у Вас сервер, а они на него заходят что-то качать.
      О том как им это сделать написано в статье про ФТП-клиент. Ссылка - http://sonikelf.ru/ftp/

  13. ORTI

    Спасибо,всё понял.

  14. Dzhager

    Сделал всё как в статье и никто не может подключиться. Может дело в том, что стоит Касперский интернет скьюрити? Ничего подобного нет. Фаервола нет. Брандмауэр отключён.

    • Sonikelf

      Вы не первый с подобным вопросом.
      Дело в KIS.

      • Dzhager

        Нельзя ли в его настройках что нибудь изменить, чтобы заработало? Или всё же удалять?

      • Sonikelf

        Сложно сказать. У меня это турбокомбаин не стоит :)

  15. FRAER273

    У меня не конектится к серверу 127.0.0.1 пишет:
    Connecting to server...
    Error, could not connect to server
    Trying to reconnect in 5 seconds

    • Sonikelf

      127.0.0.1 это не адрес сервера, а адрес интерфейса админки.
      Читайте статью внимательней

  16. LulzSecX

    Доброго времени суток Sonikelf ! Спасибо за подробное описание установки FileZilleServer. У меня возникла проблемка, когда друг(клиент) пытается подключиться ко мне(сервер), то у него пишет следующее:
    192.168.0.129(мой IP) соединение установлено...
    Ожидание приглашения...
    Сделано все по инструкции. Соединение компьютеров через распределитель D-Link(4-х портовый). Подскажите пожалуйста решение данной ситуации, заранее благодарен.

  17. LulzSecX

    Можно еще один вопросик))) Какую программу посоветуешь для обмена файлами между компьютерами по локальной сети Windows 7 и Windows XP. Пробовал настроить "Общий доступ" результат 0. Хочу сейчас поискать у тебя на сайте статейку про настройку локальной сети))) (если есть таковая). Заранее Спс.

  18. Александр

    Здравствуйте!

    Скажите мне, пожалуйста, почему мне не удаётся подключится к своему серверу?

    Если ввести айпи 127.0.0.1 -заходит...

  19. Александр

    Вообще никак не получается

  20. НайТ

    При использовании Hamachi выделяется реальный IP (5.x.x.x). Можно ли через него заходить на созданный мной FTP-сервер?

    Внешним провайдерским IP кроме меня ведь еще много человек пользуются. Если кто-то из них поднимет FTP сервер на этом адресе, то могут возникнуть конфликты с моим (без использования Hamachi или другого реального IP). Так ведь?

    • Sonikelf

      Скорее нет, чем да.
      Но попробовать можно.