Как создать сервер ftp и его настройка на ос windows 10, топ-10 лучших
Содержание:
Передача файлов по FTP через терминал
Мы могли бы использовать telnet для передачи файлов по FTP через терминал, но это слишком сложно и не нужно. Существует консольный клиент FTP с более простым синтаксисом и достаточными возможностями. Сначала рассмотрим общий синтаксис и команды утилиты:
$ ftp опции адрес_сервера
Опций у утилиты всего несколько, но нам нужно их рассмотреть, потому что они могут быть вам очень полезны:
- -A — использовать активный режим во время передачи файлов;
- -p — использовать пассивный режим, используется по умолчанию;
- -i — отключать интерактивный режим во время передачи файлов;
- -n — попытаться использовать автоматический вход;
- -e — отключить историю команд;
- -v — максимально подробный вывод;
- -d — включить режим отладки.
Дальше рассмотрим команды интерактивного режима, которые вы будете использовать для подключения к серверу и управления файлами:
- account — отправить серверу свой пароль для авторизации;
- append — добавить локальный файл в конец удаленного файла на сервере;
- ascii — передавать файлы в кодировке ASCII;
- binary — передавать файлы в бинарном формате;
- bye — завершить сессию;
- cd — перейти в папку;
- cdup — перейти в папку уровнем выше;
- chmod — изменить права на файл;
- delete — удалить файл с сервера;
- dir — посмотреть список файлов в папке;
- get — скачать файл из сервера на локальную машину;
- hash — отображать статус передачи файла;
- lcd — сменить рабочую директорию на локальной машине;
- ls — список файлов в папке;
- mdelete — удалить несколько файлов;
- mget — скачать несколько файлов;
- mkdir — создать папку;
- mput — передать несколько файлов на сервер;
- open — подключится к удаленному FTP серверу;
- put — передать файл на сервер;
- pwd — вывести текущую папку;
- recv — то же самое что и get;
- rename — переименовать файл на сервере;
- rmdir — удалить папку;
- size — узнать размер файла;
- user — авторизоваться на сервере.
Это далеко не все команды, которые вы можете использовать для передачи файлов, но здесь перечислено все самое основное, и вам их точно хватит для решения простых задач.
Сначала подключаемся к нашему серверу, команде нужно передать адрес сервера:
Затем авторизуемся на сервере, нужно передать логин и пароль:
Только после этого перед нами открывается командная оболочка FTP клиента. Именно здесь будет выполняться передача файлов ftp. Изменим текущую папку на FTP, затем посмотрим ее содержимое и выведем полный адрес текущей папки:
Перейдем в папку documents на удаленном сервере и посмотрим ее содержимое:
Чтобы скачать файл по FTP с удаленного сервера нам нужно использовать команду get. Просто передайте команде имя файла:
Теперь файл находится на нашей локальной машине. Мы можем выполнять команды на локальной машине если перед ними добавить символ «!». Например, посмотрим содержимое домашней папки чтобы убедиться, что файл был загружен:
Загрузка файлов по FTP на сервер выполняется с помощью команды put, причем, здесь, как и в предыдущей команде можно задать имя создаваемого файла:
Также можно управлять файлами на удаленном сервере. Переименуем файл doument1.pdf, так чтобы он назывался правильно:
Затем удалим document3:
Для завершения сеанса FTP наберите Bye:
Сейчас многие FTP серверы используют шифрование на основе ssl сертификатов. Это необходимая мера, которая позволяет обезопасить данные пользователей. Для подключения к таким серверам необходимо использовать утилиту sftp, в остальном же процесс и команды не отличаются.
Поддержка веб-браузера
Большинство распространенных веб-браузеров могут получать файлы, размещенные на FTP-серверах, хотя они могут не поддерживать расширения протокола, такие как FTPS . Когда предоставляется URL-адрес FTP, а не HTTP , доступное содержимое на удаленном сервере представляется таким же образом, как и для другого веб-содержимого. Полнофункциональный FTP-клиент может быть запущен в Firefox в виде расширения под названием FireFTP .
Google Chrome полностью удалил поддержку FTP в Chrome 88. По состоянию на 2019 год Mozilla обсуждала предложения, включая удаление поддержки только старых реализаций FTP, которые больше не используются, для упрощения их кода. В апреле 2021 года Mozilla выпустила Firefox 88.0, в котором по умолчанию отключена поддержка FTP. В июле 2021 года Firefox 90 полностью отказался от поддержки FTP.
Синтаксис
Синтаксис URL-адреса FTP описан в RFC и имеет форму: (части в квадратных скобках необязательны).
Например, URL-адрес ftp://public.ftp-servers.example.com/mydirectory/myfile.txt представляет файл myfile.txt из каталога mydirectory на сервере public.ftp-servers.example.com в качестве ресурса FTP. . URL-адрес ftp: // user001: secretpassword@private.ftp-servers.example.com/mydirectory/myfile.txt добавляет спецификацию имени пользователя и пароля, которые должны использоваться для доступа к этому ресурсу.
Более подробную информацию об указании имени пользователя и пароля можно найти в документации браузеров (например, Firefox и Internet Explorer ). По умолчанию большинство веб-браузеров используют пассивный режим (PASV), который легче преодолевает межсетевые экраны конечных пользователей.
Существуют некоторые вариации в том, как разные браузеры обрабатывают разрешение пути в случаях, когда для пользователя существует некорневой домашний каталог.
Как подключиться к FTP-серверу
Чтобы зайти на FTP-сервер, нужно авторизоваться в окне системы управления или главном окне программы. После ввода пароля с логином эти данные будут отправлены на сервер и, если они будут приняты, ПК-клиента получит доступ и перед ним откроется сессия. Есть и варианты подключения к FTP-серверу без ввода логина и пароля. Но в таком случае права пользователя будут ограничены.
Второй метод входа на FTP-сервер — анонимный доступ. Так, по умолчанию выполняется подключение после ввода логина “anonymous”, но наиболее распространенный способ подключения к FTP-серверу — через электронную почту, куда рассылаются приглашения для входа. Такой метод чаще всего применяется FTP-хостами, которые рассылают обновления программного обеспечения.
Зайти на FTP-сервер можно через файловый менеджер, который поддерживает эту функцию или при помощи браузера. При этом, используя браузер, у пользователя получится просмотреть и скачать данные, но нельзя будет их редактировать.
Программа FileZilla — самое распространенное, бесплатное, удобное и простое решение для подключения к FTP-серверам. Чтобы создать в ней новое подключение, нужно выполнить всего 2 простых шага:
- Указать в поле “Хост” (находится в верхней части окна) адрес FTP-сервера.
- Ввести “Имя пользователя” и “Пароль” (иногда нужно заполнить еще и поле “Порт”).
Чтобы взять адрес сервера, нужно обратиться к своему хостеру. Обычно все эти данные он отправляет на электронную почту администратора сайта сразу после покупки хостинга.
Кстати, возможно вам будет интересно, как установить Битрикс
What is an FTP port?
The FTP, or the File Transfer Protocol, makes it possible for users to exchange files between their personal computers and remote servers with the help of specialized software tools called FTP clients. Through FTP software tools users can establish connections with a remote machine of their choice and perform any necessary data transfers. The FTP connections are executed through certain ports, which are either the default TCP ports or custom ports set by an administrator.
Executing an FTP port connection through a client is a two-stage process requiring the use of two different ports. Once the user enters the name of the server and the login credentials in the authorization fields of the FTP client, the FTP connection is established and the FTP control port of the FTP server (the default port for sending commands is 21) is opened. Then a second connection to the server is made by the client, followed by a response of the FTP server from the port for sending data (the default data sending port is 20), when the real file transfer actually begins.
Создание и настройка
Установить FTP-сервер на ПК может любой пользователь, даже чайник. Это можно сделать либо средствами операционной системы, либо с помощью сторонних программ, таких как Filezilla server.
FTP в windows
В Windows 7 есть все для того, чтобы установить и настроить FTP сервер, ничего дополнительно устанавливать не придётся. На более новых версиях этой системы все делается аналогично.
Чтобы сделать ФТП сервер на компьютере:
- Кликните по кнопке «Пуск», откройте «Панель управления» и выберите строку «Программы и компоненты».
- Выберите ссылку «Включение или отключение компонентов Windows», откройте пункт «Службы IIS», поставьте галочку в строке «FTP-сервер» и всех его подпунктах.
- Зайдите в меню «Администрирование» на панели управления.
- Откройте «Диспетчер служб IIS».
- Кликните по строке «Сайты», расположенному в правой части окна, и нажмите «Добавить FTP-сервер».
- Задайте имя соединения и путь к общей папке, через которую вы будете обмениваться данными.
- Введите IP-адрес, номер порта и параметры шифрования (можно настроить, как на рисунке).
- Настройте доступ (анонимный – без пароля, обычный – нужно будет ввести имя и пароль).
- Зайдите в «Панель управления», откройте «Система и безопасность» и выберите «Брандмауэр Windows».
- В левом меню выберите пункт «Дополнительные параметры».
- Кликните по строке «Правила для входящих подключений», которая находится слева, кликните правой кнопкой по строке «FTP-сервер» (находится в центральной части окна) и выберите «Включить правило». Те же действия повторите со строкой «Трафик FTP сервера в пассивном режиме».
- В левой части окна выберите «Правила для исходящего подключения» и включите «Трафик FTP-сервера».
- Чтобы настроить права пользователей, зайдите в раздел «Администрирование» панели управления и кликните по строке «Управление компьютером».
- Щёлкните правой кнопкой по свободному месту и выберите сроку «Создать группу».
- Введите имя группы.
- В папке «Пользователи» создайте нового пользователя.
- Заполните поля, касающиеся имени пользователя и пароля.
- Щёлкните правой кнопкой по только что созданному пользователю, выберите пункт «Свойства», перейдите на закладку «Членство в группах» и, нажав кнопку «Добавить», задайте пользователю новую группу.
- Чтобы разрешить пользователю подключаться к выделенной для обмена папкой, щёлкните по ней правой кнопкой и выберите строку «Свойства», перейдите на вкладку «Безопасность» и нажмите кнопку «Изменить».
- Щёлкните по кнопке «Добавить» и добавьте созданную недавно группу. Отметьте галочками все пункты в колонке «Разрешить».
- Зайдите ещё раз в меню службы IIS, щёлкните по вашему сайту и кликните по иконке «Правила авторизации».
- Кликните по пустому месту правой кнопкой и выберите «Добавить разрешающее правило».
- Отметьте пункт «Указанные роли или группы пользователей» и введите название созданной группы.
На этом создание FTP сервера закончено. Теперь вы знаете, как поднять домашний файлообменник.
Filezilla server
Самое популярное приложение для создания FTP – это FileZilla Server. Его можно скачать с официального сайта.
Чтобы создать свой FTP сервер FileZilla:
- для создания пользователя в пункте верхнего меню «Edit» выберите подпункт «Users»;
- нажмите кнопку «Add»;
- в поле ввода наберите имя пользователя;
- после этого введите пароль;
- создайте рабочую папку;
- задайте права на эту папку;
На этом создание FTP-сервера закончено.
Программы для FTP-соединения
Специализированное ПО используется для эффективной и наглядной работы с FTP-серверами. Большинство приложений ориентировано не только на профессионалов, но и на новичков, которые легко справятся с интуитивно понятным интерфейсом. Рассмотрим самые популярные программы, выполняющие функции FTP-клиентов.
Far Manager
Far Manager – пример консольного файлового менеджера, разработанного под ОС Windows российским программистом Евгением Рошалом. Программа отличается узнаваемым двухоконным интерфейсом и стандартной сине-белой цветовой схемой. Управление осуществляется через систему команд, вводимых с клавиатуры. При работе с FTP поддерживается доступ через различные типы прокси-серверов, выполнение поиска и замены символов во множестве файлов срабатывает автоматическая докачка. Является свободно распространяемым ПО.
Total Commander
Total Commander имеет собственный FTP-клиент, который позволяет выполнять все стандартные операции с файлами и папками: копировать, вырезать, создавать, переименовывать, удалять, просматривать, редактировать. Следует учесть, что доступы к FTP сохраняются в клиенте автоматически и хранятся незашифрованными. Total Commander является свободно распространяемым ПО.
FileZilla
FileZilla – популярный FTP-клиент с открытым кодом и мультиязычным интерфейсом. Разработан для ОС Windows, Linux и Mac OS. Поддерживает FTP через SSL/TLS (он же FTPS), IPv6, IDN. Работает с нелатинскими доменными зонами, способен передавать файлы большого объема (от 4 ГБ), позволяет настраивать ограничения по скорости скачивания и передачи. Реализована поддержка Drag-and-drop, удаленное редактирование файлов, работа с вкладками и очередью загрузки. Является свободно распространяемым ПО.
WinSCP
WinSCP – удобный графический клиент для работы с FTP. Предназначен для использования в среде ОС Windows. Поддерживает копирование файлов в защищенном режиме, автоматизацию при помощи скриптов, интеграцию с Pageant, а также выделяется узнаваемым интерфейсом в стиле Norton Commander. В клиенте предусмотрена возможность сохранения настроек соединения, синхронизация папок по настраиваемым алгоритмам, есть встроенный текстовый редактор. Является свободно распространяемым ПО.
FireFTP
FireFTP – не отдельное приложение, а расширение для популярного браузера Mozilla FireFox. Предоставляет доступ к FTP-серверу в отдельной вкладке. После инсталляции расширение можно найти в панели «Инструменты». Клиент работает в двухоконном режиме и позволяет выполнять стандартные операции: перемещение, добавление, переименование, удаление. Реализована поддержка нескольких учетных записей, шифрование соединений, изменение прав доступа к файлам и их редактирование без предварительной загрузки на ПК. Является свободно распространяемым ПО.
Конкретный клиент для работы можно выбрать исходя из того, для чего нужен FTP и каковы задачи работы на сервере.
Пример сеанса FTP
Мы подключились к серверу на порт 21, создали управляющее соединение, сервер нам выдал ответ.
Ответ FTP сервера, также как и ответы серверов многих прикладных протоколов состоят из двух частей, первая 220 статус, а вторая поясняющее сообщение Welcome to the FTP Server. Статус ответа 220, коды которой начинаются с 2, говорят об успешном выполнении команды, поясняющее сообщение содержит приветствие “Добро пожаловать на FTP сервер”.
Сначала необходимо пройти аутентификацию. Для этого используется команда USER anonymous и мы хотим подключиться, как анонимный пользователь.
Сервер отвечает сообщением со статусом 331. Код, который начинается с 3 говорит о том, что предыдущая команда была выполнена успешно и ожидается продолжение выполнения связанных действий.
Устанавливаем бинарный режим передачи файлов с помощью команды TYPE 1. Сервер отвечает, что тип передачи данных успешно установлен в 1. 200 Type set to 1.
Мы хотим загрузить сервера в файл, показан путь /pud/tex/latex/llncs2e.zip, но перед тем как загрузить, мы хотим узнать его размер, для этого выдаем команду SIZE /pud/tex/latex/llncs2e.zip. Сервер в ответ выдает размер файла в байтах 213 230229.
Переходим в пассивный режим с помощью команды PASV.
В ответ сервер говорит, что он перешел в пассивный режим 227 Entering Passive Mod (213, 71, 6, 142, 35, 141) и передает нам 6 чисел, которые нужно использовать для установки соединения для передачи данных. Первые 4 числа это IP-адрес, вторые два числа используются, чтобы узнать порт на который нужно установить соединение. Первое число 35 нужно умножить на 256 и прибавить второе число 141, так мы узнаем порт.
Для того, чтобы загрузить нужный нам файл используем команду RETR /pud/tex/latex/llncs2e.zip. После того, как мы выдали эту команду сервер ждет, что мы установим соединение с IP-адресом и портом, которые он нам указал.
После того, как соединение для передачи данных установлено, сервер сообщает нам об этом в управляющем соединении. 150 Opening BINARY mode data connection for /pud/tex/latex/llncs2e.zip (230229 bytes). Также сервер говорит, что передача данных ведется в бинарном режиме.
После того, как передача файла закончена, сервер сообщает нам об этом 226 Transfer complete. Клиент выдает команду QUIT чтобы разорвать соединение. Сервер сообщает нам некоторую статистику, сколько было передано байт и файлов. 221 You have transferred 239229 bytes in 1 file. И говорит до свидания 221 Goodbye. На этом сеанс работы по протоколу FTP завершен.
FTP — что это такое?
FTP — стандартный TCP-сетевой протокол для передачи файлов, используемый чтобы организовать отправку и прием файлов с удаленного компьютера или сервера.
Чтобы передать файл по TCP-порту через протокол ФТП, FTP-клиенту нужно связаться с настроенным и запущенным FTP-сервером. Подобная организация передачи файлов наиболее часто используется веб-разработчиками — когда с ПК нужно получить доступ к «внутренностям» сайта и что-нибудь там изменить, улучшить.
Как и HTTP (что это такое?), протокол FTP построен на «клиент-серверной» архитектуре и использует несколько сетевых соединений, чтобы передавать команды и файлы между «клиентом» и «сервером».
Доступ к сайту по фтп аккаунту — что это? Это функция, позволяющая просматривать, изменять, скачивать и загружать файлы. Для получения клиентом доступа к FTP-серверу сайта нужно пройти аутентификацию — ввести логин и пароль. Для отправки имени используется команда «USER», для отправки пароля — команда «PASS».
Если сервер принимает пару логин:пароль, то он отправляет клиенту приглашение. Клиент принимает приглашение и начинается сессия.
У FTP предельно простой синтаксис, описанный в спецификации RFC1738 (данные в квадратных скобках необязательны для заполнения) — ftp://@]<HOST>/<FTP_URL>.
Пример 1 — ftp://ftp.7bloggers.ru/FTP/humans.txt
Также есть т.н. «анонимный FTP» — когда любой пользователь может анонимно подключиться к ФТП серверу без предоставления данных USER/PASS. Для сессий такого типа предоставляется ограниченный доступ.
Анонимный FTP-хосты достаточно популярны, ведь они часто используются для скачивания и обновления ПО на ПК. Более того, доступ может быть организован и через обычные браузеры — ведь они могут напрямую извлекать файлы с FTP-серверов. Происходит это очень просто — при указании FTP-адреса фтп-контент предоставляется точно также как веб-контент при HTTP. А в браузере Фаерфокс можно даже установить полноценный FTP-клиент — FireFTP.
Несмотря на то что работать с FTP можно в браузере, FTP довольно сильно отличается от HTTP:
Особенности протокола FTP:
- Использование множественного подключения, минимум — двойного. Один канал — управляющий, через него поступают команды для фтп-сервера и возвращаются ответы; другие каналы используются для передачи данных: одна передача — один канал (для каждого открывается TCP-порт). Благодаря этому свойству, в обоих направлениях одновременно можно передавать несколько файлов, а управляющий поток остается открытым на все время ftp-сессии.
- В FTP-протоколе есть двоичный режим передачи данных — при котором уменьшается время передачи файлов и расход трафика. В HTTP такого нет.
- По FTP-протоколу проводятся операции в рамках одной сессии с помощью TCP/IP — пока сервер «не забыл» текущее состояние и авторизованного пользователя. В HTTP сессий нет: он просто отдает данные.
FTP имеет три режима передачи данных:
- Поточный — непрерывная передача данных в виде потока (без обработки, обработка выполняется TCP);
- Блочный — FTP делит данные на блоки (заголовок, поле данных, размер файла в байтах) и передает их TCP;
- Режим сжатия данных единым алгоритмом.
Способ 1 – Встроенный FTP
За редким использованием забываешь, что в «винде» уже есть встроенный FTP, так что и ходить далеко не нужно. Но он по умолчанию выключен, так что начнем с самого начала. Все на примере Windows 7, на «десятке» пробуем аналогично или идем в следующий раздел, где будем устанавливать стороннее решение.
- Пуск – Панель управления – Программы и компоненты:
- Нажимаем «Включение или отключение компонентов Windows». В открывшемся окне переходим в Средства IIS – FTP-сервер. И отмечаем галочкой все подкпункты. В конце не забываем нажать кнопку «ОК».
- Переходим к настройке. Пуск – Панель управления – Администрирование.
- Диспетчер служб IIS:
- Щелкаем по элементу Сайты правой кнопкой мыши и в появившемся меню выбираем «Добавить FTP-сервер»:
- В появившемся окне задаем имя FTP-сайта. Можно на самом деле любое. Мы уж обзовемся как есть – WiFiGid.ru. И физичекий путь до папки, с которой будет происходить обмен – у нас на это выделен полностью диск D:
- На следующей странице задаем IP, порт, шифрование. Лучше оставить вот так:
- Определяем параметры доступа. Галочка Анонимный – разрешение доступа без логина и пароля. Обычный – по логину и паролю:
- Все. Сам FTP создан, остается лишь задать верные настройки доступа. Переходим: Панель управления – Система и безопасность – Брандмауэр:
- Дополнительные параметры:
- В левой части выделяем вкладку «Правила для входящих подключений», а справа ищем «FTP-сервер» и «Трафик-FTP сервера в пассивном режиме». Кликаем по ним правой кнопкой мыши и нажимаем «Включить». Так мы активировали правила для входящих подключений. До этого – никаких правил не было вовсе:
- Переходим к исходящим подключениям и делаем то же самое для «Трафика FTP-сервера»:
- Теперь сервер включен, правила созданы, но нужно определить пользователей, которые смогу взаимодействовать с сервером. Идем: Панель управления – Система и безопасность – Администрирование – Управление компьютером:
- Создаем группу пользователей. Локальные пользователи и группы – Группы. Щелкаем правой кнопкой по свободному месту и выбираем «Создать группу»:
- Задаем вот так (FTP – FTP):
- В соседней подпапке Пользователи создаем нового пользователя:
- Заполняем поля по своему пользователю. Т.е. здесь главное имя пользователя и пароль, по которым и будет происходить подключение к FTP:
- Увидели в списке пользователей своего новосозданного? Теперь его нужно запихнуть в группу FTP. Щелкаем правой кнопкой по нему – Свойства. А далее переходим на вкладку «Членство в группах», где через кнопку Добавить добавляем группу:
- Уже почти все готово. ФТП работает, пользователь есть. Но Windows просто так не даст пользоваться своими ресурсами абы кому, если ты не администратор. Поэтому нужно разрешить нашему пользователю взаимодействовать с выделенной для нужд FTP папкой. Щелкаем по ней правой кнопкой мыши – Свойства. На вкладке Безопасность кликаем по кнопке «Изменить»:
- Нажимаем кнопку Добавить и добавляем нашу группу. А заодно ниже ей в колонке Разрешить отмечаем все галочки:
- Теперь снова возвращаемся в службы IIS и идем настраивать наши правила на авторизацию. Щелкаем по нашему созданному здесь сайту и выбираем «Правила авторизации FTP»:
- Тут же правой кнопкой по пустому месту – Добавить разрешающее правило:
- По умолчанию доступ можно производить и без авторизации, но мы то не хотим ничего плохого? (если хотим, все связанное с созданием пользователя вообще можно было пропустить). Выбираем здесь пункт «Указанные роли или группы пользователей» и вписываем нашу группу FTP:
- А вот в качестве альтернативы можно, например, разрешить подключение анонимным пользователям, но ограничить их в правах только на чтение. Тогда они ничего не удалят:
За этим первый вариант заканчиваем. Надеюсь, и вам удалось настроить FTP-сервер.
Пример: соединение с FTP-сервером
В данном примере (желтый фон) вводится команда ftp на компьютере клиента в операционной системе Windows. Сервер сообщает свои данные и предлагает указать имя пользователя. В этом случае (зеленый фон), именем является «SCi_WMiX_22G(a)wmix.isv.by».
Доступ не является анонимным, и сервер запрашивает пароль. Для проверки, после успешного подключения вводится команда «ls» — просмотр текущей директории.
Обычно сетевой протокол FTP не применяется на таком низком уровне. Гораздо удобнее использовать предназначенные для этого специальные программы. Практически все они обеспечивают удобное и безопасное подключение и дают возможность передавать/принимать файлы, создавать папки, перемещаться по ним, удалять их и совершать обычные операции привычным образом, как на локальной файловой системе.