Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: nastavení VSFTPD [vyřešeno]  (Přečteno 5511 krát)

Welblaud

  • Aktivní člen
  • *
  • Příspěvků: 190
nastavení VSFTPD [vyřešeno]
« kdy: 01 Července 2014, 08:29:19 »
Ahoj všem,

tak tohle mi hlava nebere. Na virtuálu se mi daří naprosto v pohodě nastavit anonymní ftp. Jakmile chci zprovoznit ftp jinak, nikam to nevede. Rád bych měl server, kam se bude hlásit jeden univerzální uživatel ftp, a to v režimu chroot, nikam nepoleze, žádné vyšší adresáře nevypíše, zapisovat nemůže. Případně pak vytvářet uživatele virtuální (tuhle vyšší dívčí zatím asi můžu nechat stranou). Důležitý požadavek je ten, aby šlo na server přistupovat z prohlížeče.

Už když nastavím podle základních instrukcí:

Kód: [Vybrat]
listen_enable=YES
anonymous_enable=NO
write_enable=NO
connect_from_port_20=YES
chroot_local_user=YES

… což by podle všeho prostě mělo chodit jako základ, nepřihlásím se. Přihlásím se pouze v secure režimu (sftp) přes filezillu, navíc můžu lézt všude po systému. Když vytvořím nějakého ukázkového uživatele, přidám ho do skupiny ftp, pro sichr mu home nastavím právě do svojí ftp složky, kterou mu zároveň i přivlastním, přihlásím se opět přes sftp režim ve filezille, chrootne mě to správně, ale opět můžu lézt všude a vypisovat všechny adresáře. Tady mě udivilo, že to jde pouze v režimu Sftp, přičemž zabezpečení jsem v konfiguráku vůbec zatím nechtěl řešit. Zkoušel jsem používat i chroot_list, a to při paměti na možnost, že jím zahrnuju i vylučuju uživatele z chrootu, ale pořád nic.

Firewall vypnutý. Složka ftp umístěná v mém vlastním /home, práva má onoho fiktivního uživatele (user:user), ten je i ve skupině ftp.

Neví někdo? Rád pak poctivě pastnu konfiguráky, které budou chodit.  :)
« Poslední změna: 03 Července 2014, 07:27:46 od Welblaud »
Nu což, linux JE závislost, a ne že ne…

Welblaud

  • Aktivní člen
  • *
  • Příspěvků: 190
Re:nastavení VSFTPD
« Odpověď #1 kdy: 02 Července 2014, 08:07:29 »
Tak teď fakt nevím, v čem je vlastně bordel… Zkusil jsem s novou instalací naprosto od začátku:

konfigurák:
Kód: [Vybrat]
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
#passwd_chroot_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
#secure_chroot_dir=/var/run/vsftpd/empty
#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

Zakomentované možnosti jsem pro jistotu zkoušel taky, nic.

Cílovým adresářem je /home/ftp, přičemž onen adresář je v majetku uživatele transfer, skupiny ftpgroup (transfer je pro sichr i ve skupině ftp).

Samotný uživatel transfer má /home/ftp nastaven jako svoje home:
Kód: [Vybrat]
transfer:x:1001:1001::/home/ftp:/dev/null
Firewall neběží.

Při pokusu o přihlášení přes prohlížeč jen vyskakuje dialog k zadání hesla (zas a znovu). Při pokusu o přihlášení z FileZilly hlásí jak režim ftp (port 21), tak režim sftp (port 22) kritickou chybu, takže se nepřihlásím. ALE! přihlásím se pod svým vlastním adniním jménem/heslem na portu 22, pak jsem přihlášen, ale můžu lézt všude (možnost, že chroot u vsftpd zatím pořád nefunguje, teď vypouštím). Poohlížel jsem se ze zoufalosti už i po jiných ftp serverech, ale tam je konfigurace ještě složitější.

Přitom cíl je skromný  ;D, a to mít jednu mnou určenou složku, do které budu do podsložek pouštět virtuální uživatele. Sakra práce… Chápal bych to, kdybych měl nějak sbastlený systém, ale zkouším na naprosto čisté instalaci podle základních návodů. Tudíž jsou blbě buď návody, nebo je to zabugovaná věc, kterou nikdo moc neřeší (možnost, že jsem blbej já, zatím neberu v úvahu).
« Poslední změna: 02 Července 2014, 08:09:13 od Welblaud »
Nu což, linux JE závislost, a ne že ne…

Standa99

  • Host
Re:nastavení VSFTPD
« Odpověď #2 kdy: 02 Července 2014, 08:49:00 »
Osobně provozuju ProFTPD, ale jukni na nějaké videa  .

Welblaud

  • Aktivní člen
  • *
  • Příspěvků: 190
Re:nastavení VSFTPD
« Odpověď #3 kdy: 02 Července 2014, 10:39:39 »
Díky, pěkně instruktážní bylo tohle:


Bohužel, pořád stejná písnička. Když to zkouším přes defaultního uživatele, jediná reakce, kterou z toho dostanu, je nabídka k přijetí nového klíče, když to zkusím přes port 22, spojení je ale stejně odmítnuto (FileZilla stále hlásí kritickou chybu).

