Kurumsal Network Kurulumu

FortiGate Firewall SNMP Ayarı: İzleme Sistemine Bağlamak

FortiGate Firewall SNMP ayarı: NSA'ya göre SNMPv3 ve şifreleme, izleme sunucusunun geçtiği üç kapı, CPU ve oturum OID'leri, açık metin giden v2c ve trap.

İlker Pehlivan

FortiGate Firewall SNMP ayarı, cihazın CPU, bellek, oturum ve arayüz sayaçlarını bir izleme sisteminin okumasına açar ve önemli olaylarda o sisteme kendiliğinden haber gönderir. NSA’nın ağ cihazları için tarif ettiği düzende SNMPv3 kullanılır, kimlik doğrulama ve şifrelemeyle; erişim yalnız izleme sunucusunun adresine verilir. Ayar System → SNMP ekranında yapılır.

Bu yazı FortiGate Firewall yapılandırma rehberimizin 7. adımıdır. Lab’da izleme sunucusunun soruları üç ayrı kapıdan geçmeden cevap almadı ve v2c community’si ağda açık metin gitti.

Örnekteki sınır kapısında merkez, kulübenin durumunu iki yoldan öğrenir:

  1. Kadranlar: bir müfettiş düzenli turlarla kulübeye gelir, duvardaki kadranları okur ve defterine yazar. Soran merkezdir. FortiGate’te bu SNMP sorgusudur.
  2. İşaret kolu: bir şey olduğunda kulübe müfettişi beklemez, çatısındaki işaret kolunu kendisi kaldırır. Haber veren kulübedir. FortiGate’te bu trap’tir.

Bu yazı, Kurumsal Network Kurulumu hizmetimizde izlemeye aldığımız her FortiGate’te kurduğumuz bağlantıyı anlatır: firewall kendi durumunu kime, nasıl söylüyor?

FortiGate Firewall SNMP ayarı benzetmesi: sınır kapısı kulübesinin duvarındaki üç kadranı merkezden gelen müfettiş panosuna yazıyor, kulübenin çatısındaki işaret direğinin kolu kalkmış
Merkez kulübenin durumunu iki yoldan öğrenir: kadranları düzenli okuyarak ve kulübenin kendiliğinden kaldırdığı işaretle. SNMP'de ilki sorgu, ikincisi trap'tir.

FortiGate SNMP ile Ne Söyler? Fabrika Ayarında Kapalı

SNMP’nin iki yönü vardır. İzleme sistemi cihaza düzenli aralıkla soru sorar ve sayaçları okur (sorgu, UDP 161). Cihaz da seçili bir olay olduğunda sorulmayı beklemeden haber gönderir (trap, UDP 162). İki yönün nasıl çalıştığını SNMP nedir yazımızda anlattık.

Fabrika ayarında FortiGate’in SNMP ajanı kapalıdır, community ya da kullanıcı tanımlı değildir. Lab cihazımın fabrika yapılandırması:

FortiGate CLI Çıktısı
config system snmp sysinfo
    set status disable
    set trap-high-cpu-threshold 80
    set trap-low-memory-threshold 80
    set trap-log-full-threshold 90
end

Son üç satır trap eşikleridir: CPU yüzde 80’i, bellek kullanımı yüzde 80’i, log diski yüzde 90’ı geçince cihaz haber verir. Bu eşikler ancak SNMP açılınca bir anlam kazanır.

FortiGate’te SNMP Nasıl Olmalı?

SNMPv3 kullanılır, kimlik doğrulama ve şifrelemeyle (authPriv). v1 ve v2c kapalı kalır, okuma-yazma community’si hiç açılmaz. Erişim yalnız izleme sunucusunun adresine verilir ve SNMP yalnız yönetim arayüzünde açılır. İzleme sunucusu, yönetici girişlerinin geldiği yönetim ağında durur.

Bu düzeni iki kaynak birlikte tarif ediyor:

  1. NSA, Network Infrastructure Security Guidance rehberinde (Mart 2022, sürüm 1.0) SNMP v1 ve v2c’yi Telnet ve HTTP ile birlikte şifresiz yönetim servisleri arasında sayıyor ve kapatılmasını istiyor (bölüm 7.1). Okuma-yazma community’leri kaldırılır ve SNMPv3’e geçilir (bölüm 7.8). SNMPv3 hem kimlik doğrulama hem şifrelemeyle kullanılır ve erişim listesiyle yalnız yetkili adreslere açılır (bölüm 7.11.3).
  2. Fortinet, kendi teşhis notunda yönetici hesaplarının güvenilen adreslerinin web arayüzünü, SSH’ı ve SNMP’yi birlikte kapsadığını yazıyor. FortiOS 7.2.5 ve 7.4.0’dan beri izleme sunucusunun adresi en az bir yöneticinin listesinde /32 olarak yazılı olmalı; adresi kapsayan bir alt ağ yetmiyor.

