İçeriğe geç

FORTIGATE CLI Kullanımı ile Problem Analizi Yapma -1

Malumunuz yeni nesil güvenlik duvarlarının binlerce özelliği & ayarı var. Her zaman yaşanılan sorunun tespiti web arayüzünden yapılamayabiliyor.  Bu gibi durumlarda elimizin altında bulunan diğer bir enstrümanı, Fortigate CLI ’yı kullanabiliriz. Bazıları için korkutucu görünen bu siyah ekranın ne kadar işe yarayabileceğini tecrübe ettiğiniz ölçüde biliyorsunuzdur.

2 bölümden oluşacak bu yazı serisinde sistemsel sorunların, L2-3-4-5-7 katmanlarda yaşanabilecek sorunların tespit edilmesinde yararlı olabilecek CLI komutlarını inceleyeceğiz.

Birinci bölümde, muhtemelen en çok işimize yarayacak olan ve her an kullanabileceğimiz komuttan bahsedeceğiz: sniffer.

Sniffer

VM dahil tüm Fortigate modellerinde bulunan entegre sniffer sayesinde interfacelere gelen & giden tüm paketleri istediğiniz gibi filtreleyerek inceleyebilirsiniz. Bu sayede örneğin ARP paketlerini takip ederek L2 seviye sorunları inceleyebilir, SYN-ACK paketlerini takip ederek L4 seviye sorunlar hakkında bilgi edinebilirsiniz. Sniffer kullanımı Linux’taki tcpdump ile benzerdir.

Sniffer komut dizilimi standardı aşağıdaki gibidir:

#diagnose sniffer packet <interface> <’filter’> <verbose> <count> a

<interface> : dinlemek istediğiniz interface adını yazabilir veya tüm interfacelerden gelen paketleri dinlemek için any yazabilirsiniz.

<’filter’> : belirlediğiniz interface’de sadece bu kısma yazdığınız filtrelere uyan paketler gösterilir. ‘none’ yazılması halinde yakalanan paketlere filtre uygulanmaksızın tümü gösterilir.

<verbose> : dinlenen paketlerin header & data & interface bilgilerinden hangilerinin gösterileceğini belirlediğimiz kısımdır. 1-6 arasında değişir, her rakamın yarattığı çıktı farklı bilgileri içerir. Çoğu zaman 4. Seviye verbose işinizi görecektir.

<count> : paket yakalama işlemi başladığı andan sonra kaçıncı pakette dinlemenin durdurulacağını belirler.

a : dinleme çıktılarının başına paketin yakalandığı tarih ve saat bilgisi ekler.

Daha iyi anlaşılabilmesi için bazı komutlar (filtreler) ve bu komutların çıktılarını inceleyelim:

fortigate-lab # diagnose sniffer packet any

diagnose sniffer packet any

Bu komutta herhangi bir filtreleme yapılmadığı için tüm interfacelerden gelen giden tüm paketler görünüyor. Saniyede binlerce satır çıktı üretildiği için de incelemek imkansız.

fortigate-lab # diagnose sniffer packet any ” 4

fortigate-lab # diagnose sniffer packet any '' 4

Komut sonunda verbose=4 belirtildiği için bir önceki komutun çıktısından farklı olarak paketin hangi interfaceden (port3) geldiğini de gösterir. Bir sniffer komutunda filtreden sonra verbose kısmına 4 yazarsanız paketin hangi porttan geldiğini görebilirsiniz. Any kelimesinden sonra konulan 2 adet ‘ ise herhangi bir filtre kullanılmayacağını belirtir. ‘’ yerine ‘none’ da kullanabilirsiniz.

fortigate-lab # diagnose sniffer packet any ‘none’ 4 10 a

fortigate-lab # diagnose sniffer packet any 'none' 4 10 a

Bir önceki maddede de belirtildiği gibi dinlenen paketler filtrelenmek istenmiyorsa <interface> kısmından sonra ‘none’ yazılır. <verbose> = 4 kısmından sonra <count>=10 belirtildiği için sadece ilk yakalanan 10 paketin bilgileri yazdırılır ve sniffer durur. Komut sonuna belirtilen a harfi ile paketlerin yakalandığı gerçek zaman bilgisi de çıktı satırlarının başına yazdırılır.

Fortigate CLI Sniffer Filtrelerin aktif kullanımı:

Kaynak – Hedef IP adresi Filtreleri

<filter> kısmına tek tırnak işaretinin içine yazabileceğiniz aşağıdaki filtrelerle trafik dinlemesini yaptığınız noktayı daraltabilirsiniz. Örneğin ‘src host x.x.x.x’ filtresi sadece kaynak IP si x.x.x.x olan paketleri yakalayacaktır ‘dst host y.y.y.y’ filtresi ise sadece hedef IP adresi y.y.y.y olan paketleri size gösterecektir. Farklı filtreleri bir arada kullanmak için aralarına and & or ifadeleri koyabilirsiniz.

1)Aşağıdaki örnekte 10.10.4.41 IP adresine sahip bir PC’den 8.8.8.8’e ping atarken yakalanan paketleri görebilirsiniz. Beklendiği üzere kaynak IP PC, hedef IP Google olarak belirlenmiş filtrede yakalanan paketler echo request paketleridir. Tam tersi şekilde kaynak IP Google, hedef IP PC olarak belirlenmiş filtredeki paketler ise echo reply paketleridir.

fortigate-lab #diagnose sniffer packet any ‘src host 8.8.8.8 and dst host 10.10.4.41 ‘ 4 3 a
fortigate-lab #diagnose sniffer packet any ‘src host 10.10.4.41 and dst host 8.8.8.8 ‘ 4 3 a çıktıları aşağıdaki gibidir.

diagnose sniffer packet any 'src host

Port Numarasına göre filtreleme

Aşağıdaki örnek, kaynak IP adresi 10.10.4.41 ve hedef portu TCP 443 olan paketlerin filtrelenmesi için kullanılabilir.

fortigate-lab #  diagnose sniffer packet any ‘src host 10.10.4.41 and tcp and port 443 ‘ 4 3 a

diagnose sniffer tcp 443

Filtre kısmını ‘ udp and port 53 ‘ olarak ayarladığınız bir komutun çıktısında gelen giden tüm DNS paketlerini görebilirsiniz.

fortigate-lab # diagnose sniffer packet any ‘ udp and port 53 ‘ 4 3 a

fortigate sniffer

ICMP paketlerini görmek için:

Ping ve Tracert (traceroute) paketleri birer ICMP paketleridir. Aşağıdaki filtre ile kaynak veya hedef belirtilmeksizin belirttiğimiz bir host IP’sine gelen veya giden ICMP paketleri incelenebilir.

fortigate-lab # diagnose sniffer packet any ‘host 10.10.4.41 and icmp ‘ 4 6 a

fortigate cli

Fortigate’in tsharkı diyebileceğimiz “sniffer” sayesinde özellikle layer 2 – 3 – 4 katmanlarında yaşanabilecek sorunlar detaylı incelemeler sonunda tespit edilebilir.

Bu yazının devamı için buraya tıklayabilirsiniz.

Ref: http://kb.fortinet.com/kb/viewContent.do?externalId=11186

“FORTIGATE CLI Kullanımı ile Problem Analizi Yapma -1” hakkında 2 yorum

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir