Меню Рубрики

Установка pure ftpd debian

Setup Pure-FTPd With TLS on Debian 9

Pure-FTPd is a fast and lightweight FTP server built with security in mind. In this tutorial, I am going to show you how to install and use Pure FTP in 4 easy steps. This guide explains how to install Pure FTPd on Debian 9.

Step one — Installation

Pure-FTPd is in Debian’s stable repository, so there is no need to add any additional repositories to your system.

Run the following command with root privileges:

Step two — Configuration

There are many options you can use to change the application’s behavior. These options could be applied to Pure-FTPd’s daemon at startup or you could make them persistent by creating the necessary files inside the conf directory.

  • Create virtual users.
  • Create home directories for users automatically.
  • Limit ( chroot ) users to only have access to their own home directory.

Enable Pure-FTPd’s database and disable PAM and Unix authentication to enable virtual users:

Set Pure-FTPd to create home directories for users at their first login:

If you are interested to learn about other options, visit the official documentation page.

Step three — Create users

Pure-FTPd can handle virtual-users, which means they are kept in Pure-FTPd’s database and are not related to Linux system users.

In order for Pure-FTPd to manage files with virtual-users we need to create a Linux user and group in which all virtual users will be associated. All virtual users can use the same system user and group as long as they have been chrooted.

Run the following commands to create the system user and group:

Note: We don’t want this user to have a home directory or login capability.

Create our FTP root directory:

Create a virtual-user in Pure-FTPd:

We have added our first virtual-user ( alex ) and associated it with system user/group ( ftpusr ). All files that you write with alex will be owned by ftpusr on the system.

Update Pure-FTPd’s database:

Check the user’s information:

To make life easier, use the following script to add FTP accounts:

Now, creating FTP accounts is simple:

Step four — TLS support

First, we need to install OpenSSL.

Force Pure-FTPd to use TLS, or we can make it optional which means both insecure and TLS connections are accepted

Create a directory to store our keys.

Generate a bundle key (private key and public key).

Restart the pure-ftpd daemon.

If you have a firewall installed on your system, or your server is behind NAT, you must define passive ports in Pure-FTPd and open the these ports in your firewall, otherwise you will receive errors such as these:

Set passive ports in Pure-FTPd:

Restart pure-ftpd to apply the change.

In your firewall, open the incoming port range from 40110 to 42210, protocol TCP.

FTP is insecure by nature, but it is also fast and easy to setup. For a more secure solution, use SFTP instead.

источник

Путь юниксоида

Блог посвященный UNIX-подобным операционным системам.

Установка PureFTPd с поддежкой MySQL на Debian 8 «Jessie»

В один прекрасный день мне понадобился FTP-сервер. Для начала попробовал ProFTPd, но он мне не подошел. Требовался простой в настройке и обслуживании и вместе с тем безопасный FTP-сервер. Также требовалась возможность работы через веб-интрефейс и поддержка виртуальных пользователей. Тогда то я и решил попробовать PureFTPd.

Установка PureFTPd

На выбор в репозитории предлагается 4 варианта возможной конфигурации:
— pure-ftpd — FTP-сервер, с аутентификацией через системных пользователей,
— pure-ftpd-ldap — FTP-сервер, с аутентификацией через пользователей LDAP,
— pure-ftpd-mysql — FTP-сервер, с аутентификацией через пользователей хранимых в СУБД MySQL,
— pure-ftpd-postgresql — FTP-сервер, с аутентификацией через пользователей хранимых в СУБД PostgreSQL.

Небольшие пояснения:
— символ # (решётка) — означает выполнение команды от root (суперпользователя),
— cat /path/to/some.file — означает что ниже приведено полное содержимое файла some.file , расположенного в директории /path/to ,
— echo no > /path/to/some.file — означает, что в some.file будет вставлен текст no , с заменой содержимого. Если файл не существует, он будет создан.

Я выбрал вариант с поддержкой MySQL:

Настройка PureFTPd

