[Megoldva]Biztonságos FTP környezet

Fórumok

Sziasztok!

Van egy szerverem, amin szeretnék az interneten keresztül FTP hozzáférést megvalósítani. Most jönnek a gondok, a szerveren website-ok ill. fontos adatok vannak, ezért olyan megoldást szeretnék hogy ezt az FTP szervert elkülönítsem. Gondolkodtam azon, hogy CHROOT környezetben hagyom, de nem igazán merem, vagy egy virtuális gépként futtatnám, de ez meg erőforrás igényes :(

Szerintetek melyik megoldás lenne a jobb (vevő vagyok mindenre)?

köszönöm

ez lemardt:

OS: debian 6
FTP: proftpd/pureftp

Hozzászólások

PureFTPD, minden FTP-t tudsz vele a saját home-jába chrootolni, futtathatod külön chrootban és tehetsz fel grsec-es kernelt. Ha már website-ok és PHP van, akkor én inkább azokon izgulnék.

Bizonyos feltételek megléte mellett működik csak, ezért konkrétumot nem tudok mondani. Ami kell hozzá: egy exploit a Pure-FTPdben + az hogy rootként fusson, vagy hogy legyen a rendszeren egy local root exploit.
A gond itt az, hogy ha magában a programban nincs hiba, akkor jól kezeli a hozzáféréseket, és amúgy sem tudsz kimenni a usereknek dedikált mappából. Ugyanígy root jogokat sem tudsz szerezni, ami azt jelenti, hogy az operációs rendszer által biztosított hozzáféréskezelés is megteszi.
Ezért írtam, hogy a chroot szerintem legfeljebb hamis biztonságérzetet tud nyújtani, némi overhead árán (a chrootban lévő cuccok .so-it ha jól tudom, mégegyszer be kell tölteni a memóriába, illetve a chroot konténereket külön, egyesével kell frissítgetni). Ha valódi biztonság kell, akkor legalább OS szintű virtualizációra van szükség. Szerintem.

Tegyük hozzá, hogy - szerintem - az igazi baj nem azzal van, hogy a gonosz emberek kitörtnek a chroot-ból vagy bármi ilyesmi. Az igazi baj ott van, hogy a mezei ftp abszolút nélkülöz mindenféle titkosítást, így a jelszavak ellopásához ideális terep. Ez ellen meg nem véd semmiféle szerveroldali mágia, a köztes részt _és_ a klienst kell(ene) biztonságossá tenni - és persze úgy is tartani.

Ezek miatt döntöttem úgy, hogy a cégnél hacsak lehet, mellőzzük az ftp-t, és eddig sikerült is más megoldásokat találni (fex, dropbox, scp, sftp), amik megszüntetik a problémák egy részét.

A kliensoldali biztonságot viszont továbbra se nagyon lehet garantálni, így szerintem a szerver oldalon se érdemes egy szintnél több energiát ölni bele. Azt, hogy kinek hol van ez a szint, mindenki döntse el maga :D

Mondjuk most a szerver bebiztosításáról volt szó, hogy olyan user ne tudjon garázdálkodni, aki már szerzett hozzáférést, de teljesen jogos és igaz, amit mondasz.
Igaz én csak magán célokra üzemeltetek rendszereket, de én sem engedek senkit FTP-t használni. Vagy WinSCP, ami szerintem van olyan kényelmes, mint a TC, vagy VPN + Samba.
Szerver oldalon addig érdemes foglalkozni a biztonsággal, hogy tudd, hogy ha valamelyik userednek akármilyen módon megszerzik a hozzáférést, akkor nem tudnak belenyúlni mások munkájába.

openvz-be betenni, azt jónapot :)

---------------------------------------------------
Hell is empty and all the devils are here.
-- Wm. Shakespeare, "The Tempest"

biztos szep es biztos jo a pureftpd, de en vsftpd-t ajanlok a usereket bezarva a home-jukba, es csak bizonyos ftp parancsokat engedve nekik.

Diktatorok kezikonyve

a proftpd keszitoje maga irta valahol (ne kerdezd mar hol, evekkel ezelott volt), hogy o csak amolyan mukedvelo programozonak tartja magat, es volt is a cuccban security problema (ami azota nyilvan megoldodott), de en inkabb bizom magam egy olyan cuccra, amirol a keszitoje azt mondja, hogy a kezdetektol fogva security-tudatosan epitette fel az egeszet.

Btw. egy osszehasonlito oldal(on, ahol nem a vsftpd-nek van a legkevesebb CVE sara) szerint:

"ProFTPd has the most CVE vulnerabilities listed. The high number is most likely an indicator of ProFTPd’s widespread use which makes it a target of hackers."

Diktatorok kezikonyve

+1 vsftpd lekorlátozva, mondjuk vserver-rel megtámogatva, kizárólag "ftpes" protokollal használva.

"...
cmds_allowed=SYST,FEAT,PBSZ,OPTS,PROT,TYPE,PASV,LIST,STOR,RETR,QUIT,CDUP,PWD,CWD,MKD,RMD,DELE
chmod_enable=NO
..."

deny_file, hide_file ügyesen használva akár könytvtártörléskorlátozó is lehet a user accesible helyeken. Stb.

FTPES, alternatív porton. ;)