FTP (Filoverføringsprotokoll, engelsk File Transfer Protocol) er en av de første protokollene for Internett (RFC 959 ble utstedt i 1985!). Den ble brukt til å distribuere filer før nettet til og med var født (HTTP-protokollen ble laget i 1990, og formelt definert i sin 1.0-versjon av RFC 1945, utgitt i 1996).
Denne protokollen tillater både filopplasting og -nedlasting av filer. Derfor er den fortsatt mye brukt til å distribuere oppdateringer til et nettsted som drives av en internettleverandør (eller andre som er vert for nettsteder). I disse tilfellene håndheves agang med en brukeridentifikasjon og passord. Ved vellykket autentisering, gir FTP-tjeneren lese- og skrivetilgang til brukerens hjemmemappe.
Andre FTP-tjenere brukes i hovedsak til å distribuere filer for offentlig nedlasting: Debian-pakker er et godt eksempel. Innholdet i disse tjenerne er hentet fra andre, geografisk fjerntliggende tjenere, og gjøres da tilgjengelige for mindre fjerntliggende brukere. Dette betyr at klientautentisering ikke er nødvendig. Som et resultat er denne driftsmodus kjent som «anonymus FTP». For å være helt korrekt autentiseres klientene med brukernavnet anonymous
; passordet er ofte, ifølge vanlig praksis, brukerens e-postadresse, men det ignorerer tjeneren.
Mange FTP-tjenere er tilgjengelige i Debian (ftpd(-ssl), proftpd-basic, pure-ftpd og så videre), som alle tilbyr den virtuelle pakken ftp-server. Merk at pyftpd-pakken har blitt fjernet fra Debian-prosjektet fordi den ikke ble aktivt vedlikeholdt, og fordi den er inkompatibel med Python 3. Falcot Corp-administratorene valgte ut vsftpd fordi de bare bruker FTP-tjeneren for å distribuere noen få filer (inkludert en Debian-pakkebrønn). Ettersom de ikke trenger avanserte funksjoner, valgte de å fokusere på de sikkerhetsmessige aspektene.
Å installere pakken skaper en ftp
systembruker. Denne kontoen brukes alltid for anonyme FTP-tilkoblinger, og hjemmekatalogen dens (/srv/ftp/
) er roten til treet som brukerne kan benytte for å knytte seg til denne tjenesten. Standardoppsettet (i /etc/vsftpd.conf
) krever noen endringer for å imøtekomme enkle behov for å gjøre store filer tilgjengelig for offentlige nedlastinger: Anonym tilgang må være aktivert (anonymous_enable=YES
), og lesetilgang fra lokale brukere må være deaktivert (local_enable=NO
). Det siste er spesielt viktig ettersom FTP-protokollen ikke bruker noen form for kryptering, og brukerpassord kan bli snappet opp underveis.
FTP og FTPS-ressurser kan nås med en mengde klienter, med og uten et grafisk brukergrensesnitt, og de kan også monteres lokalt ved bruk av curlftpfs
-kommandoen fra pakken med samme navn.