Одной из особеннойстей PureFTPd является то, что каждый параметр конфигурации хранится в отдельном файле. И каждый файл имеет имя параметра, а в самом файле хранятся значения этих параметров. Файлы эти расположены в директории:

Читайте также:  Установка загрузчика grub uefi

Рассмотрим наиболее интересные файлы конфигурации предоставленные нам мейнтейнерами по умолчанию.

Указан файл для логов трансфера, в формате Apache:

Указан файл конфигурации для MySQL:

Анонимным пользователям доступ запрещен:

Теперь необходимо дополнить конфигурацию. Для начала запретим UNIX-аутентификацию:

Затем запретим PAM-аутентификацию:

Ограничим пользоватей их домашним каталогом:

Укажем диапазон портов для пассивных соединений:

Не забудьте потом открыть необходимые порты в брандмауэре.

По ссылке доступна таблица со всеми возможными параметрами которые я нашел.

Установка веб-интерфейса PureFTP WebUI.

Есть два веб-интерфейса, которые я нашел. Это PureFTPd WebUI и User Manager. Для себя я выбрал PureFTPd WebUI. Ну-с, приступим к установке.

Переходим в директорию файлов веб-сервера:

Где sitename — директория веб-сервера с уже настроенным сайтом.

Скачаем файлы веб-интерфейса с гитхаба:

Переходим в скачаный каталог pure-ftpd-webui :

В одном из файлов я нашел ошибку в функции create_table_settings() . Неверно указано значение параметра pureftpd_init_script_path и отсутствует параметр pureftpwho_path . Надо заменить строку:

Для нормального доступа у вас уже должен быть настроен веб-сервер. После того как откроете страницу http://sitename/pure-ftpd-webui , вам будет доступна страница настройки:

Где sitename — доменное имя сервера или его IP-адрес.

После того как вы нажмете кнопку Install вы попадете на страницу настройки подключения к СУБД MySQL:

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

После завершения настройки, вам будет доступен интерфейс для управления PureFTPd:

Автор — nihi1ist, опубликовано: 15 Ноября 2016, 10:11, Вт how-to

источник

Pure-FTPd: Установка и настройка под Ubuntu

Цитата с оф сайта проекта: Pure-FTPd — это свободный (BSD), безопасный, качественный, отвечающий стандартам FTP сервер, который не содержит бесполезных свистелок-перделок — его основная задача — простота использования. Pure-FTPd предоставляет простые решения для наиболее часто встречающихся задач, а также много уникальных функций, которые могут быть полезны как обычным пользователям, так и хостинг провайдерам.

Установка pure-ftpd

Сначала, используя apt устанавливаем pure-ftpd пакет — он доступен в репозиториях по умолчанию:

По завершении установки демон будет запущен и слушать на 21 порту:

Подход к конфигурации демона pure-ftpd отличается от других программ тем, что параметры демона задаются полностью параметрами командной строки, а для формирования этих параметров, написана программа-обертка. Сама конфигурация pure-ftpd представляет из себя набор однострочных конфигурационных файлов — отдельный файл для каждого параметра.

Вот как выглядит конфигурация pure-ftpd:

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

Каждый конфигурационный файл описывает отдельный параметр командной строки демона pure-ftpd. Например, файл AltLog содержит формат и путь к журналу передачи (tranfer log file):

Содержимое выглядит приблизительно так:

Настройка pure-ftpd

Настройка основных параметров сервера (сервер слушает на порту 21 на всех доступных интерфейсах и будет использвать IP 12.34.56.78 и порты 4500-4600 для пассивного режима — следует настроить перенаправление на NAT маршрутизаторе, если сервер находится за ним):

Настройка параметров безопасности:

Настройка ограничений:

Теперь нужно решить какие будут использоваться методы авторизации. Имеются следующие варианты:

  • Unix Authentication (любой пользователь, имеющий системную учетную запись сможет зайти на FTP сервер)
  • PureDB авторизация использует отдельную базу виртуальных пользователей pure-ftpd.

