İçeriğe geç
Proxy Types 7 dk okuma 893 görüntülenme

FTP Proxy

Güvenli dosya aktarımı için FTP proxy kullanmanın faydalarını keşfedin. Güvenliği nasıl artırdığını ve ağ kısıtlamalarını nasıl aştığını öğrenin.

FTP Proxy

FTP proxy, bir FTP istemcisi ile FTP sunucusu arasında aracı olarak çalışarak dosya aktarımını proxy sunucusu üzerinden mümkün kılar; hem kontrol hem de veri bağlantısını yönetir ve bunu özellikle güvenlik duvarları veya Network Address Translation (NAT) cihazları gibi ağ sınırlarının ötesinde yapar.

FTP Bağlantı Modlarını Anlamak

File Transfer Protocol (FTP), her oturumda iki ayrı bağlantı kullanır:
1. Kontrol Bağlantısı: Komut göndermek (örneğin USER, PASS, LIST, GET, PUT) ve yanıt almak için TCP 21 numaralı portta (varsayılan) kurulan kalıcı bağlantı.
2. Veri Bağlantısı: Dosya verilerinin veya dizin listelerinin asıl aktarımı için kullanılan geçici bağlantı. Bu bağlantının nasıl kurulduğu FTP moduna göre değişir.

Aktif Mod FTP

Aktif modda FTP istemcisi kontrol bağlantısını sunucuya doğru başlatır. Bir veri aktarımı istendiğinde istemci sunucuya PORT komutu göndererek veri bağlantısı için dinleyeceği IP adresini ve port numarasını bildirir. FTP sunucusu ardından kendi TCP 20 numaralı portundan (varsayılan) belirtilen istemci IP'sine ve portuna doğru veri bağlantısını başlatır.

Aktif Modun Zorlukları:
Aktif mod, sunucu istemciye doğru bağlantı başlatmaya çalıştığı için güvenlik duvarlarının ardında çoğu zaman başarısız olur. İstemci, istenmeyen gelen bağlantıları engelleyen bir güvenlik duvarının arkasındaysa veri bağlantısı kurulamaz.

Client (Port X) --------> Server (Port 21) [Control Connection]
Client (Port Y) <-------- Server (Port 20) [Data Connection - Blocked by Firewall]

Pasif Mod FTP

Pasif modda FTP istemcisi hem kontrol hem de veri bağlantısını kendisi başlatır. Kontrol bağlantısı kurulduktan sonra istemci sunucuya PASV komutu gönderir. Sunucu, veri bağlantısı için dinleyeceği IP adresi ve port numarasıyla yanıt verir. İstemci ardından belirtilen sunucu IP'sine ve portuna veri bağlantısını başlatır.

Pasif Modun Avantajları:
Pasif mod genellikle güvenlik duvarlarıyla daha uyumludur; çünkü tüm bağlantıları istemci başlatır ve bu da güvenlik duvarı kurallarını basitleştirir.

Client (Port X) --------> Server (Port 21) [Control Connection]
Client (Port Y) --------> Server (Port Z)  [Data Connection]

FTP Proxy Nasıl Çalışır

FTP proxy sunucusu, FTP trafiğini araya girerek yakalar ve hem kontrol hem de veri bağlantılarının karmaşıklığını istemci adına yönetir. Bu, katı güvenlik duvarı politikalarının veya NAT'ın bulunduğu ortamlarda ya da güvenlik ve günlükleme uygulamak için kritiktir.

Proxy, FTP protokolünün komut ve yanıtlarını anlayan bir uygulama seviyesi ağ geçidi (ALG) gibi çalışır.

  1. İstemci proxy'ye bağlanır: FTP istemcisi, doğrudan FTP sunucusuna değil, FTP proxy sunucusuna bağlanacak şekilde yapılandırılır.
  2. Proxy FTP sunucusuna bağlanır: Proxy, istemci adına gerçek FTP sunucusuna bir kontrol bağlantısı kurar.
  3. Komutların Yakalanması ve Değiştirilmesi:
    • Aktif Mod (PORT komutu): İstemci PORT komutu gönderdiğinde kendi IP'sini ve portunu bildirir. Proxy bunu yakalar, istemcinin IP ve portunu kendi IP'si ve uygun bir portla değiştirir ve değiştirilmiş PORT komutunu FTP sunucusuna iletir. Proxy ardından belirtilen portu dinler. FTP sunucusu proxy'ye veri bağlantısını başlattığında, proxy bunu alır ve veriyi istemciye iletir.
    • Pasif Mod (PASV komutu): İstemci PASV komutu gönderdiğinde FTP sunucusu veri bağlantısı için kendi IP ve portuyla yanıt verir. Proxy bu yanıtı yakalar, sunucunun IP ve portunu kendi genel IP'si ve uygun bir portla değiştirir ve değiştirilmiş yanıtı istemciye iletir. İstemci ardından proxy'ye veri bağlantısı başlatır; proxy de FTP sunucusuna bir veri bağlantısı kurarak veriyi aktarır.

