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, proftpd-basic, pyftpd dan sebagainya). Administrator Falcot Corp memilih vsftpd karena mereka hanya menggunakan server FTP untuk mendistribusikan beberapa berkas (termasuk sebuah repositori paket Debian); karena mereka tidak memerlukan 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.