Предпочтительнй использовать второй вариант, который мы и настроим. Итак, отключим Unix и PAM вторизацию, установим путь к PureDB базе пользователей и добавим PureDB как метод вторизации путем создаия символической ссылки в директории /etc/pure-ftpd/auth:

Добавим системную группу и пользователя, с правами которых будут храниться файлы, выгружаемые на сервер виртуальными пользователями. Из соображений безопасности, этот пользователь не должен иметь домашнней директории (-d /bin/null) и не иметь доступа к командной оболочке (-s /bin/false) :

Добавление поддержки TLS/SSL

Сгенерируем сертификат безопасности:

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

В последний раз перезапускаем сервер для применения нашей свежей конфигурации:

Вот и все. Наш сервер настроен, осталось только добавить пользователей.

Добавление пользователей в базу pureftpd.

Создадим нового пользователя, назовем его «pureusertest»:

Программа попросит ввести пароль и его подтверждение.

Не забудьте выполнить команду pure-pw mkdb: она нужна для того, чтоб применить изменения, сделанные в базе виртуальных пользователей, по умолчанию находящуюся по пути /etc/pure-ftpd/pureftpd.passwd:

Формат базы пользователей — двочный, для ускорения поиска в базе имеется индекс.

Получение информации о пользователях pure-ftpd

Просмотр списка пользователей:

Получение информации, касающейся определенного пользователя:

Если вы обратили внимание, что строка «Directory: /home/pubftp/pureusertest/./» заканчивается на ./ — не стоит переживать по этому поводу. Это всего-лишь chroot инструкция для данного пользователя, что обозначает, что он не может попасть в директории, находящиеся «выше».

Читайте также:  Установка двухзонных счетчиков электроэнергии

Изменение пароля пользователя:

После изменения пароля, не забудьте выполнить команду pure-pw mkdb:

Вот и все. Pure-FTPd настроен. Если есть вопросы, замечания — пишите в комментах.

источник

Ещё один блог сисадмина

суббота, 4 октября 2008 г.

Замена pure-ftpd-wrapper на pure-config в Debian

Продолжаю переносить статьи со старого блога. К статье могу добавить комментарий, что в принципе установка pure-ftpd из deb-src была сделана с одной лишь целью — ознакомиться с технологией. pure-ftpd можно просто поставить двоичным пакетом, а из тарболла с исходниками просто взять нужный нам wrapper и настроить скрипт в /etc/init.d на использование этого wrapper’а.

Перепробовал я под FreeBSD много разных FTP-серверов:

  1. родной bsdftpd, просто и со вкусом, ненужно заморачиваться с установкой, уже присутствует в самой системе;
  2. он-же, но споддержкой SSL и TSL — bsdftpd-ssl, после предыдущего практически не нужно ничего перенастраивать, но сразу добавляются шифрованные варианты протокола;
  3. proftpd с конфигурационным файлом, подобным оному в Apache, гибко, но тяжело. К тому же в своё время без сторонних патчей прикрутить русскую локаль было невозможно (только не кидайте камнями, типа это не по стандарту: оно бывает нужно, а добавить эту возможность в виде опции разработчики поленились);
  4. vsftpd, легко и безопасно, но почему-то тоже не прижился.

В поисках совершенства начал использовать Debian.

Человек я ленивый, а во FreeBSD тупо обновить систему с накатом обновлений безопасности сложновато:

  1. сама система — cvsup, make buildworld, make buildkernel, make installkernel, перезагрузка, смотрим как работает свежее ядро, затем make installworld; можно и проще freebsd_update, но если ядро собрано своё — опять-таки ядро придётся пересобирать;
  2. дерево портов cvsup или portsnap;
  3. проверка уязвимых установленных пакетов portaudit;
  4. установка свежих пакетов или установка из портов: portupgrade;
  5. исправление возможных глюков из-за обновлённых версий программ (конфиги поправить, запускные скрипты).

Некоторые пакеты не работают правильно, пока их не пересобирёшь из портов (бывало такое, бывало)! На это опять-таки нужно тратить время, ресурсы системы (а машинки бывают очень слабенькие — компиляция среднего размера пакетов может идти часами), или извращаться с монтированием удалённых каталогов, компилировать на более мощной системе.

