FTP Protokolü Nedir ?
Ftp uzun zaman önce kullanılmaya başlanmış, kökeni 1971 yılına kadar dayanan ve 1981 yılında Abhay Bhusman tarafından oluşturularak, ilerleyen zamanlarda TCP/IP protokolü ile güncellenmiş olan ve günümüzde hala aktif olarak kullandığımız dosya transfer protokolüdür.
Ftp ( file transfer protocol ) çok basit tabir ile TCP/IP ağ protokollerini kullanan cihazlarda, dosyaları bir cihazdan farklı bir cihaza aktarmak için kullanılan en basit ve eski formatlardan birisidir.
Her nasıl ki bir web sitesini ziyaret ettiğimizde 80 ( http ) portunu, ssl sertifikasına sahip daha güvenli bir web sitesini ziyaret ettiğimizde 443 ( https ) portunu, maillerimizi okumak ve mail göndermek için 143 ( IMAP ) ve 110 ( POP3 ) gibi portları kullanıyorsak ftp için de genellikle 20 ve 21 numaralı portlar kullanılmaktadır. Bu standartlaşmış port numaralarını istenildiği takdirde değiştirmek ve kullanılmayan portlardan herhangi birisine atamak mümkündür ancak bunu güvenlik amacıyla servisleri gizlemek niyetiyle yapacaksanız, bu boşa bir uğraş olur çünkü detaylı bir port taramasıyla hangi servisin hangi portta çalıştırıldığı rahatça tespit edilebilmektedir.
Kullanıcılar basit bir komut satırı arayüzü (örneğin, Microsoft Windows, Apple OS X veya Linux’ta bir konsol veya terminal penceresinden) veya özel bir grafik kullanıcı arayüzü (GUI) aracılığıyla FTP ile çalışabilirler. Web tarayıcıları ayrıca FTP istemcileri olarak da hizmet verebilir.
FTP servisinin kullanılabildiği başlıca alanlar :
Kuruluşlar, çalışanların dosyaları farklı konumlar ve şubeler arasında paylaşmasına izin vermek için FTP kullanabilir.
Çalışanlar, dosyaları iş arkadaşları ve harici iş ortaklarıyla güvenli bir şekilde paylaşmak için FTP kullanabilir.
Bilişim Teknolojiler ekipleri, verileri DR (felaket kurtarma) sitelerine geri aktarmak için FTP kullanabilir.
Web yöneticisi ekipleri, Web sayfalarını, Web uygulama dosyalarını ve resimleri Web sunucularına aktarmak için FTP kullanabilir.
FTP kullanmanın avantajları :
Birden fazla dosya ve klasörü aktarmamıza olanak tanır.
Bağlantı kesildiğinde, aktarımı devam ettirme yeteneği vardır.
Aktarılacak dosyanın boyutu konusunda herhangi bir sınırlama yoktur. Tarayıcılar, yalnızca 2 GB’a kadar bir aktarıma izin verir.
FileZilla gibi birçok FTP istemcisi aktarımları zamanlama yeteneğine sahiptir.
Veri aktarımı HTTP’den daha hızlıdır.
Yüklenecek veya indirilecek öğeler “sıraya” eklenir. FTP istemcisi, “sıraya” öğeler ekleyebilir.
FTP kullanmanın dezavantajları :
FTP trafiği şifrelemez, bu nedenle kullanıcı adları, şifreler ve diğer veriler veri paketlerini yakalayarak kolayca okunabilir, çünkü bu veri paketleri açık metin olarak gönderilir. FTP, paket yakalama ve diğer saldırılara karşı savunmasızdır.
FTP Servisi Nasıl Çalışır ?
FTP, bir FTP sunucusu ve FTP istemcisinin dosya aktarım işlemini gerçekleştirdiği bir istemci-sunucu modelinde çalışır. Ağda bir FTP sunucusu yapılandırılır ve belirli bir dosya depolama konumu (klasör / sistem), paylaşmak istediğiniz dosyaları barındıracak paylaşılan depolama alanı olarak tanımlanır. Son kullanıcılar, dosyaları kendi yerel klasörlerine / sistemlerine kopyalamaya başlamak için bu dosya sunucusuna FTP yoluyla erişirler.
FTP, çalışması için bir TCP / IP ağı gerektirir ve bir veya daha fazla FTP istemcisinin kullanımına dayanır. FTP istemcisi, dosyaları indirmek veya karşıya yüklemek için sunucuyla etkileşimde bulunmak üzere iletişim aracısı görevi görür. Başka bir deyişle, FTP istemcisi bağlantıları FTP sunucusuna gönderir. İstemciden bir dosya yükleme veya indirme talebini dinledikten sonra, FTP sunucusu dosya aktarım işlemini gerçekleştirir.
FTP Client ( İstemci )
FTP istemcileri, birkaç on yıl önce yalnızca komut satırı arabirimi (CLI) uygulamalarıydı. Artık dosya aktarımlarını kolaylaştırmak ve basitleştirmek için kullanımı kolay, sezgisel arayüzlerle sahipler. FTP istemcileri masaüstleri, sunucular ve mobil cihazlar için kullanılır ve bağımsız uygulamalar, Web istemcileri ve Web tarayıcıları için de basit uzantıları mevcuttur
FTP Server ( Sunucu )
FTP sunucusu, FTP istemcisiyle hem aktif hem de pasif bağlantıları destekleyebilir. Aktif bir FTP bağlantısında, istemci bir port açar ve sunucu aktif olarak bağlanırken dinler. Oysa pasif bir bağlantıda, sunucu bir bağlantı noktası açar ve istemcilerin ona bağlanmasına izin veren pasif olarak dinler.
Pasif bir bağlantı daha güvenlidir ve BT yöneticileri tarafından da tercih edilir çünkü veri bağlantıları FTP istemcisinden FTP sunucusuna yapılır. Bu daha güvenilir bir yöntemdir ve İnternet’ten bireysel istemcilere geri gelen bağlantıları önler. Güvenlik duvarlı dağıtımlarda, tüm bağlantılar sunucudan tekrar İnternet’e değil, İnternet’ten sunucuya yapılır. Pasif mod, “güvenlik duvarı dostu” mod olarak da bilinir. FTP istemcisinin desteklediği daha güvenli dosya aktarım protokolleri (SFTP, FTPS gibi), daha güvenli hale gelir.
Kontrol Bağlantısı: FTP istemcisi, örneğin, FileZilla veya FileZilla Pro, genellikle 21 numaralı sunucu portuna bir bağlantı isteği gönderir. Bu, kontrol bağlantısıdır. Komut ve yanıtları göndermek ve almak için kullanılır. Tipik olarak bir kullanıcının bağlantı kurmak için FTP sunucusunda oturum açması gerekir, ancak oturum açmadan tüm içeriğini kullanılabilir kılan bazı sunucular vardır. Bu sunucular anonim (anonymous) FTP olarak bilinir.
Veri Bağlantısı: Dosyaları ve klasörü aktarmak için veri bağlantısı adı verilen ayrı bir bağlantı kullanıyoruz.
Bu bağlantı iki şekilde kurulabilir:
Aktif Mod: Bu modda, kullanıcı FTP istemcisi üzerindeki rastgele bir bağlantı noktasından (rasgele bağlantı noktası 1) sunucunun 21 numaralı bağlantı noktasına bağlanır. Sunucuya istemcinin hangi portuna bağlanması gerektiğini söyleyen “PORT” komutunu gönderir, yani (rastgele port 2). Sunucu, 20 numaralı bağlantı noktasından istemcinin belirlediği bağlantı noktasına, yani Rastgele Bağlantı Noktası 2’ye bağlanır. Bağlantı kurulduktan sonra, veri aktarımı bu istemci ve sunucu bağlantı noktası üzerinden gerçekleşir.
Pasif Mod: İstemcinin bir güvenlik duvarı tarafından engellendiği gibi bağlantı kabul edemediği durumlarda, pasif mod kullanılmalıdır. Bu en yaygın moddur çünkü günümüzde istemci güvenlik duvarının (ör. Windows Güvenlik Duvarı) arkasında bulunmaktadır. Bu modda, kullanıcı FTP istemcisi üzerindeki rastgele bir bağlantı noktasından (rasgele bağlantı noktası 1) sunucunun 21 numaralı bağlantı noktasına bağlanır. İstemciye sunucunun hangi bağlantı noktasına bağlanması gerektiğini, yani bağlantı kurmak için (rastgele bağlantı noktası 3) söyleyen “PASV” komutunu gönderir. İstemci, Random port 2’den sunucunun belirlediği porta, yani Random Port 3’e bağlanır. Bağlantı kurulduktan sonra, veri transferleri bu istemci ve sunucu portu üzerinden gerçekleşir.
Umarım sizler için faydalı bir içerik olmuştur, bir sonraki yazımızda görüşmek ümidiyle…