Установка FTP-сервера на Windows 10/11: подробное руководство

Установка FTP-сервера на Windows 10/11: подробное руководство

FTP-сервер позволяет организовать обмен файлами между компьютерами по сети – будь то локальная сеть или Интернет. Благодаря FTP (File Transfer Protocol, протокол передачи файлов) вы можете удаленно сохранять, загружать и управлять файлами на удаленном компьютере. FTP-сервер выступает хранилищем файлов, к которому могут подключаться один или несколько FTP-клиентов для передачи данных. В этой статье мы рассмотрим, что собой представляет FTP-сервер и какие у него возможности, а также подробно опишем, как установить и настроить FTP-сервер на Windows 10 и Windows 11 – как встроенными средствами системы, так и с помощью стороннего программного обеспечения. Кроме того, мы разберем настройку учетных записей, вопросы безопасности и способы подключения к FTP-серверу.

Описание FTP-сервера и его возможности

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

Основные возможности FTP-сервера:

  • Обмен файлами: Позволяет передавать файлы любого типа и размера между клиентом и сервером. Вы можете, например, загружать документы, изображения, видео или резервные копии на FTP-сервер, а затем скачивать их с другого устройства.
  • Множественные подключения: Одновременно к FTP-серверу могут подключаться несколько пользователей (клиентов) и работать с файлами. Администратор сервера может настроить отдельные учетные записи для разных пользователей.
  • Управление доступом: FTP-сервер поддерживает аутентификацию – доступ по логину и паролю. Вы можете создавать учетные записи пользователей и задавать для них права доступа (только чтение, чтение/запись). Также возможно разрешить анонимный доступ (без пароля) для публичного обмена файлами, хотя это не рекомендуется по соображениям безопасности.
  • Простота подключения: К FTP-серверу легко подключиться с разных устройств – будь то Windows, Linux или смартфон – используя стандартные FTP-клиенты или даже встроенные средства (например, проводник Windows). Это упрощает обмен данными между разными платформами.
  • Гибкость настройки: Администратор может настраивать каталог (папку) на сервере, который будет доступен через FTP, ограничивать скорость передачи данных, задавать максимальное число подключений, настраивать порты и шифрование (FTPS) для безопасности и т. д.

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

Установка FTP-сервера средствами Windows (встроенный сервер)

