n8n sunucusunda firewall kurallarını okuma, açık portları yorumlama, UFW, iptables ve bulut güvenlik gruplarını güvenli şekilde kontrol etme rehberi.
n8n sunucusunda bağlantı hataları, webhook erişim sorunları veya panelin dış ağdan açılmaması çoğu zaman uygulamadan değil, güvenlik duvarı yapılandırmasından kaynaklanır. Bu nedenle n8n firewall kuralları okunurken yalnızca açık portlara değil, hangi kaynaktan hangi trafiğe izin verildiğine, varsayılan politikalara ve servis bazlı kurallara birlikte bakmak gerekir.
n8n genellikle 5678 portu üzerinden çalışır. Ancak ters proxy kullanılıyorsa dış dünyaya 80 ve 443 portları açılırken 5678 yalnızca yerel ağda veya localhost üzerinde erişilebilir bırakılabilir. Bu ayrım, gereksiz port açma riskini azaltır.
Kuralları incelerken önce sunucuda hangi firewall aracının aktif olduğunu belirlemek gerekir. Linux sunucularda en sık UFW, firewalld, iptables veya bulut sağlayıcısının güvenlik grupları kullanılır. Aynı anda birden fazla katman varsa, sadece işletim sistemi tarafındaki kurallara bakmak yeterli olmayabilir.
İlk adım, sunucuda hangi güvenlik mekanizmasının devrede olduğunu anlamaktır. Aşağıdaki komutlar temel kontrol için kullanılabilir:
sudo ufw status verbose
sudo firewall-cmd --state
sudo iptables -L -n -v
sudo ss -tulpn
ss -tulpn komutu firewall kuralı göstermez; ancak hangi servislerin hangi portları dinlediğini görmenizi sağlar. Örneğin n8n 5678 portunda dinliyorsa, firewall tarafında bu porta izin verilip verilmediği ayrıca kontrol edilmelidir.
Ubuntu tabanlı sunucularda UFW yaygın olarak kullanılır. sudo ufw status numbered komutu, kuralları numaralı şekilde listeler. Bu çıktı, hangi portun açık olduğunu ve kuralın IPv4 ya da IPv6 için geçerli olup olmadığını gösterir.
Örneğin 5678/tcp ALLOW Anywhere satırı, n8n portunun tüm kaynaklardan erişilebilir olduğunu ifade eder. Bu yapı test ortamında pratik olabilir; ancak üretim ortamında panel erişimi için IP kısıtlaması veya ters proxy tercih edilmelidir.
Action alanı trafiğe izin verilip verilmediğini, From alanı ise kaynağı gösterir. Eğer sadece belirli bir ofis IP adresinden erişim isteniyorsa kuralın “Anywhere” yerine ilgili IP bloğunu göstermesi beklenir.
iptables çıktısı UFW’ye göre daha teknik görünebilir. Burada INPUT zinciri özellikle önemlidir. n8n paneline dışarıdan erişim gerekiyorsa, ilgili TCP portu için ACCEPT kuralı bulunmalıdır. DROP veya REJECT politikası varsa ve n8n portu için açık bir izin yoksa bağlantı başarısız olur.
Komut çıktısında sayaç değerleri de faydalıdır. Paket ve byte değerleri artıyorsa ilgili kurala trafik geliyordur. Değerler sıfırsa, trafik başka bir kural tarafından yakalanıyor olabilir veya sunucuya hiç ulaşmıyor olabilir.
AWS, Azure, Google Cloud, Hetzner veya benzeri platformlarda sunucu firewall kuralları dışında güvenlik grupları da trafiği filtreleyebilir. İşletim sistemi içinde port açık görünse bile bulut panelinde izin yoksa bağlantı sağlanamaz.
Bu noktada 80 ve 443 portları için gelen trafik izinleri, n8n doğrudan yayınlanıyorsa 5678 portu, SSH için ise 22 portunun kaynak kısıtları kontrol edilmelidir. SSH portunu herkese açık bırakmak yerine sabit IP ile sınırlamak kurumsal güvenlik açısından daha sağlıklıdır.
n8n firewall kuralları değerlendirilirken amaç yalnızca “çalışıyor mu?” sorusuna yanıt vermek olmamalıdır. “Gereğinden fazla açık port var mı?”, “Panel internete doğrudan mı açık?”, “Webhook erişimi ile yönetim paneli aynı güvenlik seviyesinde mi?” gibi sorular da yanıtlanmalıdır.
Webhook kullanımı varsa dış erişim gerekebilir; ancak yönetim arayüzü için ek koruma uygulanmalıdır. Ters proxy, HTTPS, temel erişim kısıtlamaları ve mümkünse IP bazlı filtreleme birlikte ele alındığında daha kontrollü bir yapı oluşur.
En yaygın hata, bağlantı sorunu yaşanınca tüm portları açmaktır. Bu yaklaşım kısa vadede erişimi kolaylaştırsa da saldırı yüzeyini büyütür. Bir diğer hata IPv6 kurallarını kontrol etmemektir. IPv4 tarafında kapalı görünen bir servis, IPv6 üzerinden erişilebilir durumda olabilir.
Kuralları değiştirirken önce mevcut yapı yedeklenmeli, ardından tek tek ve test edilerek ilerlenmelidir. Özellikle uzak sunucularda SSH kuralı yanlış silinirse sunucuya erişim kaybedilebilir. Kritik değişikliklerden önce sağlayıcı panelinden konsol erişiminin hazır olduğundan emin olmak güvenli bir çalışma alışkanlığıdır.