Lab cihazımın fabrika ayarlarını bu önerilerle yan yana koydum:

AyarNeredeLab cihazımın fabrika ayarıOlması gereken
SNMP ajanıSystem → SNMPKapalıİzleme varsa açık
v1 ve v2cCommunity formuAçılınca v1 ve v2c, sorgu ve trap dördü açıkKapalı; yalnız SNMPv3
SNMPv3 güvenlik seviyesiKullanıcı formuNo Authentication; açılınca SHA1Authentication + Private, SHA256 ve AES
İzinli adres (Hosts)Community ve kullanıcı formuBoşYalnız izleme sunucusu
Arayüzde SNMPNetwork → InterfacesKapalıYalnız yönetim arayüzünde
Yönetici güvenilen adresleriSystem → AdministratorsHesaba göreİzleme sunucusu yönetim ağında. 7.2.5 ve sonrasında adresi /32 olarak bir yöneticide

Lab’da izleme sunucusu, sunucu ağındaki ntp01 (192.168.1.15) ve üstünde net-snmp araçları çalışıyor. Bu, lab’ın bir kısıtı: doğru düzende izleme sunucusu yönetim ağında durur, lab ise ev ağında kurulu olduğu için sunucuyu başka bir ağda tutuyor. Aşağıdaki güvenilen adres bulgusu bu yüzden ortaya çıktı. Kurumda bu Cacti, Zabbix ya da benzeri bir sistemdir; Cacti’nin kurulumunu Cacti kurulum rehberimizde anlattık.

Bir SNMP Sorusu Hangi Kapılardan Geçer?

Müfettiş kulübeye gelip kadranları okumak ister. Kulübeye girebilmesi için üç şeyin aynı anda doğru olması gerekir:

  1. Kapı açık mı? Kulübenin o tarafa bakan kapısı müfettişe açık olmalı. FortiGate’te bu, arayüzün Administrative Access listesindeki SNMP işaretidir.
  2. Nöbetçinin listesinde mi? Kapıdaki nöbetçi yalnız izinli kişilerin listesine bakar. FortiGate’te bu liste, yönetici hesaplarının güvenilen adresleridir; web arayüzüne ve SSH’a giren yöneticiler için tutulan liste SNMP’yi de süzer.
  3. Defterde adı ve parolası doğru mu? İçerideki görevli müfettişin adını ve parolasını deftere bakarak doğrular. FortiGate’te bu, community’nin ya da SNMPv3 kullanıcısının Hosts listesi ve parolasıdır.

Örnekteki sınır kapısında üç engelin ortak bir huyu var: hiçbiri müfettişe neden içeri alınmadığını söylemez. Kapı kapalıysa da, nöbetçi onu tanımıyorsa da, parola yanlışsa da müfettiş aynı şeyi görür: kimse cevap vermez.

Lab’da üç kapıyı da tek tek kapalıyken ölçtüm ve üçünde de sorgu aynı biçimde bitti:

Çıktı
Timeout: No Response from 192.168.10.1.
Bir SNMP sorusunun geçtiği üç kapı. İzleme sunucusu, yani müfettiş, 192.168.1.15'ten SNMPv3 ile FortiGate'e soru sorar. Soru önce arayüz kapısından geçer: Administrative Access listesinde SNMP işaretli olmalı. Sonra nöbetçinin listesinden: izleme sunucusunun adresi en az bir yöneticinin güvenilen adresleri arasında, /32 olarak olmalı. Sonra defterden: community ya da SNMPv3 kullanıcısının Hosts listesi ve parolası doğru olmalı. Üçü geçilince FortiGate kadranlarını, yani CPU, oturum ve trafik sayaçlarını okutur. Olay olunca FortiGate trap'i, yani işaret kolunu, UDP 162'den kendisi gönderir. Kapılardan biri kapalıysa cevap gelmez ve üçü de aynı sessizliği üretir. İzleme sunucusu müfettiş · 192.168.1.15 SNMPv3 sorusu FortiGate (gmfw01) kulübenin kadranları CPU, oturum, sayaçlar 1. kapı 2. nöbetçi 3. defter arayüzde SNMP işareti güvenilen adres (/32) Hosts ve parola trap: işaret kolu, olay anında UDP 162'den kendiliğinden Kapılardan biri kapalıysa cevap gelmez; üçü de aynı sessizliği üretir. Bir SNMP sorusunun geçtiği üç kapı. İzleme sunucusu, yani müfettiş, 192.168.1.15'ten SNMPv3 ile FortiGate'e soru sorar. Soru önce arayüz kapısından geçer: Administrative Access listesinde SNMP işaretli olmalı. Sonra nöbetçinin listesinden: izleme sunucusunun adresi en az bir yöneticinin güvenilen adresleri arasında, /32 olarak olmalı. Sonra defterden: community ya da SNMPv3 kullanıcısının Hosts listesi ve parolası doğru olmalı. Üçü geçilince FortiGate kadranlarını, yani CPU, oturum ve trafik sayaçlarını okutur. Olay olunca FortiGate trap'i, yani işaret kolunu, UDP 162'den kendisi gönderir. Kapılardan biri kapalıysa cevap gelmez ve üçü de aynı sessizliği üretir. İzleme sunucusu müfettiş · 192.168.1.15 SNMPv3 sorusu 1. kapı SNMP işareti 2. nöbetçi güvenilen /32 3. defter Hosts, parola FortiGate (gmfw01) kulübenin kadranları CPU, oturum, sayaçlar Kesik çizgi trap: olay anında UDP 162'den. Kapılardan biri kapalıysa cevap gelmez; üçü de aynı sessizliği üretir.
Müfettiş kadranları ancak kapı açık, nöbetçi onu tanıyor ve defterdeki adı ile parolası doğruysa okur. İşaret kolunu ise kulübe kendisi kaldırır.

FortiGate’te SNMP Ajanı ve SNMPv3 Kullanıcısı

Ayardan önce üç şey hazır olur:

  1. İzleme sunucusu ve adresi: lab’da ntp01, 192.168.1.15.
  2. FortiGate’ten izleme sunucusuna yol: lab’da yönetim ağından sunucu ağına bir statik rota var; trap’ler bu yoldan gider.
  3. SNMPv3 için iki parola: biri kimlik doğrulama, biri şifreleme için. Lab’da parola yöneticisinin ürettiği 24 karakterlik iki ayrı dizi.

Ajan System → SNMP ekranında açılır:

  1. SNMP Agent: açılır.
  2. Description, Location ve Contact Info: izleme sisteminde cihazın kimliği olarak görünür. Cihaza yazdığım her ad gibi Türkçe harfsiz yazdım (Sistem odasi kabin 1).
  3. Apply ile kaydedilir.
FortiGate SNMP ekranı, System Information bölümü: açık SNMP Agent anahtarı ile Description, Location ve Contact Info alanları kırmızı çerçeveyle işaretli
Ajanın üç alanı izleme ekranında cihazın kimliği olur: ne olduğu, nerede durduğu ve kimin sorumlu olduğu.

Aynı kaydın komut satırındaki karşılığı:

FortiGate CLI
config system snmp sysinfo
    set status enable
    set description "Genel merkez firewall"
    set contact-info "ilker.pehlivan"
    set location "Sistem odasi kabin 1"
end

SNMPv3 kullanıcısı aynı ekrandaki SNMP v3 tablosunda Create New ile açılır:

  1. User Name: lab’da izleyici.
  2. Security Level: fabrika ayarında No Authentication seçili gelir, yani kimlik doğrulama yok. Authentication seçilir; Authentication Algorithm fabrika ayarında SHA1 gelir, SHA256 yapılır ve parolası girilir.
  3. Private: seçilir; Encryption Algorithm AES kalır ve ikinci parola girilir. Listede DES de var; artık güvenli sayılmıyor.
  4. Hosts: izleme sunucusunun adresi, 192.168.1.15. Formun fabrika hâlinde gelen boş ikinci satır silinir.
FortiGate New SNMP User formunda kullanıcı izleyici, Security Level olarak Authentication SHA256 ve Private AES, Hosts altında 192.168.1.15; güvenlik seviyesi ve adres kırmızı çerçeveyle işaretli
Form kimlik doğrulamasız gelir. Authentication ve Private birlikte seçilince soru da cevap da şifreli gider.