Остановимся на варианте, когда вы пользуетесь встроенными средствами Windows для создания FTP-сервера. В Windows 10 и Windows 11 подобный функционал реализован при помощи служб IIS (Internet Information Services) – они отвечают за веб-сервер и включают модуль FTP. Рассмотрим пошагово процесс его включения и настройки:

  1. Включение компонента FTP. Первый шаг – активировать встроенную службу FTP в Windows. Для этого откройте «Панель управления» и выберите раздел «Программы». Затем кликните «Включение или отключение компонентов Windows». В списке компонентов найдите раздел «Internet Information Services» (Службы IIS) и разверните его. Ставьте галочки напротив «FTP-сервер» и «Служба FTP», а также убедитесь, что включена опция «IIS Management Console» (Консоль IIS для управления). Нажмите «OK», и Windows доустановит нужные компоненты.
  2. Подготовка учетной записи. Перед настройкой FTP-сервера имеет смысл создать отдельную учетную запись Windows, которая будет использоваться для доступа к FTP. Это можно сделать через «Управление компьютером» (раздел «Локальные пользователи») или в командной строке с помощью net user. Создайте неадминистративную учетку ("ftpuser" или любое другое имя) с сильным паролем. Именно от имени этой учетной записи клиенты будут логиниться на FTP-сервер. Если же вы планируете открыть FTP для всех и не использовать логин/пароль (anonymous), то данный шаг можно пропустить.
  3. Создание FTP-сайта в IIS. После активации FTP-службы откройте «Диспетчер служб IIS» (его можно найти через меню «Пуск» или в панели «Администрирование»). В древе по левой руке найдите узел «Сайты», нажмите на него правой кнопкой и выберите «Добавить FTP-сайт». Придумайте имя для вашего FTP-сайта (например, «My FTP») и укажите папку на диске, которую хотите сделать доступной через FTP. Это может быть, например, C:FTP или другой каталог. После того нажмите «Далее» («Next») для перехода к следующему шагу в мастере.
  4. Настройка подключения (IP и порт). На шаге настройки привязки (“Binding”) укажите интерфейс и порт, на которых сервер будет слушать запросы. Если на данном компьютере один сетевой адрес, можно оставить «All Unassigned» («Все свободные») и порт 21 – это порт по умолчанию для FTP. Если сервер имеет несколько интерфейсов, выберите нужный IP-адрес из списка. Пока что можно выбрать режим «Без SSL» (если вы еще не настроили SSL/TLS сертификаты, о чем мы расскажем далее). Нажимаем «Далее».
  5. Аутентификация и права доступа. На заключительном шаге мастера надо задать параметры доступа. Если вы хотите разрешить анонимный доступ, включите «Anonymous»-аутентификацию (не требуется ввод логина/пароля). Для ограниченного доступа включите «Basic»-аутентификацию (по логину и паролю). В поле «Разрешить доступ» выберите «Указанные пользователи» и впишите имя созданного вами пользователя (или группу). Ниже отметьте, какие права дать этим пользователям: чтение (Download) или чтение/запись (Upload). По окончании нажимаем «Готово» («Finish»). Ваш FTP-сайт должен запуститься и будет ждать подключений.
  6. Настройка доступа к папке. Если вы давали доступ не для всех, а для определённых учётных записей, необходимо, чтобы эти пользователи имели права на доступ к самой папке в файловой системе Windows. Найдите в проводнике папку, указанную выше при создании сайта, и откройте её свойства. В вкладке «Безопасность» нажмите «Изменить…» и добавьте в список пользователей ту учетку или группу, которой вы разрешили FTP-доступ. Выдайте нужные права (начните с чтения, а если потребуется запись/изменение – добавьте и эти права). Теперь ваш пользователь может не только проходить аутентификацию в FTP, но и действительно читать/записывать файлы в этой папке на диске.
  7. Добавление исключения в брандмауэре. Чтобы клиенты могли достучиться до вашего FTP-сервера, необходимо проверить, что брандмауэр Windows (файрвол) не блокирует подключения. После запуска FTP-сайта впервые может появиться запрос от брандмауэра – разрешите доступ для данной службы. Если же запроса не было, настройте брандмауэр вручную. Зайдите в «Брандмауэр защиты Windows с расширенной безопасностью» и проверьте, что в правилах для входящих соединений есть пункт для FTP (порт 21, протокол TCP) или сама служба в списке разрешённых. Если её нет – добавьте новое правило, разрешающее TCP-подключения на 21 порт для нужного профиля сети (частной/домашней или публичной, если сервер должен быть виден из Интернета). Теперь ваш встроенный FTP-сервер полностью готов к работе!

Установка FTP-сервера с помощью FileZilla Server (стороннее ПО)