Bu süreç, iç ağ ayrıntılarının (istemci IP'leri, geçici portlar) dışarıya sızmamasını sağlar ve güvenlik duvarı kurallarının yalnızca proxy'ye giden/gelen bağlantılara izin vermesi yeterli olur.

FTP Proxy Türleri

SOCKS Proxy

SOCKS (Socket Secure) proxy, OSI modelinin 5. katmanında (Oturum Katmanı) çalışan genel amaçlı bir proxy'dir. İstemciden hedef sunucuya TCP bağlantılarını iletir. SOCKS, FTP kontrol bağlantısını taşıyabilse de uygulama farkındalığı yoktur ve FTP komutlarını yorumlayamaz. Bu da ne aktif ne de pasif FTP modunda veri bağlantıları için dinamik port atamalarını doğrudan yönetemeyeceği anlamına gelir.

  • FTP için SOCKS5: SOCKS5 proxy ilk kontrol bağlantısını sağlayabilir. Veri bağlantısı için ise FTP istemcisinin hem kontrol hem de veri bağlantısında SOCKS proxy'yi kullanacak şekilde açıkça yapılandırılması ve SOCKS proxy'nin gerekli giden bağlantılara izin vermesi gerekir. İstemci her iki bağlantıyı da SOCKS üzerinden tünelleyecek şekilde ayarlanabiliyorsa, SOCKS5 proxy'ler pasif mod FTP ile genellikle daha iyi çalışır.

Uygulama Seviyesi Ağ Geçidi (ALG) / Özel FTP Proxy

Uygulama seviyesi ağ geçidi (ALG) veya özel FTP proxy protokol farkındalığına sahiptir. PORT ve PASV komutları dahil FTP protokolünün inceliklerini anlar. Bu sayede veri bağlantısının kurulumunu etkili biçimde yönetmek için FTP kontrol kanalındaki IP adreslerini ve port numaralarını dinamik olarak yeniden yazabilir. Güvenlik duvarları, karmaşık manuel port yönlendirmesi gerekmeden FTP trafiğinin geçebilmesi için sıklıkla FTP ALG'leri içerir.

Şeffaf FTP Proxy

Şeffaf FTP proxy, istemcinin proxy kullanacak şekilde açıkça yapılandırılmasını gerektirmeden FTP trafiğini yakalar. Bu genellikle ağ trafiğinin proxy sunucusu üzerinden yönlendirilmesiyle, çoğunlukla güvenlik duvarı kurallarıyla (örneğin 21 numaralı port trafiğini proxy'ye yönlendirerek) sağlanır. İstemci doğrudan FTP sunucusuna bağlandığını sanır. Proxy ise özel bir FTP proxy ile aynı komut yakalama ve yeniden yazma işlemlerini yapar.

FTP Proxy Kullanmanın Faydaları

  • Güvenlik Duvarı Aşımı: Veri bağlantısı pazarlığına aracılık ederek, güvenlik duvarları veya NAT cihazlarının arkasındaki FTP istemcilerinin dış FTP sunucularına bağlanmasını (ve tersini) mümkün kılar.
  • Güvenlik:
    • Anonimlik: İstemcinin gerçek IP adresini FTP sunucusundan gizler.
    • Erişim Denetimi: Hangi FTP sunucularına veya kaynaklarına kimin erişebileceğinin merkezi olarak yönetilmesi.
    • İçerik Denetimi: Bazı gelişmiş proxy'ler aktarılan dosyaları zararlı yazılım veya politika ihlali açısından inceleyebilir (temel FTP proxy'lerinde daha az yaygındır).
  • NAT (Network Address Translation) Aşımı: FTP komutlarının yönlendirilemeyen özel IP adresleri içermesinden kaynaklanan sorunları çözer.
  • Günlükleme ve Denetim: Güvenlik denetimi ve uyumluluk için tüm FTP oturumlarının, verilen komutlar ve aktarılan dosyalar dahil, merkezi olarak kaydedilmesi.
  • Önbellekleme: Bazı proxy'ler sık erişilen dosyaları önbelleğe alarak sonraki isteklerin performansını artırabilir (geleneksel FTP proxy'lerinde daha az yaygındır ama mümkündür).