В Debian тупо:
И все обновления безопасности стоят в системе, конфигов править не нужно! Можно легко сопровождать таким способом десятки серверов, полезно лишь поставить на одну из машинок apt-cacher, чтобы не грузить почём зря официальные зеркала.

источник

Pure-FTPd: Установка и настройка под Ubuntu

Цитата с оф сайта проекта: Pure-FTPd — это свободный (BSD), безопасный, качественный, отвечающий стандартам FTP сервер, который не содержит бесполезных свистелок-перделок — его основная задача — простота использования. Pure-FTPd предоставляет простые решения для наиболее часто встречающихся задач, а также много уникальных функций, которые могут быть полезны как обычным пользователям, так и хостинг провайдерам.

Установка pure-ftpd

Сначала, используя apt устанавливаем pure-ftpd пакет — он доступен в репозиториях по умолчанию:

По завершении установки демон будет запущен и слушать на 21 порту:

Подход к конфигурации демона pure-ftpd отличается от других программ тем, что параметры демона задаются полностью параметрами командной строки, а для формирования этих параметров, написана программа-обертка. Сама конфигурация pure-ftpd представляет из себя набор однострочных конфигурационных файлов — отдельный файл для каждого параметра.

Вот как выглядит конфигурация pure-ftpd:

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

Каждый конфигурационный файл описывает отдельный параметр командной строки демона pure-ftpd. Например, файл AltLog содержит формат и путь к журналу передачи (tranfer log file):

Содержимое выглядит приблизительно так:

Настройка pure-ftpd

Настройка основных параметров сервера (сервер слушает на порту 21 на всех доступных интерфейсах и будет использвать IP 12.34.56.78 и порты 4500-4600 для пассивного режима — следует настроить перенаправление на NAT маршрутизаторе, если сервер находится за ним):

Настройка параметров безопасности:

Настройка ограничений:

Теперь нужно решить какие будут использоваться методы авторизации. Имеются следующие варианты:

  • Unix Authentication (любой пользователь, имеющий системную учетную запись сможет зайти на FTP сервер)
  • PureDB авторизация использует отдельную базу виртуальных пользователей pure-ftpd.

Предпочтительнй использовать второй вариант, который мы и настроим. Итак, отключим Unix и PAM вторизацию, установим путь к PureDB базе пользователей и добавим PureDB как метод вторизации путем создаия символической ссылки в директории /etc/pure-ftpd/auth:

Добавим системную группу и пользователя, с правами которых будут храниться файлы, выгружаемые на сервер виртуальными пользователями. Из соображений безопасности, этот пользователь не должен иметь домашнней директории (-d /bin/null) и не иметь доступа к командной оболочке (-s /bin/false) :

Читайте также:  Установка joomla что дальше

Добавление поддержки TLS/SSL

Сгенерируем сертификат безопасности:

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

В последний раз перезапускаем сервер для применения нашей свежей конфигурации:

Вот и все. Наш сервер настроен, осталось только добавить пользователей.

Добавление пользователей в базу pureftpd.

Создадим нового пользователя, назовем его «pureusertest»:

Программа попросит ввести пароль и его подтверждение.

Не забудьте выполнить команду pure-pw mkdb: она нужна для того, чтоб применить изменения, сделанные в базе виртуальных пользователей, по умолчанию находящуюся по пути /etc/pure-ftpd/pureftpd.passwd:

Формат базы пользователей — двочный, для ускорения поиска в базе имеется индекс.

Получение информации о пользователях pure-ftpd

Просмотр списка пользователей:

Получение информации, касающейся определенного пользователя:

Если вы обратили внимание, что строка «Directory: /home/pubftp/pureusertest/./» заканчивается на ./ — не стоит переживать по этому поводу. Это всего-лишь chroot инструкция для данного пользователя, что обозначает, что он не может попасть в директории, находящиеся «выше».

