Turvalisem FTP

Käesolev postitus on loogiline jätk eelmisele postitusele, mis juhtis tähelepanu viiruste poolt tehtavale laastamistööle veebilehtede seas.

Eelmise postituse lühike kokkuvõtte oleks see, et tänapäeval poetavad küberkriminaalid viiruseid ja pahavara ohvrite veebilehtedele lihtsalt läbi veebilehe enda FTP konto.

FTP konto andmed satuvad nende valdusesse aga seetõttu, et kasutajad ei hoolitse piisavalt enda arvuti ja programmide turvalisuse eest.

Samas pole loomulikult aus veeretada kogu süüd tavakasutaja kraesse. FTP programmid on vaikimisi “lõtvade” seadistustega, mis üheltpoolt on muidugi tore, sest siis ühildub FTP programm kohe vaikimisi võimalikult paljude serveritega ning kasutajal pole probleeme programmi kasutuselevõtul.

Teisest küljest tähendab see seda, et FTP ühendus pole vaikimisi krüpteeritud, viirused/troojanid saavad ühendust pealt kuulata ning niiviisi FTP paroole varastada.

FTP krüpteerimismeetodid – FTPS

ftps80-ndatel, kui FTP protokoll koostati ei mõelnud keegi sellele, et suhtlus peaks toimuma krüpteeritult ning tol ajal polnud see ka tähtis. Seetõttu ei sisaldagi FTP protokoll (RFC959) oma ehedal kujul krüpteerimise võimalusi.

Need on lisatud protokolli hiljem nö. laienduste kujul (RFC2228) ning tänapäeval oskavad enamus servereid/klientprogramme ka neid laiendusi kasutada.

Seega väide, et FTP on ebaturvaline on vale. Pigem ei teata FTP turvalisest rezhiimist piisavalt ja ei osata seda kasutada.

Krüpteerimist on võimalik FTP protokollis realiseerida mitmel erineval viisil, mis koonduvad ühise nimetaja alla – FTPS. Erinevad FTP serverid ja kliendid toetavad erinevaid meetodeid ning võivad samu asju ka nimetada pisut erinevalt.

Olles kursis erinevate meetodite tööpõhimõtetega on programmis ka hõlpsam õiget (serveriga ühilduvat) krüptomeetodit valida:

  1. Explicit TLS/SSL – tähendab seda, et ühendus FTP serverisse luuakse standardsesse 21 porti ning suhtlus algab mitte-krüpteeritult. Peale AUTH TLS või AUTH SSL käsu saatmist aktiveeritakse alles krüpteering. Mõnikord saab FTP klientprogrammis ka eraldi valida, kumba käsku kasutada ning sellisel juhul oleks eelistatud valik AUTH TLS. Explicit TLS/SSL võidakse nimetatakse lühidalt ka FTPES-iks.
  2. Implicit SSL – SSL krüpteering aktiveeritakse kohe kui FTP serveriga ühendus luuakse. Oluline on teada, et ühendus käib läbi pordi 990 mitte enam tavalise 21 kaudu, sest mõned FTP programmid vajavad Implicit SSL aktiveerimisel ka eraldi pordi numbri muutmist.

Kumba siis valida?

Valida (või vähemalt esmajärjekorras proovida) soovitan Explicit rezhiimi, mis on paindlikum ja tagasiühilduvam, kuna suhtlus käib üle standardse pordi (21) ning samuti saab klientprogramm valida, kui suures ulatuses ta andmeid krüpteerib – kas turvatakse ainult käsukanal (control-channel) või turvatakse lisaks ka andmekanal (data-channel).

Vajadusel saab käsukanalilt krüpteeringu maha võtta kohe kui kasutajatunnus ja parool on turvaliselt serverile edastatud, et kliendi tulemüürid oskaks sissetulevaid FTP DATA porte automaatselt lahti teha. Aga ka seda pole vaja kui kasutada FTP PASSIVE rezhiimi (kui tulemüür väljaminevate ühenduste porte ei piira).

Lisaks peetakse Implicit rezhiimi aegunuks kuna ta on mitte standardne.

SFTP

Tihti aetakse FTPS segamini SFTP-ga, kuid SFTP protokollil pole FTPS-ga peale nimetuse (SSH File Transfer Protocol) midagi muud ühist.

SFTP on üle SSH kanali töötav eraldi binaarprotokoll, mille kasutamise põhiargument on see, et suhtlus FTP kliendi<->serveri vahel on täies ulatuses krüpteeritud. Ehk siis tegelikult seesama, mida võimaldab ka FTPS.

Kui SFTP eeliseid loetleda, siis oleksid need näiteks:

  1. suurem funktsionaalsus käskude näol
  2. standardne kataloogi listingu formaat, mida SFTP kliendid ühte moodi tõlgendada oskavad
  3. suhtlus toimub ainult ühe ühenduskanali kaudu – vastupidiselt FTP protokollile, kus vajatakse ühendust 21 porti ja lisaks DATA porti

FTPS toetavad programmid

