Настройте Pure-FTPd с TLS на Debian 9

Pure-FTPd - это быстрый и легкий FTP-сервер, созданный с учетом требований безопасности. В этом уроке я собираюсь показать вам, как установить и использовать Pure FTP в 4 простых шага. В этом руководстве объясняется, как установить Pure FTPd в Debian 9.

Шаг первый - Установка

Pure-FTPd находится в стабильном репозитории Debian, поэтому нет необходимости добавлять какие-либо дополнительные репозитории в вашу систему.

Запустите следующую команду с правами root:

apt install -y pure-ftpd-common pure-ftpd 

Шаг второй - Конфигурация

Есть много опций, которые вы можете использовать, чтобы изменить поведение приложения. Эти параметры могут быть применены к демону Pure-FTPd при запуске, или вы можете сделать их постоянными, создав необходимые файлы внутри confкаталога.

Мы хотим:

  • Создавайте виртуальных пользователей.
  • Создавайте домашние каталоги для пользователей автоматически.
  • Пользователи Limit ( chroot) должны иметь доступ только к своему домашнему каталогу.

Включите базу данных Pure-FTPd и отключите аутентификацию PAM и Unix, чтобы включить виртуальных пользователей:

ln -s /etc/pure-ftpd/conf/PureDB /etc/pure-ftpd/auth/50pure
echo no > /etc/pure-ftpd/conf/PAMAuthentication
echo no > /etc/pure-ftpd/conf/UnixAuthentication

Установите Pure-FTPd для создания домашних каталогов для пользователей при их первом входе в систему:

echo "yes" > /etc/pure-ftpd/conf/CreateHomeDir

Chroot всех.

echo "yes" > /etc/pure-ftpd/conf/ChrootEveryone

Если вы заинтересованы узнать о других вариантах, посетите официальную страницу документации .

Шаг третий - Создание пользователей

Pure-FTPd может работать с виртуальными пользователями, что означает, что они хранятся в базе данных Pure-FTPd и не связаны с пользователями системы Linux.

Чтобы Pure-FTPd мог управлять файлами с виртуальными пользователями, нам нужно создать пользователя Linux и группу, в которую будут включены все виртуальные пользователи. Все виртуальные пользователи могут использовать одного и того же системного пользователя и группу до тех пор, пока они будут привязаны.

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

groupadd ftpusr
useradd -g ftpusr -d /dev/null -s /etc ftpusr

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

Создайте наш корневой каталог FTP:

mkdir /home/FTP

Создайте виртуального пользователя в Pure-FTPd:

pure-pw useradd alex -u ftpusr -g ftpusr -d /home/FTP/alex 

Мы добавили нашего первого виртуального пользователя ( alex) и связали его с системным пользователем / группой ( ftpusr). Все файлы, с которыми вы пишете, alexбудут принадлежать ftpusrв системе.

Обновите базу данных Pure-FTPd:

pure-pw mkdb

Проверьте информацию о пользователе:

pure-pw show alex

Login              : alex
Password           : <encrypted password>
UID                : 1000 (ftpusr)
GID                : 1000 (ftpusr)
Directory          : /home/FTP/alex/./
Full name          : 
Download bandwidth : 0 Kb (unlimited)
Upload   bandwidth : 0 Kb (unlimited)
Max files          : 0 (unlimited)
Max size           : 0 Mb (unlimited)
Ratio              : 0:0 (unlimited:unlimited)
Allowed local  IPs : 
Denied  local  IPs : 
Allowed client IPs : 
Denied  client IPs : 
Time restrictions  : 0000-0000 (unlimited)
Max sim sessions   : 0 (unlimited)

Чтобы упростить жизнь, используйте следующий скрипт для добавления учетных записей FTP:

echo -e  '#!/bin/bash\nread -p "Enter UserName: " usrname\npure-pw useradd $usrname -u ftpusr -g ftpusr -d /home/FTP/$usrname && pure-pw mkdb'  > /usr/sbin/ftp-createacc

chmod u+x /usr/sbin/ftp-createacc

