FTP сервер

Способов создать FTP сервер существует большое множество. И не удивительно, ведь FTP – это один из самых старых протоколов, которые вообще есть – ему больше 40 лет. За это время появилось не мало программ и сервисов, через которые вы можете настроить сервер в Windows 10. Некоторые из них бесплатные, другие стоят денег. Но в данной статье будет рассмотрен самый простой способ, который не потребует от вас загрузки каких-либо программ. Если же у вас возникнут сложности в ходе работы, вы всегда можете обратиться за помощью к квалифицированным специалистам http://itspectr.ru

Как можно настроить сервер FTP протокола в Windows 10

Дело в том, что FTP уже есть у вас на компьютере с Windows 10. Эта служба идет в стандартной комплектации, но по умолчанию она не активирована. Так что вам нужно лишь активировать ее, и настроить сервер, чтобы можно было подключить удаленный клиент к компьютеру.

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

Чтобы создать сервер на компьютере, вам нужно в появившемся списке найти каталог “Службы IIS”. Активируйте в этом каталоге все пункты, какие есть. Самое главное, чтобы вы поставили галочку возе “FTP-сервер”, “Службы Интернета” и “Средства управления веб-сайтом”. После этого нажимайте OK и ожидаете некоторое время. Если службы будут удачно установлены, то во всплывающем окне вы увидите уведомление: “Windows применила требуемые изменения”.

Следующий этап – это непосредственный запуск сервера на компьютере. Для этого вам снова понадобится “Панель управления”, только теперь не пункт “Программы и компоненты”, а “Сеть и безопасность”. Далее отыщите раздел “Администрирование”. После установки служб, в нем появился новый пункт – “Диспетчер служб IIS”, который вам нужно открыть. В появившемся меню вам нужно нажать правой кнопкой мыши в левом боковом меню. Далее отыщите пункт “Добавить FTP-сайт” и нажмите на него.

Для начала вам нужно назвать ваш FTP-сайт. Затем укажите папку в файловой системе, какая будет считаться корневой для сервера. Следующий шаг настройки FTP-сайта – это определение параметров его запуска относительно системы, а также настройки SSL. Рекомендуется сразу поставить метку возле “Без SSL”, так как шифрованное соединение вам навряд ли понадобится в работе.

Третий шаг настройки FTP-сайта – это разрешение или запрет для авторизации анонимных и обычных пользователей. Также вы можете указать уровень доступа для них (чтение или запись). После того, как определитесь с этими настройками, можете нажимать “Готово”, и FTP-сайт будет добавлен, а значит сервер можно считать созданным! Но из-за стандартных параметров брандмауэра клиент не сможет подключиться к вашему серверу. Так как клиент будет пытаться авторизоваться, а система безопасности его не пропустит.

Итак, заходите в “Брандмауэр” во вкладке “Система и безопасность” в “Панели управления”. В боковом левом меню снизу выберите “Дополнительные параметры”. В левом списке выберите пункт “Правила для входящих соединений”. Чтобы клиент смог подключиться к вашему серверу, найдите в списке два пункта, “FTP-сервер” и “Трафик FTP-сервера в пассивном режиме”, и поставьте возле них галочки. Только для этого нужно не просто нажать левой кнопкой мыши на эти пункты, а навести на них правую кнопку и клацнуть на “Включить правило”. А в правилах исходящих соединений вам нужно включить пункт “Трафик FTP-сервера”.

Теперь клиент сможет подключиться к серверу. Но учтите, что вам еще нужно для этого создать пользователя на сервере. Для этого нужно сначала создать группу пользователей через раздел “Локальные пользователи и группы” во вкладке “Управление компьютером” в разделе “Администрирование”. А затем уже в группе сформировать пользователя и задать параметры для авторизации его в системе. После нужно разрешить пользователю через “Свойства” диска и вкладку “Безопасность” вносить изменения на компьютер – и на этом все!

Общие настройки

Теперь перейдем к общим настройкам программы. Попасть в секцию настроек можно, нажав на раздел верхнего горизонтального меню Edit, а затем выбрав пункт Setting.

df72b53134c2179ba02c0edca4cf958f.png

Перед нами открывается мастер настройки программы. Сразу же мы попадем в раздел Основных настроек (General Settings). Тут нужно установить номер порта, к которому будут подключаться пользователи, и указать максимальное их число. Нужно отметить, что параметр «0» означает неограниченное количество пользователей. Если по какой-то причине их число нужно ограничить, то проставляйте соответствующую цифру. Отдельно устанавливается количество потоков. В подразделе «Timeout settings», настраивается величина таймаута до следующего подключения, при отсутствии отклика.

9a9a8b7d454c8503adb783ba0ef175f8.png

В разделе «Welcome message» можно вписать приветственное сообщение для клиентов.

b07a65ec392a30cf50b076cf70d9d0d8.png

Следующий раздел «IP bindings» очень важен, так как именно тут проставляются адреса, по которым сервер будет доступным для других лиц.

