10 best sftp and ftps servers reviewed 2021

Смена прав доступа к файлу по FTP

Если вам нужно поменять права чтения/записи вашего файла (например, этого требует ваша система управления сайтом), сделать это не сложно. Нажмите правой кнопкой мыши на файле, закачанном на сервер, в окне FTP-соединения и выберите самый нижний пункт «Свойства». В открывшемся окне поставьте все птички и нажмите ОК.

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

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

Следует заметить, что данный способ копирования файлов по FTP большинство людей считает не самым удобным. Зато он самый простой и не требует установки специальных программ. Обычно для передачи файлов и смены прав доступа по FTP применяются файловые менеджеры (Total Commander, Far и др.) или специальные программы.

Как поднять FTP на своем компьютере?

Сложного в данном деле не чего нет. Довольно установить «FTP Server» и произвести несложные настройки. Установка сервера проста как две копейки, в этом у Вас заморочек не будет, потому что Сервер устанавливается не труднее компьютерной игры.

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

Для настройки перейдите в меню «Настройки – пользователи».

По дефлоту уже создан один пользователь с именем «Anonymous». Также по умолчанию уже создан каталог в корне диска «C:\» FTP.

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

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

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

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

«Вложенные папки» советую оставлять для всех пользователей, если ее убрать то, человек не будет видеть папки на FTP, а только файлы, которые лежат в корне папки C:\FTP.

Как пользоваться FTP-клиентом

Подключение к серверу/хосту

Теперь пора перейти к основной теме этого материала – как же использовать FTP-клиент FileZilla, и самое главное – как создавать FTP-соединение с сервером.

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

В этом случае при подключении к FTP-серверу мы будем видеть только файлы сайта, к которому создали отдельный доступ. У меня же будет доступ ко всем сайтам на аккаунте, потому что я захожу через дефолтный доступ.

Для доступа нам понадобятся следующие данные:

  • хост (сервер),
  • имя пользователя (логин),
  • пароль.

Все они у меня есть (скриншот выше), у вас они будут свои. Вводим данные в соответствующие поля в Файлзилле и нажимаем “Быстрое соединение”.

Если вы тоже отключали лишние элементы интерфейса (с помощью иконок), именно такое окно вы увидите после успешного соединения. Как можно было заметить, в поле “Удаленный сайт” появились файлы, которые в данный момент находятся на моем удаленном хосте. В любом момент с помощью FileZilla я могу скачать, изменить и отредактировать их.

Передача файлов

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

Однако, если вам так хочется, вы можете воспользоваться контекстным меню, которое можно вызвать щелчком правой кнопки мыши.

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

В соседней вкладке будет доступен список файлов, которые передать не удалось.

Редактирование файлов

Чтобы отредактировать файл, например, код на PHP или любой другой, его не обязательно вручную загружать на свою машину. Достаточно просто кликнуть на нужном файле правой кнопкой мыши, после чего выбрать “Просмотр/Правка”.

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

При этом редактируемый документ не будет сохранен на компьютере. Он имеет статус временного и удаляется после перезапуска.

Подобным образом можно редактировать большинство файлов.

Поиск файлов

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

Файлы можно искать по ключам в имени и по содержимому. Через этот инструмент можно осуществлять и поиск на локальном ПК, если стандартные инструменты вашей операционной системы не справляются с поставленными задачами.

Прочее

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

Браузер

Итак, простейший способ доступа к FTP-серверу, ограниченный только возможностью скачивания файлов – в окне любого браузера. Вписываем в адресную строку браузера адрес FTP-сервера и жмём Enter. Если сервер незапароленный, далее в окне браузера откроется доступ к его содержимому. В нашем случае доступ запароленный, поэтому нам ещё нужно дополнительно ввести имя пользователя и пароль, а затем нажать кнопку входа.

И вот перед нами содержимое FTP-сервера.

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

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

Первоначальная настройка аккаунтов пользователей (users) и шары (share) в FileZilla Server

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

Итак, для добавления нового аккаунта следуем, в главном окне интерфейса, по пути “Edit -> Users”. Перед нами предстанет окно работы с пользователями.