A pořád stejně: nový install vsftpd, ufw vypnuto, zkoušel jsem i přidat pravidlo přes tradiční IPtables.

Vlastně jediné, co šlo, byl vstup do /srv/ftp uživatelem ftp, když jsem nechal povoleného pouze anonymous. Celé vsftpd mi zatím bylo k velkému dobru pouze pro anonymní stahování :D

 ::)
Nu což, linux JE závislost, a ne že ne…

Lamin

  • Návštěvník
  • Příspěvků: 64
    • Lamin's web
Re:nastavení VSFTPD
« Odpověď #4 kdy: 02 Července 2014, 13:19:25 »
connect_from_port_20=YES

A zkoušel jsi se spojit přes port 20?

Welblaud

  • Aktivní člen
  • *
  • Příspěvků: 190
Re:nastavení VSFTPD
« Odpověď #5 kdy: 02 Července 2014, 14:08:43 »
To se přiznám, že nezkoušel, jednoduše proto, že mám zato, že ta volba souvisí s klasickým scénářem, kdy se na portu 21 otevírá sezení a data tečou před port 20.
Nu což, linux JE závislost, a ne že ne…

Standa99

  • Host
Re:nastavení VSFTPD
« Odpověď #6 kdy: 02 Července 2014, 16:39:45 »
Myslím, že bys v té pidi konfuguraci měl mít i listen_port, na kterém má naslouchat.

P.S. Schválně jsem si zkusil ve virtuálu nainstalovat VSFTPD a s defaultní konfigurací + lokálním userem to jelo na první šup. Zkusil jsem chroot, tam mi vyskočila chyba "500 OOPS: vsftpd: refusing to run with writable root inside chroot()" a k tomu jsem našel, že stačí přidat do konfiguráku "allow_writeable_chroot=YES", potom už jsem s adresáře nahoru nevyskočil.

Welblaud

  • Aktivní člen
  • *
  • Příspěvků: 190
Re:nastavení VSFTPD
« Odpověď #7 kdy: 02 Července 2014, 18:22:01 »
Díky, ten parametr allow writeable chroot, zdá se, pomáhá. Zatím se ale přihlásím jen já jako admin, jiného usera to pořád odmítá. Nevím, čím to může být. Práva na složce má, složku má přiřazenou jako home, přihlášení ale pořád nejde. Budu bádat.
Nu což, linux JE závislost, a ne že ne…

Welblaud

  • Aktivní člen
  • *
  • Příspěvků: 190
Re:nastavení VSFTPD
« Odpověď #8 kdy: 02 Července 2014, 20:26:04 »
Větší část vyřešena! Veliké díky. Když to rozchodím celé, dám sem návod.

Velmi důležitá volba je tedy:
Kód: [Vybrat]
allow_writeable_chroot=YES
a pak
Kód: [Vybrat]
pam_service_name=ftp (defaultní je vsftpd).
Obojí doporučení pochází z doby vydání Ubuntu 12.04, kdy se objevily problémy právě s vsftpd a uživatelům chvíli trvalo, než kompatibilitu vyřešili (proč to je  nutné a jak a proč si Ubuntu s vsftpd v drobnostech nerozumí, nevím).

http://askubuntu.com/questions/128180/vsftpd-stopped-working-after-update#_=_
Nu což, linux JE závislost, a ne že ne…

Welblaud

  • Aktivní člen
  • *
  • Příspěvků: 190
Re:nastavení VSFTPD
« Odpověď #9 kdy: 03 Července 2014, 07:25:43 »
Takže, zatím tedy funguje bez chyby:

Kód: [Vybrat]
listen=YES
anonymous_enable=NO
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
chroot_local_user=YES
allow_writeable_chroot=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=ftp

Myslím, že dirmessage by šlo taky vynechat podobně jako logování (xferlog). Zajímavé je, že když zakomentuju to jméno PAM, nelze se přihlásit. Jediný, kdo se pak přihlásí, jsem já sám (jakožto admin asi). Nevím, jestli to nemá co do činění se zařazením do skupin… ale asi už v tom nebudu šťourat. Později zkusím virtuální uživatele.
Nu což, linux JE závislost, a ne že ne…

Dano V

  • Stálý člen
  • **
  • Příspěvků: 990
Re:nastavení VSFTPD [vyřešeno]
« Odpověď #10 kdy: 03 Července 2014, 18:36:41 »
ešte sa pohraj s chroot
do /etc/vsftpd.chroot_list dáš užívateľa ktorému chceš povoliť prístup
Už to je dávno čo som to riešil, tak to ber s rezervou ;)
edit: treba do konfigu potom vložiť riadky s
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
« Poslední změna: 03 Července 2014, 18:39:58 od Dano V »
U12.04 do 04.2017  K3.2.0-60
...Ne vždycky spolu budeme souhlasit, ale to není důvod k neslušnému chování. Každý se občas může cítit zklamaný, ale je vždy potřeba se chovat tak, aby se zklamání neproměnilo v osobní útok. Je nutné si uvědomit, že v komunitě, kde panuje napětí a stres, se toho moc neudělá... ;)
http://www.ubuntu.cz/komunita/pravidla

 

Provoz zaštiťuje spolek OpenAlt.