FTP на своем компьютере? Легко
Порой появляется необходимость делиться своими файлами с друзьями, которые живут в соседней квартире и делят с вами вашу локальную сеть. Или же у вас есть NAS сервер и вы решили организовать свое файловое хранилище, куда могли бы получить доступ с любой точки мира.
Правда, закачать файлы в облако и пользоваться оттуда никто не отменял, но туда вы не поместите терабайты информации, которая хранится у вас на домашнем сетевом хранилище. Вот тут на помощь приходит локальный FTP сервер. Сетевые файловые накопители имеют встроенную возможность и соответствующие средства для организации данного сервиса. О возможностях конкретных моделей можно узнать на сайте производителя. Но мы решили создать свой сервер на обычном домашнем ноутбуке.
Для претворения в жизнь нашей затеи выбрали бесплатную и достаточно известную программу FileZilla. С клиентской частью наверное вам приходилось работать чаще, но есть еще и серверная часть, которая позволяет создавать свой FTP сервер. Качаем программу с официально сайта и устанавливаем. Установка стандартная поэтому покажу ту часть, которая может вызвать вопросы.
На этом месте установки выбираем Установить как службу, чтобы при загрузке компьютера сервер запускался автоматически. Порт можно поменять, но особого смысла нет, так как он используется только для локального подключения к серверу.
Далее переходим к настройке самой программы. Тут тоже буду останавливаться только на основных моментах, которые критичны для работы системы. Итак, первым делом в меню Edit выбираем Settings. В пункте General Settings выставляем значение как на рисунке:
Listen on these ports указывает на то, какие порты программа должна прослушивать для входящих соединений. Для большей безопасности их можно изменить и поставить любой порт выше 1023. В принципе можно и выше 1, но хорошим тоном считается выбор не общеизвестных портов, дабы избежать конфликтов.
Number of threads указывает на число потоков. Рекомендуется устанавливать равным числу установленных процессоров умноженных на 2.
Connection timeout устанавливает время в сессии для поключенного пользователя.
No Transfer timeout здесь указывается время после последнего трансфера файлов, по истечении которого соединение с сервером будет прервано.
Login timeout задает время ожидания ввода пользователем учётных данных.
В принципе в локальной сети этих настроек вполне достаточно. Следующий пункт Passive mode settings, который настраивается если вы подключаетесь к вашему серверу извне, а сервер стоит за маршрутизатором, который в свою очередь преобразует ваш серый IP, который начинается с 192.168. в белый, то бишь публичный, который виден всему Интернету.
Use custom ranges указываете порты, которые система выборочно откроет при инициализации подключения извне.
Use following IP указываете ваш внешний IP адрес, который можете посмотреть в Интернете вбив в поисковик ключевое слово my ip.
Retrieve external IP address from тут остановлюсь поподробней. Дело в том, что внешний IP у обычных поользователей меняется. И если вы укажете текущий адрес, то через некоторое время он будет недоступен. Тут на помощь приходит Dynamic DNS. Это такой вид услуги, которая позволяет обращаться к вашему внешнему IP адресу по доменному имени, например mycomp.com. Для этого нужно зарегистрироваться на одном из многочисленных сервисов, предоставляющих данную услугу, выбрать себе доменное имя и настроить соответствующим образом маршрутизатор. Но обо всем по порядку.
Хотя на рынке много поставщиков услуги указанного вида, я остановил свой выбор на noip.com. Во-первых, потому что этот сервис поддерживается моим роутером. А во-вторых, здесь бесплатно предоставляется доменное имя на месяц, а по истечении вы просто заходите и заново регистрируете ваш домен.
Для регистрации переходим на сайт noip.com. В главном окне в разделе Quick Add вписываем любое название и выбираем домен третьего уровня. Нажимаем Add hostname и наш домен готов. Затем открываем панель управления маршрутизатором, переходим на вкладку Динамический DNS, выбираем поставщика услуг, вводим имя пользователя указанный при регистрации на сайте сервиса, пароль и доменное имя. Включаем DNS и нажимаем Войти. Если всё указано правильно состояние подключения будет «Успешно!»
После всего этого в настройка FileZilla в строке Retrieve external IP address from указываем наш DNS адрес.
Дело остается за малым создать пользователя и протестировать подключение. Для этого в меню Edit выбираем Users. В открывшемся окне нажимаем на Add, задаём ему имя, ставим галочки перед Enable account и Password и вводим пароль. Все остальные настройки можно не менять:
Затем создаем папку для пользователя, даем ему нужные права и указываем как домашнюю директорию Set as home dir, чтобы при подключении пользователя перебросило сразу в нужное место. Можно для каждого пользователя создать отдельную папку, а также назначать разные уровни доступа на одну и ту же директорию.
Но что если вы всё это сделали, но друзья из Канады всё же не могут подключиться? Проблем могут быть две. Первая, не настроен переброс портов на роутере, вторая не прописано нужное правило на сетевом экране. Так настроим!
Для переброса портов на маршрутизаторе TP-Link переходим на вкладку Переадресация -> Виртуальные сервера. По умолчанию здесь никаких записей нет. Нажимаем на Добавить и вводим нужные значения.
Порт сервиса указываем внешний порт, на который будут идти обращения на наш IP. Здесь можно прописать и свои значения, но при подключении извне нужно будет прописать их в настройках клиента. Стандартный порт FTP 21.
Внутренний порт порт, который слушается на нашем сервере. В нашем случае это тоже 21.
IP-адрес адрес компьютера, где установлена серверная часть программы FileZilla.
Протоколы тут выбор не велик либо TCP, либо UDP. О протоколах можно говорить долго, но вкратце TCP гарантирует доставку отправленного пакета, но работает медленней, так как приходится ждать подтверждения получения каждой порции данных. UDP же шустрее TCP, но его не заботит получит ли адресат пакет или нет. FTP работает поверх TCP.
Есть еще набор предопределённых портов, который можно выбрать из выпадающего списка. Если всё стандартно, то выбираем FTP и нам не придётся вручную вводить все значения. Затем нажимаем на Сохранить.
Далее переходим к настройке межсетевого экрана. Для начала, чтобы убедиться, что именно он блокирует попытки подключения, лучше его вовсе отключить. Если всё заработало, то переходим к соответствующим настройкам.
На Панели управления выбираем Windows Defender Firewall -> Advanced Settings. Нажимаем на Inbound Rules (Правила для входящих соединений) и в правой панели выбираем New Rule. В открывшемся окне значения ставим как на рисунке:
Затем указываем порты и протоколы, для которых хотим разрешить соединение. Для FTP указываем TCP/21:
Нажимаем Next, указываем действие Разрешить (Allow the connection):
Профиль указывает для каких сетей будет действовать данное правило. Выбираем все:
В конце вводим название правила и нажимаем Finish.
Для Passive Mode делаем все тоже самое, только значение портов указываем те, что были прописаны в настройках программы в пункте Passive mode settings. Тут мы настроили правило для входящих подключений. Также нужно настроить правило для исходящих соединений. Все то же самое, просто настраивается в Outbound Rules (Правила для исходящих подключений).
После этого все должно начать работать. Если что-то не работает, попробуйте отключить межсетевой экран антивируса, если там таковой есть. В любом случае программа вам даст подсказки: код и описание ошибки, по причине которой не смог подключиться пользователь. (В данном случае ошибок нет, цель рисунка наглядно показать как выглядит сообщение программы)
Как создать и настроить FTP-сервер
Чаще всего пользователи для обмена в сети файлами небольших размеров используют почту или Скайп. Однако, когда необходимо переслать архив фотографий или фильм, размером в несколько гигабайт, этими сервисами воспользоваться нельзя. Публичный файлообменник тоже создаёт некоторые трудности, например, ожидание таймера и ограничение скорости. Наилучшее решение в таком случае — создать собственный FTP-сервер.
File Transfer Protocol
Как работает ФТП-протокол
FTP (File Transfer Protocol) — это протокол передачи информации в интернете и локальных компьютерных сетях. Это программа, осуществляющая удалённое подключение к выделенной папке для просмотра и обмена файлами, в том числе больших размеров. Обмен данными возможен от компьютера к удалённому серверу и между другими ФТП-серверами.
Данные передаются без шифрования трафика, поэтому доступ к логинам и паролям легко могут получить злоумышленники. Для безопасной передачи файлов рекомендуется использовать протокол с TLS-защитой — FTPS, шифрующий данные.
Собственный FTP-сервер имеет определённые преимущества:
- позволяет управлять сервером и его ресурсами;
- предоставлять пользователям разные права доступа;
- для него не нужен статический IP-адрес.
- нет ограничений скорости;
- отсутствие оплаты хостеру за его размещение;
В соответствии с тем, какой сложности будет доступ, выбирается программное обеспечение. Чтобы создать FTP-сервер для частного пользования с минимальными настройками,вполне подойдут бесплатные программные пакеты.
Компанией Майкрософт в Windows 7 добавлена функция Internet Information Services (IIS), осуществляющая общий доступ из сети к выделенной для этой цели папке. Поэтому, чтобы создать FTP-сервер для Windows 7, не требуется дополнительно устанавливать ПО.
Установка FTP-сервера
Некоторые стандартные возможности, которыми пользуются не так часто, в Windows 7 отключены по умолчанию. Поэтому, чтобы их активировать, необходимо выполнить ряд шагов.
Для создания ФТП-сервера на Windows 7 необходимо:
- Нажать «Пуск» и открыть раздел «Панель управления». Для удобства просмотра можно выбрать режим «Мелкие значки».
Панель управления в Windows 7
- Перейти в раздел «Программы и компоненты», где выбрать «Включение или отключение компонентов Windows».
Включение и отключение компонентов Windows
- В списке открывшегося меню нужно отметить компоненты, которые следует активировать, поставив рядом галочку. Это папка «FTP-сервер», в ней два пункта: «Расширяемость FTP» и «Служба FTP», а также папка «Средства управления веб-сайтом», а в ней— «Консоль управления IIS». Для запуска нажать OK.
Настройка ФТП-сервера
- Теперь нужно снова зайти через «Пуск» в «Панель управления».
- Найти раздел «Администрирование» и открыть в этом разделе «Диспетчер служб IIS».
- Перейти во вкладку «Сайты», щёлкнув на название правой кнопкой, выбрать из списка «Добавить FTP сайты».
- В новом окне требуется указать имя будущего ФТП-сервера, и путь к каталогу с его данными. К следующему этапу настройки можно перейти, нажав кнопку «Далее».
- Теперь устанавливаются параметры сервера. В поле IP-адреса выбрать нужный из списка. Можно привязать его к определённому адресу или сделать расширенный доступ, выбрав пункт «Все свободные». При этом должен быть отмечен стандартный порт— 21. Если планируется постоянно использовать FTP-сервер, то следует поставить отметку галочкой «Запускать FTP-сайт автоматически». Выбрать опцию «Без SSL», её можно включить в случае необходимости позже. Снова нажать «Далее».
- В новом окне задаётся тип авторизации. В пункте «Проверка подлинности» можно разрешить вход для обычных или анонимных пользователей. Здесь же можно настроить для них права. Нажать«Готово».
После завершения установки в разделе «Сайты» появится новый ФТП-сервер.
Настройка брандмауэра Windows
Теперь обязательно необходимо настроить брандмауэр Windows для открытия портов и функционирования служб.
Снова войти в «Панель управления», затем «Брандмауэр Windows». Найти раздел «Дополнительные параметры».
Брандмауэр Windows 7
В нём выбрать «Правила для входящих соединений». Для них рекомендуется установить пассивный режим. Для этого правой кнопкой мыши нажать и включить правила «FTP Server Passive» и «FTP-сервер (входящий трафик)». Таким же образом для исходящих подключений включить в соответствующем разделе правило «FTP-Server».
Включить правила «FTP Server Passive» и «FTP-сервер»
Подключение пользователей
Чтобы на сервер могли заходить пользователи, их необходимо подключить.
- Во вкладке «Панель управления» открыть папку «Администрирование».
- Найти раздел «Управление компьютером», затем перейти к папке «Локальные пользователи». Нажав правой кнопкой на строку «Группы», выбрать функцию «Создать группу». В новом окне указать имя и короткое описание группы, нажать «Создать».
- Теперь можно подключить пользователей к созданной группе. В папке «Локальные пользователи» нажать правой кнопкой на строку «Пользователи» и выбрать из списка меню «Новый». Заполнить поля, введя имя и пароль, здесь же следует установить галочкой запрет на смену пароля.
- Для подключения пользователя нажать правой кнопкой на его учётную запись и выбрать из списка меню пункт «Свойства», далее — вкладка «Членство в группах» и кнопка «Добавить». Найти созданную группу, добавить и нажать OK. Эту процедуру нужно выполнить для всех пользователей сервера.
- На следующем этапе определяются права доступа пользователей группы к рабочему каталогу. Для этого нужно перейти к каталогу «Сайт», щёлкнуть по названию правой кнопкой и открыть «Свойства». Далее — вкладка «Безопасность», в пункте «Изменить» указать название группы и нажать ОК. Затем нужно настроить права для пользователей.
- Войти в «Диспетчер служб IIS», нажав правой кнопкой на строку «Правила авторизации FTP», добавить разрешающее правило. Можно позволить пользователям запись и удаление данных, а можно только чтение.
Установка и настройка сервера завершена. Однако, теперь нужно знать, как зайти на FTP-сервер.
Стандартные функции Windows позволяют сделать это просто. Достаточно открыть папку «Мой компьютер», затем в адресной строке указать путь к серверу.
Другой способ — создать ярлык подключения к ФТП на рабочем столе компьютера.
Для этого открыть«Панель управления», кликнуть правой кнопкой раздел «Сетевое окружение». В задачах выбрать «Добавить новый элемент в сетевое окружение», затем щёлкнуть на пункт «Выберите другое сетевое размещение» и «Далее». Теперь в разделе «Сетевое размещение» появится ярлык, который нужно просто перетащить мышью на рабочий стол.
Как видно, полезно знать, как настроить FTP-сервер на ОС Windows, чтобы сделать обмен данными между пользователями удобным и без ограничений.
При подготовке материала использовались источники:
https://wiki.merionet.ru/articles/ftp-na-svoem-kompyutere-legko/
https://nastroyvse.ru/programs/review/sozdanie-i-nastrojka-ftp-servera.html