Vsftpd – ftp-сервер, который расшифровывается как “ Very Secure FTP Daemon ”. Он является FTP-сервером для Unix-подобных систем, включая Linux. Распространяется по лицензии Public License GNU General и является очень популярным сервисом. В настоящее время поддерживает IPv6 и SSL. Vsftpd является FTP-сервером по умолчанию Ubuntu, CentOS, Fedora, NimbleX и RHEL Linux.

Vsftpd предлагает следующее: * виртуальные серверы и пользователи; * ограничение скорости обмена данными; * поддержка IPv6 и SSL;

Как заявлено на основном сайте, vsftpd считается одним из самых стабильных, безопасных и быстрых сервисов, в связи с этим его используют такие проекты как kernel.org, redhat.com, suse.com, gnu.org, wikiadmin.net и многие другие. Итак, давайте установим и настроим его:

Установка VSFTPD в FreeBSD

Установка из пакетов

pkg_add -r vsftpd

или из портов:

1
2
3
cd /usr/local/ports/ftp/vsftpd
make config
make install clean

Для того, чтобы сервер стартовал после перезагрузки системы, его необходимо прописать в /etc/rc.conf:

vsftpd_enable=“YES”

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

/usr/local/etc/rc.d/vsftpd start

Расположение файла конфигурации vsftpd в FreeBSD:

/usr/local/etc/vsftpd.conf

Перезагрузка сервиса после внесения изменений:

/usr/local/etc/rc.d/vsftpd restart

Конфигурация VSFTPD в FreeBSD

Рекомендации по конфигурационному файлу vsftpd:

Отключение анонимных пользователей:

anonymous_enable=NO

Если анонимный доступ разрешен, логично было бы и не запрашивать пароль:

no_anon_password=YES

Включение доступа локальных пользователей:

local_enable=YES

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

chroot_local_user=YES

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

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd.chroot_list

Ограничение количества соединений, чтобы не вызвать слишком большую нагрузку:

max_clients=10

Можно разрешить создание новых файлов и директорий командой:

write_enable=YES

В том числе и анонимным пользователям:

anon_mkdir_write_enable=YES

Загрузка новых файлов анонимными пользователями:

anon_upload_enable=YES

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

anon_max_rate=1024

Запрет на скачивание файлов с сервера:

download_enable=NO

Указание IP для работы на нем сервиса:

listen_address=10.0.0.1

Как настроить, чтобы vsftpd отображал скрытые файлы, у которых в начале названия стоит точка

По-умолчанию эта опция отключена. Вам нужно лишь добавить в конфигурацию следующую строчку:

force_dot_files=YES

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

Для этого в конфигурационный файл добавьте строчку:

idle_session_timeout=3600 (или просто раскомментируйте и поставьте нужное вам значение)

Ошибки VSFTPD * 500 OOPS: vsftpd: not configured for standalone

В конфиг добавьте:

listen=YES

краткий конфиг для CentOS 6

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
chroot_local_user=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
pasv_enable=Yes
pasv_max_port=10100
pasv_min_port=10090
listen_port=10021