Меню Рубрики

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

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 настроен. Если есть вопросы, замечания — пишите в комментах.

источник

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.
Читайте также:  Установка разъединителя 10кв на анкерной опоре

Предпочтительнй использовать второй вариант, который мы и настроим. Итак, отключим 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 настроен. Если есть вопросы, замечания — пишите в комментах.

источник

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 настроен. Если есть вопросы, замечания — пишите в комментах.

источник

Ubuntu Documentation

Pure-FTPD + pureadmin (Ftp server with gui)

Install »Pure-FTPD» with GUI

Install the pure-ftpd package and the pureadmin package from the Universe Repository.

Then create the user group.

Next create your ftpuser directory

Then to create a user directory for joe (you can create a directory for each ftp user)

Then to create you user database

and which will create symbolic links between the respective files.

Next you need to modify the permissions of /home/ftpusers directory and of any other subdirectories. The owner must be ftpuser while Group must be ftpgroup

After doing that open up pureadmin in the terminal. and stop firestarter if it is installed.

NOTES

The user joe is used as an example, you can change user joe and/or add or remove other users through pureadmin.

You may need to restart PureFTPD before changes take effect.

SECURITY

FTP is by nature a rather unsecure protocol. Add TLS support to prevent your sessions from being vulnerable to man-in-the-m >

Enable TLS only mode in Pure-FTPd

or for a less secure version that also accepts insecure FTP connections

SSL certificates are inherently insecure if other users can read them. You must secure the certificate before it can be used by changing file permissions.

And now you need to restart Pure-FTPd

AMAZON AWS SETTINGS

If installing on an AWS server, you will need to configure IP address routing information specific to your server. If using the default UBUNTU server, use the following. Note that echo will not properly be able to edit a file unless you are in a sudo shell, which is why we use «sudo bash -c».

These commands will allow most programs, like FileZilla, to connect via FTP passive mode to the server. Amazon AWS servers use internal IP addresses starting with «10.» for most things, and you will need to explicitly define this IP address for your FTP software to be able to communicate.

Update your Amazon AWS Firewall settings.

TROUBLESHOOTING

You may be given one of these warnings when trying to connect to your server:

These two warnings occur if your system set the User >

    You’ll be given something similar to the following:

The actual numbers don’t matter much, but they should be higher then 1000 for Pure-FTPD to be happy.
To fix the User > To fix the Group >

Restart the Pure-FTPD daemon and you should be up and running.

источник

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

Установка рассматривается для Ubuntu . Настройка делается так, чтобы FTP-сервер имел своих FTP пользователей, и этих пользователей не приходилось создавать в системе.

Для работы pure-ftpd нужно будет создать пользователя ftpusers и группу ftpusers. Больше системных пользователей создавать будет ненужно.

Pure-ftpd позволяет хранить данные виртуальных аккаунтов в специальных файлах

формата puredb , подобном ‘/etc/passwd’. Помимо списка самих аккаунтов, данных авторизации и директорий пользователей, файл puredb может содержать такие данные, как индивидуальные квоты, параметры скорости работы с сервером, соотношения download/upload и некоторые другие опции, которые будут рассмотрены далее.

Если программа ставится из исходников, для включения поддержки puredb в pure-ftpd вам необходимо сконфигурировать сервер следующим образом:

./configure —with-puredb —with-peruserlimits —with-throttling —with-ratios —with-quotas

  • —with-puredb — включает поддержку puredb;
  • —with-peruserlimits — позволяет задавать ограничения для каждого пользователя;
  • —with-throttling — позволяет установить ограничение скорости работы с ftp для пользователей;
  • —with-ratios — позволяет установить соотношение download/upload для пользователей;
  • —with-quotas — позволяет установить квоту дискового пространства для пользователя;

Если программа устанавливается из репозитария, достаточно команды

В Ubuntu 7.04 сервер pure-ftpd собран с поддержкой puredb .

Перед началом настройки сервера рекомендуется завести системный аккаунт,

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

дальнейшем избежать путаницы с правами.

Создадим группу ftpusers и добавим пользователя ftpusers:

useradd -g ftpusers -d /home/ftpusers -s /sbin/nologin ftpusers

pw useradd ftpusers -g ftpusers -d /home/ftpusers -s /sbin/nologin

Далее добавим директорию и назначим права на нее для пользователя ftpusers:

chown ftpusers:ftpusers /home/ftpusers

Сразу отмечу, что работа с виртуальными аккаунтами происходит в два этапа:

1. Создание файла со списком аккаунтов пользователей и их параметрами (по умолчанию ‘/etc/pure-ftpd/pureftpd.passwd’), на этом этапе вы также cможете вносить изменения в список аккаунтов;

Читайте также:  Установка автомобильные предпусковые подогреватели

2. Создание на основе файла списка бинарного файла, с которым в конечном итоге и будет работать сервер (по умолчанию ‘/etc/pure-ftpd/pureftpd.pdb’);

Альтернативные значения для passwd-файла и pdb-файла могут быть заданы с помощью переменных окружения ‘PURE_PASSWDFILE’ и ‘PURE_DBFILE’ соответственно.

Все операции над аккаунтами будут осуществляться с помощью утилиты ‘pure-pw’, входящей в пакет pure-ftpd.

Каждая запись файла виртуальных аккаунтов имеет следующий формат:

dl bw:ul ratio:dl ratio:max con:

files quota:size quota:authorized local IPs:refused

