Установка и настройка 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

Работа с файлами дисков виртуальных машин qcow2 (копирование, сжатие, конвертация и т.п.)

Так-как файлы виртуальных машин формата qcow2 это не совсем обычные файлы, а так называемые sparced-файлы (разряженные), то и подход при работе с ними несколько отличается. Если вы создали виртуальную машину…

План создания удостоверяющего центра (УЦ) PKI на базе Red OS

Так как в планах проекта числится развертывание удостоверяющего центра (УЦ) PKI на базе Red OS, то я заранее решил набросать план действий как будем это разорачивать и какие инструменты использовать.…

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

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

You Missed

Работа с файлами дисков виртуальных машин qcow2 (копирование, сжатие, конвертация и т.п.)

Работа с файлами дисков виртуальных машин qcow2 (копирование, сжатие, конвертация и т.п.)

План создания удостоверяющего центра (УЦ) PKI на базе Red OS

План создания удостоверяющего центра (УЦ) PKI на базе Red OS

Терминальный сервер в Linux на базе xrdp

Терминальный сервер в Linux на базе xrdp

Использование pg_probackup для резервного копирования баз данных Postgresql (локально)

Использование pg_probackup для резервного копирования баз данных Postgresql (локально)

Ввод рабочей станции РЕД ОС в IPA-домен

Ввод рабочей станции РЕД ОС в IPA-домен

WEB-интерфейс для удаленного администрирования Centos/РЕД ОС

WEB-интерфейс для удаленного администрирования Centos/РЕД ОС