Burada arayüzün bir tuzağı var. Kullanıcıyı OK ile kaydettim, liste onu gösterdi, ama CLI’da kullanıcı yoktu ve SNMPv3 sorusu cevapsız kaldı. Sayfanın altındaki Apply’a basınca kullanıcı yapılandırmaya yazıldı ve aynı soru cevap aldı. OK listeyi, Apply cihazı günceller.

Aynı kaydın komut satırındaki karşılığı, parolalar cihazda şifreli saklandığı için kısaltılmış hâliyle:

FortiGate CLI
config system snmp user
    edit "izleyici"
        set notify-hosts 192.168.1.15
        set security-level auth-priv
        set auth-proto sha256
        set auth-pwd ENC ...
        set priv-pwd ENC ...
    next
end

priv-proto satırı görünmüyor, çünkü AES fabrika değeridir. NSA AES-192 ve AES-256’da üreticiler arası uyumsuzluk görüldüğünü, gerekirse AES-128’in kullanılmasını yazıyor (bölüm 7.11.3). SNMP’de “AES”, RFC 3826’nın tanımladığı 128 bitlik AES’tir; FortiGate’in listesinde AES256 ayrı bir seçenek olarak duruyor.

Arayüz Kapısı: Administrative Access

Kullanıcı tanımlıyken ilk soru zaman aşımına düştü. FortiGate bir yönetim protokolünü yalnız o protokolün açık olduğu arayüzde dinler; bunu yönetim erişimi yazımızda ölçtük. Network → Interfaces → yonetim (port1) → Administrative Access listesinde SNMP işaretlenir:

FortiGate Edit Interface ekranında yonetim (port1) arayüzünün Administrative Access listesinde HTTP, PING, SSH ve SNMP işaretli; SNMP kırmızı çerçeveyle işaretli
SNMP, izleme sunucusunun soruları hangi arayüzden geliyorsa o arayüzde işaretlenir. İnternete bakan arayüzde hiçbir zaman işaretlenmez.

Bağlı olduğunuz arayüzü düzenlerken FortiGate bir onay ister: You are currently connected on this interface. Are you sure you want to continue?, yani şu an bu arayüz üzerinden bağlısınız, devam etmek istediğinize emin misiniz? Onaydan sonra soru yine cevapsız kaldı. İkinci kapı kapalıydı.

Nöbetçinin Listesi: Yönetici Güvenilen Adresleri

Bu lab’da bütün yönetici hesapları yalnız yönetim ağından (192.168.10.0/24) giriş kabul ediyor. İzleme sunucusu ise sunucu ağında, 192.168.1.15. Paket yakalamada soru FortiGate’e gidiyor, cevap gelmiyordu. Adresi geçici olarak bir yöneticinin listesine ekleyince soru cevap aldı, çıkarınca yine sustu. Fortinet’in yukarıdaki notunun dediği budur: güvenilen adres listesi SNMP’yi de süzer.

Doğru düzende bu sorun çıkmıyor. İzleme sunucusu yönetim ağındaysa yöneticilerin güvenilen adres aralığı onu zaten kapsar. Bunu lab’da ölçtüm: ntp01’in yönetim ağında da bir adresi var (192.168.10.15), soruyu bu adresten sordum. Bu adres için hiçbir yöneticide ayrı bir satır yoktu, yalnız 192.168.10.0/24 aralığı vardı:

Çıktı
02:37:55.960740 IP 192.168.10.15.60233 > 192.168.10.1.161:  F=r U="" E= C="" GetRequest(14)
...
02:37:55.961906 IP 192.168.10.1.161 > 192.168.10.15.60233:  F=ap U="izleyici" [!scoped PDU]9b_7a_6e_09_50_8f_93_f0_e9_af...

FortiGate cevap verdi ve snmpget cihazın adını okudu (gmfw01.ad.sistemkusu.com). Ağ segmentasyonu, yani yönetim trafiğinin kendi ağında toplanması, burada da işi kendiliğinden çözüyor.

Sürüme dikkat: Fortinet’in 7.2.5 ve 7.4.0 notuna göre bu sürümlerde adresi kapsayan bir alt ağ artık yetmiyor: adresin /32 olarak yazılması gerekiyor, yoksa FortiGate trafiği düşürüyor. Lab cihazım 7.0.10 olduğu için bunu ölçemedim.

