Linux за българи: Форуми

Linux секция за начинаещи => Настройка на програми => Темата е започната от: starter в Aug 12, 2006, 02:09



Титла: Vsftpd проблем
Публикувано от: starter в Aug 12, 2006, 02:09
как да настроя vsftpd да работи с различни потребителски директорий ?
пробвах с chroot_list_enable , но не става.
достъп получава само  root , дори и да не фигурира в /etc/vsftpd.chroot_list (но ако /etc/vsftpd.chroot_list не съществува даже и  root  няма достъп)
това ми е /etc/vsftpd.conf

Примерен код

anonymous_enable=NO
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
#deny_email_enable=YES
#banned_email_file=/etc/vsftpd.banned_emails
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
ls_recurse_enable=YES
#listen=YES

бтв как точно трябва да изглежда /etc/vsftpd.chroot_list
аз само съм написал user-ите които искам да имат достъп през ftp


Титла: Vsftpd проблем
Публикувано от: karaman в Aug 12, 2006, 02:44
http://www.fedoraforum.org/forum/archive/index.php/t-49001.html

най-долу пише нещо за формата на home директорията в /etc/passwd
за да се осъществи chroot jail

Ето що годе превод:
==========
За vsftpd

в /etc/passwd - забележи точката след home пътя

username:x:100:100:/home/dir/path/./:/bin/bash

ако искате jail трябва да добавите "./" след home пътя
(Няма space между "точката" и "/" )
==========

дано стане





Титла: Vsftpd проблем
Публикувано от: starter в Aug 12, 2006, 10:27
нищо не става и по този начин.
с или без /./   root има пълен достъп, а другите users нямат никакъв.

бтв има ли нещо по-специфично при създаването на user-а, или
Примерен код
useradd -g users -d /home -p xxxx username

е достатъчно ?


Титла: Vsftpd проблем
Публикувано от: karaman в Aug 12, 2006, 12:09
ако добавиш

chroot_local_user=YES

променя ли се нещо?

не мога да си изтегля сорса за да го компилирам и да го тествам
нямам достъп до сайта му на тва фтпд  ???  :huh:

едит1:
сега го дърпам и докато не го настроя както искаш няма да пиша тука! и без туй си нямам работа!





Титла: Vsftpd проблем
Публикувано от: starter в Aug 12, 2006, 12:21
резултата пак е същия :(
530 Login incorrect

PS: когато  root  фигурира в  /etc/vsftpd.chroot_list  , е заключен в директорията си (без значение от /./), но ако не фигурира има достъп до цялата система.





Титла: Vsftpd проблем
Публикувано от: karaman в Aug 12, 2006, 12:50
при мен тръгна от раз

само това имам в conf-a

chroot_local_user=YES
ls_recurse_enable=YES
listen=YES
nopriv_user=vsftpd
secure_chroot_dir=/var/ftp/empty

Примерен код

# open localhost
Connected to localhost.
220 (vsFTPd 2.0.5)
Name (localhost:root): karaman
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
drwx------    2 1001     1001         4096 May 11 05:44 Desktop
226 Directory send OK.
ftp> cd /
250 Directory successfully changed.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
drwx------    2 1001     1001         4096 May 11 05:44 Desktop
226 Directory send OK.


и си баца :). vsftpd-2.0.5 от сайта го дръпнах официалния
стартирам го с:
/usr/sbin/vsftpd


Титла: Vsftpd проблем
Публикувано от: в Aug 12, 2006, 13:23
Пример за работещ конф.
Примерен код
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
async_abor_enable=NO
ftpd_banner=blablabla
ls_recurse_enable=YES
listen=YES
listen_port=21
dirlist_enable=YES
download_enable=YES
listen_address=x.x.x.x
userlist_enable=YES
userlist_file=/etc/vsftpd.user_list
userlist_deny=NO
passwd_chroot_enable=YES

За да не се разтягат локуми кое какво защо , вижда се кое е пуснато и кое не :)

В  vsftpd.user_list се пишат потребителите , които искаш да имат достъп
Пример :
Примерен код

sh-3.1$ cat /etc/vsftpd.user_list
test1

Примерен код

 sh-3.1$ cat /etc/passwd | grep test1
test1:x:1006:100::/home/./test:/bin/bash
:p