Теперь создать учетные записи FTP просто:

ftp-createacc

Enter UserName: mike
Password: 
Enter it again:

Шаг четвертый - поддержка TLS

Для начала нам нужно установить OpenSSL.

apt install -y openssl

Заставьте Pure-FTPd использовать TLS, или мы можем сделать его необязательным, что означает, что принимаются как небезопасные, так и TLS-соединения.

# force TLS
echo 2 > /etc/pure-ftpd/conf/TLS

# insecure + TLS
echo 1 > /etc/pure-ftpd/conf/TLS

Создайте каталог для хранения наших ключей.

mkdir -p /etc/ssl/pure-ftpd

Создайте пакетный ключ (закрытый ключ и открытый ключ).

openssl req -x509 -nodes -days 730 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem

Перезапустите pure-ftpdдемон.

systemctl restart pure-ftpd

Если в вашей системе установлен брандмауэр или ваш сервер находится за NAT, вы должны определить пассивные порты в Pure-FTPd и открыть эти порты в брандмауэре, в противном случае вы получите такие ошибки:

Server sent passive reply with unroutable address. Passive mode failed.

Failed to retrieve directory listing.

500 I won't open a connection to 192.168.1.4 (only to 10.10.10.10).

Установите пассивные порты в Pure-FTPd:

echo "40110 42210" > /etc/pure-ftpd/conf/PassivePortRange

Перезапустите, pure-ftpdчтобы применить изменения.

systemctl restart pure-ftpd

В брандмауэре откройте диапазон входящего порта от 40110 до 42210 , протокол TCP.

FTP небезопасен по своей природе, но он также быстр и прост в настройке. Для более безопасного решения используйте вместо этого SFTP.



Leave a Comment

Настройка NFS Share на Debian

Настройка NFS Share на Debian

NFS - это сетевая файловая система, которая позволяет компьютерам получать доступ к файлам через компьютерную сеть. Это руководство объясняет, как вы можете выставлять папки через NF

Как обновить CentOS 7, Ubuntu 16.04 и Debian 8

Как обновить CentOS 7, Ubuntu 16.04 и Debian 8

При настройке нового сервера Linux рекомендуется обновить ядро ​​системы и другие пакеты до последней стабильной версии. В этой статье

Использование MySQL Views в Debian 7

Использование MySQL Views в Debian 7

Введение В MySQL есть замечательная функция, известная как views. Представления хранятся запросы. Думайте о них как о псевдониме для длинного запроса. В этом руководстве

Настройка Chroot в Debian

Настройка Chroot в Debian

Эта статья научит вас, как настроить chroot-джейл в Debian. Я предполагаю, что вы используете Debian 7.x. Если вы используете Debian 6 или 8, это может сработать, но

Как установить PiVPN на Debian

Как установить PiVPN на Debian

Введение Простой способ настроить VPN-сервер в Debian - это PiVPN. PiVPN - это установщик и оболочка для OpenVPN. Это создает простые команды для вас т

Как собрать Brotli из исходного кода на Debian 9

Как собрать Brotli из исходного кода на Debian 9

Используете другую систему? Brotli - это новый метод сжатия с лучшей степенью сжатия, чем в Gzip. Его исходный код публично размещен на Github. Thi

Как установить Apache Cassandra 3.11.x на Debian 9

Как установить Apache Cassandra 3.11.x на Debian 9

Используете другую систему? Apache Cassandra - бесплатная система управления базами данных NoSQL с открытым исходным кодом, разработанная для обеспечения масштабируемости, высокой

Установите Lynis на Debian 8

Установите Lynis на Debian 8

Введение Lynis - это бесплатный инструмент для аудита системы с открытым исходным кодом, который используется многими системными администраторами для проверки целостности и защиты своих систем. я

Как установить InvoicePlane в Debian 9

Как установить InvoicePlane в Debian 9

Используете другую систему? InvoicePlane - это бесплатное приложение для выставления счетов с открытым исходным кодом. Его исходный код можно найти в этом хранилище Github. Этот гид