7.2.5 ya da daha yeni bir sürümde izleme sunucusu yönetim ağında olsa bile adresi bir yöneticinin listesine /32 olarak eklenir. Nasıl ekleneceği aşağıdaki kutuda.

FortiGate Edit Administrator ekranında ag-yoneticileri kaydının Restrict login to trusted hosts bölümünde Trusted Host 1 192.168.10.0/24 ve kırmızı çerçeveyle işaretli Trusted Host 2 192.168.1.15/32
Yönetim ağı dışındaki izleme sunucusu /32 olarak yazıldı. Bu satır, o adresten yönetici girişine de kapıyı açar.

İzleme Sistemi SNMPv3 Desteklemiyorsa: v2c Community

Eski bir izleme sistemi SNMPv3 konuşmuyorsa v2c community’si açılır ve aynı kapılar onun için de geçerlidir. SNMP v1/v2c tablosunda Create New ile:

  1. Community Name: lab’da izleme. Paylaşılan bir kelimedir ve parola gibi seçilir.
  2. Hosts: izleme sunucusunun adresi. Alanı boş bırakmak, community’yi bilen her adrese cihazı okutmak demektir.
  3. Queries ve Traps altında v1 Enabled: kapatılır. Formun fabrika hâlinde v1 ve v2c, sorgu ve trap için dördü birden açık geliyor; v1 64 bitlik trafik sayaçlarını taşımıyor.
FortiGate New SNMP Community formunda community adı izleme, Hosts altında 192.168.1.15, Queries ve Traps altında v1 Enabled kapalı; adres ve iki v1 anahtarı kırmızı çerçeveyle işaretli
Community yalnız izleme sunucusunun adresine açıldı ve fabrika ayarında açık gelen v1 kapatıldı.

Lab’da v2c’yi aşağıdaki ölçümler bitince sildim; cihazda yalnız SNMPv3 kullanıcısı kaldı.

FortiGate SNMP Ayarını Doğrulamak: Hangi Değerler Okunur?

Sistem grubunun beş değeri tek sorguda geldi:

Çıktı
iso.3.6.1.2.1.1.1.0 = STRING: "Genel merkez firewall"
iso.3.6.1.2.1.1.5.0 = STRING: "gmfw01.ad.sistemkusu.com"
iso.3.6.1.2.1.1.6.0 = STRING: "Sistem odasi kabin 1"
iso.3.6.1.2.1.1.4.0 = STRING: "ilker.pehlivan"
iso.3.6.1.2.1.1.3.0 = Timeticks: (2832396) 7:52:03.96

Cihazın adı (sysName), DNS ayarı yazımızda verdiğim yerel alan adıyla birlikte geliyor. Açıklama, konum ve iletişim de formdaki değerlerdir.

Arayüz sayaçlarını okurken iki şeye dikkat etmek gerekiyor:

  1. Port adları ifDescr’de değil ifName’de. Standart arayüz açıklaması (ifDescr) boş geldi; port1, port2, port3 adları ifName’de, arayüz takma adları (yonetim, ic-ag, dis-ag) ifAlias’ta duruyor. İzleme sisteminde grafikleri adlandırırken bu iki alan kullanılır.
  2. Trafik 64 bitlik sayaçtan okunur. İç ağdan 5.000.000 baytlık bir dosya indirdim; port2’nin 64 bitlik çıkış sayacı (ifHCOutOctets) 5.228.921 bayt arttı: veri ve paket başlıkları.

Firewall’a özel değerler Fortinet’in kendi MIB ağacında:

Çıktı
iso.3.6.1.4.1.12356.101.4.1.1.0 = STRING: "v7.0.10,build0450,230221 (GA.M)"
iso.3.6.1.4.1.12356.101.4.1.3.0 = Gauge32: 10
iso.3.6.1.4.1.12356.101.4.1.4.0 = Gauge32: 46
iso.3.6.1.4.1.12356.101.4.1.8.0 = Gauge32: 37

Satırlar sırasıyla sürüm, CPU kullanımı (yüzde 10), bellek kullanımı (yüzde 46) ve oturum sayısıdır (37). Bu adların izleme sisteminde görünmesi için Fortinet MIB dosyaları gerekir; System → SNMP ekranının üstündeki Download FortiGate MIB File bağlantısından indirilir. Değerleri v2c community’siyle okudum; SNMPv3 kullanıcısı aynı ağaçtan aynı değerleri döndürüyor.