FTPS kasutamiseks on vaja, et ka FTP server krüpteerimist toetaks. Kui su veebiteenuse pakkuja FTP server ei toeta FTPS-i, siis nõua seda temalt julgelt 🙂

Alljärgnevalt on enamlevinud FTP klientprogrammide kaupa ära toodud, kuidas saab olemasoleval FTP kontol krüpteeringut aktiveerida:

SmartFTP (4.0)

  1. Vali menüüst Favourites
  2. Tee soovitud konto peal parem klikk ja vali Properties
  3. Määra Protocol väärtuseks FTP over SSL explicit

smart_ftp

CuteFTP (8.3)

  1. Vali menüüst Tools » Site manager » Display site manager
  2. Kliki soovitud konto peal
  3. Vali paremalt Type lehekülg
  4. Määra Protocol type väärtuseks FTP with TLS/SSL (AUTH TLS – Explicit)

cute_ftp

FileZilla (3.3.0.1)

  1. Vali menüüst Fail » Saidihaldur (või File » Site Manager inglise keelses)
  2. Kliki soovitud konto peal
  3. Määra Serveri tüüp (Servertype) väärtuseks FTPES – FTP üle otsese (explicit) TLS/SSL-i

filezilla

WS_FTP Home (12.2)

  1. Vali Connections » Site manager
  2. Kliki soovitud konto peal ja vajuta nuppu Edit…
  3. Vali vasakult Advanced
  4. Määra Server type väärtuseks FTP/SSL (AUTH SSL)

ws_ftpTotal Commander (7.50a) *

  1. Vali menüüst Net » FTP Connect…
  2. Kliki soovitud konto peal ja vajuta nuppu Edit…
  3. Märgista SSL/TLS valik

total_commander

* Total Commander võib SSL/TLS jaoks vajada eraldiseisvat OpenSSL paigaldust. Selle saab siit.

Core FTP LE (v2.1)

  1. Vali menüüst Sites » Site Manager
  2. Kliki soovitud konto peal
  3. Määra Connection väärtuseks AUTH TLS

coreftp

FlashFXP (3.6.0)

  1. Vali menüüst Sites » Site manager
  2. Kliki soovitud konto peal
  3. Vali paremalt SSL lehekülg
  4. Secure Socket Layer grupist vali Auth TLS

flashfxp

Cyberduck OS X (3.3) *

  1. Vali bookmark-itud konto ja vajuta Edit
  2. Vali FTP protokollide nimekirjast FTP-SSL (Explicit AUTH TLS)

cyberduck2* Mac OS X-i jaoks

Transmit *

  1. Vali Protocol lahtrisse FTP with TLS/SSL

transmit2* Mac OS X-i jaoks

Kui arvad, et siit nimekirjast on mõni populaarne programm puudu, siis kommentaarides saab sellest teada anda.

test.asdasd.eu

7 mõtet “Turvalisem FTP” kohta

  1. Mac-i sõpradele lisatud Cyberduck ja Transmit.

    Aptanaga on pisut kehvasti, self-signed SSL sertifikaat genereerib fatal errori ja vähemalt mina ei leia seal küll sellist kohta, kus saaks sellest mööda.

  2. Ilmselgelt on puudu lftp. 🙂
    Vaikimisi toetatakse SSLi. Force’ks:
    set ftp:ssl-force/example.org 1

  3. Kas Core FTP LE seadistamisel ei peaks mitte valima AUTH TLS?

    AUTH SSL seadega ühendades ütleb ta:

    “A connection was established, but SSL or TLS security was not neogotiated or accepted, so the connection is not secure…

    Would you like to continue sending your account information?”

    Või on minul midagi tegemata?

  4. Aitäh selle hea artikli eest. Seda lugedes tekkis küsimus, et miks siis Zone ise ei paku mingit krüptoga FTP-d, kui siin selline artikkel on.

    Katsetasin järgi ja ennäe, FTPS (implicit) isegi töötas! Miks ma seda siis varem polnud kasutanud? Sest http://www.planet.ee KKK-s polnud kuskil kirjas, et võib kasutada ka FTPS-i, jutt on seal vaid FTP-st. Samuti kui vaatan, mis on planet.ee teenuse parameetrid, ei mainita, et on võimalik kasutada ka FTPS-i, vaid lihtsalt FTP. Kuna see ju vaikimisi kuskil ei tööta, siis ma pole seda ka tänaseni proovinud. Vahepeal mõtlesin, et FTP kasutajanime ja parooli tavatekstina nähtavus on tõsine miinus planet.ee kasutamise juures ja piisavalt hea põhjus kuhugi mujale kolida, kus oleks krüptoga FTP.

    Selline lugu siis. Ei vaidle vastu, kui mõni ütleb, et rumal olen. Aga http://www.planet.ee mingisse infosse võiks selle krüptovõimaluse sisse kirjutada, sest võib-olla on veel neid, kes FTPS võimalust nägemata mõne teise teenusepakkuja valib.

Kommenteerimine on suletud