Содержание
FTP: vsftpd, установка и настройка
Отдельный конфиг для юзера
vsftpd.conf
user_config_dir = /etc/vsftpd/userconf''
/etc/vsftpd/userconf/john
Анонимные пользователи не могут переименовывать файлы
При попытке переименовать директорию или файл выдаётся ошибка "550 Permission Denied"
Добавляем опцию anon_other_write_enable
If set to YES, anonymous users will be permitted to perform write operations other than upload and create directory, such as deletion and renaming. This is generally not recommended but included for completeness.
Default: NO
425 Use PORT or PASV first.
The FTP server wants to know whether to use a port-mode channel or passive-mode data channel. Most clients will set this up for you transparently (and generally choose passive 'cos it's newer and better). To send a command to the server you use the 'quote' command. Hence if you type:
quote PASV
then it should all work nicely. As an aside, if you type 'remotehelp' then it should show you all the commands that the server can receive - all these can be used with the 'quote' command.
Исходные данные CentOS 6, vsftpd
Конфигурационный файл vsftpd (описание опций)
Опция | Значение по-умолчанию | Описание опции |
---|
http://www.davekb.com/browse_computer_tips:vsftpd_xferlog_format:txt
Установка vsftpd
yum install vsftpd chkconfig vsftpd on
https://wiki.debian.org/ru/vsftpd/EXAMPLE/VIRTUAL_USERS
anonymous_enable=NO # запретить вход анонимным пользователям local_enable=YES # разрешить доступ локальным учетным записям write_enable=YES # разрешить запись ftpd_banner=Battlecruiser operational # сообщение, которое выводится при коннекте
Сценарий #1 Локальные пользователи
1
Сценарий #2 Виртуальные пользователи
1
Усложняем настройку. SSL
Настройка iptables для vsftpd
# iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 20 -j ACCEPT # iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
запретить определённые ftp-директивы для юзера
via http://xsektorx.org/vsftpd
vsftpd.conf
user_config_dir=/etc/vsftpd/users
/etc/vsftpd/users/username
cmds_allowed=CDUP,CWD,FEAT,HELP,LIST,MDTM,MLSD,MLST,NLST,NOOP,PASS,PASV,PWD,QUIT,SIZE,STAT,USER,XCUP
Ошибки и их решение
500 OOPS: child died
seccomp_sandbox=NO in vsftpd.conf
http://serverfault.com/questions/574722/vsftp-error-500-oops-child-died
500 OOPS: priv_sock_get_cmd
500 Illegal PORT command
500 OOPS: vsftpd: refusing to run with writable root inside chroot()
500 OOPS: vsftpd: not configured for standalone
Добавить в конфиг
listen = YES
Не видно файлов начинающихся с точки
Добавить в конфиг
force_dot_files = YES
Баг в Ubuntu в виртуальной среде XEN
Ошибка при запуске service vsftpd start получаем сообщение 500 OOPS: munmap
Баг - https://bugs.launchpad.net/ubuntu/+source/vsftpd/+bug/1313450
Обсуждение
Обсуждение