v2c ile SNMPv3 Farkı: Kartpostal ve Kapalı Zarf

v2c’nin zayıflığını paket yakalamayla gördüm. İzleme sunucusunda bir sorgu atarken ağı dinledim:

Çıktı
08:53:22.814848 IP 192.168.1.15.43967 > 192.168.10.1.161:  C="izleme" GetRequest(28)  .1.3.6.1.2.1.1.5.0
08:53:22.815333 IP 192.168.10.1.161 > 192.168.1.15.43967:  C="izleme" GetResponse(54)  .1.3.6.1.2.1.1.5.0="gmfw01.ad.sistemkusu.com"

Community (C="izleme") hem istekte hem cevapta açık metin duruyor; cevabın içeriği de. v2c bir kartpostaldır: parolası da cevabı da yolda herkesin okuyabileceği yere yazılır. Community neden parola sayılmaz, SNMP nedir yazımızda ayrıntılı anlattık.

Aynı soruyu SNMPv3 ile sordum:

Çıktı
08:55:48.337232 IP 192.168.1.15.40949 > 192.168.10.1.161:  F=r U="" E= C="" GetRequest(14) 
08:55:48.337687 IP 192.168.10.1.161 > 192.168.1.15.40949:  F= U="" E=_80_00_30_44_04_46_47_56_4d_45_56_42_54_34_57_50_4b_55_4b_41_41 C="" Report(31)  .1.3.6.1.6.3.15.1.1.4.0=1
08:55:48.338159 IP 192.168.1.15.40949 > 192.168.10.1.161:  F=apr U="izleyici" [!scoped PDU]cc_d5_5d_21_ea_83_25_46_...
08:55:48.338867 IP 192.168.10.1.161 > 192.168.1.15.40949:  F=ap U="izleyici" [!scoped PDU]71_80_cd_70_37_1c_e0_be_...

Dört satır sırayla şunu söylüyor:

  1. İlk iki paket keşiftir. İzleme sunucusu cihazın kimliğini (engine ID) sorar, FortiGate söyler. Kimlik açık okunuyor: 80 00 30 44 04 ve ardından ASCII olarak FGVMEVBT4WPKUKAA, yani cihazın seri numarası. Kimlik doğrulama ve şifreleme bunu gizlemez.
  2. Son iki paket asıl soru ve cevaptır. F=apr ve F=ap kimlik doğrulamanın (a) ve şifrelemenin (p) açık olduğunu söyler. Yakalamada yalnız kullanıcı adı (U="izleyici") okunuyor; cevabın içeriği (gmfw01) hiç geçmiyor.

SNMPv3 kapalı ve imzalı bir zarftır: zarfın üstünde yalnız gönderenin adı okunur. Yanlış parolayla sorduğumda FortiGate hiç cevap vermedi, sorgu zaman aşımına düştü. Lab’daki switch aynı durumda bir hata cevabı döndürüyordu; bunu switch SNMP yazımızda ölçmüştük.

Sorgu Zaman Aşımına Düşüyor: Hangi Kapı Kapalı?

FortiGate’te kapalı arayüz, listede olmayan adres ve yanlış parola aynı sessizliği üretir. Sırayla şunlara bakılır:

  1. Soru FortiGate’e varıyor mu? İzleme sunucusunda ya da FortiGate’te (diagnose sniffer packet port1 'udp port 161') paket yakalanır. Soru gidiyor, cevap gelmiyorsa sorun FortiGate’in kapılarındadır.
  2. Arayüzde SNMP açık mı? show system interface port1 çıktısındaki allowaccess satırında snmp olmalı.
  3. İzleme sunucusu bir yöneticinin listesinde mi? show system admin çıktısında adresi /32 olarak taşıyan bir trusthost satırı olmalı.
  4. Community ya da kullanıcı doğru mu? Hosts listesinde izleme sunucusu, parolalar ve algoritmalar iki tarafta aynı olmalı. Arayüzden yapılan değişiklik Apply ile kaydedilmiş olmalı.

FortiGate SNMP Trap: Olay Anında Bildirim

Trap’i görmek için izleme sunucusunda bir trap alıcısı (snmptrapd) çalıştırdım ve FortiGate’in dış arayüzünü önce kapatıp sonra açtım.

