Облачное хранилище: доступ по FTP

Облачное хранилище: доступ по FTP

FTP — один из старейших прикладных протоколов: он появился задолго до HTTP и даже TCP/IP, в далеком 1971 году, и широко используется до сих пор. Именно по FTP осуществляется загрузка файлов на удаленные ресурсы. Наше облачное хранилище также поддерживает этот популярный и привычный для многих пользователей способ загрузки файлов. В этой статье мы расскажем об особенностях работы c хранилищем по FTP, а также приведем инструкции по настройке для наиболее распространенных FTP-клиентов: FileZilla, WinSCP, FAR Manager, Total Commander, Midnight Commander, Cyberduck.

Общие рекомендации

  • используйте пассивный режим работы;
  • используйте бинарный режим передачи данных;
  • для корректного отображения кириллических имен файлов используйте кодировку UTF-8;
  • всегда проверяйте загруженные файлы по размеру и/или контрольной сумме.

Подключение и настройка доступа

Подключение к хранилищу по FTP осуществляется по адресу ftp://ftp.selcdn.ru. Из соображений безопасности, рекомендуем для подключения по FTP не использовать главную учетную запись, а создать отдельного (дополнительного) пользователя.

Выбор режима подключения

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

В активном режиме клиент сообщает серверу адрес и порт, на который тот должен выполнить вторичное подключение. В большинстве случаев этот режим не будет работать, если клиент для доступа в интернет использует трансляцию сетевых имен (NAT) и не имеет публичного IP адреса.

В пассивном режиме, наоборот, сервер сообщает клиенту адрес и порт для вторичного подключения. Этот режим работает практически во всех случаях и является предпочтительным.

Выбор режима передачи данных

Передача данных по FTP осуществляется в двух основных режимах: текстовом (его иногда называют режимом ASCII) и бинарном. Эти режимы задаются FTP-командами TYPE A и TYPE I соответственно.

При передаче в текстовом режиме нередко возникают проблемы. Они связаны с тем, что разные операционные системы используют разные символы окончания строки. Microsoft Windows например, использует CR+LF (возврат каретки и перенос строки), тогда как Unix-подобные системы, в том числе Linux и MacOS X — только LF, а традиционные MacOS системы (MacOS 9 и старше) — только CR. Согласно RFC 959, во всех файлах при передаче по FTP в качестве символа окончания строки следует использовать CR+LF.

При передаче файла на сервер клиент должен привести их в надлежащий вид в соответствии с требованиями используемой системы: если используется Windows, то ничего не удаляется; если используются *nix-системы — удаляются лишние CR, а если используются старые версии MacOS — лишние LF.

Аналогичные операции осуществляются и при скачивании файлов с сервера: сервер приводит окончание строк к виду CR+LF, а клиент после получения файла удаляет лишние окончания.

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

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

Для корректного отображения кириллических имен файлов рекомендуется использовать кодировку UTF-8.

Обрыв соединения и целостность данных

В отличие от протокола Swift (доступ в хранилище по этом протоколу осуществляется, например, с помощью утилит supload или swift-client), FTP не гарантирует целостности передаваемых данных: в случае разрыва соединения в Хранилище будет сохранен не весь файл целиком, а лишь его часть.

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

Ограничения FTP

Максимальный размер загружаемого файла составляет 5 ГБ. В хранилище можно загружать только файлы размером до 5Гб. На скачивание файлов это ограничение не распространяется.

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

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

Переименовывать можно только пустые папки. Для контейнеров (т.е. папок первого уровня) переименование не поддерживается.

Операция переименования файлов большого размера может занимать длительное время.

Настройка FTP-клиентов

FileZilla
FileZilla — популярный FTP-клиент для ОС Windows, Linux и MacOS. Его отличительными особенностями являются интуитивн понятный интерфейс и простота настройки. Чтобы начать работу с хранилищем с помощью Filezilla, необходимо сначала создать соответствующее подключение.

