Мы — долго запрягаем, быстро ездим, и сильно тормозим.

FreeBSD
  настройка
  подсчёт трафика
  программы
  frox
  SARG
  samba & ClamAV
  named
  proftpd
  cacti
  SAMBA+AD+NT ACL
  MySQL
  hylafax
  DDNS+DHCP
  cvsupd
  Samba как PDC
  Основы LDAP
  LDAP+SSL
  LDAP auth
  knockd
  rsync
  MRTG
  Rejik
  Jabber - OpenFire
  Samba(PDC) + Ldap
  squid+AD
  ATSlog
  vsftpd
  LDAP: samba, dns, dhcp
  Free-SA
  cups-samba на samba+AD
  irc + services
  Nagios - мониторинг сети
  TeamSpeak
  icecast2
  verlihub (p2p)
  Icecast2 + Darkice
  OOPS
  vsftpd + mysql
  Amanda
  HAVP
  Рыбалка на FreeBSD
  DNS сервер NSD
  DNS сервер Unbound
  mpd5, msmtp, dynamic ip
  ProFTPd + LDAP
  OpenVPN + LDAP
  Samba (PDC+BDC)
  BIND & AD
  POWERDNS
  3proxy
  eGroupWare
  GLPI
  SugarForge CRM
  Bacula
  Mysql - базовое описание
  Asterisk IP PBX
  Samba & CUPS & AD & ACL
  SMSTools 3
  Samba+ NT ACL
  phpmyadmin
  1С:Предприятие 8.1
  PurefFTPd
  qemu network
  AimSniff
  comms/scmxx
  Zoneminder
  Openfire Jabber Server
  Zoneminder 2
  Принт-Сервер Samba+LPD & AD
  Кластер OpenLDAP 2.4
  Lightsquid
  Установка Zabbix-1.6
  Установка net2ftp
  VSFTPD + AD && MySQL
  Network UPS Tools
  mpd5 L2TP client
  Apache 2.2 as a proxy
  ejabberd+mysql+icq
  HotSpot
  Установка и использование Zenoss на FreeBSD 7.2
  mysql-proxy
  DNS zones
  squid+sams+sqstat
  transmission-daemon
  Squid+AD (group access)
  SysAid Server
  MySQL Master+Master
  proftpd file auth&quota
  usb_modeswitch
  NSDadmin
  iperf Тест скорости между хостами
  Простой факс-сервер mgetty+sendfax
  SQUID-MultiCpuSystem
  vsftpd + system users
  Syslog server
  Температура в серверной
  Nagios+Digitemp
  Avast! FreeBSD
  Настройка git+gitosis
  Firefox SyncServer
  Scan+Print server FreeBSD 9
  proftpd,pgsql,web
  почтовые системы
  Шелезяки
  Мелочи
  Файловая система
  WWW
  Security
  system
  Games Servers
  X11
  Programming
Очумелые Ручки
OpenBSD
Cisco


www.lissyara.su —> статьи —> FreeBSD —> программы —> vsftpd

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

Автор: Andy.


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

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

Далее, собираем программу
     
cd /usr/ports/ftp/vsftpd/&& make install clean

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

#возможность работы в автономном режиме
listen=YES
#позволяем анонимных пользователей, учетки anonymous и ftp являются синонимами
anonymous_enable=YES
#разрешаем локальных пользователей (локальные пользователи - это те, которые
#зарегестрированы в системе, то есть на них есть учетные записи)
local_enable=YES
#разрешаем любые формы записи на FTP сервер
write_enable=YES
#разрешаем анонимным пользователям upload
anon_upload_enable=YES
#разрешаем анонимным пользователям создавать директории
anon_mkdir_write_enable=YES
#разрешаем анонимным пользователям переименовывать файлы
anon_other_write_enable=YES
#у анонимов пароль спрашивать не будем
no_anon_password=YES
#директория нашей помойки (если пользователь присутствует) 
anon_root=/home/ftp/
#разрешаем соединение по 20 порту
connect_from_port_20=YES
#поддержка древних FTP клиентов
async_abor_enable=YES
#используем родное время, а не GMT
use_localtime=YES
#небольшое приветствие
ftpd_banner=Hello! We come in peace!
#возможность работы как фоновый процесс
background=YES

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

