Első lépés – Telepítés
Második lépés – Konfiguráció
Harmadik lépés – Hozzon létre felhasználókat
Negyedik lépés – TLS támogatás
A Pure-FTPd egy gyors és könnyű FTP-kiszolgáló, amely a biztonságot szem előtt tartva készült. Ebben az oktatóanyagban megmutatom, hogyan telepítheti és használhatja a Pure FTP-t 4 egyszerű lépésben. Ez az útmutató elmagyarázza, hogyan kell a Pure FTPd-t telepíteni a Debian 9 rendszerre.
Első lépés – Telepítés
A Pure-FTPd a Debian stabil tárolójában található, így nincs szükség további lerakat hozzáadására a rendszerhez.
Futtassa a következő parancsot root jogosultságokkal:
apt install -y pure-ftpd-common pure-ftpd
Második lépés – Konfiguráció
Az alkalmazás viselkedésének megváltoztatására számos lehetőség közül választhat. Ezeket a beállításokat alkalmazhatjuk a Pure-FTPd démonjára az indításkor, vagy tartóssá tehetjük őket a szükséges fájlok létrehozásával a confkönyvtárban.
Szeretnénk:
- Virtuális felhasználók létrehozása.
- Hozzon létre automatikusan saját könyvtárakat a felhasználók számára.
- Korlátozza (
chroot) a felhasználókat, hogy csak a saját kezdőkönyvtárukhoz férhessenek hozzá.
Engedélyezze a Pure-FTPd adatbázisát, és tiltsa le a PAM és Unix hitelesítést a virtuális felhasználók engedélyezéséhez:
ln -s /etc/pure-ftpd/conf/PureDB /etc/pure-ftpd/auth/50pure
echo no > /etc/pure-ftpd/conf/PAMAuthentication
echo no > /etc/pure-ftpd/conf/UnixAuthentication
Állítsa be a Pure-FTPd-t úgy, hogy az első bejelentkezéskor saját könyvtárakat hozzon létre a felhasználók számára:
echo "yes" > /etc/pure-ftpd/conf/CreateHomeDir
Chroot mindenkit.
echo "yes" > /etc/pure-ftpd/conf/ChrootEveryone
Ha további lehetőségeket szeretne megtudni, keresse fel a hivatalos dokumentációs oldalt .
Harmadik lépés – Hozzon létre felhasználókat
A Pure-FTPd képes kezelni a virtuális felhasználókat, ami azt jelenti, hogy a Pure-FTPd adatbázisában vannak tárolva, és nem kapcsolódnak a Linux rendszer felhasználóihoz.
Annak érdekében, hogy a Pure-FTPd kezelje a virtuális felhasználók fájljait, létre kell hoznunk egy Linux-felhasználót és egy csoportot, amelyhez minden virtuális felhasználó társítva lesz. Minden virtuális felhasználó használhatja ugyanazt a rendszerfelhasználót és -csoportot, amíg chroot alatt van.
Futtassa a következő parancsokat a rendszerfelhasználó és -csoport létrehozásához:
groupadd ftpusr
useradd -g ftpusr -d /dev/null -s /etc ftpusr
Megjegyzés : Nem akarjuk, hogy ez a felhasználó saját könyvtárral vagy bejelentkezési képességgel rendelkezzen.
Hozza létre FTP gyökérkönyvtárunkat:
mkdir /home/FTP
Hozzon létre egy virtuális felhasználót a Pure-FTPd-ben:
pure-pw useradd alex -u ftpusr -g ftpusr -d /home/FTP/alex
Hozzáadtuk az első virtuális felhasználónkat ( alex), és társítottuk a rendszerfelhasználóval/csoporttal ( ftpusr). Minden fájl, amellyel ír, a rendszer alextulajdonosa lesz ftpusr.
Frissítse a Pure-FTPd adatbázisát:
pure-pw mkdb
Ellenőrizze a felhasználó adatait:
pure-pw show alex
Login : alex
Password : <encrypted password>
UID : 1000 (ftpusr)
GID : 1000 (ftpusr)
Directory : /home/FTP/alex/./
Full name :
Download bandwidth : 0 Kb (unlimited)
Upload bandwidth : 0 Kb (unlimited)
Max files : 0 (unlimited)
Max size : 0 Mb (unlimited)
Ratio : 0:0 (unlimited:unlimited)
Allowed local IPs :
Denied local IPs :
Allowed client IPs :
Denied client IPs :
Time restrictions : 0000-0000 (unlimited)
Max sim sessions : 0 (unlimited)
Az élet megkönnyítése érdekében használja a következő szkriptet FTP-fiókok hozzáadásához:
echo -e '#!/bin/bash\nread -p "Enter UserName: " usrname\npure-pw useradd $usrname -u ftpusr -g ftpusr -d /home/FTP/$usrname && pure-pw mkdb' > /usr/sbin/ftp-createacc
chmod u+x /usr/sbin/ftp-createacc
Az FTP-fiókok létrehozása most egyszerű:
ftp-createacc
Enter UserName: mike
Password:
Enter it again:
Negyedik lépés – TLS támogatás
Először telepítenünk kell az OpenSSL-t.
apt install -y openssl
Kényszerítse a Pure-FTPd-t a TLS használatára, vagy választhatóvá is tehetjük, ami azt jelenti, hogy a nem biztonságos és a TLS kapcsolatok is elfogadhatók
# force TLS
echo 2 > /etc/pure-ftpd/conf/TLS
# insecure + TLS
echo 1 > /etc/pure-ftpd/conf/TLS
Hozzon létre egy könyvtárat a kulcsaink tárolására.
mkdir -p /etc/ssl/pure-ftpd
Hozzon létre egy csomagkulcsot (privát kulcs és nyilvános kulcs).
openssl req -x509 -nodes -days 730 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem
Indítsa újra a pure-ftpddémont.
systemctl restart pure-ftpd
Ha tűzfal van telepítve a rendszerére, vagy a kiszolgáló NAT mögött van, meg kell határoznia a passzív portokat a Pure-FTPd-ben, és meg kell nyitnia ezeket a portokat a tűzfalon, különben a következőhöz hasonló hibákat fog kapni:
Server sent passive reply with unroutable address. Passive mode failed.
Failed to retrieve directory listing.
500 I won't open a connection to 192.168.1.4 (only to 10.10.10.10).
Passzív portok beállítása a Pure-FTPd-ben:
echo "40110 42210" > /etc/pure-ftpd/conf/PassivePortRange
Indítsa pure-ftpdújra a módosítás alkalmazásához.
systemctl restart pure-ftpd
A tűzfalban nyissa meg a bejövő portok tartományát 40110 és 42210 között , TCP protokoll.
Az FTP természeténél fogva nem biztonságos, de gyors és egyszerű a beállítása is. A biztonságosabb megoldás érdekében használjon SFTP-t.