Изменение пароля пользователя:

После изменения пароля, не забудьте выполнить команду pure-pw mkdb:

Вот и все. Pure-FTPd настроен. Если есть вопросы, замечания — пишите в комментах.

источник

Pure-FTPd: Установка и настройка под Ubuntu

Цитата с оф сайта проекта: Pure-FTPd — это свободный (BSD), безопасный, качественный, отвечающий стандартам FTP сервер, который не содержит бесполезных свистелок-перделок — его основная задача — простота использования. Pure-FTPd предоставляет простые решения для наиболее часто встречающихся задач, а также много уникальных функций, которые могут быть полезны как обычным пользователям, так и хостинг провайдерам.

Установка pure-ftpd

Сначала, используя apt устанавливаем pure-ftpd пакет — он доступен в репозиториях по умолчанию:

По завершении установки демон будет запущен и слушать на 21 порту:

Подход к конфигурации демона pure-ftpd отличается от других программ тем, что параметры демона задаются полностью параметрами командной строки, а для формирования этих параметров, написана программа-обертка. Сама конфигурация pure-ftpd представляет из себя набор однострочных конфигурационных файлов — отдельный файл для каждого параметра.

Вот как выглядит конфигурация pure-ftpd:

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

Каждый конфигурационный файл описывает отдельный параметр командной строки демона pure-ftpd. Например, файл AltLog содержит формат и путь к журналу передачи (tranfer log file):

Содержимое выглядит приблизительно так:

Настройка pure-ftpd

Настройка основных параметров сервера (сервер слушает на порту 21 на всех доступных интерфейсах и будет использвать IP 12.34.56.78 и порты 4500-4600 для пассивного режима — следует настроить перенаправление на NAT маршрутизаторе, если сервер находится за ним):

Настройка параметров безопасности:

Настройка ограничений:

Теперь нужно решить какие будут использоваться методы авторизации. Имеются следующие варианты:

  • Unix Authentication (любой пользователь, имеющий системную учетную запись сможет зайти на FTP сервер)
  • PureDB авторизация использует отдельную базу виртуальных пользователей pure-ftpd.

Предпочтительнй использовать второй вариант, который мы и настроим. Итак, отключим Unix и PAM вторизацию, установим путь к PureDB базе пользователей и добавим PureDB как метод вторизации путем создаия символической ссылки в директории /etc/pure-ftpd/auth:

Добавим системную группу и пользователя, с правами которых будут храниться файлы, выгружаемые на сервер виртуальными пользователями. Из соображений безопасности, этот пользователь не должен иметь домашнней директории (-d /bin/null) и не иметь доступа к командной оболочке (-s /bin/false) :

Добавление поддержки TLS/SSL

Сгенерируем сертификат безопасности:

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

В последний раз перезапускаем сервер для применения нашей свежей конфигурации:

Вот и все. Наш сервер настроен, осталось только добавить пользователей.

Добавление пользователей в базу pureftpd.

Создадим нового пользователя, назовем его «pureusertest»:

Программа попросит ввести пароль и его подтверждение.

Не забудьте выполнить команду pure-pw mkdb: она нужна для того, чтоб применить изменения, сделанные в базе виртуальных пользователей, по умолчанию находящуюся по пути /etc/pure-ftpd/pureftpd.passwd:

Формат базы пользователей — двочный, для ускорения поиска в базе имеется индекс.

Получение информации о пользователях pure-ftpd

Просмотр списка пользователей:

Получение информации, касающейся определенного пользователя:

Если вы обратили внимание, что строка «Directory: /home/pubftp/pureusertest/./» заканчивается на ./ — не стоит переживать по этому поводу. Это всего-лишь chroot инструкция для данного пользователя, что обозначает, что он не может попасть в директории, находящиеся «выше».

Изменение пароля пользователя:

После изменения пароля, не забудьте выполнить команду pure-pw mkdb:

Вот и все. Pure-FTPd настроен. Если есть вопросы, замечания — пишите в комментах.

источник

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

Adblock
detector