Blog Güvenlik

Juniper filtreleme

Juniper filtreleme
Netbudur Blog Altyapı, hosting ve sunucu rehberleri

Ağ Güvenliğinin Kilidi: Juniper Firewall Filtreleme Rehberi (JunOS)

Kurumsal ağlarda ve veri merkezlerinde trafiği yönetmek, sadece "kimin nereye gideceğine" karar vermek demek değildir; aynı zamanda ağınızı DDoS saldırılarından, yetkisiz erişimlerden ve gereksiz trafik yükünden korumak demektir.

Söz konusu yüksek performans ve kesintisiz ağ yönetimi olduğunda, Juniper’ın JunOS işletim sistemi sunduğu filtreleme mekanizmasıyla sektörün en güçlü silahlarından biridir.

Peki Juniper’da filtreleme mantığı nasıl çalışır? Bir firewall filtresi (ACL) nasıl yazılır ve uygulanır? Gelin, en sade anlatımla ve pratik örneklerle konuyu derinlemesine inceleyelim.

1. Juniper Filtreleme Mantığı: "Term" Yapısı

Juniper (JunOS) cihazlarında filtre yazarken diğer üreticilerden (örneğin Cisco) farklı bir felsefe kullanılır. JunOS, filtreleri oluştururken Term (Terim) adı verilen bloklar kullanır.

Bir filtre, birden fazla term bloğundan oluşabilir. Her bir term kendi içinde iki temel yapı barındırır:

  1. from (Koşul): Filtrenin hangi trafiği yakalayacağını belirler (Kaynak IP, hedef IP, port, protokol vb.).

  2. then (Aksiyon): Yakalanan trafiğe ne yapılacağını belirler (accept, discard, reject, count, log vb.).

⚠️ Çok Kritik Kural: Juniper filtrelerinin sonunda gizli bir reddetme (implicit discard) kuralı vardır. Yani, yazdığınız filtredeki hiçbir term bloğuna uymayan tüm trafik otomatik olarak engellenir (drop edilir). Bu yüzden filtrenin sonuna mutlaka izin verilmeyen her şeyi kabul eden bir "any-any" kuralı eklemelisiniz (tabii ki amacınız her şeyi engellemek değilse!).

2. Adım Adım Juniper Filtreleme Örnekleri

Sözü uzatmadan, doğrudan JunOS terminalinde kullanabileceğiniz en popüler 3 filtreleme senaryosuna göz atalım.

Senaryo 1: Sunucu Yönetim Portunu (SSH) Sadece Belirli IP'lere Açmak

Cihazınızın yönetim IP'sine (örneğin Loopback veya yönetim arayüzü) sadece sizin ofis IP'lerinizden SSH (Port 22) erişimi yapılmasını, diğer tüm dünyadan gelen SSH isteklerinin ise engellenmesini istiyorsunuz.

Ofis IP'niz: 192.168.10.50/32

Router Yönetim IP'niz: 10.0.0.1/32

 JunOS CLI Komutları:

Kod snippet'i
# 1. Filtreyi oluşturmaya başlayıp ilk term (izin) bloğunu yazalım
set firewall family inet filter YONETIM-FILTRESI term OFIS-ERISIM from source-address 192.168.10.50/32
set firewall family inet filter YONETIM-FILTRESI term OFIS-ERISIM from destination-port 22
set firewall family inet filter YONETIM-FILTRESI term OFIS-ERISIM from protocol tcp
set firewall family inet filter YONETIM-FILTRESI term OFIS-ERISIM then accept

# 2. Diğer tüm SSH isteklerini engelleyen ikinci term bloğunu yazalım
set firewall family inet filter YONETIM-FILTRESI term SSH-ENGELLE from destination-port 22
set firewall family inet filter YONETIM-FILTRESI term SSH-ENGELLE from protocol tcp
set firewall family inet filter YONETIM-FILTRESI term SSH-ENGELLE then discard

# 3. Geri kalan tüm normal internet trafiğinin (web, dns vb.) geçmesine izin verelim
set firewall family inet filter YONETIM-FILTRESI term GERI-KALAN-TRAFIK then accept

Senaryo 2: ICMP (Ping) Paketlerini Sınırlandırmak (Rate Limiting)

Dışarıdan gelen yoğun ping isteklerinin (ICMP) router’ın işlemcisini (Routing Engine) yormasını engellemek için ping trafiğine hız sınırı (policer) koyabilirsiniz.

 JunOS CLI Komutları:

Kod snippet'i
# 1. Sınır belirleyiciyi (Policer) tanımlayalım (Örn: Saniyede 1 Megabit ve 15k burst)
set firewall policer PING-SINIRLAYICI if-exceeding bandwidth-limit 1m
set firewall policer PING-SINIRLAYICI if-exceeding burst-size-limit 15k
set firewall policer PING-SINIRLAYICI then discard

# 2. Filtreyi oluşturup bu sınırlandırıcıyı ICMP trafiğine bağlayalım
set firewall family inet filter ICMP-KONTROL term ICMP-KISITLA from protocol icmp
set firewall family inet filter ICMP-KONTROL term ICMP-KISITLA then policer PING-SINIRLAYICI

# 3. Kalan trafiğin normal akışına izin verelim
set firewall family inet filter ICMP-KONTROL term DIGERLERI then accept

3. Filtreyi Arayüze (Interface) Uygulamak

Yazdığınız filtreler siz onları fiziksel veya mantıksal bir arayüze bağlayana kadar çalışmazlar. Filtreyi arayüze uygularken iki yön seçeneğiniz vardır:

  • input: Trafik arayüzden içeri girerken filtre uygulanır (En çok tercih edilen ve performanslı olan yöntemdir).

  • output: Trafik arayüzden dışarı çıkarken filtre uygulanır.

Yazdığımız YONETIM-FILTRESI'ni router’ın dış dünyaya bakan arayüzüne (ge-0/0/0.0) uygulayalım:

Kod snippet'i
set interfaces ge-0/0/0 unit 0 family inet filter input YONETIM-FILTRESI
commit

JunOS üzerinde yaptığınız değişikliklerin aktif olması için her zaman en sonda commit komutunu vermeniz gerektiğini unutmayın.

4. Filtreleme Performansını İzleme ve Sorun Giderme

Filtrelerinizin çalışıp çalışmadığını, hangi kuralın ne kadar paket yakaladığını görmek için JunOS bize çok pratik izleme araçları sunar:

1. Filtre İstatistiklerini Görme

Eğer term bloklarınızın sonuna then count SAYICI-ADI eklediyseniz, o kurala kaç paket takıldığını şu komutla anlık olarak görebilirsiniz:

Kod snippet'i
show firewall filter YONETIM-FILTRESI

2. Filtre Sayaçlarını Sıfırlama

Testlerinizi sıfırdan yapmak için sayaçları temizleyebilirsiniz:

Kod snippet'i
clear firewall filter YONETIM-FILTRESI

Son Söz: Juniper ile Donanımsal Güvenlik

Juniper donanımlarında firewall filtreleri, yazılım seviyesinde değil doğrudan ASIC (Application-Specific Integrated Circuit) çiplerinde işlendiği için mikro saniyeler seviyesinde gecikmeyle çalışır. Doğru tasarlanmış bir Juniper filtreleme mimarisi, ağınızı hem dış tehditlere karşı bir kale gibi korur hem de trafiğinizin akıcı kalmasını sağlar.

Juniper altyapınızda karmaşık filtreleme (ACL), DDoS koruma kuralları ve güvenli BGP yönlendirmeleri yapılandırmak için her zaman profesyonel network ekibimizden destek alabilirsiniz!