Пример Конфигурационного Файла vsftpd.conf

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

anonymous_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
anon_world_readable_only=NO

local_enable=YES
write_enable=YES

local_umask=0133

file_open_mode=0777

force_dot_files=YES

listen=YES
listen_port=10841
#connect_from_port_20=YES

dirmessage_enable=YES

xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
log_ftp_protocol=NO
syslog_enable=YES

idle_session_timeout=600
data_connection_timeout=300

nopriv_user=ftp

#ascii_upload_enable=YES
#ascii_download_enable=YES

ftpd_banner="Welcome to my FTP."

pam_service_name=vsftpd

chroot_local_user=YES
chroot_list_enable=YES

chroot_list_file=/usr/local/etc/vsftpd/chroot_list_file.vsftpd

userlist_file=/usr/local/etc/vsftpd/user_list_file.vsftpd
userlist_enable=YES
userlist_deny=NO
delay_failed_login=5

ssl_enable=NO

secure_chroot_dir=/usr/local/share/vsftpd/empty

max_clients=10
max_per_ip=4
max_login_fails=1

pasv_min_port=30000
pasv_max_port=30999

# For VirtuaL Users
guest_enable=YES
guest_username=virtftpd

session_support=YES
user_sub_token=$USER
local_root=$USER

allow_writeable_chroot=YES
chmod_enable=YES
virtual_use_local_privs=YES

# If using vsftpd in standalone mode, uncomment the next two lines:
background=YES

Все расписывать не буду ибо инфы море об этом. А вот тезисно, наиболее интересные пункты распишу.

Для того чтобы никто не ломился и не перебирал пароли к вашему фтп, вешаем его на любой свободный не стандартный порт + в фаерволе сервака блокируем стандартные порты.

listen=YES
listen_port=10841

Если к фтп только у вас доступ или всего у нескольких человек, в таком случае ограничите доступ к открытому порту фтп еще и по IP.
Если по IP нет возможности заблокировать, в таком случае максимально усложняем жизнь для перебора такими строками:

delay_failed_login=5
и
max_login_fails=1

Чрутим вирт пользователей в своих директориях. Данные о них записываем в локальные файлы(в зависимости от того каким пользователем запускается демон vsftpd, выставите соотв. права на эти файлы).

chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/usr/local/etc/vsftpd/vsftpd.chroot_list_file
userlist_file=/usr/local/etc/vsftpd/vsftpd.user_list_file
userlist_enable=YES
userlist_deny=NO

Также указываем какой пул портов использовать для передачи данных с сервера. Не забудьте в настройках фаервола сервера учесть эти порты.

pasv_min_port=30000
pasv_max_port=30999

На этом закруглюсь, описаний всех параметров делать не хочу, уже стопитцот раз писано переписано.

Всем удачи в настройке вашего фтп сервера.

Запись опубликована в рубрике: Заметки о FreeBSD.

Комментарии