Fortigate “Conserve Mode” Uyarısı için T-shoot ve Önlemler

Hocam Selam…!
Bu makalemde Fortigate Firewall çok sık rastlanmasa da karşımıza çıkmayacağı anlamına gelmeyen bir konu olan “conserve mode” hakkında bilgilendirme yapmak istedim. Keyifli okumalar dilerim.

Makalade Neler Var?


Conserve Mode Nedir?


Fortigate Firewall ürünlerinde bir problem yokken herkes youtube, mailler, internet bağlantıları açıkken bir anda tüm ağ trafiğin durduğunda; son kullanıcı, help-desk, IT yöneticileri, sistem ekipleri….. gibi tüm bileşenlerin “Network gitti…”, “İnternet komple yok!” ya da “Bu firewall HA değil mi?” gibi cümlelerin bir anda geldiği, Network & Security Adminlerine bu tip sorularla DDOS yapılan bir durum olarak özetleyebilirim.

Aslında Fortigate Firewall ürünlerinin kendini korumaya aldığı bir moddur. Cihazlarda memory %80 ve üzerine çıktığında tüm trafiği keserek bende bir problem varın habercisidir. Memory kullanımı tekrar %70 altına düşmediği sürece de ağ trafiğin kesilmesi devam edecektir. Memory ‘nin %100 lük bir durumunda, cihaza https ssh ile bağlanamayacak duruma gelmemesini de ayrıca sağlıyor.

Cihazınız Conserve Mode olduğunda network trafiğiniz duracak ve firewall bağlandığınız da aşağıdaki resimdeki bir ekran karşınıza çıkacaktır.

Fortinet Conserve Mode
Fortinet Conserve Mode

Bu gibi durumlarda genellikle hemen ortamdaki ateşi söndürmek için yeniden başlatma yapılmaktadır. HA bir yapınız var ise çok fazla kesinti süreniz olmayacaktır, tek cihaz ise açılana kadar beklemek zorunda kalacaksınız.
Anı kurtarmak içinde extra bir t-shoot edilemediğinden de can sıkan bir durum diyebilirim.

Conserve Mode cihazlar neden düşer?


“Conserve Mode” durumuna cihazların düşme sebeplerinde en büyük etken memory kullanımının eşik değerinden yüksek olmasıdır. Bu durum genel olarak wad “process kullanımın yüksek olmasından kaynaklanmaktadır. Benim deneyimlediğim ilk başta bakılması gereken adımlar aşağıda sıralamaya çalıştım;
1- Firmware Version: Kullanılan versiyon sürümünden olabilmektedir. Aşağıda örnek versiyonlardaki BUG olarak duyurusu mevcuttur.( FortiOS 6.4.6 , 7.2.3)
https://docs.fortinet.com/document/fortigate/6.4.6/fortios-release-notes/236526/known-issues
https://docs.fortinet.com/document/fortigate/7.2.3/fortios-release-notes/236526/known-issues
2Securtiy profillerinde IPS ve AV modulleri her kural için full-inspeciton olarak kullanıldığında memory yormaktadır. Önerilen kural düzenlerinde her zaman stabil çalıştıracaktır.
3- Kurallarda Proxy-based kullanımı yine memory yoran bir durumdur. Güvenilir kurallarda flow-based moduna çekilmesi yine ortamı rahatlatacaktır.
4-Log kayıtlarının bellek üzerinde de tutulması kapatılmalıdır. FortiAnalyzer kullanılıyorsanız loglar sadece Analyzer üzerinden görünmesi sağlanması memory kullanımı yine azaltacaktır.

Conver Mode için T-Shoot komutları?


Firewall bu moda düştüğünde neden kaynaklandığını görebilmemiz için “diag” komutları yol gösterecektir.

  • dia sys top 5 20 5
    komutu ve “m” tuşuna bastıktan sonra 5 saniyede bir en çok memory kullanan ilk 20 servisini 5 kez yineleyerek gösterecektir.
memory top 20
memory top 20
  • dia sys top-mem 20
    komutu ile toplam kaç kB memory kullanan ilk 20 process görülecektir.
total memory
total memory
  • Ayrıca web arayüzden Dashboard>>Status üzerinden Memory wigdet sağtık yapıpı Process Monitor ederek en çok memory kullanan işlemleri sıralayabilirsiniz.
Web arayüz Memory-Monitor
Web arayüz Memory-Monitor

Peki ne yapabiliriz?


Conserve Mode problemi ilk defa başınıza geliyorsa; öncelikle takip edilmesi gereken bir konudur. Günlük Memory-CPU kullanımlarını incelemenizi öneririm.

-Fortinet tarafından bu durum bir versiyonda oluşan BUG ise bir üst versiyonda duyurularını ve a bu durumun giderildiğinin takip edilmesini önerebilirim. Örnek olarak 7.2.3 versiyonundaki bu sorunun 7.2.4 sürümünde kapatıldığını belirtmişler ve isterseniz “wad” ve “conserve mod” diye aratabilirsiniz.
https://docs.fortinet.com/document/fortigate/7.2.4/fortios-release-notes/289806/resolved-issues

-Alert oluşturularak Memory durumu %75 üzerine çıktığında alarm maili attırmayı otomatize edip soruna önceden haberdar olup çözüm sağlayabilirsiniz.

-Aşağıdaki adımlar ile wad process den kaynaklandığını gördüğünüzde, manuel olarak ilgili PID numrasını kill ederek düzetebilirsiniz.
1-T-shoot kısmındaki gibi “dia sys top 5 20 5 ” komutu ile process görülüdüğünde 2 satırda yazanlar PID numarasıdır, yani resimdeki 328 numarasıdır.
2- wad process ait PID bulunduktan sonra ” dia sys kill 11 PID ” yazılarak durumu düzeltebilirsiniz.

-Auto script yazarak “wad” process restart edebilirsiniz. Fakat kendi kendine çalışacağı için başka bir sorunu tetikleyebilir ve network trafiğinizi durdurabilirsiniz. Aşağıdaki örnekte 12 saatte bir çalışacak şekilde bir script yazabilirsiniz. Kalıcı çözümü bulduğunda da kaldırmayı unutmayın diyebilirim.
config system auto-script
edit wad_restart
#set interval 43200
set start auto
set script ‘diag test app wad 99’
next
end

-Conserve Mode eşik değerlerinde değişiklikler yapabilirsiniz. Ben çok önermiyorum sadece durumu ötelemek anlamına geliyor ama yine de bilgi olarak belirtmekte fayda var. Kalıcı çözümü bulduğunda da eski haline almayı unutmayın.

config system global
sh full-configuration | grep threshold

Threshold
Threshold

#set memory-use-threshold-extreme 98
set memory-use-threshold-green 96
set memory-use-threshold-red 91
end


Umarım böyle durumlar yaşamazsınız ama olurda denk gelir ve işinize yararsa ne mutlu..
Herkese kesintisiz günler dilerim..