Vad är en File Transfer Protocol Client?

En filöverföringsprotokollklient är en datorprogramvara som används för att komma åt en dataserver genom att använda filöverföringsprotokollet (FTP). Genom att använda detta gemensamma protokoll kan klienten överföra data till och från servern. Klientapplikationen tillhandahåller medel för att upprätta en anslutning och sedan utfärda lämpliga FTP-kommandon till servern. Det finns i många former, drivs via ett kommandoradsgränssnitt (CLI), ett grafiskt användargränssnitt (GUI), till och med en vanlig webbläsare.

FTP är en del av det övre applikationslagret i Internet Protocol (IP)-sviten, där transmissionskontrollprotokollet (TCP) används för kommunikationstransporten. Filöverföringsprotokollklienten är alltså ansvarig för att upprätta anslutningen till servern genom att slutligen öppna två TCP-anslutningar. Den första är kontrollanslutningen, där klienten skickar kommandon till FTP-servern. De första kommandona som skickas över kontrollanslutningen är kommandot USER, med användarens namn som argument, och sedan PASS-kommandot följt av lösenordet. När den väl har upprättats förblir kontrollanslutningen öppen under hela sessionen.

Här ställer filöverföringsprotokollklienten upp de olika kommunikationssätten som den kommer att ha med servern. Typiskt representeras data på ett av två sätt, text eller binär, beroende på vilken data som skickas eller tas emot. Överföringar av texttyp används oftast för vanliga textfiler kodade med antingen American Standard Code for Information Interchange (ASCII) kodningsmetod. Det binära läget, även kallat bildläge, är för överföring av filer i ett binärt icke-textformat, såsom digitala bilder. Ett annat, som kallas det lokala läget, är ett annat sätt som FTP kan överföra data med ett unikt eller proprietärt format.

Den andra TCP-kanalen som används av filöverföringsprotokollklienten är dataanslutningen. Denna anslutning är av tillfällig karaktär och skapas endast när en klient ber om en lista över filerna på servern eller överför en fil antingen till eller från servern. Dataanslutningen förstörs sedan när ingen dataöverföring sker. Dataförbindelsen är också unik i hur den upprättas, antingen aktivt passivt. Klienten måste berätta för servern vilken typ av dataanslutning som ska användas beroende på vilken typ av anslutning som är tillgänglig på klienten.

Med en aktiv dataanslutning berättar filöverföringsprotokollklienten för servern vilket TCP-portnummer som ska användas för dataanslutningen. När den används i passivt läge säger klienten helt enkelt till servern att den är passiv, och servern informerar sedan klienten om vilken TCP-port som ska användas för dataanslutningen. I de flesta fall är klienten inställd för en passiv anslutning på grund av användningen av brandväggar som skyddar den från obehörig åtkomst.
Som ett resultat av den allmänna bristen på säkerhet i FTP är säkerheten för en filöverföringsprotokollklient integrerad i dess drift så att användarens aktivitet är säker från nyfikna ögon. Ett antal ytterligare säkerhetstekniker har utvecklats för användning med FTP genom åren, till exempel att klienten antingen uttryckligen namnger ett säkerhetsprotokoll att använda eller att ett automatiskt antyds. Andra klienter försöker använda FTP genom en SSH-tunnel (Secure Shell), vilket kan ha svårigheter på grund av dataanslutningens flyktiga karaktär.