Установка и настройка vsftpd в Ubuntu 22.04

Оцените статью

Скажем честно, что PureFTP не оправдал моих радужных ожиданий и давайте пробежимся по установке и настройке vsftpd сервера. Я его раньше уже настраивал и теперь надо вспомнить как-там что крутить и задокументировать на будущее.

Создание SSL-сертификата при помощи Let’s encrypt

Зайдем сразу с козырей и сделаем wildcard SSL сертификат.

# certbot --manual --preferred-challenges dns certonly -d pikur.art -d *.pikur.art

Вам потребуется создать DNS-записи, а для автоматического обновления заморочиться с автоматическим обновлением _acme-challenge записей, но это я потом сделаю, а пока все в ручном режиме.

По старой схеме обновляем пакетную базу и устанавливаем vsftpd

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

# apt-get update && apt-get upgrade -y
# apt-get install -y vsftpd

Настраиваем vsftpd

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

# systemctl enable vsftpd
# systemctl start vsftpd

Пробежимся по настройкам которые мы изменим

Отключаем поддержку IPv6

listen_ipv6 = NO

Добавим немного безопасности:

chroot_local_user=YES

Подключаем созданные SSL-сертификаты.

rsa_cert_file=/etc/letsencrypt/live/pikur.art/fullchain.pem
rsa_private_key_file=/etc/letsencrypt/live/pikur.art/privkey.pem
ssl_enable=YES

Разрешаем запись.

write_enable=YES

Разрешаем как SSL-подключения, так и подключения без SSL.

force_local_logins_ssl=NO
require_ssl_reuse=NO
force_local_data_ssl=NO

Настраиваем возможность загрузки файлов с именами в формате Unicode:

utf8_filesystem=YES

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

listen=YES
listen_ipv6=NO
anonymous_enable=NO
local_enable=YES
write_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/letsencrypt/live/pikur.art/fullchain.pem
rsa_private_key_file=/etc/letsencrypt/live/pikur.art/privkey.pem
ssl_enable=YES
log_ftp_protocol=YES
force_local_logins_ssl=NO
require_ssl_reuse=NO
force_local_data_ssl=NO
utf8_filesystem=YES

Создаем пользователя для сканирования документов.

# adduser scan

Перезапускаем сервис.

# systemctl restart vsftpd

Пробуем подключиться при помощи WinSCP с локальной учетной записью созданного пользователя scan.

Подключение к vsftpd

Related Posts

Неудачный эксперимент по установке ZoneMinder в Ubuntu 25.04

Пришло время реанимировать домашнюю систему видеонаблюдения на базе ZoneMinder. У меня как раз есть китайская камера BESDER 6024pb-jw201 которая уже год как не используется и просто смотрит в коридор для…

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

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

You Missed

Статус заряда батареи в Linux консоли

Статус заряда батареи в Linux консоли

Неудачный эксперимент по установке ZoneMinder в Ubuntu 25.04

Неудачный эксперимент по установке  ZoneMinder в Ubuntu 25.04

Терминальный сервер и RemoteAPP в Ubuntu Linux

Терминальный сервер и RemoteAPP в Ubuntu Linux

Примеры конфигурации HAProxy

Примеры конфигурации HAProxy
Установка и настройка InfluxDB (V2 OSS)

Немного экспериментов с Windows Server 2025

Немного экспериментов с Windows Server 2025