ProFTPd + TLS Ubuntu 8.10 alatt

Ebben a leírásban bemutatom, hogyan telepíthetjük a ProFTPd FTP szervert TLS támogatással Ubuntu 8.10 (Intrepid Ibex) rendszerre. A TLS miatt az FTP szerver és kliensek között az adatok (és a jelszavak, stb.) titkosítva, biztonságosan utaznak majd.
A telepítést parancssorból fogjuk elvégezni (mivel szerverre nem kell grafikus felület).
Figyelem! Az FTPS és az SFTP nem ugyanaz! Előbbi a most bemutatott TLS/SSL módszerrel titkosított FTP kapcsolatot jelöli, míg utóbbi az SSH fájlátviteli szolgáltatása!
Telepítsük a ProFTPd és OpenSSL csomagokat

sudo apt-get install proftpd openssl -y

Telepítés közben a rendszer megkérdezi a Run proftpd kérdéssel, hogy a ProFTPd kiszolgálót milyen formában akarjuk futtatni, itt válasszuk a Standalone lehetőséget.

ProFTP telepítése Ubuntun
ProFTP telepítése Ubuntun

Ha kész a telepítés nyissuk meg szerkesztésre a ProFTPd beállító fájlját, hogy módosíthassuk:

sudo nano /etc/proftpd/proftpd.conf

Majd a következő sorokat keressük meg, és írjuk át arra, amit itt szerepel:

UseIPv6 off #IPv6 támogatás kikapcsolása, ha IPv6-ot használunk, legyen on
DefaultRoot ~ # töröljük csak a sor előtti # jelet, így a felhasználók nem léphetnek ki home mappájukból

A követező sort pedig írjuk a konfigurációs fájl végére:

ServerIdent on "FTP Server ready."

Ha tűzfal (router, stb) mögött van a szerver, akkor még az alábbi sorokat is módosítsuk:

PassivePorts 40000 44000 #töröljük a sor előtti # jelet, majd ezeket a portokat - a 21 mellett - forwaldoljuk be az Ubuntu szerverünk felé
MasqueradeAddress  1.2.3.4 #ide írjuk be publikus, internetes IP címünket

A kilépéshez nyomjunk CTRL+X-et, majd egy I (esetleg Y ha angol nyelvű) betűt a mentéshez.
Hozzunk létre egy mappát, ahol az SSL tanúsítványunkat fogjuk tárolni:

sudo mkdir /etc/proftpd/ssl

Majd magát a tanúsítványt is hozzuk létre

sudo openssl req -new -x509 -days 365 -nodes -out /etc/proftpd/ssl/proftpd.cert.pem -keyout /etc/proftpd/ssl/proftpd.key.pem

A tanúsítvány létrehozásakor pár kérdésre válaszolnunk kell a rendszer számára.

  • Country Name (2 letter code) [AU]: Ide országunk kétbetűs kódját írjuk (HU)
  • State or Province Name (full name) [Some-State]: Megye neve
  • Locality Name (eg, city) []: Város neve
  • Organization Name (eg, company) [Internet Widgits Pty Ltd]: Szervezet (cég) neve
  • Organizational Unit Name (eg, section) []: Szervezeten (cégen) belüli egység neve, pl. Informatika
  • Common Name (eg, YOUR name) []: Ide írjuk a szerverünk domain nevét (amivel az interneten keresztül elérjük), pl. sajatszerver.myip.hu
  • Email Address []: Email címünk

Most be kell állítani a ProFTPd-nek a most létrehozott tanúsítványt

sudo nano /etc/proftpd/proftpd.conf

Majd keressük meg a következő sort, és töröljük a sor előtti # jelet:

Include /etc/proftpd/tls.conf

Mentsük a fájlt, majd nyissuk meg szerkesztésre a /etc/proftpd/tls.conf fájlt

sudo nano /etc/proftpd/tls.conf

Ami a fájlban van azt nyugodtan kitörölhetjük, majd az alábbi beállítósokat másoljuk be:

