Найти тему

НАСТРОЙКА FTP-СЕРВЕРА

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

Для начала дадим определение FTP. Эта аббревиатура разворачивается как «file transfer protocol» – т.е. речь идет об особом протоколе по которому можно удаленно передавать данные в интернете. В основе протокола лежит клиент-серверная архитектура, позволяющая задействовать разные каналы обмена данными и командами. При этом передача осуществляется с помощью конкретного соединения, устанавливающегося через 21 TCP-порт, который является одним из основных протоколов в сетях TCP/IP.

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

  • Активный режим. Здесь клиент передает серверу свой IP и номер порта, через который будут передаваться данные, после чего устанавливается соединение. Происходит подключение сервера к заданному узлу и запускается процесс обмена файлами.
  • Пассивный режим. Часто клиент защищен межсетевым экраном (брандмауэром), фильтрующим входящий трафик, и в силу этого не может принять входящее подключение. Тогда он посылает запрос к серверу, ответом на который становится IP-адрес сервера и номер TCP-порт, после чего клиент производит по ним подключение и запускается сессия по обмену данных.

Для обмена данных FTP-протокол также предусматривает несколько режимов: поточный, блочный и сжатый

  • Поточный режим. Является дефолтным. Данные передаются непрерывным потоком, никак не обрабатываясь протоколом. Данные разбиваются уже TCP на сегменты конкретного размера.
  • Блочный режим. Протокол делит данные на кластеры, каждому из которых присваивается свой заголовок, номер, размер и другие характеристики.
  • Сжатый. Если передаваемый файл слишком велик, то протокол сжимает его RLE-методом кодирования длин серий (run-length encoding).

Аутентификация клиента осуществляется стандартным образом: он передает серверу логин и пароль и, если юзер с такими кредсами зарегистрирован, производится коннект. Также при желании к FTP-серверу можно настроить и анонимный доступ.

Создание и настройка FTP-сервера на Windows 10

Теперь, когда мы рассказали об основных принципах передачи данных по FTP, поговорим о том, как создать собственный FTP-сервер. В качестве примера мы рассмотрим персональный компьютер, находящийся под управлением ОС Windows 10. Сразу отметим, что сделать это можно как с помощью встроенных инструментов операционной системы, так и с помощью внешних утилит, одной из наиболее распространенных считается FileZilla Server. При выбранной схеме в качестве сервера будет выступать жесткий диск вашей пекарни. Т.е. именно на нем будет находиться файловое хранилище, удаленный доступ к которому по FTP-протоколу можно будет настроить.

В общем случае создание FTP-сервера — достаточно трудоемкая задача, справиться с которой могут только опытные пользователи. Тем не менее, на Windows 10 этот процесс существенно упрощают встроенные инструменты, благодаря которым разобраться в создании сервера при некоторой дотошности смогут даже рядовые юзеры.