Для создания нового подключения выбираем в главном меню «Файл» → «Менеджер сайтов» (в некоторых версиях программы этот пункт может называться «Менеджер хостов»). Откроется следующее окно:

filezilla3

Теперь нажмем на кнопку «Новый сайт». Будет создано новое подключение. Зададим его параметры в правой части окна. В поле «Хост» указываем ftp.selcdn.ru; в выпадающем меню «Тип входа» выбираем «Нормальный». Затем вводим в соответствующие поля имя пользователя и пароль:

filezilla4

Далее перейдем на вкладку «Настройки передачи» и выберем пассивный режим подключения:

filezilla5

На вкладке «Кодировка» выбираем «UTF-8 принудительно»:

filezilla6

После этого нажимаем на кнопку «OK». Теперь войдем в главное меню и выберем «Передача» → «Режим передачи» → «Двоичный»:

filezilla 02

После этого возвращаемся в менеджер сайтов и нажимаем на кнопку «Соединиться».

WinSCP
WinSCP — свободный графический клиент для работы с протоколами FTP и SCP, предназначенный для ОС Windows. Настройка подключения к облачному хранилищу осуществляется очень просто. При запуске программы открывается окно, показанное на рисунке ниже. В меню «Файловый протокол» выбираем FTP, в поле «Сервер» указываем ftp.selcdn.ru; в соответствующих полях указываем имя пользователя и пароль:

winscp1

Чтобы установить пассивный режим, в дереве в левой части окна выбираем пункт «Подключение» и устанавливаем соответствующий флажок:

winscp2

Для установки кодировки в выбираем пункт «Среда»; в выпадающем меню «Кодировка UTF-8 для имен файлов» выбираем «Авто»:

winscp3

Задав все необходимые настройки, нажимаем на кнопку «Войти».

FAR Manager
FAR — один из самых известных и популярных файловых менеджеров для Windows, во многом наследующий интерфейс и систему команд у известного менеджера Norton Commander. Он довольно часто используется для загрузки файлов по FTP.
Чтобы настроить доступ по FTP к хранилищу, запустим FAR и нажмем Alt+F1:

FAR1

В открывшемся меню выберем пункт NetBox:

FAR2

Затем нажмем Shift+F4. Откроется форма для добавления новой сессии:

FAR3

В поле «Протокол» указываем FTP, в поле «Имя сервера» — ftp.selcdn.ru, в поле «Тип подключения» — «Стандартное». Далее вводим имя пользователя и пароль. Номер порта для подключения — 21 (без указания порта подключение не будет осуществлено). Нажимая на стрелки в верхней части окна, перейдем на следующую страницу настроек и установим пассивный режим, выбрав в меню Connection пункт Passive mode:

FAR4

Теперь перейдем на следующую страницу и выберем в меню «Кодировка для имен файлов» UTF-8:

FAR5

Total Commander
Total Commander — еще один известный файловый менеждер для ОС семейства Windows; несколько лет назад появилась и мобильная версия для Android.

Чтобы создать новое соединение, выбираем в главном меню «Сеть» → «Соединиться с FTP-сервером»:

TotalCommander1

Откроется окно со списком соединений. Нажмем на кнопку «Добавить». На экране появится форма настройки нового подключения:

TotalCommander2

Указываем имя соединения (в нашем случае — selectel); в поле «Сервер» прописываем адрес ftp.selcdn.ru. Далее указываем имя пользователя (поле «Учетная запись») и пароль. Затем устанавливаем флажок «Пассивный режим обмена» и нажимаем на кнопку ОK. Новое подключение будет добавлено в список:

TotalCommander4

Соединение с хранилищем по FTP можно установить и быстрым способом. В главном меню выберем пункт «Новое FTP-соединение»:

total commander4

В открывшемся окне введем строку вида ftp://[имя пользователя]:[пароль]@ftp.selcdn.ru:

TotalCommander6