Помимо встроенного решения в Windows, многие предпочитают пользоваться сторонним программным обеспечением для функций FTP-сервера. Одним из самых популярных и бесплатных решений является FileZilla Server . Это небольшая программа, которая проста в настройке и запуске на Windows 10/11. Рассмотрим, как её установить и настроить:

  1. Скачивание и установка FileZilla Server. Перейдите на официальный сайт FileZilla и скачайте последнюю версию FileZilla Server для Windows. Запустите файл установки (.exe) и следуйте инструкциям мастера. Может потребоваться подтвердить права администратора для установки. На этапе установки вы можете выбрать компоненты (сам сервер и/или интерфейс администрирования) и настроить режим запуска сервиса (разумно оставить FileZilla Server в виде службы, чтобы он запускался автоматически). По окончании мастера установки, FileZilla Server будет установлен и готов к настройке.
  2. Первый запуск и настройка FileZilla Server. После установки откройте приложение FileZilla Server Interface (интерфейс администратора). Впервые запуская интерфейс, вы можете сразу подключиться к локальному FTP-серверу (Server Address: 127.0.0.1, Port: 14147, пароль администратора ещё не задан, оставьте пустым). При желании вы можете установить пароль для административного доступа, чтобы защитить настройки сервера.
  3. Создание учетных записей в FileZilla Server. Чтобы дать пользователям доступ к файлам, необходимо создать в сервере FileZilla учетные записи пользователей. Откройте в интерфейсе FileZilla раздел Users (Пользователи) и добавьте нового пользователя. Задайте логин (username) и пароль для него. Затем в настройках этого пользователя выберите папку (директорию) на диске, доступ к которой нужно предоставить через FTP (эта папка будет корневым каталогом для этого пользователя). При необходимости можно настроить ему доступ к другим каталогам и права (чтение, запись, удаление и т.п.). По умолчанию в FileZilla Server у нового аккаунта есть только права на чтение, если нужно разрешить загрузку файлов – включите опцию «Write» (Запись) для этого пользователя.
  4. Проверка и завершение настройки. Теперь сервер FileZilla запущен и должен быть готов принимать подключения. Убедитесь, что Windows не блокирует это приложение: при первом запуске Windows могла попросить разрешение для FileZilla Server в брандмауэре – это нужно было разрешить. Если же в брандмауэре нет записи для FileZilla, добавьте правило для входящих на 21 порт или разрешите по имени программу FileZilla Server. Теперь можно перейти к подключению к новому FTP-серверу – о чем рассказано в следующем разделе.

Настройка учетных записей и прав доступа

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

  • Встроенный FTP в Windows: в этом случае FTP-сервер использует учетные записи самой основной системы (Windows). Т.е. каждый пользователь, которому нужен доступ по FTP, должен иметь локальную учетную запись на этом компьютере (и даже несколько, если пользователей много). Мы уже выше создали отдельную учетку ftpuser с паролем. Вы можете создать для каждого человека, кто будет подключаться, отдельный логин и пароль. Такое решение лучше, чем делиться основной учетной записью Windows.
  • FTP-пользователи и права: После создания учетной записи нужно присвоить ей права на нужную папку. В случае встроенного сервера, мы добавили пользователя в список на вкладке «Безопасность» самой папки и дали ему права на чтение/запись. Если это не сделать, то даже правильная аутентификация не даст доступа к файлам. В FileZilla Server похожие права определяются в настройках пользователя – вы можете разрешить только чтение или чтение и запись (и другие действия) в заданном каталоге.
  • Разграничение доступа: Если вам нужно дать доступ разным людям к разным наборам файлов, можно на встроенном FTP использовать различные папки и настраивать права через NTFS (на уровне файловой системы). В FileZilla Server же вы можете добавить несколько каталогов для одного пользователя и дать каждому свои права. Например, можно предоставить одному пользователю доступ только к папке А, другому – только к папке Б. Также можно группировать пользователей в группы для упрощения настройки прав.

Безопасность FTP-сервера

Шифрование соединения (SSL/TLS)

По умолчанию общение по FTP не шифруется. Это значит, что данные, включая логин и пароль, передаются по сети в открытом виде. Если вы планируете подключаться к FTP-серверу через Интернет или по незащищенной сети, обязательно включайте шифрование. Шифрование FTP-сессии обычно достигается при помощи SSL/TLS, что называется FTPS. В встроенном IIS FTP-сервере вы можете добавить SSL-сертификат (например, самозаверенный) и разрешить FTPS в настройках сайта. ( Подробное руководство см. на сайте Microsoft .) В FileZilla Server также поддерживается FTPS: вы можете зайти в настройки FileZilla Server и выбрать SSL/TLS сертификат (если нужно, сгенерировать самозаверенный) и включить шифрование для вашего FTP. После этого клиенты при подключении будут использовать защищенное FTPS-соединение.

Если по каким-то причинам вы не можете или не хотите настраивать FTPS, а переживаете за безопасность, можно рассмотреть альтернативу – SFTP (не следует путать с FTPS). SFTP основан не на SSL, а на протоколе SSH, и для него в Windows 10/11 можно включить службу OpenSSH ( официальная инструкция ). Это отдельный подход, но также позволяет передавать файлы безопасно (по протоколу SSH).

