Народ, подскажите, как провильно поднять FTP на Ubuntu?
Что у меня и не получилось, прочитал много всего и везде поразному!
Что нужно: Для Анонимов доступ к FTP с возможностью заливки в Incoming.
Доступ по логину и паролю в отдельную папку, доступна только этому логину, с правами записи. (Если я понимаю верно, то настроить виртуальных пользователей)Что имею: Сервер Ubuntu 8.04 и vsftpd
конфиг vsftpd.conf
______________________________
listen=YES
#listen_ipv6=YES
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
#dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
#chown_uploads=YES
#chown_username=whoever
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
idle_session_timeout=600
data_connection_timeout=120
#nopriv_user=ftpsecure
#async_abor_enable=YES
#ascii_upload_enable=YES
#ascii_download_enable=YES
ftpd_banner=Welcome to FTP service".
#deny_email_enable=YES
#banned_email_file=/etc/vsftpd.banned_emails
#chroot_local_user=YES
#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd.chroot_list
#ls_recurse_enable=YES
secure_chroot_dir=/var/run/vsftpd
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
____________________________________
По началу заходить можно было анонимам и локальным польз. но запись работала только у локал. полз. и то в домашней папке.анонимы попадали в /home/ftp/
Мне кто-то подсказал, чтоб локал.полз. мог записывай в /home/ftp/ нужно сделать
chmod 777 /home/ftp/
После этого под анонимом не заходит вообще
ошибка при входе - 500 OOPS: vsftpd: refusing to run with writable anonymous rootПомогите, Уже неделю толку нет от меня... =)
Заранее благодарен за помощь!
С Уважением, Денис.
man vsftpd.confВсе четко расписано!
>man vsftpd.conf
>
>Все четко расписано!Четко, но я лично не пойму почему не пускает анонима и выдает
ошибка при входе - 500 OOPS: vsftpd: refusing to run with writable anonymous rootman vsftpd.conf - расписано какая функция для чего, но когда я начинаю что-то вкл. он перестает работать... По этому прошу алгоритм поднятия vsFTPd мне рассказать.
>Для Анонимов доступ к FTP с возможностью заливки в Incoming.
>анонимы попадали в /home/ftp/
>Мне кто-то подсказал, чтоб локал.полз. мог записывай в /home/ftp/ нужно сделать
>chmod 777 /home/ftp/Вы с логикой вообще дружите? Создайте в /home/ftp папку Incoming и поставьте на нее 777.
>>Для Анонимов доступ к FTP с возможностью заливки в Incoming.
>>анонимы попадали в /home/ftp/
>>Мне кто-то подсказал, чтоб локал.полз. мог записывай в /home/ftp/ нужно сделать
>>chmod 777 /home/ftp/
>
>Вы с логикой вообще дружите? Создайте в /home/ftp папку Incoming и поставьте
>на нее 777.Разумеется дружу, а как исправить это ситуацию, что аноним. не могут зайти на сервер после >>chmod 777 /home/ftp/ ошибку читайте выше.
Если меняю дом. папку все ок!
>Разумеется дружуНе очень заметно. Вы указали в задаче что анонимы заливать должны в подпапку Incoming, а после этого меняете права на корневую, вместо создания Incoming и установки 777 на нее. Если это по вашему логично, то наверное мы из разных миров.
>а как исправить это ситуацию, что аноним. не могут зайти на сервер после >>chmod 777 /home/ftp/ ошибку читайте выше.
Опять таки логичный ответ - вернуть права на место.
Между прочим это аж третий вопрос в /usr/share/doc/vsftpd/FAQ.gz, которое ставится вместе с пакетом vsftpd:
Q) Help! I'm getting the error message "refusing to run with writable anonymous
root".
A) vsftpd is protecting against dangerous configurations. The cause of this
message is usually dodgy ownership of the ftp home directory. The home
directory should NOT be owned by the ftp user itself. Neither should it
be writable by the ftp user. A way to fix this is:
chown root ~ftp; chmod -w ~ftpРекомендую почитать и остальную документацию в /usr/share/doc/vsftpd, найдете много полезного
>Рекомендую почитать и остальную документацию в /usr/share/doc/vsftpd, найдете много полезногоСпасибо... Я не знал, что сразу ставится документация и тем более, где она лежит. =)
>chmod 777 /home/ftp/
Этим я хотел, чтоб локальный пользователь мог заливать в эту папку.
В итоге он заливает, но аноним не заходит.
Как сделать, чтоб локальный пользователь мог заливать в /home/ftp/ и во все вложенные папки.
Но при этом аноним мог заходить и скачивать.
>Спасибо... Я не знал, что сразу ставится документация и тем более, где
>она лежит. =)dpkg -L имя_пакета
>Как сделать, чтоб локальный пользователь мог заливать в /home/ftp/ и во все
>вложенные папки.
>Но при этом аноним мог заходить и скачивать.Локальный пользователь должен уметь заходить и заливать в свою домашнюю папку, а не в корневую папку анонима. Вы хотите странного и именно для таких "потенциально опасных" случаев и добавили в vsftpd эту проверку. Можете поиграться с симлинками и группами, может получится нужное.
>>Как сделать, чтоб локальный пользователь мог заливать в /home/ftp/ и во все
>>вложенные папки.
>>Но при этом аноним мог заходить и скачивать.Я реализовал гораздо проще (ну как мне кажется),
каталог pub доступен для чтения анонимым пользователям
anon_root=/var/ftp/pub/
создал одного юзера - uploader1 в группе ftp_upload, shell - /sbin/nologin, с домашней папкой /var/ftp/
Так как в vsftpd система безопаности такова что права на папку /var/ftp/pub/ для пользователю ftp должны быть только чтение, то решено было так:
владельцем папки pub сделал root, права на запись дал группе ftp_upload, а всем другим чтение и соответственно теперь если надо добавить пользователя на аплоад то надо добавить его в группу ftp_upload