FTP on lyhenne sanoista File Transfer Protocol , eikä sitä pidä sekoittaa FTTP:hen (Fibre To The Premises) . Se on klassinen protokolla, joka julkaistiin ensimmäisen kerran nimellä RFC 114 vuonna 1971. Koska henkilökohtainen tietokone on ollut asia, se on ollut hyödyllinen. Tai jopa tarpeen tiedostojen siirtämiseksi. Nykymaailmassa meillä on usean gigatavun USB-muistitikkuja ja usean teratavun ulkoisia kiintolevyjä. Ja pilvitallennus tarjoaa valikoiman tallennuskapasiteettia ja ominaisuusjoukkoja useimpiin käyttötapauksiin.
Ennen kuin USB standardoitiin ja joitain suurimmista pilvitallennusyrityksistä oli edes perustettu, asiat olivat hieman erilaisia. Vuonna 1971 oli juuri keksitty levyke, keksintö, joka mahdollistaisi nopean tiedonsiirron laitteiden välillä. FTP salli tiedonsiirron verkon yli, vaikka Internet ei ollut vielä juttu.
FTP oli niin varhainen, että se ei edes käyttänyt TCP:tä, koska sitäkään ei ollut vielä standardoitu. Sen sijaan se käytti NCP:tä tai Network Control Protocol -protokollaa, joka on TCP/IP:n edeltäjä. Tämä johti FTP:n erityisen erottuvaan ominaisuuteen, jota ei ole koskaan muutettu, kaksoisporttijärjestelmään. NCP oli yksinkertainen protokolla.
Joten kaksisuuntaisen tiedonsiirron kannalta oli välttämätöntä, että kahdessa eri portissa on kaksi yhteyttä, yksi lähettää ja toinen vastaanottaa. Huolimatta siitä, että se lopulta siirrettiin käyttämään TCP/IP:tä, jolla ei ole tätä vaatimusta ja joka voi toimia täydellisesti yhdellä duplex-portilla, FTP-standardia ei koskaan päivitetty, ja se säilyttää porttinumeroparinsa.
FTP:n käyttö
FTP:n käyttämät kaksi porttinumeroa ovat 20 ja 21. Porttia 21 käytetään ohjaamiseen ja komentojen antamiseen, kun taas porttia 20 käytetään tiedon lähettämiseen. Yksi keskeisistä asioista, jotka on järjestettävä yhteydessä ennen tiedostojen siirtoa, on aktiivisen tai passiivisen tilan käyttö. Aktiivitilassa asiakas pyytää tiedostoa. Tämän jälkeen palvelin avaa datayhteyden asiakkaaseen. Sekä palomuurit että NAT muodostavat huomattavan ongelman, koska saapuva lähetys FTP-palvelimelta on eri portissa, joten sitä ei voida helposti yhdistää oikeaan laitteeseen.
Tämän ongelman kiertämiseksi voidaan käyttää passiivista tilaa. Passiivisessa tilassa, kun käyttäjä pyytää tiedostoa palvelimelta, FTP-palvelin ilmoittaa asiakkaalle portin, johon sen tulee muodostaa, sen sijaan, että hän yrittäisi muodostaa yhteyden suoraan eri portissa olevaan asiakkaaseen, ja antaa asiakkaan aloittaa yhteyden. Tämä ratkaisee tehokkaasti aktiivisen tilan yhteysongelman eikä aiheuta haittaa, lukuun ottamatta pientä viivettä tiedostojen siirron alkamisessa.
Teknisesti palvelimen tulee sopia asiakkaan kanssa tiedon lähettämisestä. Käytössä on kuitenkin vain yksi tila. Se on kuvatila, jota kutsutaan myös binääritilaksi. Kuvatilassa jokainen tiedosto lähetetään tavu kerrallaan. Vaihtoehtoisia tiloja ovat muun muassa koko tiedoston kääntäminen 8-bittiseksi ASCII:ksi, joka sopii vain tekstitiedostoille.
Todennus ja suojaus
Koska protokollastandardi on erityisen varhainen, et ehkä ole yllättynyt kuullessani, että FTP ei ole erityisen turvallinen. FTP tarjoaa käyttäjätunnuksen ja salasanan todennuksen. Se ei kuitenkaan salaa mitään viestintää, mikä tarkoittaa, että kuka tahansa MitM:ssä tai Miehessä keskiasennossa voi "kuunnella" liikennettä "langalla" ja vain lukea sisäänkirjautumiseen käytetyn käyttäjätunnuksen ja salasanan.
FTP tarjoaa myös anonyymin kirjautumisominaisuuden, joka on hyödyllinen avoimissa FTP-palvelimissa, kuten ohjelmistopäivitysten toimittamisessa. Nimettömässä kirjautumisessa käytetään käyttäjätunnusta anonyymi. Palvelin pyytää sitten sähköpostiosoitetta salasanaksi, mutta mikä tahansa arvo hyväksytään. Salauksen puute tarkoittaa myös sitä, että tiedostot siirretään epävarmaa, joten FTP ei ole ihanteellinen käytettäväksi arkaluonteisten asiakirjojen kanssa.
Ajan myötä FTP:n turvallisuuden lisäämiseksi on ehdotettu useita laajennuksia ja vaihtoehtoja. FTPS on ensisijainen vaihtoehto. Se laajentaa FTP:tä mahdollisuudella salata todennus- ja tiedostonsiirtoprosessi TLS:n avulla ja on yhteentoimiva tavallisten FTP-asiakkaiden kanssa. SFTP, erityisesti SSH File Transfer Protocol, tarjoaa periaatteessa samat toiminnot kuin FTP, mutta SSH:n, suojatun tiedonsiirtoprotokollan, kautta, mikä tekee siitä yhteensopimattoman tavallisten FTP-asiakkaiden ja -palvelimien kanssa.
On mahdollista reitittää yhteyksiä olemassa olevien SSH-tunnelien kautta. Käytännössä tämä johtaa kuitenkin usein siihen, että ohjausyhteys on SSH-tunnelin yli ja erillinen datayhteys on turvaton. VPN-verkot tarjoavat jonkin verran suojaa hakkereita vastaan samassa verkossa kuin sinä, mutta jättävät VPN-palveluntarjoajalle mahdollisuuden suorittaa sama hyökkäys.
Johtopäätös
FTP on lyhenne sanoista File Transfer Protocol. Se on varhainen asiakas-palvelinprotokolla tiedostojen lataamiseen FTP-palvelimelle ja sieltä. FTP ei tarjoa oletusarvoisesti suojausta. Vaikka käyttäjätunnusta ja salasanaa voidaan käyttää, ne välitetään selkeänä tekstinä, mikä jättää ne alttiiksi verkon nuuskimiselle. Uudemmat FTP-laajennukset lisäävät turvallisuuden vuoksi mahdollisuuden muodostaa yhteys TLS:n kautta.
Selaimet sisälsivät aiemmin FTP-asiakkaan, jotta voit selata FTP-palvelimia suoraan ilman erillistä asiakasohjelmaa. Vuonna 2021 Chrome ja Firefox kuitenkin luopuivat FTP-tuesta, mikä rajoitti tuen erillisiin FTP-asiakkaisiin. Nykymaailmassa pilvitallennusratkaisut – ja vähemmässä määrin nopea ja tilava USB-tallennustila – ovat olennaisesti korvanneet FTP:n käyttötapauksen tarjoamalla parempaa mukavuutta, turvallisuutta ja nopeutta.