Как установить FTP-сервер на Ubuntu

В статье мы расскажем, как установить FTP-сервер на Ubuntu 16.04, 18.04 и 20.04. Кроме установки, мы покажем, как выполняется настройка FTP-сервера на Ubuntu, а именно: как установить защищённое подключение SSL/TLS, как создать пользователей и дать им доступ, а также как настроить брандмауэр.

FTP — протокол передачи файлов между устройствами в сети. В дистрибутиве Ubuntu можно использовать FTP-серверы: vsftpd, proftpd, wu-ftpd и pureftpd. Мы рассмотрим, как установить самый быстрый и безопасный сервер — vsftpd Ubuntu. 

Как установить FTP Server Ubuntu vsftpd

1. Обновите базу данных доступных пакетов: 

sudo apt update

2. Установите vsftpd:

sudo apt install vsftpd

3. Проверьте статус работы сервера:

sudo systemctl status vsftpd

Если сервер запущен, вы увидите статус active (running):

4. Добавьте службу в автозагрузку: 

sudo systemctl enable vsftpd

Готово, вы установили vsftpd на Ubuntu Server.

Как настроить FTP-сервер на Ubuntu

Конфигурационный файл vsftpd — /etc/vsftpd.conf. Чтобы его настроить: 

1. Создайте копию исходного файла конфигурации:

sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.copy

2. Откройте файл конфигурации:

sudo nano /etc/vsftpd.conf

3. Добавьте в файл директивы с указанными параметрами. Настройте работу сервера по IPv4:

listen=YES

listen_ipv6=NO

Запретите доступ анонимным пользователям:

anonymous_enable=NO

Разрешите доступ локальным пользователям:

local_enable=YES

Разрешите пользователям работать с файлами:

write_enable=YES

Назначьте права новым файлам:

local_umask=022

Включите сообщение для пользователя при входе: 

dirmessage_enable=YES

Разрешите использовать локальное время на сервере:

use_localtime=YES

Настройте логирование операций:

xferlog_enable=YES

Настройте передачу данных по 20 порту:

connect_from_port_20=YES

Укажите директорию для хранения логов:

xferlog_file=/var/log/vsftpd.log

Задайте формат логов:

xferlog_std_format=YES

Дайте доступ пользователям только к своим домашним каталогам:

chroot_local_user=YES

allow_writeable_chroot=YES

Включите поддержку авторизации PAM:

pam_service_name=vsftpd

Разрешите вход только пользователям из файла userlist

userlist_enable=YES

userlist_file=/etc/vsftpd.userlist

userlist_deny=NO

4. Сохраните файл при помощи CTRL+S, а затем закройте редактор комбинацией CTRL+X

Готово, настройка FTP-сервера в операционной системе завершена. 

Как включить защищённое соединение SSL/TLS

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

1. Сгенерируйте сертификат: 

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

2. Откройте конфигурационный файл vsftpd:

sudo nano /etc/vsftpd.conf

3. Для директив rsa_cert_file и rsa_private_key_file присвойте пути к файлу сертификата vsftpd.pem:

rsa_cert_file=/etc/ssl/private/vsftpd.pem

rsa_private_key_file=/etc/ssl/private/vsftpd.pem

4. Включите SSL:

ssl_enable=YES

5. Сохраните файл при помощи CTRL+S, а затем закройте редактор комбинацией CTRL+X

6. Перезапустите FTP-сервер:

sudo systemctl restart vsftpd

Готово, вы настроили защищенный ФТП-сервер на Убунту. 

Как создать FTP-пользователей и дать и доступ

Если у вас есть существующие пользователи FTP, которым вы хотите дать доступ, используйте инструкцию: 

1. Укажите имена пользователей в файле /etc/vsftpd.userlist. Откройте этот файл: 

sudo nano /etc/vsftpd.userlist

2. Введите имена пользователей. Один пользователь — одна строка.

3. Сохраните файл при помощи CTRL+S, а затем закройте редактор комбинацией CTRL+X.

Готово, существующие пользователи получили доступ. 

Если вы хотите создать новых пользователей:

1. Создайте пользователя на веб-сервере: 

sudo useradd username

Вместо username введите имя пользователя. 

2. Задайте пароль новому пользователю:

sudo passwd username

3. Дайте пользователю FTP-доступ. Для этого добавьте его имя в /etc/vsftpd.userlist:

echo "user" | sudo tee -a /etc/vsftpd.userlist

Готово, вы создали пользователей FTP и дали им доступ для подключения. 

Как настроить работу брандмауэра

Разрешите FTP-подключения к VPS/VDS для брандмауэра UFW. Для этого: 

1. Откройте порты 20, 21, 22, 990 и диапазон 40000-50000 для TCP-подключений:

sudo ufw allow 20/tcp

sudo ufw allow 21/tcp

sudo ufw allow OpenSSH

sudo ufw allow 990/tcp

sudo ufw allow 40000:50000/tcp

2. Перезагрузите брандмауэр:

sudo ufw disable

sudo ufw enable

3. Проверьте  статус UFW:

sudo ufw status

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

Если вы не нашли ответ, спросите у нас!
Написать в поддержку