VSFTPD Ftp szerver telepítése Raspbian alatt 2. rész

Ahogy igértem folytatjuk a második résszel a cikket (VSFTPD Ftp szerver – 2.rész), amiben arra térünk ki, hogy miként lehet megoldani, hogy a VSFTPD szervert több felhasználó használhassa almappákra lebontott eléréssel.

Az előző cikkben már telepítettünk mindent, amire szükségünk lesz. Most azzal kell folytatnuk hogy létrehozunk egy mappát, ahol a felhasználói adatokat foglyuk tárolni.

mkdir /etc/vsftpd

Ha ezzel megvagyunk akkor adjunk hozzá a felhasználókat, akiknek elérést szeretnénk adni.

htpasswd -cd /etc/vsftpd/ftpd.passwd user1
htpasswd -cd /etc/vsftpd/ftpd.passwd user2 

A különböző kapcsolókat a „htpasswd”-hez megtaláljuk itt. Arra figyeljünk oda, hogy ezzel megoldással maximum csak 8 karakteres jelszavakat adhatunk meg.

Ha ezzel végeztünk, akkor nyissuk meg a PAM config fájlt.
nano /etc/pam.d/vsftpd

Majd adjuk hozzá a következő beállításokat:

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

Javaslom hogy a képen látható módon az eredeti beállításokat jelöljük meg. Én az eredeti beállítások elé két db „#”-et raktam. „Ctrl+XY+Enter”

 

VSFTPD Ftp szerver - 2.rész - PAM

Ha ezzel megvagyunk akkor hozzuk létre a felhasználói beállításokat tartalmazó mappát.

mkdir /etc/vsftpd_user_conf

Majd adjuk hozzá a felhasználói beállításokat felhasználónként.

nano /etc/vsftpd_user_conf/user1
nano /etc/vsftpd_user_conf/user2

Én személy szerint itt csak az „local” mappát adtam hozzá. Ami így néz ki:

local_root=/home/pi/ftp/Andy

Ha ezzel megvagyunk akkor: „Ctrl+XY+Enter”.

Már csak annyi van hátra, hogy módosítjuk a VSFTPD beállításait, és az eddigi beállításokkal összehangoljuk.

nano /etc/vsftpd.conf

A következő beállításokat adjuk hozzá:

    local_umask=022
    local_root=/home/pi/ftp
    guest_enable=YES
    virtual_use_local_privs=YES
    pam_service_name=vsftpd
    nopriv_user=vsftpd
    guest_username=vsftpd
    user_sub_token=$USER
    hide_ids=YES
    user_config_dir=/etc/vsftpd_user_conf

Ha ezzel megvagyunk akkor indítsuk újra a szervert.

 service vsftpd restart
Ezután jöhet a próba.
A már az előző cikkben taglalt módon állítsuk be valamelyik klienst, és csatlakozzunk a szerverhez.

Nálam látható, hogy egyből az „Andy” nevű felhasználó előre beállított „local_root” mappájában találtam magam. Tehát minden beállítás helyesen működik. Viszont a már az előző cikkben említett probléma, még mindig fent áll. Miszerint is a „local_root” mappán kívülre is kilátunk, ami nem is lenne baj mert beállítjuk a „chmod” paranccsal, hogy a felhasználónk csak a saját mappáját tudja módosítani, de ez így kevés nekünk ha több felhasználónk is van.

Ennek a kiküszöbölésére van egy kiváló megoldás, amit sajnos egy apró kis hack nélkül nem tudunk megvalósítani, mert vannak kompatiblitási problémák a vsftpd 2.3.5-ös verziójával. Lássuk is hogyan tovább.

nano /etc/apt/sources.list.d/wheezy-updates.cyconet.list

Ha ezzel megvagyunk, akkor másoljuk be a következő szöveget:

deb http://ftp.cyconet.org/debian wheezy-updates main non-free contrib

Mentsük el: „Ctrl+XY+Enter”.

Ezután telepítsük a frissítést.
aptitude update
aptitude install -t wheezy-updates debian-cyconet-archive-keyring vsftpd
aptitude update

Ha ezzel megvagyuk, akkor nyissuk meg a „vsftpd.conf” fájlt, és adjuk hozzá a következő két sort.

chroot_local_user=YES
allow_writeable_chroot=YES

Így mind a két esetben a felhasználók csak a saját mappájukra korlátozódnak, akkor is ha csak egy felhasználónk van, és akkor is ha több felhasználót hozunk létre. Teszteljük le, és ha mindent jól csináltunk, akkor a felhasználók csak a saját mappájukra korlátozódnak.

Remélem érthető volt a leírás és mindenkinek segítettem ezzel. A következő cikkben ami a cikksorozat 3. része lesz azt oldjuk meg, hogy az ftp szerverünket távolról is elérjük, ne csak otthonról lokálisan. Addig is jó tesztelést és sikeres konfigurálást kívánok mindenkinek!

Kosár
Scroll to Top