Для добавления нового необходимо нажать “Add”. Далее необходимо будет задать его имя, например, anonymous, и принадлежность к группе (в нашем случае указывать не будем). Задаем, жмем “Ok”.

Теперь для нашего нового пользователя можно задать пароль и ограничение по количеству соединений. При необходимости сделайте оное, выставив галочку «Password» и указав его (пароль) в окошке напротив. Настоятельно рекомендуется использовать пароли для пользователей в целях безопасности.

Далее переходим на вкладку “Share Folders”. Здесь, собственно, мы задаем к каким именно папкам пользователь будет иметь доступ. Делается это просто: жмем “Add” и выбираем нужную папку на диске. Слева можно задать права доступа к ней: только чтение — “Read”, запись — “Write”, удаление — “Delete”  и возможность изменения существующих файлов в директории — “Append”. Ниже можно разрешить создание, удаление, получение списка файлов и распространение разрешений на подкаталоги.

Задаём необходимые Вам параметры и папки и.. Жмакаем ОК

На этом первоначальная настройка закончена. Для домашнего пользования большего и не надо 😉

Как создать сервер при помощи специальных программ

С другой стороны, вы можете не использовать стандартные возможности операционной системы, а получить сервер на компьютере, благодаря различным программам. Есть большое множество free ПО, которое отлично справляется с генерацией сервера. Некоторые из таких программ являются portable. Чтобы вы понимали, portable — это когда программу можно транспортировать на различные устройства. То есть программа portable устанавливается не на сам диск, а на удаленное устройство. Затем, вы можете вставить это съемное устройство на другой ПК и portable программа будет по-прежнему работать, хоть вы и не устанавливали ее на текущий компьютер.

Одна из лучших программ, поддерживающих portable, и которая относится к ценовой категории free — это FileZilla. Есть версия этой программы как для сервера, так и для клиента. Учтите, что как клиент portable, так и сервер FileZilla является portable. Так что вы сможете единожды установить программу на флешку, а затем путешествовать со своим сервером по разным ПК, благодаря возможности portable. Помимо опции portable, FileZilla славится большой скоростью работы, и простотой пользования (вы точно сумеете создать сервер и отыскать его адрес в этой программе).

Есть и другие portable программы для создания сервера. Список FTP серверов, а точнее ПО для их создания, можно пополнять бесконечно. Все зависит от ваших целей. Если хотите получить домашний сервер, то подойдет программа Home FTP Server. В адрес этого приложения написано много лестных отзывов, так как Home FTP Server прекрасно подходит для новичков. Вы быстро сможете получить свой домашний сервер, указать для него адрес и добавить новые аккаунты клиентов благодаря Home FTP server. И хоть Home FTP server работает на английском, но это никак не повлияет на понимание функций программы.

Чтобы создать в Home FTP server новых пользователей, жмите New account. Через Home FTP server вы сможете как добавить анонимных пользователей, так и обычных с обязательной авторизацией. Кроме того, в этой программе можно удобно настраивать права доступа для разных клиентов. Вы сможете следить за их активностью. И самое главное, что Home FTP server, как и FileZilla, работает посредством интерфейса, а не командной строки, что весьма удобно.

Учётные записи

Учётные записи используются для авторизованного доступа к FTP-серверу. Для каждой из них может быть настроена домашняя папка, а при использовании совместно с Unix-сервисом — разграничены права.

Для добавления учетной записи используется команда . Для создания учётной записи user1 с назначением пароля выполните:

cl-useradd -p user1 ftp

Для создания учетной записи user1 с домашней директорией и назначением пароля выполните:

cl-useradd -p -m user1 ftp

Домашняя директория по умолчанию расположена в /pub/users/<имя_учетной_записи> корневой директории сервиса FTP. К этой директории имеет доступ только владелец учётной записи.

Для создания учетной записи user1 с указанной домашней директории и назначением пароля выполните:

cl-useradd -p -m -d pub/user1 user1 ftp

Домашняя директория в этом случае будет находиться по указанному пути относительно корневой директории сервиса FTP.