chown root ~ftp


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

#директория файловой помойки (для существующей учетной записи)
local_root=/home/lissyara
#непривелегированный пользователь (так советовали делать в документации, оступать
#не стал) 
nopriv_user=lissyara
#дабы пользователи не шлындали по директориям системы, запираем их в домашней
chroot_local_user=YES

Проверяем:

ftp 192.168.0.251
Connected to 192.168.0.251.
220 Welcome to blah FTP service.
Name (192.168.0.251:root): radiant
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> mkdir test
257 "/test" created
ftp> ls
229 Entering Extended Passive Mode (|||64303|)
150 Here comes the directory listing.
drwx------    2 1003     1003          512 May 28 00:47 test
226 Directory send OK.
ftp>

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

vsftpd_enable="YES" 

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

USER     COMMAND    PID   FD PROTO  LOCAL ADDRESS         FOREIGN ADDRESS
root     vsftpd     705   0  tcp4   *:21                  *:*

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

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

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

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

Сайт vsftpd - http://vsftpd.beasts.org
Сайт разработчика, который дорабатывает vsftpd - http://vsftpd.devnet.ru
Статья CoderInside на opennet - http://www.opennet.ru/base/net/vftpd_virtual.txt.html



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

оценить статью:

Trs, 2007-06-07 в 0:27:40

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

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

Andy, 2007-06-07 в 0:41:40

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

Gloomy, 2007-06-07 в 6:11:11

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

L@mer, 2007-06-07 в 7:49:48

>#ftp    stream    tcp    nowait    root    /usr/libexec/ftpd    ftpd -l
>#ftp    stream    tcp6    nowait    root    /usr/libexec/ftpd    ftpd -l
>#ftp    stream    tcp    nowait    root    /usr/libexec/lukemftpd    ftpd -l -r
>#ftp    stream    tcp6    nowait    root    /usr/libexec/lukemftpd    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

dikens3, 2007-06-07 в 9:14:42

ascii_upload_enable=YES
ascii_download_enable=YES

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

butcher, 2007-06-07 в 10:28:31

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).

Vovka, 2007-06-07 в 12:10:58

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

Trs, 2007-06-07 в 13:43:03

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

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

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

Кот, 2007-06-09 в 0:22:08

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

rootd, 2007-10-04 в 16:01:24

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

капрал, 2008-03-31 в 3:18:43

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

Roman, 2008-06-29 в 23:28:16

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

Pr0x1ndei, 2008-06-30 в 6:45:40

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

ононим, 2008-07-22 в 22:30:11

2Roman, 2008-06-29 в 23:28:16

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

re, 2008-12-09 в 14:31:49

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

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

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

Dmitry salt, 2009-04-01 в 10:50:43

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

Самурай, 2009-08-04 в 3:45:29

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

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

kaducey, 2009-08-16 в 19:44:40

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

ttys, 2010-02-26 в 8:44:19

в начале статьи забыл "/" добавить ))
chown root ~ftp
по моему надо так:
chown root ~/ftp

Genazb, 2012-04-17 в 11:15:39

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

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

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

art, 2012-06-20 в 17:02:30

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

...а как же, к примеру

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




Оставьте свой комментарий:
Ваше имя:   *
e-mail:  
жирный
наклонный
подчёркнутый
ссылка
цвет
Нынешний год:   *
 


Хостинг HOST-FOOD

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 и заиграла в зале музыка, так же был доступ по сети, общая шара куда можно заливать музыку, к
подписка

    вверх      
Статистика сайта
Сейчас на сайте находится: 21 чел.
За последние 30 мин было: 90 человек
За сегодня было
355 показов,
123 уникальных IP
 

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

© lissyara 2006-10-24 08:47 MSK

Время генерации страницы 0.0449 секунд
Из них PHP: 27%; SQL: 73%; Число SQL-запросов: 77 шт.
Исходный размер: 176250; Сжатая: 28421