FTP (File Transfer Protocol) adalah salah satu protokol pertama Internet (RFC 959 dikeluarkan pada tahun 1985!). Itu digunakan untuk mendistribusikan berkas bahkan sebelum Web lahir (protokol HTTP diciptakan pada tahun 1990, dan secara resmi ditetapkan untuk versi 1.0 oleh RFC 1945, diterbitkan pada tahun 1996).
Protokol ini memungkinkan pengunggahan berkas dan pengunduhan berkas; untuk alasan ini, masih banyak digunakan untuk menyebarkan pembaruan ke sebuah situs web yang diselenggarakan oleh salah satu penyedia layanan Internet (atau entitas lain yang mewadahi situs web). Dalam kasus ini, akses aman dipaksakan dengan pengidentifikasi pengguna dan kata sandi; saat otentikasi sukses, server FTP memberikan akses baca-tulis ke direktori home pengguna.
Server FTP lain terutama digunakan untuk mendistribusikan berkas untuk diunduh publik; paket-paket Debian adalah contoh yang baik. Isi dari server tersebut diambil dari server lain, remote secara geografis, ini kemudian menjadi tersedia untuk pengguna yang lebih dekat. Ini berarti bahwa otentikasi klien tidak diperlukan; sebagai akibatnya, modus operasi ini dikenal sebagai "anonymous FTP". Agar sepenuhnya sempurna, klien mengotentikasi dengan nama pengguna anonim
; kata sandi sering kali, oleh konvensi, adalah alamat surel pengguna, tetapi server mengabaikannya.
Banyak server FTP tersedia di Debian (ftpd(-ssl), proftpd-basic, pure-ftpd dan sebagainya), yang semuanya menyediakan paket ftp-server virtual. Harap dicatat bahwa paket pyftpd, bagaimanapun, telah dihapus dari proyek Debian karena tidak dipelihara secara aktif lagi dan tidak kompatibel dengan Python 3. Administrator Falcot Corp memilih vsftpd karena mereka hanya menggunakan server FTP untuk mendistribusikan beberapa berkas (termasuk repositori paket Debian); karena mereka tidak membutuhkan fitur-fitur canggih, mereka memilih untuk fokus pada aspek keamanan.
Memasang paket menciptakan pengguna sistem ftp
. Akun ini selalu digunakan untuk koneksi FTP anonim, dan direktori home-nya (/srv/ftp/
) adalah akar dari pohon yang dibuat tersedia untuk pengguna yang tersambung ke layanan ini. Konfigurasi default (dalam /etc/vsftpd.conf
) memerlukan beberapa perubahan untuk memenuhi kebutuhan sederhana yang membuat berkas-berkas besar tersedia untuk diunduh oleh publik: akses anonim perlu diaktifkan (anonymous_enable=YES
) dan akses hanya-baca dari pengguna lokal perlu dinonaktifkan (local_enable=NO
). Yang kedua sangat penting karena protokol FTP tidak menggunakan bentuk enkripsi apapun dan kata sandi pengguna bisa disadap saat lewat kabel.
Sumber daya FTP dan FTPS dapat diakses dengan berbagai klien, dengan dan tanpa antarmuka pengguna grafis, dan mereka juga dapat dipasang secara lokal menggunakan perintah curlftpfs
dari paket bernama serupa.