Смена пароля учетной записи производится командой :

cl-passwd user1 ftp

Удаление учетной записи из производится командой , при этом удаляется пользовательская домашняя директория:

cl-userdel user1 ftp

Заметка

При создании учетной записи сервиса FTP, автоматически создается учетная запись сервиса Unix. При удалении
учетной записи сервиса FTP, учетная запись Unix остается.

Первичная настройка FTP FileZilla Server

Итак, после установки, при первом запуске интерфейса, появится маленькое окошко, где требуется указать адрес и порт для подключения, а так же пароль администратора (при первой установки его нет). Можно отметить опцию «Всё время подключаться к этому серверу» (Always connect to this server). Нажимаем «Ok».

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

Теперь перейдем к настройкам. Это делается путем перехода по адресу «Edit -> Settings» или кликом на кнопку на панели интерфейса:

Перед вами откроется окно настроек. На первой вкладке (General Settings) можно задать следующие параметры:

Сверху вниз по скриншоту:

  • Порт, по которому клиенты будут подключаться к серверу
  • Максимальное количество клиентов
  • Количество потоков
  • Различные таймауты (три штуки)

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

Вторая настройка отвечает за максимальное количество подключений. По-умолчанию значение параметра стоит “0”, это означит, что их количество не ограничено. Менять этот параметр стоит в том случае, например, если Ваш интернет канал не справляется с нагрузкой, т.к к Вам подключается уж очень много людей.

Остальное можно оставить без изменений, т.к для домашнего использования настройки оптимальны.

Поехали дальше.

Изоляция пользователей

Чтобы после подключения к серверному компьютеру каждый юзер попадал в свой каталог и не имел доступа к другим каталогам, настраивается изоляция пользователей (рис. 11).

Рис. 11. Начальная страница диспетчера служб IIS

Откройте изоляцию пользователей FTP, выберите Каталог имени пользователя

и нажмитеПрименить (рис. 12).

Рис. 12. Настройка изоляции пользователей

Далее щелкните правой кнопкой мыши на вашем и выберите команду Добавить виртуальный каталог

(рис. 13). В появившемся (рис. 14) окне в поле Псевдоним введите имя пользователя, далее укажите путь до каталога. Можно создать в каталоге каталог с именем юзера. Нажмите кнопкуOK .

Рис. 13. Выберите команду Добавить виртуальный каталог

Рис. 14. Параметры виртуального каталога

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

. На вкладкеБезопасность (рис. 15) нажмите кнопкуДополнительно .

Рис. 15. Безопасность

Далее нажмите кнопку Отключение наследования

(рис. 16). Выберите вариантПреобразовать унаследованные разрешения в явные разрешения этого объекта (рис. 17).

Рис. 16. Нажмите кнопку Отключение наследования

Рис. 17. Выберите первый вариант

Вернитесь на вкладку Безопасность

и нажмите кнопкуИзменить . В появившемся окне выберите группуПользователи и нажмите кнопкуУдалить . Это необходимо для того, чтобы только владелец директории имел к ней доступ (рис. 18).

Рис. 18. Настройка разрешений

Теперь нажмите кнопку Добавить

(рис. 18), чтобы добавить юзера, который будет обладать правами доступа к этому виртуальному каталогу. Введите имя пользователя виртуальной папки и нажмите кнопкуПроверить имена (рис. 19). НажмитеOK .

Рис. 19. Выбираем пользователя

Теперь нужно задать разрешения. Выберите пользователя, разрешите ему все — как показано на рис. 20.

Рис. 20. Настройка разрешений для пользователя

Нажмите кнопку OK

. Собственно, на этом все. Возможно, вам нужно будет настроить брандмауэр, разрешив входящие подключения к . Брандмауэр Windows Server 2021 уже содержит предопределенные правила для файловых серверных компьютеров. При создании правила для входящих соединений просто выберитеПредопределенные , а затем — (рис. 21). Далее отметьте все переключатели (рис. 22) и выберите действие — Разрешить подключение (рис. 23).

Рис. 21. Выбор предопределенного правила брандмауэра

