Házi FTP kiszolgáló VSFTPd-vel

2009.10.06. | 4 hozzászólás | Kategória: Linux

A család többsége nálunk Ubuntu-n él, nekem meg eljött az idő, hogy egy mindenkinek érthető, gyors és stabil filemegosztást hozzak létre itthonra. A követelmény adott: SOHO környezet, titkosítás nélküli FTP, gyorsaság, stabilitás, userenkénti egyedi beállítások és lehetőség az egyedi tartalom kiszolgálására.

Szeretném kihangsúlyozni, hogy nem teljesen szájbarágós útmutató, hanem feltételezek némi alapképzettséget (telepítés, /etc könyvtárismeret, szerverek alapismerete, ftp alapismeret, stb). Pont ezért nem is feltétlen Ubuntu specifikus a leírás, hanem átültethető más Linux distrókra is. Azoknak szánom akik abban a helyzetben voltak mint én, hogy már csak egy kis apró lökés, segítség kell, hogy meglegyen a tökéletes konfigjuk.

Mivel túl sok időt nem akarok egy ilyen egyszerű rendszer felépítésére fordítani, már ami a tanulást illeti sem, kézenfekvőnek bizonyult a VSFTPd tudásom mélyítése.

Vágjunk bele:

Először is telepítjük lehetőleg a legfrissebb verziót. Majd elővesszük a vsftpd.conf konfigurációs filet -ami nekem az /etc -ben van- és elkezdjük felvemmi bele a következő értékeket:

A file beállításai a man vsftpd.conf -ban is megtalálhatóak.

FIGYELJÜNK RÁ HOGY A kulcs=érték PÁROK KÖZTI EGYENLŐSÉG JEL KÖZÖTT NEM SZEREPELHET SZÓKÖZ!

Mivel én standalone futtatom a szervert, ezért figyelőállásba teszem:

listen=yes

Irányított hozzáférést akarok csak, semmi anonymous kapcsolódást nem engedek meg:

anonymous_enable=no

A szerveren létrehozzott usereimet használom, mivel kihasználom majd a home könyvtáraikat:

local_enable=yes

Ezeket a usereket a home könytáraikba zárom: (vagyis inkább a /etc/passwd fileban megadott könyvtáraikba)

passwd_chroot_enable=no

Alapértelmezetten nincs írási joga senkinek:

write_enable=no

Én speciel nem rejtem el a fileok listájában a tulajdonosok id-it:

hide_ids=no

Felhasználó lista alapján engedélyezem a belépést:

userlist_enable=yes

Ez a felhasználói lista azokat az embereket tartalmazza akik beléphetnek:

userlist_deny=no

A felhasználói lista ez a file legyen: (ebben minden felhasználót csak szimplán egy új sorba írunk és kész is a lista)

userlist_file=/etc/vsftpd.user_list

A felhasználókat bezárjuk az otthonukba:

chroot_local_user=yes

Lesz egy listánk azokról akiket mégsem zárunk be a könyvtáraikba: (és őket a /etc/vsftpd.chroot_list fileban adjuk meg)

chroot_list_enable=yes

Ebben a könyvtárban fogjuk létrehozni minden usernek a saját testreszabását tartalmazó fileját: (pl /etc/vsftpd_user_con/ikon az ikon nevű felhasználónak, akinek itt megadjuk egy write_enable=yes -el, hogy ő bizony feltölthet)

user_config_dir=/etc/vsftpd_user_conf

Beállítjuk a maximális egyidejű felhasználó számot:

max_clients=50

és az egy gépről bejelentkezők maximális számát:

max_per_ip=10

Érdemes logot is beállítani, így az esetleges hibákat mindíg hamar tudjuk orvosolni:

xferlog_enable=yes
dual_log_enable=yes

A beállításokkal megvolnánk, de most jön egy fogós kérdés: ha máshol vannak a megosztandó fileok, mint a userek home könyvtárai, akkor azokat hogyan érik el? Főleg a bezártság miatt még symlinkezni sem tudunk. Erre jön segítségül -megfelelően beállított linux jogosultságok esetén- a mount –bind parancs. Tulajdonképpen egy könyvtárat egy másik helyre is felmountolhatunk vele és így teljes értékű eléréssé válik, nem úgy a symlink. Ahhoz pedig, hogy bootkor is megőrizzük ezeket a mountokat, nyugodtan tegyük bele őket az /etc/fstab -ba, például így:

/mnt/examplemount/olddir  /somewhere/newdir   auto   bind   0 0
Szólj hozzzá Trackback 2769 olvasás, 2 ma

Kapcsolódó írások

Hozzászólások követése

4 hozzászólás

  1. azaki

    wine hfs

  2. vladi

    Én Linux szerver és kliens otthoni környezetben inkább nfs-t használok. Bár okozott már meglepetést Ubuntu szerver és Fedora desktop párossal. :)

  3. Ikon

    Az NFS-t is próbáltam de ott baromi nehéz a GID és UID párok összehozása, tulajdonképpen csak a hajamat téptem, és nem is volt valami gyors.

  4. charlie

    Ikon: sok kapcsolat esetén NFS megeszi a gépet reggelire, a sok I/O miatt kérés miatt

Szólj hozzá

Használható HTML tagek: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">

A hozzászólás elküldésével elfogadod az oldal felhasználási feltételeit!

Értesítés beállítása hozzászólás nélkül