FTP szerver telepítése Linuxra (vsftpd)

Elég sok embernek lehet szüksége arra, hogy nagyobb mennyiségű fájlt másoljon át a számítógépéről egy másikra (akár az interneten keresztül is). Ennek persze több módja is van, de a legjobb megoldás egy FTP (File Transfer Protocol) szerver lehet, mivel ezt direkt fájlok mozgatására találták ki. (A DC is jó lenne erre a feladatra, de nem feltétlenül szerencsés személyes adatokat a nagyvilágnak megosztani, és az sem biztos, hogy egy DC hub beüzemelése egyszerűbb)

Nos mivel én (is) Linuxot használok, ezért keresgéltem egy picit, hogy melyik szerver is lenne a legjobb. Az elite gépén futó FTP szerver pureFTPd névre hallgat, és elég jó szolgálatot teljesít. Én azonban úgy gondoltam, hogy mégis inkább azt használom, ami az ftp://kernel.org alatt is van, ez pedig vsFTPd névre hallgat. Mindkét szerver tárolóból telepíthető, ezért nem jelent komoly kihívást.

Azt szeretném, ha a szerver a felhasználói adatokat egy fájlból szedné, ezért esett a választás a passwd fájl alapú hitelesítésre. Szükségünk van még egy célszerszámra, amivel a passwd fájlt szerkeszteni is tudjuk, ez pedig a htpasswd program, ami az apache utils része. Telepítsük akkor fel ezeket:

sudo apt-get install vsftpd libpam-pwdfile apache2-utils

Telepítés után a szerver azonnal el is indul, viszont jó lenne azért egy picit testre szabni, ezért állítsuk le:

sudo service vsftpd stop

Először is állítsuk be a beléptető rendszerünket. Nem szeretném azt a jelszót használni, ami root jogokat is adhat egy felhasználónak, ezért virtuális usereket fogok létrehozni, és ennek megfelelően állítom be a szervert. És mivel nem szeretnék publikus szervert sem készíteni, ezért az anonymous felhasználót sem akarom beengedni a gépemre.

Nézzük akkor a szerverhez tartozó PAM (Pluggable Authentication Module) beállításait. Nyissuk meg az /etc/pam.d/vsftpd fájlt:

sudo gedit /etc/pam.d/vsftpd

Majd cseréljük ki a fájlt tartalmát a következőre:

auth required pam_pwdfile.so pwdfile /etc/vsftpd/passwd
account required pam_permit.so

Majd hozzuk is létre a passwd fájlt és bele egy felhasználót:

sudo mkdir /etc/vsftpd
sudo htpasswd -c /etc/vsftpd/passwd bela

Adjuk meg Béla jelszavát (kétszer). Ha minden rendben van akkor ezt kapjuk: Adding password for user bela

Vehetünk fel még újabb felhasználókat, de akkor a -c kapcsolóra már nem lesz szükségünk.

sudo htpasswd /etc/vsftpd/passwd bela2

Ezek után a szerverünk beállítása következik. Nyissuk meg az /etc/vsftpd.conf fájlt:

sudo gedit /etc/vsftpd.conf

Majd a tartalmát cseréljük ki a következőre:

listen=YES
write_enable=YES
anonymous_enable=NO
local_enable=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd
pam_service_name=vsftpd
guest_enable=YES
guest_username=cyb
user_sub_token=$USER
local_root=/home/cyb/public/ftp/$USER
virtual_use_local_privs=YES

A beállításokról részletesebb leírás itt található.

Ezek után nincs más dolgunk mint elindítani...

sudo service vsftpd start

...majd kipróbálni az ftp szerverünket:

ftp localhost

A leírás főként azért készült, hogy ha később szükségem lesz rá tudjam hol keressem, de azért remélem másnak is hasznára válik.

Az itt található anyagok a digitális szabadság jegyében a forrás és az elérhetőség linkjének megjelölésével szabadon felhasználhatók, idézhetők. Jelen honlap üzemeltetői mindemellett fenntartják az itt elérhető tartalom összes szerzői jogát. [Kapcsolat]
© Elite Hub, 2002-2012 - A Drupal motor hajtja - Valid XHTML