Рис. 22. Отметьте все

Рис. 23. Разрешить подключение

Надеемся, данная статья облегчила настройку вашего . Напоминаем, что кроме традиционного способа, можно установить и стороннее программное обеспечение — специально для тех, кто не хочет устанавливать ради FTP.

Сегодня материал будет посвящен рассмотрению процесса установки и настройки FTP сервера в операционной системе Windows Server 2021, а также мы поговорим о том, что вообще такое FTP и FTP сервер.

Различия FTP и TFTP серверов

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

TFTP — более простой в открытии сервер, но при этом не поддерживающий какую-либо проверку личности, кроме проверки ID. Поскольку ID можно подделать, то TFTP нельзя считать надёжными, но они легки в использовании. Например, их используют для настройки бездисковых рабочих станций и умных сетевых устройств.

FTP сервера выполняют те же функции, что и TFTP, но имеют возможность проверки подлинности подключаемого устройства при помощи логина и пароля, поэтому более надёжны. С помощью них можно отправлять и принимать файлы и команды.

Если ваши устройства соединены через роутер или используют Firewall, то необходимо заранее пробросить порты 21 и 20 для входящих и исходящих соединений.

Setting up FTP in passive mode

Primarily, the command channel is opened by the client to the FTP server on port 21. The client also opens two random, unprivileged ports on the client (typically a port greater than 1023). We’ll call the first port P and the second port P+1. The FTP client initiates the connection to the server by sending a PASV command. The client connects to the server from port P to server port 21 with the PASV command. The server then opens another unprivileged port Q (any port greater than 1023) and sends the port information back as a reply to the PASV command. Now the client initiates the connection from port P+1 to port Q on the server to start the data transfer.

Steps:

  1. The client contacts the server using the PASV command on port 21.
  2. The server replies using port 2000. Here, port 2000 is the port the server will be listening to for the data connection.
  3. The client initiates the connection from port 1025 to 2000 (on the server).
  4. The server sends back the ACK (acknowledgement).

Установка сервера

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

На странице Startup settings Вам будет предложено выбрать способ запуска FTP сервера:

Тип запуска службы сервера

  • Install as service, started with Windows (default) — запускать сервер как службу Windows при загрузке. Этот вариант предлагается по умолчанию. FTP-сервер будет запущен автоматически даже если ни один пользователь не выполнил вход в систему. Рекомендуется выбирать именно этот вариант;
  • Install as service, started manually— сервер будет установлен как служба, но не будет запускаться автоматически. Для запуска Вам потребуется ввести в консоли Windows с правами администратора следующую команду:

    net start "FileZilla Server"
  • Do not install as service, start server automatically — сервер не будет установлен как служба, но будет запускаться от имени текущего пользователя Windows. Данный вариант категорически не рекомендуется, т.к. в случае взлома злоумышленник получит те же права и может навредить системе.

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

На странице Startup settings предлагается выбрать способ запуска административного интерфейса:

Выбор способа запуска административного интерфейса

  • Start if user logs on, apply ato all users (default) — запускать административный интерфейс при входе любого пользователя в систему в виде значка в системном трее. Данный пункт выбран по умолчанию;
  • Start if user logs on, apply to current user — запускать административный интерфейс при входе в систему текущего пользователя;
  • Start manually — запускать вручную. Рекомендуем выбрать именно этот пункт.

Флажок в чекбоксе Start Interface after setup completes автоматически запустит административный интерфейс сервера по окончании установки. Не убирайте отсюда флажок.

На этом установка сервера завершена. Приступим к его настройке.

Использование виртуальных пользователей

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

Хранение в файле

Создаем виртуального пользователя командой:

ftpasswd —passwd —file=/etc/proftpd/ftpd.passwd —name=ftpvirt —uid=33 —gid=33 —home=/var/tmp —shell=/usr/sbin/nologin

* где: 

  • /etc/proftpd/ftpd.passwd — путь до файла, в котором хранятся пользователи; 
  • ftpvirt — имя пользователя (логин); 
  • uid и gid — идентификаторы пользователя и группы системной учетной записи (например, www-data); 
  • /var/tmp — домашний каталог пользователя; 
  • /usr/sbin/nologin — оболочка, запрещающая локальный вход пользователя в систему.