local IPs:authorized client IPs:refused client IPs:time

Рассмотрим значения полей записи:

  • ‘account’ — имя аккаунта;
  • ‘pass’ — пароль пользователя в зашифрованном виде;
  • ‘u >

Допускается пустое значение всех полей кроме ‘account’, ‘pass’, ‘uid’, ‘gid’ и ‘dir’.

Добавление нового аккаунта

Добавление аккаунта осуществляется с помощью утилиты ‘pure-pw’.

Синтаксис команды следующий:

pure-pw useradd login [-f file]

Рассмотрим значения используемых опций:

  • ‘login’ — имя добавляемого аккаунта;
  • ‘-f file’ — задает имя файла списка аккаунтов, отличное от значения по умолчанию, т.е. от ‘/etc/pureftpd.passwd’.
  • ‘-u u >

Таким образом, в простейшем случае добавление аккаунта осуществляется

# pure-pw useradd tester -u ftpusers -g ftpusers -d /home/ftpusers/tester

После этой команды вы получите запрос на ввод пароля для tester.

Изменение параметров аккаунта

Изменение параметров аккаунта также осуществляется с помощью pure-pw:

# pure-pw usermod login [-f passwd file] attr value [attr value . ] [-m]

‘attr value’ в данном случае — это те же параметры, которые используются при добавлении нового аккаунта.

Не забывайте использовать параметр ‘-f passwd file’ в том случае, если список аккаунтов изначально создавался в файле, отличном от ‘/etc/pure-ftpd/pureftpd.passwd’.

Сброс установленных значений

Для сброса параметров конфигрурации pure-pw запускается со следующими опциями:

  • ‘pure-pw usermod login -n »’ — сброс квот на количество файлов;
  • ‘pure-pw usermod login -N »’ — сброс квот на размер файлов;
  • ‘pure-pw usermod login -q » -Q »’ — сброс соотношений download/upload;
  • ‘pure-pw usermod login -t »’ — сброс ограничения скорорсти download;
  • ‘pure-pw usermod login -T »’ — сброс ограничения скорости upload;
  • ‘pure-pw usermod login -i » -I » -r » -R »’ — сброс соответствующих ограничений по ip;
  • ‘pure-pw usermod login -z »’ — сброс временных ограничений;
  • ‘pure-pw usermod login -y »’ — сброс ограничений на количество подключений.

Удаление аккаунта осуществляется следующим образом:

# pure-pw userdel login [-f passwd file] [-m]

Изменение пароля осуществляется следующим образом:

# pure-pw passwd login [-f passwd file] [-m]

После добавления (удаления, модификации) данных аккаунта изменения не вступят в силу, пока не будет обновлен файл ‘/etc/pure-ftpd/pureftpd.pdb’.

Для создание нового файла ‘pureftpd.pdb’, используйте следующую команду:

В том случае, если вы используете имена файлов, отличныные от ‘/etc/pure-ftpd/pureftpd.passwd’ и ‘/etc/pure-ftpd/pureftpd.pdb’, файлы необходимо указать явно:

‘pure-pw mkdb /path/to/file.pdb -f /path/to/files.passwd’.

Чтобы избежать использования ‘pure-pw mkdb’ после каждого изменения данных,

используйте опцию ‘-m’ в командах модификации, например:

# pure-pw useradd andrew -u ftpusers -g ftpusers -d /home/ftpusers/andrew -m

Таким образом изменения сразу же будут внесены в файл ‘pureftpd.pdb’.

Получение информации об аккаунтах

Для просмотра данных аккаунта используется следующий синтаксис ‘pure-pw’:

# pure-pw show login [-f passwd file]

Сервер можно просто запустить как демон. Чтобы работали настроенные через pure-pw аккаунты, сервер должен запускаться со стандартными опциями, и с указанием файла с данными авторизации пользователей с помощью опции ‘-l’:

# pure-ftpd -14ABEH -p 33000:35000 -l puredb:/etc/pure-ftpd/pureftpd.pdb

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

— покажет, появился ли процесс

— покажет, какая программа (демон) слушает 21-й порт

если процесса не появилось, или видно, что 21-й порт слушает другая программа, или если при старте pure-ftpd была написана ошибка, или если pure-ftpd молча запустился, но не работает, и в довершение ко всему, в файле /var/log/syslog есть ошибки вида

pure-ftpd[14069]: (?@?) [ERROR] Unable to start a standalone server: [Invalid argument]

pure-ftpd[14067]: (?@?) [ERROR] Unable to start a standalone server: [Illegal seek]

то это скорее всего значит, что 21-й порт занят inetd-демоном. В Ubuntu 7.04 этот демон называется

и его работа управляется через файл /etc/inetd.conf. Если в системе есть демон inetutils-inetd , то можно поступить двумя способами.

1. Неправильный , но для проверки работоспособности pure-ftpd сгодится. Можно закомментировать в файле /etc/inetd.conf строку, отвечающую за ftp-протокол. Затем уничтожить процесс inetutils-inetd , и снова его запустить командой

После этого командой netstat -lnp | grep 21 удостоверится, что порт 21 не занят, и запустить pure-ftpd как демона (должна присутсвовать опция B ).

2. Правильный . Если в системе уже есть inetutils-inetd , то его надо настроить так, чтобы при входящем соединении на порт 21, он вызывал запуск pure-ftpd .

источник

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

Adblock
detector