Рассмотрим же подробно инструкцию, неукоснительно следуя которой можно создать и настроить FTP-сервер на своем персональном компьютере.

  • Шаг 1. По дефолту в Windows 10 FTP-сервер выключен. Для его активации необходимо зайти в раздел «Программы», а затем кликнуть на «Включение» или отключение компонентов Windows. В диалоговом окне «Компоненты Windows» потребуется развернуть узел Службы IIS. Разверните узел «FTP-сервер», установив флажки «FTP-сервер» и флажок «Служба FTP», а затем нажмите кнопку «ОК».
  • Шаг 2. Переходим в корень «Панели управления» и находим там раздел «Администрирование». Перед вашими глазами окажется россыпь файлов, среди которых нужно будет найти «Диспетчер служб IIS». Два раза кликаем левой кнопкой мыши, в открывшемся окне слева находим вкладку, озаглавленную как «Сайты». Нажимаем правую кнопку мыши и ищем строку «Добавить FTP-сайт». Нажав на нее, вбиваем путь к создаваемому серверу (это может быть диск «C» или иной раздел винчестера).
  • Шаг 3. Настраиваем параметры привязки. В качестве айпишника выставляем значение «Все свободные», выбираем порт «21», ставим галки в полях «Запускать сайт FTP автоматически» и «Без SSL».
  • Шаг 4. Теперь нужно настроить доступы. Как уже говорилось выше, он может быть анонимным и тогда получить доступ к вашему диску сможет любой пользователь, а может — защищен логином и паролем (в настройках этот вариант обозначен как «Обычный»). Обратите внимание, что создавая собственный FTP-сервер, на ПК нужно активировать протокол передачи данных в межсетевом экране. Для этого нужно перейти в раздел «Дополнительные параметры» брандмауэра и выдать там необходимые разрешения.
  • Шаг 5. Все, сервер создан. Осталось решить, кто из пользователей компьютера будет иметь к нему прямой доступ. Переходим по пути «Панель управления» => «Администрирование => «Управление компьютером» и правой кнопкой мыши вызываем меню, в котором находим строчку «Создать группу». Здесь можно добавить учетки желаемых пользователей, после чего потребуется зайти в свойства группы и во вкладке «Безопасность» добавить созданную группу в список, после чего нажать кнопку «Изменить». Финиш, настройки доступа к FTP-серверу на вашей пекарне завершены: можно приступать к обмену файлами.

Как установить FTP-сервер на Linux

-2

Также надо сказать несколько слов о том, как FTP-сервер устанавливается на Linux. Операционки этого семейства позволяют подключать несколько распространенных FTP-серверов, например proftpd, wu-ftpd, pureftpd и vsftpd. Итак, как настроить vsftpd-сервер — «very secure», один из самых шустрых и безопасных с поддержкой IPv6 и SSL?

Рассмотрим мы это на примере сборки 20.04 Ubuntu, однако по той же схеме это можно сделать для дистрибутивов версий 18.04 и 16.04: отлаживаем, подключаем защищенное соединение SSL/TLS, выдаем пользователям доступ по FTP и настраиваем межсетевой экран. Теперь рассмотрим эти шаги подробнее.

  • 1 этап: устанавливаем vsftpd. В терминале выполняем команду «sudo apt-get install vsftpd», которая запускает установку нужного ПО на VPS-сервер. Когда все файлы скачаны, в распоряжении юзера оказывается уже с конфигурированная программа. Часть настроек безопасности предустановлена, однако их нужно допиливать вручную: так по умолчанию подключаться к вашему vsftpd можно анонимно, чего вам наверняка хотелось бы избежать.
  • 2 этап: отладка vsftpd на Ubuntu. Ищем н сервере конфиг sudo nano /etc/vsftpd.conf, открываем, в нем находим строку «Anonymous_enable», в которой меняем значение с «да» на «нет», чтобы перекрыть кислород анонимусам: «anonymous_enable=NO».
    Затем производим раскомментирование еще нескольких строк: убираем знак «#» из начала строк нескольких опций («local_enable», «write_enable», «chroot_local_user») и меняем их значение, дописав в конец «=YES».
    После этого нужно сохранить изменения в конфиге и выйти из файла. Чтобы при работе без root-доступа не возникало ошибки запуска последних версий нужно выполнить еще три вещи: зарегистрировать нового пользователя, выдать ему админский доступ и создать новую директорию внутри пользовательской домашней директории. После этого вы производите замену владельца этой директории на нового root-пользователя.
    Если вам понадобится что-либо поменять во вложенной директории «files», не забудьте сохранить его и перезагрузить vsftpd, выполнив «sudo service vsftpd restart».
    Осталось настроить фаерволл. В Ubuntu 16.04 и других упомянутых сборках это делается так: межсетевой экран перезапускается последовательным вводом «sudo ufw disable» => «sudo ufw enable», затем на порты для входящих подключений вешаются правила: «sudo ufw allow 20/tcp» => «sudo ufw allow 21/tcp».
  • 3 этап: получаем доступ к FTP-серверу. Когда FTP-сервер Linux установлен, подключаемся к нему через консоль или адресную строку в браузере. В первом случае в терминале выполняется команда ftp в сочетании с доменным именем или IP-адресом сайта: ftp example.com. Во-втором случае в браузер вбивается название ftp-протокола и домен или айпишник сервера: ftp://example.com. Осталось вспомнить пользовательские кредсы (логин-пароль) и можно заходить в свою директорию. В конце работы в консоли нужно набрать «exit» для выхода.

