FortiGate & NGFW22 Mayıs 20266 dakika okuma

FortiGate FTP Helper Nedir? Pasif ve Aktif FTP Trafiğini Yönetme

FTP protokolü, NAT arkasındaki ortamlarda bağlantı sorunlarına yol açabilir. FortiGate'teki FTP Helper (ALG), bu sorunu otomatik olarak çözer. FTP Helper'ın ne yaptığını, nasıl çalıştığını ve ne zaman devre dışı bırakılması gerektiğini açıklıyoruz.

FortiGateFTP HelperALGNATFTPFirewall

FTP Protokolü ve NAT Sorunu

FTP (File Transfer Protocol), kontrol bağlantısı için TCP 21 portunu, veri aktarımı için ise ayrı bir port kullanır. Bu ikili port yapısı, NAT (Network Address Translation) arkasındaki ortamlarda ciddi sorunlara yol açar.

İki FTP modu vardır:

  • Aktif FTP: Sunucu, istemcinin belirttiği porta doğru veri bağlantısı kurar. NAT arkasındaki istemcilerde sunucu özel IP'ye erişemediği için bağlantı başarısız olur.
  • Pasif FTP: İstemci, sunucunun belirttiği porta bağlanır. Modern FTP istemcilerinde varsayılandır ancak NAT ortamında hâlâ sorun yaşanabilir.

FTP Helper (ALG) Nedir?

FTP Helper, FortiGate'in Application Layer Gateway (ALG) özelliğinin bir parçasıdır. FTP kontrol trafiğini (TCP 21) izleyerek, içindeki IP adresi ve port bilgilerini NAT çevirisine göre dinamik olarak günceller. Bu sayede FTP veri bağlantıları otomatik olarak kurulabilir hale gelir.

FortiGate, FTP Helper sayesinde şunları yapar:

  • FTP PORT ve PASV komutlarını dinler
  • Paket içindeki özel IP adresini public IP ile değiştirir
  • Dinamik veri kanalı için geçici firewall politikası açar
  • Veri transferi tamamlandığında geçici politikayı kapatır

FortiGate'te FTP Helper Yapılandırması

GUI Üzerinden Kontrol

FortiOS'ta FTP Helper varsayılan olarak etkindir. Durumu kontrol etmek için:

  1. Network → Helpers menüsüne gidin (bazı sürümlerde Policy & Objects → Helper)
  2. Listede ftp helper'ını bulun
  3. Port 21 üzerinde aktif olduğunu doğrulayın

CLI Üzerinden Kontrol

config system session-helper
    show
end

Çıktıda şuna benzer bir satır görmelisiniz:

edit 13
    set name ftp
    set protocol 6
    set port 21
next

FTP Helper'ı Devre Dışı Bırakmak

Belirli durumlarda FTP Helper'ı devre dışı bırakmak gerekebilir:

config system session-helper
    delete 13
end

Not: ID numarası (13) sisteme göre değişebilir. Önce show ile doğru ID'yi tespit edin.

FTP Helper Ne Zaman Sorun Çıkarır?

1. FTPS (FTP over SSL) Kullananlar

FTP Helper, şifresiz FTP trafiğini parse eder. FTPS (implicit/explicit TLS) kullanılıyorsa trafik şifreli olduğundan Helper içeriği okuyamaz ve bağlantıyı bozabilir. Bu durumda FTP Helper'ı devre dışı bırakmak gerekir.

2. Standart Dışı Port Kullananlar

FTP sunucunuz 21 dışında bir port kullanıyorsa (örn. 2121), Helper bu trafiği yakalamaz. Helper'ı farklı porta taşıyabilirsiniz:

config system session-helper
    edit 13
        set port 2121
    next
end

3. UTM/SSL İnceleme ile Çakışma

Bazı FortiGate sürümlerinde derin paket inceleme (DPI) ve FTP Helper aynı anda çalışırken çakışma yaşanabilir. Bu durumda loglarda "FTP bağlantısı kurulamadı" hatası görülür.

FTP Helper ve Firewall Politikası İlişkisi

FTP Helper aktif olduğunda, FortiGate veri kanalı için dinamik pinhole açar. Yani manuel olarak FTP veri portlarını (20 veya ephemeral portlar) firewall politikasına eklemenize gerek kalmaz.

Eğer FTP Helper'ı devre dışı bıraktıysanız, firewall politikanızda:

  • Aktif FTP için: TCP 20 portunu inbound olarak açın
  • Pasif FTP için: Sunucunun kullandığı ephemeral port aralığını açın (genellikle 49152-65535)

Tanılama Komutları

# FTP oturumlarını izle
diagnose sys session filter dport 21
diagnose sys session list

# FTP Helper loglarını gör
diagnose debug application ftp -1
diagnose debug enable

Özet: FTP Helper Açık mı Kapalı mı Olmalı?

Senaryo FTP Helper
Standart FTP, NAT arkası ✅ Açık olmalı
FTPS (TLS şifreli) ❌ Kapalı olmalı
Standart dışı port ⚙️ Port ayarı güncellenmeli
SFTP (SSH üzerinden) ❌ Helper gerekmez (TCP 22)

Sonuç

FTP Helper, NAT arkasındaki FTP bağlantılarını sorunsuz hale getiren FortiGate'in akıllı bir özelliğidir. Ancak FTPS veya standart dışı konfigürasyonlarda dikkatli yapılandırma gerektirir. Lider Network olarak FortiGate politika tasarımı, NAT yapılandırması ve uygulama katmanı sorunlarında NSE sertifikalı mühendislerimizle destek veriyoruz.