<IfModule mod_tls.c>
TLSEngine                  on
TLSLog                     /var/log/proftpd/tls.log
TLSProtocol                SSLv23
TLSOptions                 NoCertRequest
TLSRSACertificateFile      /etc/proftpd/ssl/proftpd.cert.pem
TLSRSACertificateKeyFile   /etc/proftpd/ssl/proftpd.key.pem
TLSVerifyClient            off
TLSRequired                on
</IfModule>

Ha a TLSRequired sorban on van, akkor csak olyan FTP kliensek csatlakozhatnak a szerverhez, amik támogatják a titkosított FTP kapcsolatot. Ha sima FTP kapcsolatot is engedélyezni szeretnénk, akkor az on értéket írjuk át off értékre.
Majd indítsuk újra a ProFTPd szervert:

sudo /etc/init.d/proftpd restart

Most már csatlakozhatunk az FTP szerverre. Ne felejtsük el beállítani FTP kliensünkben, hogy a kapcsolat TLS/SSL titkosítást használ (megtalálhatjuk még FTPS, FTP over SSL, FTP explicit TLS/SSL néven is)!

14 thoughts on “ProFTPd + TLS Ubuntu 8.10 alatt

  1. Hello!
    Az lenne a kérésem, hogy írd le azt is, hogy a csatlakozáshoz /windows, totalcommander/ kombinációhoz hol talaálható a szükséges dll, vagy ha lehetséges oszd meg ezt az infót mindenkivel, hogy erre van szükség a problémamentes működéshez.

  2. Ez így rendben lenne, de hol tudom rávenni a proftp-t, hogy az alapértelmezett TLS/SSL csatornán (990) kommunikáljon?

  3. Sziasztok, sikerült a le írás, ezzel nem is volna gondom, de hogyan tudom a proftben beállítani azt, hogy egy másik mappát nyisson meg ne a pl marci mappát? csatlakozáskor? meglehet eggyáltalán?
    új ubuntu servert használom,
    emailem: humannoidboy@gmail.com
    ha esetleg nem tévednék vissza 🙂

  4. Sziasztok!
    Felraktam a webszerveremre a proftpd csomagot.
    A kérdésem az lenne, hogy hogy tudom beállítani azt, hogy ha csatlakozok rá, akkor egyből a /var/www könyvtár jöjjön be teljes jogosultsággal?

  5. Sziasztok.
    Ezt én is megcsináltam a leírás alapján de van egy problémám. Kapcsolódás közben ezt a hibaüzenetett kapom.
    Parancs: MLSD
    Hiba: Időtúllépés a kapcsolatban
    Hiba: A könyvtár lista lekérdezése nem sikerült
    Mi lehet a gond?

  6. Hát nem tudom én akármit csinálok sehogy se csatlakozik. forwardolva vannak a 21, 990, és a 443 as portok is. de semmi. a tanúsítványt beolvassa de időtúllépéssel kilép. De most nem nagyon értem hogy ftps csatlakozáskor melyik portot használja? Ha nem a 21-est akkor az ftpd conf fájlba kell módosítani valamit? Sima 21-es porton titkosítás nélkül csatlakozik, úgy nincs gond. A 990 portal való csatlakozást is próbáltam akkor még a szerverre se tud kapcsolatot kiépíteni, a 443-as portal csatlakozik, beolvassa a tanúsítványt, de időtúllépéssel megszakad a kapcsolat. Mi lehet a baj?

  7. Megoldottam a hibát. Leírom a megoldást, hát ha másnak is segítek ezzel.
    Az kimaradt a leírásban, hogy a proftpd beállításánál engedélyezni kell a TLS modult is, mert enélkül nem működik a titkosítás.
    Tehát a /etc/proftpd/modules.conf fájlban a LoadModule mod_tls.c sor előtt törölni kell a # jelet, majd mentés, és az proftpd újraindítása és működni fog a titkosított kapcsolat.

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük

Ez az oldal az Akismet szolgáltatást használja a spam csökkentésére. Ismerje meg a hozzászólás adatainak feldolgozását .