Меню Рубрики

Установка и настройка vsftpd freebsd

Установка и настройка vsftpd freebsd

На работе захотели файловую помойку из под виндов убрать, и перевести на FreeBSD. Для этих целей отыскался старый — престарый компьютер (2xCeleron 300/Abit BP-6/128mb/20Gb). Словом, сгодится.
Решил ftp поднять. Поднимать FTP посредством демона, идущего с операционкой не хотелось, хотелось что-нибудь эдакого.
Поиск по инету, случайно привел на сайт разработчиков vsftpd. Поглядев список серверов, на которых запахивает этот демон, я решил поставить именно его. Оговорюсь сразу, нужен именно файл сервер, где все могут складывать файлы, удалять их, создавать директории и тд.

Итак, сперва, обновим порты:

Окно выбора опций довольно скромное. Предлагают установить скрипты в rc.d и возможность безопасных соединенией SSL. Так как фтп локальный, наворот в виде SSL просто не нужен. Отмечаем первый пункт.
Собственно, после сборки мы получаем vsftpd, примеры, в которых содержаться некие базовые настройки vsftpd под конкретные задачи. Примеры доступны по адресу /usr/local/share/doc/vsftpd/EXAMPLE , но это не столь важно, ибо присутствует man и пример конфигурационного файла ;). Во FreeBSD, vsftpd, после инсталляцииб кладет конфигурационный файл в /usr/local/etc/vsftpd.conf .
Поскольку создатели озаботились о резервной копии конфигурационного файла, смело приступим к редактированию оригинала.

Честно говоря, у меня не получилось под анонимным пользователем заливать файлы (вроде бы аноним, завязан с виртуальными пользователями, может, если их создать, то аноним будет работать). Прогуглив вопрос, и поглядев информацию на эту тему, стало ясно, что не у одного меня, похожие грабли. В документации на ALT Linux советовали создавать пользователя vsftp с шеллом /sbin/nologin (это у нас, у них он другой, какой не помню уже 😉 ). Поэтому действуем так, создаем пользователя (имя любое) lissyara. Шелл, естественно nologin, пароль lissyara. Вроде бы все. Всем все можно, директория, куда будут складываться файлы, прописана. Осталость передать директорию root’у, иначе vsftpd не даст в нее писать. Сменим владельца:

Затем, дописываем в /etc/vsftpd.conf следующие строки:

Работает, директория создается, файлы заливаются.
После чего, добавляем строку запуска в /etc/rc.conf

Перезагружаемся (можно запускать демона руками, из /usr/local/etc/rc.d/ ),
и проверяем:

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

Следует так же, отметить одну особенность, vsftpd не поддерживает перекодировку, поэтому, если вас не смущает нечитабелная windows кириллица, то можете смело ставить vsftpd и пользоваться.

Хочется выразить благодарность thresh’у, за помощь и тестирование моего ftp сервера. И Raven2000 за
внесение поправок.

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

размещено: 2007-06-06,
последнее обновление: 2007-07-13,
автор: Andy

Это как это proftpd завязан с MySQL что за чушь?
Он завязан с тем с чем его завяжут 🙂

И отказываться от него не стоит, просто в Proftpd частенько дырочки находят ( чаще в модулях ), а так достойный демон с очень гибкой конфигурацией схожей с Apache.

Так у него в зависимостях MySQL. И хранит он учетки там. Я, кстати, и не говорил что он плохой.

Ну ей богу — для того что тут описано встроенный ftpd — более чем .

>#ftp &nbsp stream &nbsp tcp &nbsp nowait &nbsp root &nbsp /usr/libexec/ftpd &nbsp ftpd -l
>#ftp &nbsp stream &nbsp tcp6 &nbsp nowait &nbsp root &nbsp /usr/libexec/ftpd &nbsp ftpd -l
>#ftp &nbsp stream &nbsp tcp &nbsp nowait &nbsp root &nbsp /usr/libexec/lukemftpd &nbsp ftpd -l -r
>#ftp &nbsp stream &nbsp tcp6 &nbsp nowait &nbsp root &nbsp /usr/libexec/lukemftpd &nbsp ftpd -l -r
>vsftp stream tcp nowait root /usr/local/libexec/vsftpd vsftpd
>
>
>Перезагружаемся и. Не хочет загружаться, жалуясь что:
>
>intetd[668]: vsftp/tcp: unknown service

