Wat is een File Transfer Protocol-client?
Een bestandsoverdrachtprotocolclient is een softwaretoepassing die wordt gebruikt voor toegang tot een gegevensserver met behulp van het bestandsoverdrachtsprotocol (FTP). Door het gebruik van dit gemeenschappelijke protocol kan de client gegevens overbrengen van en naar de server. De clienttoepassing biedt de middelen om een verbinding tot stand te brengen en vervolgens de juiste FTP-opdrachten aan de server te geven. Het komt in vele vormen, bediend via een opdrachtregelinterface (CLI), een grafische gebruikersinterface (GUI), zelfs een algemene webbrowser.
FTP maakt deel uit van de bovenste applicatielaag van de IP-suite (Internet Protocol), waarbij het Transmission Control Protocol (TCP) wordt gebruikt voor het communicatietransport. De file transfer protocol-client is dan verantwoordelijk voor het tot stand brengen van de verbinding met de server door uiteindelijk twee TCP-verbindingen te openen. De eerste is de besturingsverbinding, waar de client opdrachten naar de FTP-server verzendt. De eerste opdrachten die via de besturingsverbinding worden verzonden, zijn de opdracht USER, met de naam van de gebruiker als argument en vervolgens de opdracht PASS gevolgd door het wachtwoord. Eenmaal tot stand gebracht, blijft de controleverbinding open gedurende de hele sessie.
Hier stelt de client voor bestandsoverdrachtsprotocollen de verschillende communicatiemodi in die hij met de server heeft. Gegevens worden doorgaans op twee manieren weergegeven, tekst of binair, afhankelijk van de gegevens die worden verzonden of ontvangen. Tekstoverdrachten worden meestal gebruikt voor gewone tekstbestanden die zijn gecodeerd met de coderingsmethode American Standard Code for Information Interchange (ASCII). De binaire modus, ook wel afbeeldingsmodus genoemd, is voor de overdracht van bestanden in een niet-tekst binair formaat, zoals digitale afbeeldingen. Een andere, de lokale modus genoemd, is een andere manier waarop FTP gegevens kan overdragen met behulp van een uniek of eigen formaat.
Het tweede TCP-kanaal dat door de client voor bestandsoverdrachtsprotocol wordt gebruikt, is de gegevensverbinding. Deze verbinding is tijdelijk van aard en wordt alleen gemaakt wanneer een client om een lijst van de bestanden op de server vraagt of een bestand naar of van de server overzet. De gegevensverbinding wordt vervolgens vernietigd wanneer er geen gegevensoverdracht plaatsvindt. De gegevensverbinding is ook uniek in de manier waarop deze tot stand is gebracht, hetzij actief passief. De client moet de server vertellen welk type gegevensverbinding moet worden gebruikt, afhankelijk van het type verbinding dat op de client beschikbaar is.
Bij een actieve gegevensverbinding vertelt de client voor bestandsoverdrachtprotocol de server welk TCP-poortnummer moet worden gebruikt voor de gegevensverbinding. Bij gebruik in passieve modus vertelt de client de server echter eenvoudig dat deze passief is en informeert de server de client vervolgens welke TCP-poort moet worden gebruikt voor de gegevensverbinding. In de meeste gevallen is de client ingesteld op een passieve verbinding vanwege het gebruik van firewalls die deze beschermen tegen ongeautoriseerde toegang.
Als gevolg van het algemene gebrek aan beveiliging bij FTP is beveiliging voor een client voor bestandsoverdrachtprotocollen een integraal onderdeel van de werking, zodat de activiteit van de gebruiker tegen nieuwsgierige blikken is beveiligd. In de loop der jaren zijn er een aantal extra beveiligingstechnieken ontwikkeld voor gebruik met FTP, zoals de client die expliciet een te gebruiken beveiligingsprotocol benoemt of een automatisch wordt geïmpliceerd. Andere clients proberen FTP te gebruiken via een beveiligde shell (SSH) -tunnel, die problemen kan hebben vanwege de vluchtige aard van de gegevensverbinding.