Открываем конфигурационный файл proftpd:

vi /etc/proftpd/proftpd.conf

Снимаем комментарий или редактируем опцию (если не сделали это раньше):

DefaultRoot                     ~

* данная опция говорит о том, что корневой директорией для пользователя будет домашняя директория. Это нужно, чтобы FTP-пользователи не могли выйти за пределы дозволенного и видеть на сервере сайты друг друга.

Создаем дополнительный конфигурационный файл для proftpd:

vi /etc/proftpd/conf.d/virtual_file.conf

RequireValidShell off
AuthUserFile /etc/proftpd/ftpd.passwd
AuthPAM off
LoadModule mod_auth_file.c
AuthOrder mod_auth_file.c

Перезапускаем сервис FTP-сервера:

systemctl restart proftpd

Хранение в MariaDB (MySQL)

Настройку разделим на два этапа:

  1. Установку и настройку СУБД.
  2. конфигурирование FTP-сервера.

В качестве СУБД будем использовать MariaDB / MySQL.

СУБД

Устанавливаем на Ubuntu СУБД и модуль mysql для ProFTPd:

apt-get install mariadb-server proftpd-mod-mysql

Разрешаем автозапуск сервиса mariadb:

systemctl enable mariadb

Задаем пароль для пользователя root в mysql:

mysqladmin -u root password

Подключаемся к базе данных:

mysql -uroot -p

Создаем базу данных для хранения пользователей:

> CREATE DATABASE proftpd DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

* в данном примере мы создали базу данных proftpd.

Создаем таблицу в созданной базе:

> CREATE TABLE `proftpd`.`users` (
`userid` VARCHAR( 32 ) NOT NULL ,
`passwd` CHAR( 41 ) NOT NULL ,
`uid` INT NOT NULL ,
`gid` INT NOT NULL ,
`homedir` VARCHAR( 255 ) NOT NULL ,
`shell` VARCHAR( 255 ) NOT NULL DEFAULT ‘/usr/sbin/nologin’,
UNIQUE (`userid`)           
) ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci;

* данной командой мы создаем таблицу users в базе данных proftpd.

Создаем пользователя mariadb для доступа к таблицам базы proftpd:

> GRANT SELECT ON proftpd.* TO proftpd_user@localhost IDENTIFIED BY ‘proftpd_password’;

* мы создали пользователя proftpd_user с паролем proftpd_password, которому дали право подключаться только с локального сервера.

Добавляем FTP-пользователя в таблицу:

> INSERT INTO `proftpd`.`users` VALUES (‘sqluser’, ENCRYPT(‘sqlpassword’), ’33’, ’33’, ‘/var/tmp’, ‘/usr/sbin/nologin’);

* в данном примере мы создаем пользователя sqluser с паролем sqlpassword.

… и отключаемся от базы:

> \q

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

Открываем конфигурационный файл для proftpd:

vi /etc/proftpd/proftpd.conf

Снимаем комментарий для подключения файла sql.conf:

Include /etc/proftpd/sql.conf

Открываем на редактирование файл sql.conf:

vi /etc/proftpd/sql.conf

Приводим его к виду:

<IfModule mod_sql.c>

SQLBackend      mysql

SQLEngine on
SQLAuthenticate users

SQLAuthTypes Crypt

SQLConnectInfo proftpd@localhost proftpd_user proftpd_password

SQLUserInfo users userid passwd uid gid homedir shell

SqlLogFile /var/log/proftpd/sql.log

</IfModule>

* где нужно обратить внимание на следующие параметры:

  • SQLAuthenticate — указываем, что модуль должен выполнять аутентификацию по пользователю.
  • SQLAuthTypes — способ хранения пароля в базе. Можно перечислить несколько вариантов. Для наибольшей безопасности мы разрешили хранить пароли только в зашифрованном виде.
  • SQLConnectInfo — параметры для подключения к базе. Здесь мы задаем имя и сервер базы данных, а также данные пользователя для подключения.
  • SQLUserInfo — информация о таблице, где хранится пользователь. Мы указываем на название таблицы и перечисляем название полей, в которых хранятся нужные сведения.