ну так он у тебя и не заработает, тебе правильно сказал при загрузки что vsftp/tcp: unknown service, нету такого сервиса в /etc/services, правильно будет написать
ftp stream tcp nowait root /usr/local/libexec/vsftpd vsftpd

Должно помочь с русскими буквами.
vsftpd мой любимый ftp-server

1. «Во FreeBSD, vsftpd, после инсталляции кладет конфигурационный файл в /usr/local/etc/vsftpd.conf, однако читает конфигурационный файл по адресу /etc/vsftp.conf.»
Это неправда. При установке из портов пути заменяются на /usr/local/etc. Можете в этом убедится, сделайте make configure и посмотрите в файле tunables.c.

2. rc.d скрипт запуска так же есть в составе порта, устанавливайте с опцией WITH_RC_NG (или смотрите make config).

В конце статьи присутствует ссылка на http://vsftpd.devnet.ru.
Вот он отлично работает с отечественными кодировками.

Читайте также:  Установка и настройка avz

Andy
он может хранить учетки от системной базы до постгре.
и MySQL может и не использоваться, может конечно в портах чего понаставили, но с src все нормально.
Стал бы я использовать для раздачи файла Proftpd + mysql, не думаю. Для хостинга только удобно.

ffsdmad, 2007-06-08 в 15:31:09

помоему нет нужды писать свой стартовый скрипт
после устоновки из порта он должен быть в /usr/local/etc/rc.d/
но править rc.conf надо, как тут и написано
и я не понял какие проблемы с заливкой для анонистов
как то просто решается

чтоб не ругался
intetd[668]: vsftp/tcp: unknown service
добавь в /etc/services строчки
vsftp 21/tcp #File Transfer [Control]
vsftp 21/udp #File Transfer [Control]

Если собираете vsftpd от http://vsftpd.devnet.ru то
стартовый скрипт не ставиться в rc.d, можно использовать пример из /usr/ports/ftp/vsftpd/files/vsftpd.sh.in поправив переменные для make

Хм. так интересно получилось. Давненько я не следил за развитием ftp серверов, а тут на днях около 6 разных осей перелопатил — на всех vsftpd сотит! Так удивился сперва, а потом понял в чем дело: vsftpd очень легок в настройке.

Афтор — полный тормоз ! Комментарии запутаны и безграмотны, некоторых параметров, например, «anon_root», в оригинальном конфиге нет, откуда он их берет, не объясняет, русского языка не знает вообще :-8

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

сам ты тормоз. в оригинальном конфиге anon_root есть:
anon_root — Опция определяет директорию, которую vsftpd попытается изменить, после анонимного входа. Ошибка, тихо игнорируется.
По умолчанию: (нет)

«Честно говоря, у меня не получилось под анонимным пользователем заливать файлы»
Надо было корневой папке ftp назначить rwxrwxrwt

nikola93, 2008-12-18 в 11:00:33

max_per_ip=2
ограничение сесий с одного ip
в данном случии 2 сесии

А я скажу автору спасибо, ибо он хоть немного пролил свет на настройку этого демона. С уважением. Дмитрий. С-Пб

«Затем, дописываем в /etc/vsftpd.conf следующие строки:»
Всётаки наверно
«Затем, дописываем в /usr/local/etc/vsftpd.conf следующие строки:»

Малость но есть дубы кто будут писать в /etc/vsftpd.conf :)))

также выявилась фича с параметром local_umask.
Для того, что б пользователи заливали/создавали директории с правами 0775
local_umask=001
при установленных
anonymous_enable=NO
local_enable=YES
Связано это видимо с работой команды umask

в начале статьи забыл «/» добавить ))
chown root

ftp
по моему надо так:
chown root

Почему не запускается? Установил на FreeBSD 8.3
/etc/rc.conf
vsftpd_enable=\»YES\»

/usr/local/etc/vsftpd.conf
listen=YES
background=YES

