FTP szerver Ubuntu alatt vsftpd-vel

Telepítsük a Vsftpd kiszolgálót:
sudo apt-get install vsftpd
Ez telepíti a vsftpd programot, valamint a függőségeit. Alapértelmezetten a /home/ftp/ mappa érhető el FTP-n keresztül, Anonymus felhasználóként.

Alapbeállítások

Nekünk most azonban ez nem jó, ezért letiltjuk a névtelen hozzáférést, és engedélyezzük a felhasználóknak, hogy FTP-n keresztül feltölthessenek fájlokat. A /etc/vsftpd.conf fájlt kell szerkeszteni:
sudo editor /etc/vsftpd.conf

# nincs anonymous bejelentkezes
anonymous_enable=NO
# helyi felhasznalok bejelentkezhetnek
local_enable=YES
# feltolthetnek a felhasznalok
write_enable=YES

Chroot

Ha azt szeretnénk, hogy az FTP felhasználóink csak a saját tárhelyüket érjék el (tehát ne lássák a másét), akkor a következőt kell beírni:

chroot_local_user=YES
chroot_list_enable=NO

Ha nem minden felhasználót szeretnénk a saját mappájában tartani, akkor:

chroot_local_user=NO
chroot_list_enable=YES

Majd hozzuk létre a /etc/vsftpd.chroot_list fájlt, amibe írjuk be azokat a felhasználókat, akik nem mehetnek ki a kezdőkönyvtárukból.

Ha mindenki kiléphet a kezdőkönyvtárából, kivéve:

chroot_local_user=YES
chroot_list_enable=YES

Majd hozzuk létre a /etc/vsftpd.chroot_list fájlt, amibe írjuk be azoknak a felhasználóknak a nevét, akik kiléphetnek a kezdőkönyvtárból.

Felhasználók tiltása, engedélyezése

Ha néhány felhasználónak nem szeretnénk engedélyezni az FTP elérést, akkor:

userlist_deny=YES
userlist_file=/etc/vsftpd.denied_users

Majd hozzuk létre a /etc/vsftpd.denied_users fájlt, ahová a kitiltott felhasználókat írhatjuk. Egy felhasználónevet egy sorba írjunk!
Ha csak néhány felhasználónak szeretnénk engedélyezni az FTP hozzáférést:

userlist_deny=NO
userlist_enable=YES
userlist_file=/etc/vsftpd.allowed_users

Majd a /etc/vsftpd.allowed_users fájlba írjuk be azokat a felhasználókat, akik elérheti az FTP szervert.

Azok a felhasználók akik ki vannak tiltva, egy hibaüzenetet kapnak, ha megpróbálnak csatlakozni.

TLS/SSL/FTPS

Megjegyzés: Erősen ajánlott a TLS/SSL használata, ha FTP szerverünk az interneten keresztül is elérhető!
A TLS engedélyezéséhez a következőknek kell a konfigurációs fájlban szerepelniük (néhány sor alapból nincs bent a fájlban, ezt írjuk be kézzel):

ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=YES
ssl_sslv3=YES

Nem szükséges tanúsítványt létrehozni, alapból az Ubuntu telepítésekor (pontosabban az openssl csomag telepítésekor) létrejövő „snake-oil” tanúsítványt fogja használni.

Egyéb beállítások

Még néhány beállítás, ha akarjuk módosítsuk, de alapvetően nem szükséges.

Látszódjanak a rejtett fájlok (azok, melyeknek neve . - pont - jellel kezdődik):

force_dot_files=YES

A fájl informícióinak elrejtése (tulajdonos, csoport)

hide_ids=YES

Hányan csatlakozhatnak egy IP címről

max_per_ip=5

Hány kliens lehet fent egyszerre a szerveren

max_clients=20

Beállítások alkalmazása

Mentsük el a konfigurációs fájlt, majd indítsuk újra a kiszolgálót:
sudo /etc/init.d/vsftpd restart

Tűzfall

Ha passzív módban nem tudsz csatlakozni, akkor meg kell határozni azokat a portokat az FTP szerveren, amiket ilyenkor használhat, majd ezeket kiengedni a tűzfalon (ezt a két sort a konfigurációs fájlba kell írni, majd ne felejtsük el újraindítani a szolgáltatást).

pasv_min_port=12000
pasv_max_port=12100

1 hozzászólás co.mments feed icon

  • 1. szota @ 2008. július 01., 10:21 (Permalink)

    szia,
    1. a leírás alapján sikerült beüzemelni egy FTPszervert 1 gondom van csak:
    hogyan oldható meg, hogy a felhasználó ne hagyhassa el a saját könyvtárát de oda tudjon feltölteni anyagot?
    Jelen leírás szerinti beállítások mellett feltöltéskor 550 hibakóddal kritikus hiba történik (FileZilla klienssel)

    2. csak mint érdekesség:(kezdő szerveresként) a netet böngészve megtaláltam a WEBMIN nevü admin felületet és érdekessége, hogy van hozzá vsftpd kliens, így akár grafikus felületről is kezelhető a szerver!

    [Válasz erre a hozzászólásra]

Szólj hozzá

XHTML: A következő tag-eket használhatod:: <a href="" title=""> <abbr title=""> <acronym title=""> <blockquote> <cite=""> <code> <em> <strong>