18d59d7a28b0cdb754cb01f4d251589c.png

Во вкладке «IP Filter», наоборот, вписывают заблокированные адреса тех пользователей, подключение которых к серверу нежелательно.

cac48d2d23af66676997f6ef0ad699a3.png

В следующем разделе «Passive mode setting» можно вписать параметры работы в случае применения пассивного режима передачи данных по FTP. Эти настройки довольно индивидуальны, и без особой надобности их трогать не рекомендуется.

6ae4b661debc164edbd92651107d1f78.png

Подраздел «Security Settings» отвечает за безопасность подключения. Как правило, тут производить изменения не требуется.

c51732cdd115c42281cb78825e7b496d.png

Во вкладке «Miscellaneous» производятся мелкие настройки внешнего вида интерфейса, например его сворачиваемости, и установка других малозначительных параметров. Лучше всего, эти настройки тоже оставить без изменений.

5c8f2eeeefd18d6f341cedbc86933d2a.png

В разделе «Admin Interface Settings» вводятся настройки доступа к администрированию. По сути, это те же настройки, которые мы вводили при первом включении программы. В данной вкладке, при желании, их можно изменить.

a64a157406ddd34f0c5a43aa132d8bbd.png

Во вкладке «Logging» производится включение создания лог-файлов. Тут же можно указать их допустимый максимальный размер.

35d2fc61ed23443eeef20d9e4af9e5d5.png

Название вкладки «Speed Limits» говорит само за себя. Тут при необходимости устанавливается размер скорости передачи данных, как по входящему каналу, так и по исходящему.

2dbad0990bfddffd6e1e0870b4030a0f.png

В разделе «Filetransfer compression» можно включить компрессию файлов при их передаче. Это поможет сэкономить трафик. Тут же следует указать максимальный и минимальный уровень компрессии.

abdc855ebf22f54f2c7dffe19df555b8.png

В разделе «FTP over TLS settings» настраивается защищенное соединение. Тут же при его наличии следует указать местонахождение ключа.

bc108069d316bd54a359dd6914ca432b.png

В последней вкладке из раздела настроек «Autoban» возможно включение автоматической блокировки пользователей, в случае превышения ими предварительно указанного числа неудачных попыток подключения к серверу. Тут же следует указать, какой период времени блокировка будет действовать. Данная функция ставит перед собой цель предотвращения взлома сервера или проведения различных атак на него.

aff1a9ae41b699ba1c92086e306fc612.png 

Решение проблем

К сожалению, множество персональных файрволов и пользовательских роутеров имеют свои недоработки или, в некоторых случаях, даже способны саботировать работу FTP (например SMC Barricade v1.2).

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

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

Если это возможно, попробуйте подключиться к интернету напрямую без роутера.

Если вы пытаетесь настроить сервер и он работает нормально внутри вашей локальной сети, но не доступен вне её, попробуйте сменить порт для подключения. Некоторые провайдеры не разрешают своим клиентам размещать сервера и блокируют порты ниже 1024-го.

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

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

Таймауты при передаче больших файлов

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

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

В спецификации TCP не указывается лимит времени для сохранения неиспользуемого подключения. Предполагается, что подключение сохраняется на неопределенное время пока не будет закрыто явным образом. Тем не менее, большинство роутеров и файрволов автоматически закрывают свободные подключения по истечению некоторого времени. Более того, в большинстве случаев разрыв соединения происходит без уведомления об этом его участников. В случае продолжительной передачи данных через FTP это значит, что контрольное соединение может быть разорвано, но, ни клиент, ни сервер не будут об этом уведомлены. Таким образом, после того, как все данные были переданы, сервер все еще ожидает, что контрольное подключение можно использовать и отсылает через него подтверждение передачи клиенту. Аналогично, клиент готов использовать контрольное соединение и ожидает ответа от сервера. Но, т.к. контрольное соединение было разорвано, это ответ никогда не будет доставлен, что приводит к таймауту.

Для решения этой проблемы спецификация TCP предусматривает способ отправки пакетов для поддержки неиспользуемого подключения, сообщающих участников о том, что соединение требуется сохранить для дальнейшего использования. Тем не менее, в спецификации TCP явно указывается, что такие пакеты можно передавать не чаще, чем один раз каждые два часа. Для этого, предусматривая задержки в сети, срок жизни неиспользуемого подключения устанавливается спецификацией в 2 часа и 4 минуты.

Препятствием этому служит то, что многие роутеры и файрволы разрывают соединения, которые не использовались меньше чем 2 и 4 минуты. Такое поведение нарушает спецификацию протокола TCP, в RFC 5382 это указано достаточно ясно. Другими словами, роутеры и файрволы, разрывающие соединение раньше нужного момента, нельзя признать рабочими, т.к. они не могут использоваться при длительной передаче данных через FTP. К сожалению, производители роутеров потребительского класса и поставщики файрволов не заботятся о соблюдении спецификаций.

Для решения этой проблемы вам нужно удалить такие файрволы и заменить неправильно работающий роутер на качественный.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *