
Log tutma, kurumsal ağlar için kritik bir öneme sahiptir ve özellikle KOBİ’ler için vazgeçilmezdir. Bunun temel nedeni; bir olayın ne zaman gerçekleştiğini, nasıl meydana geldiğini, hangi cihaz üzerinde oluştuğunu ve işlemin kim tarafından yapıldığını doğru bir şekilde tespit edebilmenin büyük önem taşımasıdır.
Syslog, endüstride yaygın olarak kullanılan bir standarttır. Ağ cihazları; bir portun kapanması, OSPF komşuluğunun kurulması, sistemin yeniden başlatılması gibi birçok olay için log üretirken SYSLOG protokolünü kullanabilir.
Log tutma işlemi birkaç farklı yöntemle gerçekleştirilebilir. Bunlardan ilki, logların doğrudan logu üreten cihaz üzerinde tutulmasıdır. Örneğin bir switch cihazı kendi başına log üretebilir. Bu loglar CLI ekranına yazdırılabileceği gibi, belirli bir boyuta sahip buffer (hafıza) alanında da depolanabilir.
Ancak bu iki yöntem kurumsal yapılar için yeterli değildir. Çünkü üretilen logların uzun süre saklanması, güvenli bir şekilde arşivlenmesi ve ihtiyaç duyulduğunda tekrar erişilebilir olması gerekir. Bu yöntemler geçici çözümler sunmakta ve kurumsal ağlar için kalıcı bir yapı sağlamamaktadır. Bu nedenle kurumsal ağlarda, merkezi ve güvenilir bir çözüm olarak ağ içerisinde bir SYSLOG sunucusunun konumlandırılması tercih edilmelidir.
SYSLOG konfigürasyonuna geçmeden önce, logların yapısına göz atalım. Aşağıda, bir log kaydı içerisinde yer alabilecek temel değerler bulunmaktadır.
seq:time stamp: %facility-severity-MNEMONIC:descriptionseq --> Bu alan, logun sıra numarasını ifade eder.time stamp --> Bu alan, logun ne zaman gerçekleştiğini ifade eder.%facility --> Bu alan, logun kaynağını belirtir. Hangi süreç tarafından başlatıldığını gösterir. Örneğin OSPF vb.severity --> Bu alan, logun önem seviyesini gösterir. 0-7 arasında değişen 8 tane önem derecesi vardır. Bunlar aşağıdaki gibidir.
0 - Emergency
1 - Alert
2 - Critical
3 - Error
4 - Warning
5 - Notice veya Notification
6 - Information
7 - Debugging
Önem seviyesi 0’dan 7’ye doğru gidildikçe azalmaktadır.MNEMONIC --> Bu alan, log ile ilgili kısa bilgi verir.description --> Bu alan, log ile ilgili detayları verir.*Dec 15 15:27:33.647: %LINK-5-CHANGED: Interface GigabitEthernet0/1, changed state to administratively downTüm bu bilgilerden yola çıkarak yukarıdaki logu yorumlayabiliriz.
“Seq” değeri her zaman görüntülenmez bazı markalarda kapalı gelmektedir. Ama istenirse açılabilir. (Komut aşağıda yer almaktadır.)
Log, 15 Aralık tarihinde ve belirtilen saatte gerçekleşmiştir. Facility değeri LINK olup portlarla ilgili bir durumu ifade etmektedir. Önem seviyesi 5 olarak belirtilmiş, yani “Notice” seviyesinde bir bildirim üretilmiştir. MNEMONIC alanında “CHANGED” bilgisi yer almaktadır. Description kısmında ise GigabitEthernet 0/1 portunun yönetici tarafından kapatıldığı görülmektedir.
Syslog mesajları ilk olarak CLI (Command Line Interface) üzerinden görüntülenebilir. CLI bağlantısı, Console bağlantısı ya da SSH/Telnet protokollerinden biri kullanılarak gerçekleştirilebilir.
Konsol bağlantısı yapıldığında, loglar varsayılan olarak görüntülenir. Önem derecesi 0–7 arasındaki tüm loglar ekrana yazdırılır. Konsol bağlantısı yapıldığında hangi önem derecesindeki logların gösterileceğini belirlemek için aşağıdaki komut kullanılabilir.
Switch(config)# logging console 5Yukarıdaki komutta belirtilen 5 önem derecesi, 5 ve daha küçük olan logların ekrana yazdırılmasını sağlar. Yani önem derecesi 0, 1, 2, 3, 4 ve 5 olan loglar ekrana yazdırılacaktır.
SSH veya Telnet kullanılarak yapılan bağlantılarda loglar varsayılan olarak ekrana yazdırılmaz. Varsayılan durumda bu özellik kapalıdır; ancak istenirse basit bir komut kullanılarak etkinleştirilebilir. Aşağıdaki komutları kullanarak SSH ve Telnet bağlantısı için SYSLOG yapılandırması yapabiliriz.
Switch# terminal monitor Bu komut, SSH ve Telnet bağlantısı yapıldığında varsayılan olarak kapalı olan logların CLI ekranında görüntülenmesini sağlar. Ancak bu ayar yalnızca bağlantı süresi boyunca geçerlidir. Örneğin, SSH ile cihaza erişim sağladıktan sonra bağlantı koparsa, yeniden SSH ile bağlandığınızda loglar ekranda görüntülenmez. Bu nedenle, her yeni oturumda bu komutun tekrar çalıştırılması gerekmektedir.
SSH veya Telnet bağlantısı yapıldığında hangi önem derecesindeki logların gösterileceğini belirlemek için aşağıdaki komut kullanılabilir.
Switch(config)# logging monitor error ( error == 3 )Cihazlar, logları depolamak için buffer kullanır ve bu buffer logları geçici olarak saklar. Buffer’da tutulacak log dosyasının boyutunu ve hangi önem derecesindeki logların saklanacağını belirlemek için aşağıdaki komut kullanılabilir.
Switch(config)# logging buffered 8192 5 Buffer’da tutulan logları görüntülemek için aşağıdaki komutu kullanabiliriz.
Switch# show loggingKurumsal ağlarda genellikle harici bir Syslog sunucusu bulunur ve tüm loglar bu sunucuya gönderilir. Cihazlar üzerinde Syslog sunucusunu belirtmek için aşağıdaki komut kullanılabilir.
Switch(config)# logging 10.0.0.200
veya
Switch(config)# logging host 10.0.0.200Harici Syslog sunucusuna hangi önem seviyesindeki logların gönderileceğini belirlemek için aşağıdaki komut kullanılabilir.
Switch(config)# logging trap Warning (Warning == 4)Bazen komut çalıştırıldığında loglar araya girerek komutun görünümünü bozabilir. Bu sorunu çözmek için aşağıdaki komut kullanılabilir.
Switch# configure terminal
Switch(config)# line console 0
Switch(config-line)# logging synchronous
Switch(config-line)# exit
Switch(config)#
Switch(config)# line vty 0 4
Switch(config-line)# logging synchronous
Switch(config-line)# end
Switch# write memoryLoglarda sıra numarasını etkinleştirmek için aşağıdaki komut kullanılabilir.
Switch(config)# service sequence-numbersTime-stamp değeri iki farklı şekilde gösterilebilir. Bunlardan ilki ve en çok kullanılanı “datetime” parametresidir.
Switch(config)# service timestamps log datetimeDatetime parametresi kullanıldığında olayın meydana gelme zamanı gösterilir; ancak burada tarih bilgisinin doğru ve tutarlı olması büyük önem taşır. Tarih bilgisinin değişimi için kurumsal ağlarda Network Time Protocol (NTP) kullanılmaktadır.
İkincisi uptime parametresidir. Bu parametre çok tercih edilmez; log oluştuğunda cihazın ne kadar süredir açık olduğunu gösterir. Aşağıdaki komut kullanılabilir.
Switch(config)# service timestamps log uptimeSyslog protokolü genellikle NTP ve SNMP protokolleriyle birlikte kullanılır. Harici bir Syslog sunucusu mevcutsa, UDP 514 portu üzerinden haberleşir.
Daha fazla bilgisayar-ağları içeriği için takipte kalın…

Leave a Reply