- Установка FTP на Ubuntu 20.04
- Установка FTP в Ubuntu
- Настройка FTP Ubuntu
- Тестирование vsftpd
- Настройка домашних папок пользователей
- Настройка защищенного соединения
- Выводы
- Как подключиться к FTP-серверу
- Данные для доступа к FTP-серверу
- Как подключится к FTP через Проводник Windows
- Читайте также
- Подключение через командную строку Windows
- FTP-подключение через любой браузер
- Как подключиться к FTP с помощью FileZilla
- Подключаемся с помощью Total Commander
- Как подключиться к FTP-серверу через терминал Linux
- Подключение к FTP через сайт хостинга
- Заключение
Установка FTP на Ubuntu 20.04
FTP или File Transfer Protocol — это достаточно древний, но в то же время надёжный и проверенный протокол выгрузки файлов на удалённый сервер или их скачивания. Также иногда этот протокол применяется веб-мастерами для управления файлами или организации хранилища данных.
В этой статье мы рассмотрим, как выполняется установка FTP на Ubuntu 20.04, как настроить все необходимые компоненты, в том числе и защищённое соединение. Мы будем использовать FTP-сервер VSFTPD или Very Secure FTP Daemon, который обеспечивает самую надёжную защиту от уязвимостей.
Установка FTP в Ubuntu
Программа доступна из официальных репозиториев, поэтому установка FTP на Ubuntu Server не должна вызвать проблем. Сначала обновите список пакетов в репозиториях, затем установите саму программу:
sudo apt update
sudo apt install vsftpd
Когда установка будет завершена, вам необходимо включить сервис vsftpd, поскольку он не будет запущен по умолчанию, а также добавить службу в автозагрузку:
sudo systemctl start vsftpd
sudo systemctl enable vsftpd
Если у вас установлен фаервол ufw, а такая ситуация возникает, когда вы пытаетесь установить FTP на Ubuntu Server, нужно открыть порты 20 и 21 для нормальной работы. Чтобы это сделать, выполните команды:
sudo ufw allow 20/tcp
sudo ufw allow 21/tcp
sudo ufw status
Установка FTP Ubuntu завершена, но теперь вам осталось настроить всё необходимое для обеспечения безопасной работы. Никогда не используйте FTP-сервер с настройками по умолчанию в производственных сетях, это небезопасно.
Настройка FTP Ubuntu
Теперь перейдём к настройке. Нам нужно поменять всего несколько параметров, чтобы полностью защитить ваш FTP-сервер. Сначала мы рассмотрим самые очевидные настройки: отключения анонимного входа и так далее. Сначала необходимо скопировать оригинальный файл настроек, чтобы в случае проблем вернуть всё как было:
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.orig
Затем откройте файл в редакторе:
sudo vi /etc/vsftpd.conf
Затем добавьте такие настройки. Вам нужно будет найти и изменить значения указанных строк, добавлять новые, если они уже есть, не стоит. Сначала отключаем анонимный вход:
Разрешаем использовать имена локальных пользователей для входа:
ля авторизованных пользователей разрешаем команды, позволяющие изменять файловую систему:
Установим значение umask для новых файлов, создаваемых по FTP:
Включаем сообщение о необходимости выбрать каталог после регистрации:
Записывать в лог файл все транзакции по передаче файлов и использовать стандартный формат лога:
xferlog_enable = YES
xferlog_std_format=YES
Использовать порт 20 для передачи данных вместо случайного, это нужно для нормальной работы фаервола:
Указываем, что нужно ожидать входящих соединений:
На завершение разрешим аутентификацию только пользователей, перечисленных в файле userlist:
Указываем файл с нашими виртуальными пользователями:
По умолчанию таким пользователям запрещён вход в систему, но мы хотим совсем обратное, поэтому добавьте такую строчку:
При входе пользователей на FTP-сервер, они могут работать только в корневом каталоге FTP. Если вы хотите, чтобы пользователи были ограничены только своей домашней папкой, то необходимо раскомментировать эти строчки:
chroot_local_user = YES
allow_writeable_chroot = YES
Первая строчка указывает, что нужно разместить пользователя в изолированном домашнем каталоге, а вторая, что ему можно разрешить запись в этот каталог. Настройка FTP Ubuntu почти завершена, сохраните изменения в конфигурационном файле и перезапустите vsftpd:
sudo systemctl restart vsftpd
Тестирование vsftpd
Сервер готов, но система настроена ещё не полностью. Сначала создадим нашего тестового пользователя с помощью useradd:
sudo useradd -m -c «Test User» -s /bin/bash testuser
sudo passwd testuser
Поскольку мы хотим подключаться от его имени к FTP-серверу, то нам нужно добавить его в vsftpd.userlist:
echo «testuser» | sudo tee -a /etc/vsftpd.userlist
cat /etc/vsftpd.userlist
Теперь самое время подключится к нашему FTP-серверу и проверить, как там всё работает. Попробуем войти от имени анонимного пользователя:
У нас ничего не получится. Теперь попробуем войти от имени нашего тестового пользователя, и всё заработает как нужно.
Обратите внимание, что опасно давать пользователям доступ на запись в их домашнюю папку. Делайте это, только если уверены в том, что это необходимо и безопасно.
Настройка домашних папок пользователей
Чтобы хоть как-то обойти проблемы с безопасностью, вы можете использовать другую папку вместо домашней для предоставления её пользователю. Сначала создадим такую папку для нашего пользователя:
sudo mkdir -p /home/testuser/ftp/files
Уберём право на запись для папки ftp:
sudo chown nobody:nogroup /home/testuser/ftp
sudo chmod a-w /home/testuser/ftp
Затем дайте необходимые полномочия пользователю на запись в подпапку.
sudo chown -R testuser:testuser /home/testuser/ftp/files
sudo chmod -R 0770 /home/testuser/ftp/files/
Теперь вернёмся к конфигурационному файлу vsftpd.conf. Сначала закомментируйте строчку:
Теперь добавьте такие строчки:
user_sub_token = $USER
local_root=/home/$USER/ftp
Первая из них добавляет переменную $USER, в которой содержится имя пользователя, а вторая задаёт корневую папку для каждого пользователя. Осталось снова перезапустить FTP-сервер:
sudo systemctl restart vsftpd
Теперь вы можете снова войти от имени этого пользователя и увидите, что сейчас используется указанная нами папка.
Настройка защищенного соединения
Установка FTP на Ubuntu 20.04 завершена, но в наше время небезопасно использовать открытую передачу данных через сеть. Всё, что только возможно, необходимо шифровать. Поэтому мы рассмотрим, как настроить защищённое соединение для vsftpd. Сначала создадим папку и сгенерируем сам сертификат, который будем использовать:
sudo mkdir /etc/ssl/private
sudo openssl req -x509 -nodes -days 720 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.key -out /etc/ssl/private/vsftpd.pem
Затем нужно разрешить доступ к портам защищённого соединения FTP с фаерволе UFW:
sudo ufw allow 990/tcp
sudo ufw allow 40000:50000/tcp
sudo ufw status
И осталось внести несколько правок в настройку самого FTP-сервера. Нам нужно включить ssl_enable и отключить поддержку шифрования sslv2 и sslv3, оставляем только tlsv1:
ssl_enable=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
Далее раскоментируйте такие строки:
Запретите вход анонимных пользователей по SSL:
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
Теперь установим самый сложный шифр SSL:
И настроим диапазон портов для передачи данных:
Осталось перезагрузить наш сервис:
sudo systemctl restart vsftpd
Теперь тестируем, что у нас получилось:
Как видите, мы уже не можем авторизоваться с помощью утилиты ftp. FTP-сервер выдаёт, что мы обязаны использовать шифрование. Поэтому для тестирования применим FileZilla:
Теперь все данные будут передаваться по зашифрованному соединению. Установка FTP-сервер Ubuntu завершена.
Выводы
В этой статье мы рассмотрели, как выполняется установка FTP на Ubuntu Server 20.04, также как настроить FTP для максимально безопасной работы, включая настройку работы по SSL. Если у вас остались вопросы, спрашивайте в комментариях!
Источник
Как подключиться к FTP-серверу
FTP (File Transfer Protocol) представляет собой протокол удаленной передачи файлов. С его помощью можно загрузить на сервер и скачивать с него же данные любого типа и размера, создавать или удалять файлы и папки.
В Windows, Linux и macOS подключиться к FTP-серверу можно с помощью встроенных средств и сторонних программ разного назначения. Полноценная работа со всеми средствами возможна только через специальные приложения, называемые FTP-клиентами. Теперь подробнее расскажем обо всех этих способах.
Данные для доступа к FTP-серверу
При подключении к FTP-серверу очень важно вводить правильные данные. Возьмем в качестве примера Timeweb. После регистрации на почту приходят два письма. Письмо с данными выглядит вот так:
Теперь о том, какие данные необходимо иметь под рукой:
- логин,
- пароль,
- ссылка на FTP-сервер (указывается в том же письме),
- порт (по умолчанию устанавливается значение 21).
Как подключится к FTP через Проводник Windows
Сначала рассмотрим, как подключиться к FTP-серверу через программу «Проводник» в Windows 10. Здесь ничего дополнительно устанавливать не надо, просто открываем системный файловый менеджер. В левой панели находим значок «Этот компьютер» и жмем по нему правой кнопкой мыши для вывода контекстного меню. В списке выбираем элемент «Добавить новый элемент в сетевое окружение».
В результате откроется окно мастера добавления сетевого расположения. В начальном окне просто нажимаем «Далее».
Следом надо выбрать его дальнейшее местоположение, но в этом окне нам доступен только один вариант. Для продолжения снова нажимаем на кнопку «Далее».
В этом окне понадобится указать ссылку на сетевой ресурс, к которому планируется провести подсоединение. Важно соблюдать предписанный формат (чуть ниже есть несколько примеров). В поле вводим адрес/ссылку и вновь идем дальше.
Теперь понадобится ввести в поле имя пользователя. Пароль заранее вводить не нужно, он будет запрашиваться только при подключении. Если на вашем хосте есть такая возможность, вход можно осуществить анонимно, отметив соответствующую галочку.
В самом конце даем название новому сетевому окружению.
На этом настройка завершена. При необходимости можно поставить галочку, чтобы сразу после нажатия на кнопку «Готово» открыть указанный сервер и приступить к работе.
Новое подключение теперь находится в «Сетевых расположениях» в разделе «Этот компьютер».
Теперь подключаемся – открываем только что созданное соединение. Открывается маленькое окошко, где мы вводим пароль, затем жмем на кнопку «Вход».
Если все данные введены успешно, откроется папка сервера. Можно приступать к работе.
Читайте также
Подключение через командную строку Windows
Теперь расскажу, как подключиться к FTP-серверу в Windows с помощью командной строки. Этот способ многим может показаться не очень удобным, потому что вручную придется вбивать команды на загрузку документов, открытие папок и их скачивание. А для входа следуем указанной ниже последовательности.
- Вводим команду ftp и жмем на клавишу Enter для подтверждения.
- Задаем команду open наименование_ftp_хоста.
- Вводим логин пользователя. Можно осуществить анонимный вход, просто введя Anonymous.
- Вбиваем пароль. В случае с анонимом оставляем это поле пустым и жмем снова Enter.
Теперь подробнее по командам:
- dir – просмотр содержимого сервера.
- cd «имя_папки» – открытие указанной папки.
- put «путь_к_файлу» – загрузка этого документа с компьютера на сервер.
- get «наименование_файла.формат» – скачивание с хоста на компьютер.
- quit – отключение от FTP-сервера.
FTP-подключение через любой браузер
Подключиться к FTP-серверу можно и через браузер на любых операционных системах. В таком случае будет доступна лишь часть функций. Необходимо ввести в адресной строке IP-адрес хоста, только с добавлением приставки «ftp://». Нажимаем на клавишу Enter. Дальше потребуется ввести имя пользователя и пароль, а потом нажать на кнопку «Вход».
Как подключиться к FTP с помощью FileZilla
FileZilla – наиболее востребованный и рекомендуемый FTP-клиент, бесплатный и простой в использовании. Подключиться к FTP-серверу через FileZilla можно вне зависимости от операционной системы, установленной на компьютере.
Сперва потребуется скачать приложение на официальном сайте. Есть версии для Linux, Windows (портативная и установочная) и macOS. Просто выбираем нужный вариант и жмем по нему для начала закачки.
Устанавливаем приложение и открываем его. В верхней панели вводим следующую информацию:
- Хост. Это может быть IP-адрес или ссылка.
- Логин пользователя, предварительно высланный на почту сервисом.
- Пароль.
- Порт. Оставляем пустым или устанавливаем значение 21.
После того как все нужные поля будут заполнены, нажимаем на кнопку «Быстрое соединение».
После открытия каталога можно приступать к загрузке и скачиванию необходимых данных. Чтобы не вводить каждый раз данные для подключения, следует воспользоваться менеджером сайтов, который доступен в меню «Файл».
Подключаемся с помощью Total Commander
Вам потребуется скачать и установить приложение Total Commander. Рекомендуем делать это с официального сайта. После завершения установки открываем приложение. Переходим во вкладку «Сеть» и выбираем там пункт «Соединиться с FTP-сервером». Для этого действия, кстати, предусмотрена комбинация горячих клавиш – Ctrl + F.
В новом окне нажимаем на кнопку «Добавить». Дальше вводим имя нового соединения, адрес хоста, учетную запись и пароль. Нажимаем на кнопку ОК, чтобы сохранить всю введенную информацию.
Новое подключение отразится в списке. Остается только соединиться с сервером, нажав на соответствующую кнопку.
Как подключиться к FTP-серверу через терминал Linux
В Linux к FTP можно подключиться через системное приложение «Терминал». Это очень похоже на использование командной строки в Windows. Последовательность абсолютно та же – набираем команду ftp и активируем ее нажатием на кнопку Enter. Потом пишем open ссылка_на_хост. Не забываем, что затем надо указать логин и пароль.
Вот примеры доступных опций:
- Is – отображение списка файлов и папок.
- get – скачивание файла.
- mget – скачивание документов определенного формата. Например, mget * – все данные в каталоге, mget *, php – файлы формата php.
- put – загрузка файла на ресурс.
- mput – загрузка нескольких документов единого формата.
- mkdir – создание нового каталога.
- rmdir – удаление каталога.
- delete – удаление файла.
- bye – завершение работы.
- close – выход из текущего сеанса и возврат в контекст командной строки FTP.
- status – отображение статуса FTP клиента.
В Linux предусмотрен и другой вариант подключения к FTP. Сначала надо установить нужный пакет, дав вот такой запрос:
Следом нужно предоставить права на определенную папку:
Теперь производится монтирование ftp-директории:
Если работать необходимо от имени пользователя, то вводится вот такая опция:
Для размонтирования FTP-папки используем такую команду:
Подключение к FTP через сайт хостинга
В этом случае достаточно лишь войти на сайт хостинга и перейти в соответствующий раздел. Покажу на примере Timeweb.
В правой части окна есть панель управления. Находим в ней пункт «Файловый менеджер» и жмем по нему. Перед нами предстанет веб-интерфейс FTP-сервера. Работать с ним очень просто, переносить файлы можно посредством drag-n-drop.
Заключение
Подключиться к FTP-серверу очень просто, и сделать это можно несколькими способами. Многие из них актуальны для всех популярных операционных систем. Но все зависит от цели, ведь функционал некоторых программ весьма ограничен.
Источник