İlk denemede alıcı paketle gelen hâlindeydi ve trap’ler sunucuya ulaştı ama kayda düşmedi: erişim ayarı olmayan alıcı hepsini attı ve kaydına No access configuration - dropping trap. yazdı, yani erişim ayarı olmadığı için trap’i atıyor. Alıcıya hangi community’yi kabul edeceği söylenince (authCommunity log izleme) trap’ler kayda geçti. Arayüz kapanınca gelen trap:

Çıktı
2026-10-01 08:58:58 <UNKNOWN> [UDP: [192.168.10.1]:162->[192.168.1.15]:162]:
iso.3.6.1.2.1.1.3.0 = Timeticks: (2868068) 7:58:00.68	iso.3.6.1.6.3.1.1.4.1.0 = OID: iso.3.6.1.6.3.1.1.5.3	iso.3.6.1.2.1.2.2.1.1.3 = INTEGER: 3	iso.3.6.1.2.1.2.2.1.7.3 = INTEGER: 2	iso.3.6.1.2.1.2.2.1.8.3 = INTEGER: 2	iso.3.6.1.4.1.12356.100.1.1.1.0 = STRING: "FGVMEVBT4WPKUKAA"	iso.3.6.1.2.1.1.5.0 = STRING: "gmfw01.ad.sistemkusu.com"	iso.3.6.1.2.1.31.1.1.1.1.3 = STRING: "port3"	...

Trap türü 1.3.6.1.6.3.1.1.5.3, yani linkDown. Ardından arayüzün sırası (3), yönetim ve çalışma durumu (2, kapalı), cihazın seri numarası, adı ve port adı (port3) geliyor. Açınca aynı yapıda bir linkUp (...5.4) geldi.

Her değişiklik iki trap daha üretti: 1.3.6.1.2.1.47.2.0.1, yani cihaz yapılandırmasının değiştiğini söyleyen entConfigChange. Olay listesi fabrika ayarında neredeyse tamamen işaretli geliyor ve “Entity config change” de bunlardan biri. Her yapılandırma değişikliğinde trap istemiyorsanız o işaret kaldırılır.

SNMPv3 kullanıcısının trap’leri de geldi. Alıcıya kullanıcıyı ve FortiGate’in cihaz kimliğini tanıttım (createUser -e 0x80003044... ve authUser log izleyici); aynı linkDown, linkUp ve entConfigChange trap’leri çözüldü. Paket yakalamada bu trap’ler de kapalı zarftı: yalnız U="izleyici" okunuyor, içerik şifreli.

Doğrulama: FortiGate İzleme Sistemine Doğru Konuşuyor mu?

Ayar bittiğinde beş şey kontrol edilir; her biri yukarıda lab’da ölçüldü:

  1. SNMPv3 sorusu cevap alıyor ve paket yakalamada içerik okunmuyor; yalnız kullanıcı adı ve cihaz kimliği görünüyor.
  2. v1 ve v2c kapalı: show system snmp community boş döner ya da yalnız v2c ve yalnız izleme sunucusuna açık bir community gösterir.
  3. SNMP yalnız yönetim arayüzünde: internete bakan arayüzün allowaccess satırında snmp yok.
  4. İzleme sunucusu yönetim ağında. Yönetim ağı dışındaysa ya da sürüm 7.2.5 ve sonrasıysa adresi /32 olarak bir yöneticinin güvenilen adreslerinde.
  5. Bir arayüz kapatılıp açıldığında trap izleme sisteminde kayda düşüyor. Alıcıda erişim ayarı yoksa trap gelir ama kaydedilmez.

Sonuç: FortiGate SNMP’de Soru Üç Kapıdan Geçer

FortiGate’in SNMP’si üç kapıdan geçer: arayüzdeki Administrative Access işareti, yönetici hesaplarının güvenilen adresleri ve community ya da kullanıcının Hosts listesiyle parolası. Doğru düzende SNMPv3 kimlik doğrulama ve şifrelemeyle kullanılır, v1 ve v2c kapalı kalır. Lab’da beş şey beklenenden farklı çıktı:

  1. Yönetici güvenilen adresleri SNMP’yi de süzüyor. Yönetim ağı dışındaki izleme sunucusunun sorusu, adresi bir yöneticinin listesine girene kadar cevapsız kaldı. Yönetim ağındaki adresinden ise ek ayar olmadan cevap aldı.
  2. SNMPv3 formu kimlik doğrulamasız geliyor. Fabrika seçimi No Authentication; kimlik doğrulama açılınca algoritma SHA1 geliyor.
  3. SNMPv3 kullanıcısı OK ile değil Apply ile kaydoluyor. Listede görünen kullanıcı, Apply’a basılana kadar cihazda yoktu.
  4. Yanlış parola sessiz kalıyor. FortiGate hata cevabı vermedi; switch veriyordu.
  5. Cihaz kimliği açık gidiyor. SNMPv3’ün engine ID’si seri numarasını taşıyor ve şifrelenmiyor.