Через что подключаться к FTP-серверам?

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

Существует огромное число таких утилит: FAR, Total Commander, Xlight FTP Server и т.д. Однако ниже мы сосредоточимся на работе с самым популярным из этих приложений, известным как FileZilla Server.

FILEZILLA SERVER: НАСТРОЙКА FTP И ПОРЯДОК РАБОТЫ

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

FileZilla очень удобен в работе т.к. предлагает гибкую систему настройки параметров, отвечающих задачам практически любого пользователя. Интерфейс также весьма интуитивен: рабочая область состоит из нескольких окон, слева находится дерево каталогов с файлами на компьютере клиента, справа — разделы с файлами на сервере, к которому клиент подключается.

В верхней части интерфейса находится панель быстрого подключения, которая позволяет подключаться к серверам на одну сессию после заполнения строк «хост» (айпишник или имя домена), «имя пользователя» (логин по которому вы входите в панель управления) и «пароль». В качестве порта указывается стандартный «21», затем нужно кликнуть на кнопку «Быстрое соединение» и вуаля — настройка FTP-соединения произведена, можно приступать к загрузке файлов на хостинг или скачивания оттуда чего-то необходимого вам на локальной машине.

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

  • Шаг 1. Нажимаете Ctrl+S или заходите в меню «Файл», откуда вызываете «Менеджер сайтов» и в появившемся окне кликаете на «Новый сайт».
  • Шаг 2. Заполняете все появившиеся поля (все те же «хост», «имя пользователя» и «пароль»).
  • Шаг 3. В качестве типа входа выбираете «Нормальный» и вбиваете логин.
  • Шаг 4. Во вкладке «Настройки передачи» выбираете «Пассивный» режим.
  • Шаг 5. После ввода данных нажимаете «Соединиться» и ждете несколько секунд, пока не произойдет подключение к сайту через FileZilla.

Важно отметить, что для повышения секьюрности не стоит сохранять в приложениях пароли: если в ваш компьютер проникнут злоумышленники, то через FileZilla они смогут получить доступ и к данным сервера, с которым вы соединяетесь по FTP. Лучше не лениться вводить пароль каждый раз вручную, для чего тип входа следует изменить с «Нормального» на «Запрос пароля».

Теперь, когда профиль доступа создан, можно приступать к работе с файлами на удаленном сервере. После подключения с ними можно выполнять все те же операции (создание, редактирование, копирование, удаление и т.д.), что и своем на локальном компьютере. Чтобы загрузить что-либо на сервер достаточно или кликнуть правой кнопкой мыши на нужные файлы в левой части экрана FileZilla и вызвать опцию «Закачать на сервер» или еще проще — перетащить эти файлы в нужный каталог в правой части экрана по методу drag-and-drop. Прогресс копирования будет отображаться в баре в нижней части экрана.

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

Заключение

Подытоживая, можно сделать следующие выводы. FTP-протокол является одним из наиболее удобных форматов обмена данными между клиентами и серверами. Создать собственный FTP-сервер можно практически в любой операционной системе; примерный механизм мы рассмотрели на примере Windows 10, в которую встроены все необходимые инструменты. Тем не менее, несмотря на простоту, это довольно кропотливый процесс и гораздо удобнее настраивать FTP-сервера и подключаться к ним с помощью специализированных программ. Самой популярной из них является FileZilla Server, однако на рынке существует немало альтернативных решений: Total Commander, FAR-manager и т.д. Клиенты Максиплейс, арендующие место на наших серверах получают квалифицированную поддержку: в частности наши инженеры помогут вам настроить FTP-доступ к файлам, которые вы доверяете нам и гарантируют его бесперебойность.