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

Похожие записи

Интеграция Nextcloud с Keycloak через OpenID Connect: пошаговое руководство по настройке SSO

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

Установка и оптимизация WordPress на Ubuntu 24.04 (LEMP + Redis) на VPS с ограниченным объёмом RAM

Пакеты в Ubuntu по умолчанию настроены на работу с серверами, имеющими довольно много оперативной памяти. Нам нужно жёстко ограничить потребление памяти для работы на Mikro VPS. Запускать будем мой блог…

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

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

Читать еще статьи

Интеграция Nextcloud с Keycloak через OpenID Connect: пошаговое руководство по настройке SSO

Интеграция Nextcloud с Keycloak через OpenID Connect: пошаговое руководство по настройке SSO

Установка и оптимизация WordPress на Ubuntu 24.04 (LEMP + Redis) на VPS с ограниченным объёмом RAM

Установка и оптимизация WordPress на Ubuntu 24.04 (LEMP + Redis) на VPS с ограниченным объёмом RAM

Интеграция Gitea и Keycloak: пошаговое руководство

Интеграция Gitea и Keycloak: пошаговое руководство

Настройка VS Code AI Chat для работы со сторонним OpenAI провайдером.

Настройка VS Code AI Chat для работы со сторонним OpenAI провайдером.

ProxyChains специфическая работа с прокси-серверами в UNIX/Linux-системах

ProxyChains специфическая работа с прокси-серверами в UNIX/Linux-системах

Полное руководство по установке и настройке мониторинга с Grafana и Prometheus: от установки до первого дашборда

Полное руководство по установке и настройке мониторинга с Grafana и Prometheus: от установки до первого дашборда