Создаем дополнительный конфигурационный файл для proftpd:

vi /etc/proftpd/conf.d/virtual_mysql.conf

RequireValidShell               off
AuthOrder                       mod_sql.c

Открываем файл modules.conf:

vi /etc/proftpd/modules.conf

Снимаем комментарии для следующих строк:

LoadModule mod_sql.c

LoadModule mod_sql_mysql.c

Перезапускаем сервис FTP-сервера:

systemctl restart proftpd

Можно пробовать подключаться к базе под пользователем sqluser с паролем sqlpassword. 

Заключение

Сервер FTP на Ubuntu -базовый протокол передачи файлов для платформы Линукс. Установка и настройка его требует учета специфических нюансов. Для предотвращения каких-либо поломок нужно обратиться к специалисту.

Как настроить FTP на Ubuntu 20.04 LTS

Как известно, FTP — это протокол, который позволяет передавать файлы по сети от одного узла другом. Это самый старый протокол прикладного уровня, который появился намного раньше HTTP и TCP/IP. С помощью протокола FTP организовываются подключения к удаленным серверам для просмотра и передачи необходимой информации. Для подключения к серверам, либо компьютерам протоколу FTP необходимо использовать специальные приложения, которые именуются FTP-клиентами. Далее расскажем, как настроить FTP на Ubuntu 20.04 LTS.

Для того чтобы развернуть свой FTP-сервер на Ubuntu 20.04 LTS, необходимо:

  1. Установить FTP-сервер с поддержкой SSL для безопасного подключения;
  2. Настроить учетную запись для FTP-пользователя;
  3. Проверить подключение к FTP-серверу.

Установка сервера-FTP

В данной статье, для организации FTP-сервера, за основу выбрана операционная система Ubuntu 20.04 LTS. Обновимся и установим из официального репозитория пакет vsftpd:

$ sudo apt up && apt install vsftpd

Наш сервер уже успешно работает. В этом можно убедиться используя следующую команду:

$ systemctl us vsftpd

После успешной установки, произведем некоторые настройки в конфигурационном файле. Откроем текстовым редактором файл vsftpd.conf:

$ sudo nano /etc/vsftpd.conf

Вот те основные изменения, которые необходимо внести для корректной работы сервера:

listen=YES listen_ipv6=NO anonymous_enable=NO local_enable=YES dirmessage_enable=YES use_local=YES xferable=YES connect_from_port_20=YES xferlog_std_format=YES chroot_local_user=YES secure_chroot_dir=/var/run/vsftpd/empty pam_service_name=vsftpd allow_writeable_chroot=YES

После внесенных настроек- в конфигурационном файле, сохраняем изменения и перезапускаем сервер:

$ sudo systemctl us vsftpd

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

$ sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem

Внесем некоторые изменения в конфигурационный файл vsftpd.conf. Изменим строки в соответствии с рисунком ниже:

Здесь мы указали путь к созданным файлам сертификатов, которые были созданы ранее.

Настройка учетной записи FTP-пользователя

Создадим учетную запись пользователя, которой будем осуществлять подключение к созданному серверу FTP. Изначально, авторизоваться на сервере можно под локальным пользователем. Но мы для этих целей будем использовать отдельно созданную учётную запись. Создадим пользователя следующей командой:

$ sudo useradd ftpuser -d /home/ftpuser -s /bin/false -m

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

/bin/false

Создадим пароль на вход для пользователя следующей командой:

$ passwd ftpuser

Проверка подключения к FTP-серверу

Проверим правильность настроек и осуществим первое подключение к FTP-сервер. Для соединения с сервером воспользуемся бесплатным FTP-клиентом FileZilla. После запуска программы заполним поля адрес сервера/имя пользователя/ пароль. Для авторизации будем использовать учетную запись ftpuser.

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

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

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

Adblock
detector