Vad är en filöverföringsprotokollklient?
En filöverföringsprotokollklient är en datorprogramvara som används för att komma åt en dataserver med hjälp av filöverföringsprotokollet (FTP). Genom att använda detta vanliga protokoll kan klienten överföra data till och från servern. Klientapplikationen ger 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 kommandoradgränssnitt (CLI), ett grafiskt användargränssnitt (GUI), till och med en vanlig webbläsare.
FTP är en del av det övre applikationsskiktet i Internet Protocol (IP) -sviten, där överföringsstyrprotokollet (TCP) används för kommunikationstransporten. Filöverföringsprotokoll-klienten är då ansvarig för att upprätta anslutningen till servern genom att i slutändan öppna två TCP-anslutningar. Den första är kontrollanslutningen, där klienten skickar kommandon till FTP-servern. De första kommandona som sänds över kontrollanslutningen är USER-kommandot, med användarens namn som ett argument, och sedan PASS-kommandot följt av lösenordet. När den har upprättats förblir kontrollanslutningen öppen under hela sessionen.
Här konfigurerar filöverföringsprotokoll-klienten de olika kommunikationssätten som den kommer att ha med servern. Vanligtvis representeras data på ett av två sätt, text eller binär, beroende på data som skickas eller tas emot. Textöverföringar används oftast för vanliga textfiler kodade med antingen den amerikanska standardkoden för ASCII-kodning. Det binära läget, även känt som bildläge, är för överföring av filer i ett binärt format som inte är text, t.ex. digitala bilder. Ett annat, kallad det lokala läget, är ett annat sätt att FTP kan överföra data med ett unikt eller proprietärt format.
Den andra TCP-kanalen som används av filöverföringsprotokollklienten är dataförbindelsen. Denna anslutning är tillfällig 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. Dataförbindelsen förstörs då 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 finns på klienten.
Med en aktiv dataanslutning berättar filöverföringsprotokollklienten servern vilket TCP-portnummer som ska användas för dataförbindelsen. När den används i passivt läge berättar emellertid klienten helt enkelt till servern att den är passiv, och servern informerar sedan klienten vilken TCP-port som ska användas för dataförbindelsen. I de flesta fall är klienten inställd för en passiv anslutning på grund av användning 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 utformats för användning med FTP under åren, till exempel att klienten antingen uttryckligen namnger ett säkerhetsprotokoll som ska användas eller ett automatiskt antyds. Andra klienter försöker använda FTP genom en säker skaltunnel (SSH), vilket kan ha svårigheter på grund av dataförbindelseens flyktiga karaktär.