Örnekteki sınır kapısında müfettiş kadranları ancak kapı açık, nöbetçi onu tanıyor ve defterdeki adı ile parolası doğruysa okur. Biri eksikse kimse ona nedenini söylemez. Açılış listesinin kalanı 20 adımlık kontrol listesinde duruyor.

FortiGate Firewall SNMP Ayarı Hakkında Sık Sorulan Sorular

Soru üç kapıdan geçer ve biri kapalıysa FortiGate hiç cevap vermez. Birincisi arayüz: Network → Interfaces altında o arayüzün Administrative Access listesinde SNMP işaretli olmalı. İkincisi yönetici hesaplarının güvenilen adresleri. İzleme sunucusu yönetim ağındaysa yöneticilerin adres aralığı onu kapsar, başka bir ağdaysa adresi bir yöneticinin listesine eklenir. FortiOS 7.2.5 ve 7.4.0'dan beri adresin her durumda /32 olarak yazılması gerekiyor. Üçüncüsü community ya da SNMPv3 kullanıcısının Hosts listesi ve parolası. Lab'da üç kapının her biri kapalıyken sorgu aynı biçimde zaman aşımına düştü.
SNMPv3, kimlik doğrulama ve şifrelemeyle (authPriv). NSA SNMP v1 ve v2c'yi şifresiz yönetim servisleri arasında sayıyor ve kapatılmasını istiyor. Lab'daki paket yakalamada v2c community'si hem istekte hem cevapta açık okundu; SNMPv3'te yalnız kullanıcı adı ve cihaz kimliği göründü, cevabın içeriği şifreliydi. İzleme sistemi SNMPv3 desteklemiyorsa v2c yalnız izleme sunucusunun adresine açılır.
Fortinet'in kendi MIB ağacından: sürüm 1.3.6.1.4.1.12356.101.4.1.1.0, CPU kullanımı 1.3.6.1.4.1.12356.101.4.1.3.0, bellek kullanımı 1.3.6.1.4.1.12356.101.4.1.4.0 ve oturum sayısı 1.3.6.1.4.1.12356.101.4.1.8.0. Arayüz trafiği standart IF-MIB'deki 64 bitlik sayaçlardan (ifHCInOctets, ifHCOutOctets) okunur; lab'da 5 MB'lık bir indirme port2'nin çıkış sayacını 5.228.921 bayt artırdı. MIB dosyaları System → SNMP ekranından indirilir.
Lab'da iki sebep çıktı. Kullanıcı formdan OK ile listeye eklendi ama sayfanın altındaki Apply'a basılana kadar yapılandırmaya yazılmadı ve sorgu cevapsız kaldı. Yanlış parolayla sorulduğunda da FortiGate hata cevabı vermedi, sorgu zaman aşımına düştü. Kapalı bir kapıyla yanlış parola aynı sessizliği üretir; teşhis paket yakalamayla yapılır.
Seçili olaylardan biri olduğu anda, sorulmayı beklemeden gönderir. Lab'da dış arayüzü kapatıp açtığımda her değişiklik iki saniye içinde bir linkDown ya da linkUp trap'i ve iki yapılandırma değişikliği trap'i olarak geldi; içinde port adı, arayüzün durumu, cihazın seri numarası ve adı vardı. Erişim ayarı olmayan bir trap alıcısı bunları hiç kaydetmeden attı.
İlker Pehlivan
Yazan

BT Danışmanı | Ağ, Sistem ve Güvenlik Yönetimi

İlker Pehlivan, karmaşık BT altyapılarını ölçeklenebilir ve güvenli sistemlere dönüştürür. Buradaki rehberleri kendi laboratuvarında kurup ölçerek yazar.

LinkedIn

Benzer Makaleler

Kurumsal Network Kurulumu altındaki diğer 114 makale