/etc/inetd.conf
Все закомментировано

[цитата] Следует так же, отметить одну особенность, vsftpd не поддерживает перекодировку, поэтому, если вас не смущает нечитабелная windows кириллица, то можете смело ставить vsftpd и пользоваться.

charset_filter_enable=YES
charset_client=Windows-1251
charset_server=UTF-8


2014-07-27, lissyara
gmirror
Удалённое создание софтверного зеркала средствами gmirror, на диске разбитом с использованием gpart. Использование меток дисков для монтирования разделов. 2013-08-20, zentarim
Scan+Print server FreeBSD 9
Настройка сервера печати и сервера сканирования под управлением операционной системы FreebSD 9 для МФУ Canon PIXMA MP540 2011-11-20, BlackCat
Разъём на WiFi-карту
Делаем съёмной несъёмную антену на WiFi-карте путём установки ВЧ-разъёма 2011-09-14, manefesto
Настройка git+gitosis
Настройка системы контроля версия исходного кода в связке git+gitosis+ssh 2011-08-14, zentarim
Wi-FI роутер + DHCP + DNS
Настройка Wi-Fi роутера на Freebsd 8 + DNS сервер + DHCP сервер: чтобы Wi-Fi клиенты были в одной подсети с проводными, проводные и беспроводные клиенты получали адреса автоматически по DHCP, кэширующ 2011-06-15, -ZG-
Охранная система на FreeBSD+LPT
В этой статье описана попытка реализации простой охранной системы на базе FreeBSD с подключением к ней охранных устройтсв на LPT порт и видеорегистрацией. 2011-03-13, terminus
ng_nat
Описание работы ng_nat, практическое использование, достоинства и недостатки в сравнении с ipfw nat 2011-02-20, Капитан
Nagios+Digitemp
Статья описывает создание системы оповещения о превышении температуры в специальных помещениях на основе Nagios с использованием программы Digitemp. 2011-02-17, Le1
Zyxel Configuration
Скрипт для массового изменения конфига свичей Zyxel. Берет из файла iplist список ip-шек, заходит последовательно на каждый и выполняет комманды из файла commands, записывая происходящее в лог файл. 2011-02-16, fox
hast carp zfs ucarp cluster
HAST (Highly Available Storage), CARP, UCARP, ZFS, Cluster настройка и одаптация плюс личные размышления… 2011-02-04, BlackCat
Восстановление ZFS
История о том, как был восстановлен развалившийся RAIDZ ZFS-пул (перешедший в FAULTED) с помощью скотча и подручных средств. Или о том, какие приключения ожидают тех, кто не делает резервных копий. 2011-02-03, Капитан
1-Wire
Статья описывает самостоятельное изготовление контроллера DS9097 для съёма показаний с датчиков температуры DS1820 с помощью программы Digitemp. 2011-01-28, Капитан
Температура в серверной
Статья описывает построение системы наблюдения за температурой в помещении серверной с использованием программы Digitemp и выводом графиков в MRTG 2011-01-21, m4rkell
Syslog server
Как то буквально на днях, у нас завалилось, что то в еве) или не в еве не суть. Суть в том, что когда захотели снять логи с хостов esx обнаружили, что хранят эти негодяи логии только за последнии сутк 2011-01-07, lissyara
Canon/gphotofs
Монтирование цифровых фотоаппаратов Canon (PTP) как файловой системы, автоматизация этого процесса через события devd и внешние скрипты. 2010-12-13, Al
IPSec
Описание принципов работы IPSEC и способов аутентификации. 2010-12-07, manefesto
FreeBSD on flash
Было принято решении переехать на USB Flash и установить минимальный джентельменский набор для работы своего роутера. Делаем =) 2010-12-05, Fomalhaut
root ZFS, GPT
Инструкция по установке FreeBSD с использованием в качестве таблицы разделов GPT и в качестве основной файловой системы — ZFS 2010-09-05, Cancer
Настройка аудиоплеера на ximp3
Цели: Простенький аудиоплеер, для того что бы тетя продавец в магазине утром пришла нажала на кнопку Power и заиграла в зале музыка, так же был доступ по сети, общая шара куда можно заливать музыку, к
вверх