Затем нажмем на кнопку ОК — соединение будет установлено.

Midnight Commander
Midnight Commander (сокращенно MC)- популярный файловый менеджер с текстовым интерфейсом для UNIX-подобных операционных систем. Чтобы настроить подключение к облачному хранилищу по FTP, выбираем в меню правой панели пункт «FTP-соединение»:

mc1

Откроется следующее окно:

mc2

В качестве имени машины указываем [имя пользователя]@ftp.selcdn.ru. В следующем окне вводим пароль:

mc3

Нажимаем на кнопку «Далее» или на клавишу Enter. Если все данные введены корректно, соединение будет установлено.

Подключение с помощью штатных инструментов операционных систем

Работать с облачным хранилищем по FTP можно и с помощью штатных инструментов операционных систем — Проводника (Windows) и Nautilus — официального файлового менеджера рабочей среды Gnome для ОС семейства Linux.

Подключение через проводник Windows
В Windows можно подключить облачное хранилище как сетевой диск. В контекстном меню «Компьютер» выбираем пункт «Подключить сетевой диск». Откроется следующее окно:

windows explorer1

Щелкаем мышью по ссылке «Подключение к сайту, на котором можно хранить документы и изображения», запуская тем самым мастер добавления в сетевое размещение:

windows explorer2

Нажимаем на кнопку «Далее». Откроется следующее окно:

windows explorer3

Затем щелкаем мышью по значку «Выберите другое сетевое размещение» и нажимаем на кнопку «Далее»:

windows explorer4

Указываем адрес ftp://ftp.selcdn.ru и нажимаем на кнопку «Далее». В открывшемся окне снимаем флажок «Анонимный вход» и указываем имя пользователя:

windows explorer5

Нажимаем на кнопку «Далее». В следующем окне введем имя нового сетевого размещения (в нашем случае — selectel):

windows explorer6

В следующем окне вводим пароль и нажимаем на кнопку «Вход»:

windows explorer7

После этого новое подключение будет добавлено в список локальных и сетевых дисков:

windows explorer8

Подключение через Nautilus
Чтобы подключиться к облачному хранилищу, сначала выберем в главном меню пункт «Файл» → «Подключение к серверу»:

nautilus1

Откроется окно, в котором нужно будет ввести адрес для подключения:

nautilus2

Указываем адрес ftp://ftp.selcdn.ru и нажимаем на кнопку «Подключиться». В следующем окне устанавливаем радиокнопку «Подключиться как зарегистрированный пользователь», а затем указываем имя пользователя и пароль:

nautilus3

Нажимаем на кнопку «Подключиться». Соединение будет установлено, а в Nautilus откроется вкладка со списком контейнеров и папок облачного хранилища.

Профиль Cyberduck

Cyberduck — популярный файловый клиент для ОС Windows и MacOS, поддерживающий множество протоколов, таких как: FTP, SFTP, WebDAV и AmazonS3. Специально для пользователей этого клиента мы создали профиль для работы с нашим хранилищем. Этот профиль использует проткол Swift заместо FTP, что улучшает качество работы.

Чтобы загрузить профиль, нужно войти в панель управления support.selectel.ru под своей учетной записью. В меню в левой части страницы выбираем «Облачное хранилище» → «Программы» и скачиваем файл профиля ((https://support.selectel.ru/storage/static/tools/selectel-storage.cyberduckprofile), затем дважды щелкаем по нему мышью. В открывшемся окне указываем имя закладки (не обязательно) и имя пользователя:

Cyberduck - 01

Далее будет запрошен пароль. После ввода пароля будет установлено соединение с хранилищем.

Заключение

В этой статье мы рассказали об особенностях настройки популярных графических FTP-клиентов для работы с облачным хранилищем. В следующей публикации мы расскажем о работе с хранилищем с помощью консольных FTP-клиентов (lftp, wget, ftp), а также об организации резервного копирования с использованием FTP.