Брандмауэр и сетевые настройки

Корректная настройка брандмауэра и сетевых параметров важна для одновременно и безопасности, и работоспособности вашего FTP. Мы уже создали правила для порта 21 в брандмауэре Windows. Если вы планируете ограничить доступ к серверу только для внутренней сети, настройте правило так, чтобы оно работало только для профиля «Частная сеть». Если сервер должен быть доступен из Интернета, перейдите в настройки вашего роутера и корректно настройте port forwarding (проброс портов) для вашего компьютера на порт 21.

Не забудьте, что FTP в пассивном режиме может задействовать дополнительные диапазоны портов для передачи данных. В IIS можно задать эти порты в настройках FTP-сервера (в разделе "FTP Firewall Support"), а затем открыть их в брандмауэре и настроить проброс на роутере. Для простой работы в локальной сети часто достаточно активного режима FTP, не портуя дополнительные порты.

Защита от атак

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

Если ваш FTP открыт в Интернет, имеет смысл мониторить логи подключений и в случае злоупотреблений (неправомерные попытки подбора пароля, DDoS и т.п.) временно блокировать по IP исходящие адреса хулиганов. В FileZilla Server, к слову, есть функция Auto-ban, которая автоматически блокирует ип-адрес после нескольких неудачных попыток логина. Общий принцип для защиты – максимум защиты и ограничений при минимуме необходимого доступа.

Подключение к FTP-серверу (локально и через Интернет)

Локальное подключение

Сначала проверим, что сервер правильно работает в локальной сети. Если вы запустили FTP-сервер на своем ПК, можно попробовать подключиться к нему напрямую с того же компьютера. Откройте в Windows «Проводник» (Explorer) и введите в адресной строке ftp://127.0.0.1 или ftp://localhost. Если все настроено верно, вы видите папку вашего FTP-сайта. При необходимости введите имя пользователя и пароль. Еще один способ – открыть командную строку и написать ftp 127.0.0.1 (затем ввести логин и пароль вручную). Для подключения с другого компьютера в той же сети используйте внутренний IP-адрес сервера. Узнать свой адрес можно командой ipconfig или в свойствах сетевого подключения. Например, в браузере или проводнике введите ftp://192.168.X.Y, где 192.168.X.Y – Айпи вашего сервера в ЛАН.

Подключение через Интернет

Для доступа к FTP-серверу из внешней сети требуется внешний IP-адрес. Вы можете узнать свой внешний IP через настройки роутера или на сайте, показывающем Айпи. Если вы за маршрутизатором, проверьте, что нанесен правильный проброс портов на порт 21 внутрь вашей сети (как мы обсуждали в разделе про брандмауэр).

Теперь ваш сервер должен быть доступен из Интернета. Для подключения к нему подойдет любой FTP-клиент. Например, вы можете скачать и установить программу FileZilla Client на ваш другой компьютер и попробовать подключиться к серверу, введя в полях Host, Username, Password, Port ваши данные (Айпи, логин, пароль, порт 21). Если все настроено верно, вы сможете видеть содержимое папки и передавать файлы. Если на сервере вы включили FTPS, не забудьте в клиенте выбрать протокол с шифрованием (например, «Require explicit FTP over TLS» в FileZilla Client). Если хотите иметь удобный адрес, вместо временного IP можно настроить сервис динамического DNS, чтобы получить статичное доменное имя для своего сервера (многие роутеры поддерживают DDNS).

Полезные советы и ссылки

FTP-сервер Windows 10 Windows 11 настройка FTP FileZilla Server IIS FTP безопасность FTP SSL/TLS обмен файлами локальная сеть
Alt text
Обращаем внимание, что все материалы в этом блоге представляют личное мнение их авторов. Редакция SecurityLab.ru не несет ответственности за точность, полноту и достоверность опубликованных данных. Вся информация предоставлена «как есть» и может не соответствовать официальной позиции компании.
Ищем баги вместе! Но не те, что в продакшене...

Разбираем кейсы, делимся опытом, учимся на чужих ошибках

Зафиксируйте уязвимость своих знаний — подпишитесь!