Титла: Vsftpd проблем
Публикувано от: starter в Aug 12, 2006, 17:15
пак не става.
единствената разлика, е че с конфа на slack_user (но с #listen=YES) ако user-a не е в /etc/vsftpd.user_list направо го отвязва. не му иска даже и парола. а ако е там след паролата: 530 Login incorrect


Титла: Vsftpd проблем
Публикувано от: Hapkoc в Aug 12, 2006, 18:26
Пусни logging и виж какво се случва.

Не знам дали slackware работи с PAM в момента или пък е пуснато нещо друго от рода на nss, ако има разгледай и там.

Малко на посоки стрелям.


Титла: Vsftpd проблем
Публикувано от: starter в Aug 12, 2006, 18:44
vsftpd ми логва само трансферите.
незнам как (и дали изобщо може) да го направя да логва и проблемите.

ps: интересното е, че server-a по никакъв начин не допуска други потребители. достъп има само   root





Титла: Vsftpd проблем
Публикувано от: starter в Aug 13, 2006, 01:50
проблема е решен. не е бил в настройките на server-а, а в user-а.
добавих му един shell   /bin/bash   (незнам дали това е добре) и вече всичко е наред.

благодаря на всички за оказаната помощ  :)

PS: сега създадения ми user има достъп и пез SSH. как да махна това ?





Титла: Vsftpd проблем
Публикувано от: karaman в Aug 13, 2006, 13:32
za user-a задай shell
/bin/false


Титла: Vsftpd проблем
Публикувано от: starter в Aug 13, 2006, 13:47
в /etc/shells имам само
Примерен код
/bin/bash
/bin/tcsh
/bin/csh
/bin/ash
/bin/ksh
/bin/zsh

/bin/false дали ще работи ?


Титла: Vsftpd проблем
Публикувано от: в Aug 13, 2006, 14:59
Цитат (Hapkoc @ Авг. 12 2006,19:26)
Пусни logging и виж какво се случва.

Не знам дали slackware работи с PAM в момента или пък е пуснато нещо друго от рода на nss, ако има разгледай и там.

Малко на посоки стрелям.

В Slackware вградена поддръжка на PAM  до ден днешен няма :)
Ако имаше някакви допълнителна информация по конфигуриране и/или secure-ване на сервиза или някой допълнителен необходим инструмент с дадената конфигурация , щях да спомена  :p


Титла: Vsftpd проблем
Публикувано от: в Aug 13, 2006, 15:09
/bin/false служи единствено , когато си добавил даден потребител на системата ти , но не искаш да му дадеш shell access до въпросната машина. По този начин ти забраняваш/отказваш shell login-а на всички shell изискващи протоколи (telnet,ssh и т.н).Съвсем друг е въпросът , че това по никакъв начин не може да спре потребителя да удостовери автентичността си по ssh , използвайки non-shell инструменти . (hint: whatis port forwarding )
:p


Титла: Vsftpd проблем
Публикувано от: starter в Aug 13, 2006, 15:30
/bin/false  спира достъпа и през FTP.
та как в крайна сметка да направя account-а да има FTP достъп, но да няма SSH достъп до машината ?





Титла: Vsftpd проблем
Публикувано от: never_mind в Aug 29, 2006, 10:57
Имам следния проблем с vsftp. Локално влизам като анонимен, но от друг комп неще. Проблема не е в firewall-a. Ето лог-а
Примерен код
Tue Aug 29 10:51:36 2006 [pid 18126] CONNECT: Client "asdasd"
Tue Aug 29 10:51:36 2006 [pid 18126] [ftp] OK LOGIN: Client "asdsad", anon password "<no_password>"
Tue Aug 29 10:51:36 2006 [pid 18126] [ftp] FAIL DOWNLOAD: Client "asdasd", "/", 0.00Kbyte/sec
и
conf-a
Примерен код

listen=YES
write_enable=YES
anon_upload_enable=YES
connect_from_port_20=NO
ascii_upload_enable=YES
ascii_download_enable=YES
ls_recurse_enable=YES
secure_chroot_dir=/var/run/vsftpd
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/vsftpd.pem
no_anon_password=yes
anon_umask=044
anon_root=/mnt/data
hide_ids=yes
dual_log_enable=yes

Идеи? Доколкото разбирам проблема идва при листването на директорията, за която всички имат права.