VSFTPD Ftp szerver – 1.rész – Azt, hogy miért kell Ftp szervert telepíteni gondolom nem kell megmagyarázni. Akár apache alá is lehet vele ftp elérést csinálni a „www” mappához, vagy használhatjuk otthoni fájlszerverként, vagy bármire ami távoli adatok elérésével kapcsolatos. A VSFTPD szerveralkalmazásra pedig azért esett a választásom, mert egyszerűen konfigurálható és ha már Wheezy akkor vagy VSFTPD vagy ProFTPD.
Lássuk, hogyan is kezdjünk az egésznek.
Első lépésben telepítsük fel a VSFTPD-t.
sudo apt-get install vsftpd sudo apt-get install apache2-utils sudo apt-get install vsftpd libpam-pwdfile sudo apt-get update
Ezeket a csomagokat kell feltepítenünk ahhoz, hogy a programot teljes mértékben be tudjuk konfigolni. Az „apache2-utils”-ra azért van szükség, mert ebben található a „htpasswd” alkalmazás amivel jelszófájlokat fogjuk készíteni. A „vsftpd libpam-pwdfile” csomag pedig engedélyezi a hozzáférést az „/etc/passwd/” fájlhoz.
Ha ezzel megvagyunk, akkor hozzunk létre egy „fake” shell-t, ami egy korlátozott hozzáférést biztosít a ftp felhasználóknak.
nano /etc/shells
Itt adjuk hozzá a fájlhoz ezt a sort: „/bin/false”. Ezzel létrehoztuk a „fake” shellt ami az elérést fogja biztosítani. Ctrl+XY+Enter.
Ha ezzel megvagyunk akkor hozzuk létre a mappát, amiben a későbbi felhasználók almappái lesznek.
sudo mkdir -p /home/pi/ftp
Nos ezután két választásunk is van. Abban az esetben ha csak magunknak konfigurálunk egy ftp szervert, akkor csak simán létrehozunk egy felhasználót, és mindig azzal lépünk be. Elérjük a tartalmainkat és kész. Abban az esetben ha több felhasználónak szeretnénk ftp elérést biztosítani, akkor más megközelítésből kicsit több munkával, de megoldható, hogy minden felhasználónak legyen egy almappája, amiben az adatait tárolhatja.
A cikksorozat első részében csak azzal fogunk megismerkedni, hogy miként tudjuk a VSFTPD-t egyszemélyben használni.
Ennek megfelelően lássuk azt a megoldást amikor, csak mi magunk egy felhasználóként akarjuk elérni az Ftp tárhelyünket.
Ebben az esetben a kezdő lépés az hogy létrehozunk egy felhasználót, akinek a „Home” mappáját arra a mappára definiáljuk amit az Ftp gyökérmappának hoztunk létre. Ha akarjuk hozzáadhatjuk valamilyen csoporthoz, gondolva a későbbi mappa jogosultságok struktúráltabb kiosztására. Értem ez alatt azt, hogy ha a csoportban több felhasználót is definiálunk, akkor nem kell majdan egyesével kiosztani a jogosultságokat, hanem elég csak a csoportnak.
useradd --home /home/pi/ftp/ --gid piftp --shell /bin/false vsftpd
Ez a parancs hozzáad a „/bin/false” héjhoz egy „vsftpd” nevű felhasználót, akinek a „home” mappája a „/home/pi/ftp” és a „piftp” csoporthoz tartozik.
A useradd parancsnak a paraméterei és kapcsolói itt megtalálhatóak.
Ha ezzel megvagyunk, akkor hozzunk létre egy jelszót a vsftpd felhasználónak.
sudo passwd vsftpd
Itt adjuk meg azt a jelszót, amit az eléréshez szeretnénk használni. Ha ezzel megvagyunk akkor már csak a VSFTPD konfigurációja van hátra.
Ehhez nyissuk meg a vsftpd.conf fájlt és alkalmazzuk a következő beállításokat.
nano /etc/vsftpd.conf
Beállítások:
anonymous_enable=NO local_enable=YES
Ezek a beállítások alapértelmezetten megtalálhatóak a „vsftpd.conf” fájlban, csak módosítani kell. Ctrl+XY+Enter. Plusz arra azért felhívnám mindenki figyelmét, hogy az eredeti „.conf” fájlt érdemes elmenteni egy olyan helyre ahol az meg lesz a későbbiekben is, mert sosem lehet tudni, hogy mit mókolunk össze.
Ezután ellenőrizzük vissza a beállításainkat.
nano /etc/group
A képen látható, hogy létrejött a „piftp” csoport benne a „vsftpd” felhasználóval.
nano /etc/passwd
Itt pedig látható, hogy a „bin/false” héjon létrejött a „vsftpd” felhasználó, aminek az elérési mappája a „/home/pi/ftp”.
nano /etc/shadow
Itt pedig látható, hogy sikerült-e a jelszvunkat hozzárendelni a felhasználónévhez.
Ha leellenőriztük, hogy a beállításaink megfelelőek-e, akkor indítsuk újra a vsftpd szervert a következő paranccsal:
service vsftpd restart
Ezután nincs más dolgunk mint letesztelni azt, hogy valóban elérjük-e az ftp szerverünket. Ehhez a legegyszerűbb és leggyorsabb windowsos ftp kliens benne van a „Total Commander”-ben.
A képen látható módon, katt a pirossal bekarikázott ikonra. Azután a felugró ablakban a jobb oldalon található „Új kapcsolat…” feliratú gombra kattinva megjelenik a fenti képen látható beállítási ablak. Itt adjuk meg a kapcsolat nevének amit akarunk, a vas IP címét, felhasználónévnek a „vsftpd”-t amennyiben ezen a néven hoztuk létre a felhasználónkat, és persze a jelszavunkat. Katt az „OK”-ra és már csatlakoztunk is.
Abban az esetben ha a Total Commander nincs a gépünkön, akkor a böngészőnk címsorába beírjuk a vas ip címét a következő formátumban: „ftp://192.168.0.210/”. Megadjuk a felhasználónevünket és jelszavunkat és meg is jelenik a tartalom.
Ennek a megoldásnak az a baja, hogy vissza tudunk lépni egészen a linux gyökérmappákig. Nos hiába nincs jogosultságunk a fájlok törlésére vagy szerkesztésére, de ahogy a következő képen látszik az már bőven elég ha az egyik mappát letölti valaki, és látja a beállításainkat. Ez nem zavaró abban az esetben, ha csak egyedül használjuk az ftp szervert és nincs több felhasználó konfigurálva, és nem kell félteni senki mástól a beállításainkat.
Éppen ezért ennek a problémának az orvosolására, csak a következő cikkben fogok kitértni. Remélem annak akinek csak egy ilyen egyszerű otthoni ftp szerver konfiguráció kellett amit az előbb bemutattam, annak tudtam segíteni.