Как установить Backdrop CMS 1.8.0 на Debian 9 LAMP VPS

Как установить Backdrop CMS 1.8.0 на Debian 9 LAMP VPS

Использ��ете другую систему? Backdrop CMS 1.8.0 - это простая и гибкая, удобная для мобильных устройств, бесплатная система с открытым исходным кодом (CMS), которая позволяет нам

Установите Plesk на Debian 7 (Wheezy)

Установите Plesk на Debian 7 (Wheezy)

Используете другую систему? Plesk - это проприетарная панель управления веб-хостинга, которая позволяет пользователям управлять своими личными и / или клиентскими веб-сайтами, базами данных.

Как установить BookStack в Debian 9

Как установить BookStack в Debian 9

Используете другую систему? BookStack - это простая, удобная и простая в использовании платформа для организации и хранения информации. BookStack полностью бесплатен и открыт

Как установить Pagekit 1.0 CMS на Debian 9 LAMP VPS

Как установить Pagekit 1.0 CMS на Debian 9 LAMP VPS

Используете другую систему? Pagekit 1.0 CMS - это красивая, модульная, расширяемая и легкая, бесплатная и с открытым исходным кодом система управления контентом (CMS) с

Как установить Subrion 4.1 CMS на Debian 9 LAMP VPS

Как установить Subrion 4.1 CMS на Debian 9 LAMP VPS

Используете другую систему? Subrion 4.1 CMS - это мощная и гибкая система управления контентом с открытым исходным кодом (CMS), которая обеспечивает интуитивно понятный и понятный контент.

Лучшие инструменты мониторинга для Ubuntu и CentOS

Лучшие инструменты мониторинга для Ubuntu и CentOS

Введение Системы Linux поставляются с инструментами мониторинга по умолчанию, такими как top, df и du, которые помогают отслеживать процессы и дисковое пространство. Хотя часто они

Настройте сервер синхронизации Firefox на Debian 9 или Ubuntu 16.04

Настройте сервер синхронизации Firefox на Debian 9 или Ubuntu 16.04

Используете другую систему? Firefox Sync - это функция синхронизации браузера, которая позволяет вам делиться своими данными и предпочтениями (такими как закладки, история

Как установить CMS за октябрь 1.0 на Debian 9 LAMP VPS

Как установить CMS за октябрь 1.0 на Debian 9 LAMP VPS

Используете другую систему? Октябрь 1.0 CMS - это простая и надежная, бесплатная система управления контентом (CMS) с открытым исходным кодом, построенная на платформе Laravel.

Как установить X-Cart 5 на Debian 10

Как установить X-Cart 5 на Debian 10

Используете другую систему? X-Cart - чрезвычайно гибкая платформа электронной коммерции с открытым исходным кодом, обладающая множеством функций и интеграций. Исходный код X-Cart доступен

Отслеживайте состояние сервера Debian с помощью Munin

Отслеживайте состояние сервера Debian с помощью Munin

Munin - это инструмент для мониторинга процессов и ресурсов на вашем компьютере, который представляет информацию в виде графиков через веб-интерфейс. Используйте следующее

Как включить TLS 1.3 в Apache на Debian 10

Как включить TLS 1.3 в Apache на Debian 10

Используете другую систему? TLS 1.3 - это версия протокола безопасности транспортного уровня (TLS), который был опубликован в 2018 году в качестве предлагаемого стандарта в RFC 8446.

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

6 невероятных фактов о Nintendo Switch

6 невероятных фактов о Nintendo Switch

Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.

Технические обещания, которые все еще не выполнены

Технические обещания, которые все еще не выполнены

Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.

Функциональные возможности уровней эталонной архитектуры больших данных

Функциональные возможности уровней эталонной архитектуры больших данных

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

Как ИИ может вывести автоматизацию процессов на новый уровень?

Как ИИ может вывести автоматизацию процессов на новый уровень?

Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

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

Телемедицина и удаленное здравоохранение: будущее уже здесь

Телемедицина и удаленное здравоохранение: будущее уже здесь

Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше