Bir dosya aktarım protokolü istemcisi, bir dosya sunucusuna dosya aktarım protokolünü (FTP) kullanarak erişmek için kullanılan bir bilgisayar yazılımı uygulamasıdır. Bu ortak protokolün kullanılması ile müşteri sunucuya ve sunucudan veri aktarabilir. İstemci uygulaması, bir bağlantı kurmak ve ardından sunucuya uygun FTP komutlarını vermek için araçlar sağlar. Komut satırı arayüzü (CLI), grafiksel kullanıcı arayüzü (GUI), hatta genel bir web tarayıcısı üzerinden işletilen birçok formda gelir.
FTP, iletişim protokolü için iletim aktarma protokolü (TCP) kullanıldığında, Internet protokolü (IP) paketinin üst uygulama katmanının bir parçasıdır. Dosya aktarım protokolü istemcisi daha sonra iki TCP bağlantısı açarak sunucuya bağlantı kurmaktan sorumludur. Birincisi, istemcinin FTP sunucusuna komut gönderdiği kontrol bağlantısıdır. Kontrol bağlantısı üzerinden gönderilen ilk komutlar, kullanıcının bir argüman olarak ismiyle birlikte USER komutudur ve ardından şifre, ardından PASS komutudur. Kurulduktan sonra kontrol bağlantısı tüm oturum boyunca açık kalır.
Burada dosya aktarım protokolü istemcisi, sunucuyla sahip olacağı farklı iletişim modlarını kurar. Tipik olarak, veri gönderilen veya alınan verilere bağlı olarak, iki yoldan biriyle (metin veya ikili) temsil edilir. Metin türü aktarımları, genellikle Bilgi Bilgi Değişimi için Amerikan Standart Kodu (ASCII) kodlama yöntemiyle kodlanan düz metin dosyaları için kullanılır. Aynı zamanda görüntü modu olarak da adlandırılan ikili mod, dijital görüntüler gibi metin olmayan ikili formattaki dosyaların aktarılması içindir. Yerel mod adı verilen bir diğeri, FTP'nin benzersiz veya özel bir format kullanarak veri aktarabilmesi için başka bir yoldur.
Dosya aktarım protokolü istemcisi tarafından kullanılan ikinci TCP kanalı veri bağlantısıdır. Bu bağlantı doğası gereği geçicidir ve yalnızca bir istemci sunucudaki dosyaların bir listesini sorduğunda veya bir dosyayı sunucuya ya da sunucuya aktarırken oluşturulur. Veri aktarımı gerçekleşmediğinde veri bağlantısı kesilir. Veri bağlantısı aynı zamanda aktif olarak pasif olarak da kurulmasında benzersizdir. İstemcinin, istemcide ne tür bir bağlantı bulunduğuna bağlı olarak kullanılacak veri bağlantısı türünü belirtmesi gerekir.
Etkin bir veri bağlantısıyla, dosya aktarım protokolü istemcisi, sunucuya veri bağlantısı için hangi TCP port numarasını kullanacağını bildirir. Ancak pasif modda kullanıldığında, istemci sunucuya pasif olduğunu söyler ve ardından sunucu veri bağlantısı için hangi TCP portunu kullanacağını istemciye bildirir. Çoğu durumda, istemci, yetkisiz erişime karşı koruyan güvenlik duvarlarının kullanılması nedeniyle pasif bir bağlantı için kurulur.
FTP'deki genel güvenlik eksikliğinin bir sonucu olarak, bir dosya aktarma protokolü istemcisi için güvenlik, kullanıcının faaliyetlerinin meraklı gözlerden güvende olması için çalışmasının ayrılmaz bir parçasıdır. Yıllar boyunca FTP ile kullanılmak üzere, örneğin, kullanılacak bir güvenlik protokolünü açıkça adlandıran veya otomatik olarak ima edilen bir dizi ek güvenlik tekniği geliştirilmiştir. Diğer müşteriler FTP'yi, veri bağlantısının değişken yapısından dolayı zorluk çekebilecek güvenli bir kabuk (SSH) tüneli aracılığıyla kullanmaya çalışır.