Читайте также:  Установка знака дорожного движения остановка запрещена
Статистика сайта
Сейчас на сайте находится: 36 чел.
За последние 30 мин было: 125 человек
За сегодня было
13381 показов,
1589 уникальных IP

Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
Если соизволите поставить автора в известность — то вообще почёт вам и уважение.

источник

Установка и настройка vsftpd freebsd

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

Существует огромное количество портов фтп серверов. Самыми популярными из них являются VsFTPd и ProFTPd.
Не буду описывать все за и против каждого из них, т.к. не об этом речь сейчас 🙂

Почему лично я выбрал VsFTPd, а не ProFTPd.
Мне изначально друг сисадмин советовал поставить ProFTPd, я начал копаться по форумам и блогам, сравнивать отзывы о каждом.

В общем, считается, что ProFTPd более дырявый 🙂
Но скажу, что VsFTPd завелся у меня далеко не сразу. Когда я в очередной раз застрял, плюнул на него и снес к чертовой бабушке.
Решил ставить ProFTPd… ну не нравились мне некоторые вещи, да и не получалось все сразу так как хотелось. К тому же он потребляет больше ресурсов системы, и это был решающий момент. Поскольку все настраивал на ВПС, а он как известно не резиновый, решил все же сэкономить на ресурсах и вернуться к VsFTPd.

Черт его знает, как, но в этот раз все завелось с полпинка. Счастья было полные трусы 🙂

Настройка VsFTPd на FreeBSD 9

1. Устанавливаем из портов VsFTPd

2. Устанавливаем из портов pam_pwdfile. Это была как раз та загвоздка, почему не получилось завести его в первый раз. Нужен pam_pwdfile как раз для того, чтобы не создавать в системе фтп-юзеров, а сделать виртуальных. Классная утилита, которую можно использовать, где необходима авторизация и вирт. пользователи.

3 Создаем файл для вирт. пользователей vsftpd

4. Открываем в любом редакторе и прописываем в нем следующее
Если установлен pam_userdb

4. Создаем файл базы данных с логином и паролем для vsftpd для каждого юзера.

Тут тоже есть свой ньюанс.
В начале я натолкнулся на такую запись (где уже не вспомню):

Результатом будет подобная запись в файле vsftpd_login.db:

Скажу сразу, что htpasswd генерирует пароли не в том формате, что надо pam_pwdfile

Для генерации паролей лучше подойдет:

где password213 — ваш пароль
И вставляем его в файл /usr/local/etc/vsftpd/vsftpd_login.db по такому шаблону:

Каждый юзер с новой строки. Запись будет выглядеть примерно так:

5. Устанавливаем права на файл.

6. Дальше надо добавить пользователя в систему от которого будут загружаться все файлы и папки по фтп. и установить ему /usr/sbin/nologin

источник

Настройка vsftpd

Как то понадобилось соорудить ftp серверок для хранения всякого.. Остановился на vsftpd, в качестве шпаргалки набросал вот эту заметку, чтоб в будущем быстренько вспомнить, что творил..

И так, на FreeBSD 8.2 ставим vsftpd из портов, перед этим не забываем обновить порты. Устанавливаем расширенный вариант — vsftpd-ext (для поддержки конвертации на «лету» UTF8 WIN1251):

Следующий шаг — файл конфигурации vsftpd.conf, конфигурация без анонимов:

# ee /usr/local/etc/ vsftpd.conf

ftpd_banner=Welcome to FTP..

/ftp — у меня был отдельный физический диск, куда все всё складывали.

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

Далее создаём файлик user.list и рисуем туда всех юзеров, которых нужно пускать на сервер по ftp. Рекомендую создать отдельного пользователя для запуска vsftpd, запускающий скрипт находится в /usr/local/etc/rc.d

Незабываем в rc.conf прописать :

Всё.. Можно сделать рестарт vsftpd или просто перезагрузить сервер. Если демон не запускается то как обычно бывает забыл дать соответствующие права на папки и файлы.. В последующем прикрутил к нему MySql для хранения в нём списка пользователей, путей для них, логов и всякой другой информации.. всё это выделил в отдельную заметку.

