Как установить 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:
Запретите доступ анонимным пользователям:
Разрешите доступ локальным пользователям:
Разрешите пользователям работать с файлами:
Назначьте права новым файлам:
Включите сообщение для пользователя при входе:
Разрешите использовать локальное время на сервере:
Настройте логирование операций:
Настройте передачу данных по 20 порту:
Укажите директорию для хранения логов:
Задайте формат логов:
Дайте доступ пользователям только к своим домашним каталогам:
Включите поддержку авторизации PAM:
Разрешите вход только пользователям из файла userlist:
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:
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.
Популярные статьи
- Как указать (изменить) DNS-серверы для домена
- Я зарегистрировал домен, что дальше
- Как добавить запись типа A, AAAA, CNAME, MX, TXT, SRV для своего домена
- Что такое редирект: виды и возможности настройки
- Как создать почту со своим доменом
Добавление учетных записей FTP
Если вы работаете над своим сайтом совместно с кем-то или размещаете субдомены для других пользователей, рекомендуем создать для них отдельные учетные записи FTP.
Чтобы создать дополнительную учетную запись FTP:
- Откройте страницу Сайты и домены и нажмите FTP-доступ.
- Нажмите Добавить пользователя FTP.
- Укажите следующие параметры:
- Имя учетной записи FTP. Введите имя.
- Домашняя папка. Выберите папку, которая будет открываться при подключении пользователя по FTP.
- Пароль FTP.
- Дисковая квота (Windows). Чтобы ограничить объем дискового пространства на сервере, которое может использовать FTP-пользователь, уберите галочку Без ограничений рядом с полем Квота дискового пространства и введите нужное значение в мегабайтах.
- Права на чтение (Windows). Чтобы разрешить FTP-пользователю просматривать содержимое домашней папки и скачивать из нее файлы, выберите опцию Чтение.
- Права на запись (Windows). Чтобы разрешить FTP-пользователю создавать, переименовывать и удалять папки в домашней папке, поставьте галочку Запись. При хостинге на Windows, если вы не предоставите никаких прав, пользователь сможет подключиться, но ему будет недоступно содержимое домашней папки.
- Нажмите OK.

Чтобы изменить свойства дополнительной учетной записи FTP:
- Откройте страницу Сайты и домены и нажмите FTP-доступ.
- Щелкните по нужной учетной записи FTP в списке.
- Внесите нужные изменения и нажмите OK.
Чтобы удалить дополнительную учетную запись FTP:
- Откройте страницу Сайты и домены и нажмите FTP-доступ.
- Выберите учетную запись FTP и нажмите Удалить. Обратите внимание, что основную учетную запись FTP невозможно удалить.
- Подтвердите удаление и нажмите OK.
Создание FTP-пользователя без панели управления ISPmanager
![]()
По умолчанию при установке ОС Linux из любых шаблонов на сервере доступен только суперпользователь root. Подключение с данными root по протоколу FTP невозможно в целях безопасности (используется незашифрованный пароль). При установке шаблонов ОС типа minimal сервер FTP также не будет включён в установочный пакет. Если у Вас возникла необходимость быстрой ручной настройки нового FTP-пользователя при отсутствии на сервере панели управления ISPmanager, нужно сделать следующее. Для начала подключитесь к серверу по протоколу SSH с правами root.
Установка FTP-сервера proftpd
CentOS: Установка EPEL репозитория
yum install epel-release
Установка ProFTPd
yum install proftpd
Debian/Ubuntu:
apt install proftpd
Добавляем FTP в автозапуск сервера и запускаем его
systemctl start proftpd.service systemctl enable proftpd.service
Добавление разрешающих правил для брандмауэра
В зависимости от используемой утилиты управления Iptables:
iptables -I INPUT -p tcp -m tcp --dport 21 -j ACCEPT systemctl iptables save
firewalld:
firewall-cmd --permanent --zone=public --add-port=21/tcp firewall-cmd --reload
Ограничение FTP-пользователей пределами домашнего каталога
Данная статья подразумевает работу c конфигурацией ProFTPd «по умолчанию», а в этом случае пользователь может выходить за пределы своего домашнего каталога, и хотя прав на работу с другими папками у него, скорее всего, нет, но при недостаточно строгой конфигурации сервера это может представлять угрозу безопасности. Решить эту проблему можно добавив одну строку в файл proftpd.conf :
DefaultRoot ~
Добавить её можно в конец файла. После сохранения перезапустите FTP-сервер:
systemctl restart proftpd.service
Создание нового FTP-пользователя
Простым FTP-пользователям нет необходимости иметь доступ к командной оболочке. Перед тем, как приступите к созданию новых пользователей, выполните команду:
echo '/bin/false' >> /etc/shells
Создайте нового пользователя
useradd имя_пользователя -d /home/имя_папки -m -s /bin/false passwd имя_пользователя
Командами выше мы создали пользователя (имя_пользователя нужно заменить на незанятое имя) и соответствующую группу, назначили и создали (ключ -m можно опустить, если каталог уже существует) домашний каталог /home/имя_папки и выбрали /bin/false в качестве командной оболочки пользователя, тем самым отключив её в целях безопасности. Командой passwd мы задали пользователю необходимый пароль. В большинстве случаев на данном этапе вы уже можете подключаться с созданным пользователем к FTP-серверу, который по умолчанию работает на 21 порту. Однако, есть еще несколько шагов, которые вы, возможно, захотите выполнить.
Дополнительная информация
Доступ к командной оболочке (shell) Если вы всё-таки хотите предоставлять пользователю доступ к командной оболочке, то указывайте путь до любой действующей вместо /bin/false , например:
/bin/sh
/bin/bash
Пользователям обычного протокола FTP не нужен доступ к shell, поэтому безопаснее его не предоставлять. Расположение proftpd.conf Debian/Ubuntu: /etc/proftpd/proftpd.conf CentOS: /etc/proftpd.conf Используйте этот файл для более детальной настройки своего FTP-сервера при необходимости. Ограничение прав FTP-пользователя При необходимости вы можете ограничить права пользователя на запись в домашнюю директорию, позволив ему работать только с какой-нибудь внутренней папкой, например upload. От имени суперпользователя измените права:
chmod 555 /home/имя_папки mkdir /home/имя_папки/upload chown имя_пользователя:имя_пользователя /home/имя_папки/upload
В данном случае второе имя_пользователя является именем группы, которое по умолчанию совпадает с созданным вами именем пользователя.
Создание FTP-пользователя
FTP-пользователь нужен для загрузки или скачивания файлов на сервер через ISPmanager. Он имеет доступ только к директории, которая указана при его создании.
Чтобы создать FTP-пользователя:
- Перейдите в Учётные записи → FTP-пользователи → Создать.
- Укажите Имя, которое используется для доступа к FTP-серверу в качестве логина.
- Выберите ВладельцаFTP-пользователя. Поле не доступно на уровне пользователя ISPmanager.
- Укажите Пароль для входа в FTP-сервер и его Подтверждение. Используйте строчные и прописные буквы, цифры, специальные символы (такие как @, ?, %). Тогда пароль будет лучше защищён от взлома.
- Укажите Домашнюю директорию FTP-пользователя. Директория указывается относительно домашней директории владельца. Например, если домашняя директория владельца — «/var/www/user/data», а для FTP-пользователя — «/ftp», то FTP-пользователь будет иметь доступ к директории «/var/www/user/data/ftp».
- Нажмите Ок.
Создание FTP-пользователя