Zorluklar ve Dikkat Edilecekler

  • Performans Yükü: Proxy ek bir sıçrama ve işleme katmanı getirir; doğrudan bağlantıya kıyasla gecikmeyi artırıp verimi düşürebilir.
  • Yapılandırma Karmaşıklığı: Özellikle karmaşık ağ topolojilerinde bir FTP proxy kurmak ve sürdürmek zahmetli olabilir.
  • Uyumluluk Sorunları: Standart dışı FTP istemcileri veya sunucuları ya da standart dışı port aralıkları kullananlar, proxy'nin ALG'si yeterince sağlam değilse sorun yaşayabilir.
  • FTPS (SSL/TLS üzerinden FTP):
    • Açık (Explicit) FTPS: Kontrol bağlantısı şifresiz başlar ve ardından AUTH TLS veya AUTH SSL ile TLS'e yükseltilir. Veri bağlantısı da şifrelenir. FTP proxy veya ALG'nin komutları inceleyip yeniden yazabilmesi için TLS oturumunu anlaması ve sonlandırması (Man-in-the-Middle gibi davranması) gerekir. Bu, proxy'nin sunucunun sertifikasına sahip olmasını veya istemcilerin güvenmesi gereken kendi sertifikasını üretmesini gerektirir.
    • Örtük (Implicit) FTPS: Tüm FTP oturumu (kontrol ve veri) en baştan, genellikle 990 numaralı portta şifrelenir. FTP proxy, komutlar şifreli olduğu için kontrol kanalını inceleyemez veya değiştiremez. Bu senaryoda proxy basit bir TCP tüneli gibi davranır ve uygulama seviyesindeki yeteneğini kaybeder. Örtük FTPS için genellikle bir SOCKS proxy veya basit bir port yönlendirmesi kullanılır.
  • Kaynak Tüketimi: Özel FTP proxy'ler, özellikle yüksek sayıda eşzamanlı bağlantı veya büyük dosya aktarımlarında ciddi miktarda CPU ve bellek tüketebilir.

İstemci Tarafı Yapılandırma Örnekleri

Çoğu FTP istemcisi proxy yapılandırmasını destekler. Bu genellikle proxy sunucusunun IP adresi ve portunun girilmesini gerektirir.

Ortam Değişkenlerini Kullanma (ftp veya wget gibi komut satırı istemcileri için):

export ftp_proxy="http://proxy.example.com:8080"
export FTP_PROXY="http://proxy.example.com:8080"
# SOCKS proxy için
export all_proxy="socks5://proxy.example.com:1080"

İstemciye Özel Ayarlar (kavramsal):

  • FileZilla (GUI istemcisi): Edit > Settings > Connection > FTP Proxy. Buradan proxy türünü (SOCKS5, HTTP 1.1, Custom) seçebilirsiniz.
  • lftp (komut satırı istemcisi):
    set ftp:proxy-host proxy.example.com set ftp:proxy-port 8080

Proxy Sunucusu Yapılandırması (Kavramsal)

Özel FTP proxy'ler veya FTP ALG özelliği olan güvenlik duvarları protokol ayrıntılarını otomatik olarak halleder. Squid gibi genel amaçlı proxy'lerde ise belirli yapılandırmalar gerekebilir; ancak Squid öncelikle bir HTTP/HTTPS proxy'sidir ve temel tünelleme dışında doğrudan FTP ALG yetenekleri sınırlıdır.

Güvenlik duvarında FTP ALG örneği (kavramsal sözdizimi):

firewall {
    rule 1 {
        action accept
        source any
        destination any
        service ftp
        application-gateway ftp
    }
}

Bu kural, güvenlik duvarına tüm FTP trafiğine yerleşik FTP uygulama seviyesi ağ geçidini uygulamasını söyler; böylece veri bağlantısı pazarlığı için komutları inceleyip yeniden yazabilir.

Karşılaştırma: SOCKS Proxy ile Özel FTP Proxy

Özellik SOCKS Proxy (örn. SOCKS5) Özel FTP Proxy / FTP ALG
OSI Katmanı Oturum Katmanı (Katman 5) Uygulama Katmanı (Katman 7)
Protokol Farkındalığı Hayır, genel TCP iletimi Evet, FTP komutlarını anlar (PORT, PASV)
Karmaşıklık Temel tünelleme için daha basit Daha karmaşık, protokol ayrıştırma mantığı gerektirir
Aktif FTP Zor, çoğu zaman başarısız olur PORT komutlarını yeniden yazarak aktif FTP'yi yönetir
Pasif FTP İstemci iki bağlantıyı da tünellerse çalışır PASV yanıtlarını yeniden yazarak pasif FTP'yi yönetir
Güvenlik Temel anonimlik, IP/port bazlı erişim denetimi Gelişmiş güvenlik (içerik denetimi mümkün), ayrıntılı erişim denetimi, günlükleme
NAT Aşımı Kontrol bağlantısında yardımcı olabilir Hem kontrol hem veri için tam NAT aşımı
FTPS Desteği TCP tüneli gibi davranır (denetim yok) Denetim için TLS'i sonlandırabilir (açık FTPS), örtük FTPS'te tünel görevi görür
Performans Basit tünellemede daha düşük ek yük Derin paket incelemesi nedeniyle daha yüksek ek yük
Kullanım Senaryosu Genel tünelleme, temel engelleri aşma Sağlam FTP erişimi, güvenlik, uyumluluk, karmaşık ağ ortamları
Güncellendi: 03.03.2026
Kategoriye dön

Proxy'lerimizi deneyin

100+ ülkede 20,000+ proxy

support_agent
GProxy Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.