>В последующем прикрутил к нему MySql для хранения в нём списка пользователей, путей для них, логов и всякой другой информации.. всё это выделил в отдельную заметку.

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

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

источник

unix.ck.ua

Решил обратить внимание, еще на один знатный FTP-сервер, имя которого — vsftpd. Vsftpd был разработан и реализован с нуля с учетом требований безопасности. По нагрузкам, вот краткий пример:

За 24 часов, Vsftpd обслужил 2.6TB с одновременным число пользователей более 1500. Это на одной машине!

Основные функциональные характеристики:
* Виртуальные IP;
* Виртуальные пользователи;
* работает как отдельно так и через inetd;
* Мощная система конфигурирования для каждого пользователя;
* Полосы пропускания;
* Настройка для каждого IP;
* Установка лимитов для каждого IP;
* Поддержка протокола IPv6;
* Поддержка шифрования SSL путем интеграции;

Прошел кратко по офсайту и увидел список FTP-серверов которые доверяют vsftpd. После того, как увидел в нем ftp.freebsd.org, решил нужно ставить.
Обновляем порты удобным вам способом и начинаем инсталить:

# По желанию, можно задать на каком интерфейсе слушать запросы или закомментировать(слушать все!).
listen_address =192.168.0.1

# Выключение анонимного режима FTP.
anonymous_enable =NO
anon_upload_enable =NO
anon_mkdir_write_enable =NO

# Разрешаем работать в фоновом режиме.
background =YES

# Запираем каждого юзера в свою клелку.
chroot_local_user =YES

# Каждый путь к клетке юзера, берется из домашних директорий с /etc/passwd.
passwd_chroot_enable =YES

# Если «chroot_local_user=NO», тогда в файле /etc/ftp_chroot_list прописываем кого, куда чрутить.
#chroot_list_enable=YES
#chroot_list_file=/etc/ftp_chroot_list

# Разрешаем локальным юзерам использовать FTP-сервер.
local_enable =YES

# Разрешить просматривать каталоги рекурсивно с опцией «-R» для ls.
ls_recurse_enable =YES

# Разрешаем или запрещаем юзерам записывать файлы
write_enable =YES

# Работать в автономном режиме?
listen =YES

# Разрешения, с которыми создаются закачиваемые файлы.
file_open_mode =0600

# Этот каталог должен быть пустым, так как он используется chroot() клеткой во время, когда vsftpd не запрашивает доступ к файловой системе.
secure_chroot_dir = / var / empty

# Указываем диапазон портов для пассивного режима например (30000:50000). Так же не забываем потом их открыть у у себя на фаерволе.
pasv_min_port = 30000
pasv_max_port = 50000

# Максимально разрешенная скорость передачи данных (байт/c), для локальных пользователей.
local_max_rate = 25600

# Разрешить использование списка пользователей .
userlist_enable =YES

# Путь к файлу списка разрешенных или запрещенных пользователей.
userlist_file = / etc / user_list

# Включаем userlist, указываем расположение файла, а так же действие.
# «userlist_deny=NO» — Список будет белым. Запрещены все, кто явно не разрешены.
# «userlist_deny=YES» — Список будет черным. Расрешены все, кто явно не запрещены.
userlist_deny =NO

# Разрешаем записывать в лог, кто чего делал.
xferlog_enable =YES

# Местоположение того самого лога.
xferlog_file = / var / log / vsftpd.log

# Разрешаем соединение по 20-м порту.
connect_from_port_20 =YES

# Поддержка древних FTP клиентов.
async_abor_enable =YES

# Используем родное время, а не GMT.
use_localtime =YES

# Ограничение на количество сесий с одного IP.
max_per_ip = 4

# Что бы юзеры создавали файлы с правами — 775.
local_umask =001

# Данные будут скачиваться и закачиваться в аски.
ascii_download_enable =YES
ascii_upload_enable =YES

# Приветствие при входе.
ftpd_banner =Hello ! This my FTP !

# Разрешить просматривать файлы которые начинаются с точки (скрытые)
force_dot_files =NO

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

источник

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