Syslog Nedir? Facility, Severity ve 514 Portu
Syslog nedir, log satırı neye benzer? Facility ile severity tek sayıya nasıl sıkışır, 514 portu neden UDP: gerçek switch çıktısıyla anlatıyoruz.
- Syslog Nedir ve Hangi Sorunu Çözer?
- Kayıt Tutulmayan Olay Olmamış Sayılır
- Cihazın Kendi Üstündeki Log Neden Yetmez?
- Syslog Ne Zaman Gerekmez?
- Windows Neden Kendiliğinden Syslog Göndermez?
- Syslog Mesajı Neye Benzer? Bir Satırın Anatomisi
- Öncelik Alanı: Baştaki Köşeli Parantezin İçindeki Sayı
- Zaman, Kaynak ve Gövde
- RFC 3164 ve RFC 5424: İki Format, İkisi de Sahada
- Syslog Facility ve Severity: Tek Sayının İçindeki İki Bilgi
- Sekiz Önem Derecesi ve Sahada Hangisinin İşe Yaradığı
- Yirmi Dört Tesis ve local0-local7 Neden Ayrılmış?
- Eşik Nasıl Çalışır: “Bu Seviyeden Yukarısı”
- Syslog Neden 514 Portunu ve UDP’yi Kullanır?
- Kayıp Neden Sessizdir?
- Tek @ ve Çift @@: Gönderen Tarafta Tek Karakterlik Fark
- TCP ve TLS Ne Zaman Gerekir?
- Syslog Neyi Taşımaz? Kimlik, Bütünlük ve Sıra
- Gönderen Adresi Bir Kimlik Değildir
- Kaydın Sonradan Değiştirilmediğini Kim Garanti Eder?
- Saat Kayarsa Tutanak Ne Kadar İşe Yarar?
- Sahada Syslog: Gürültüyü Nasıl Ayıklarsınız?
- Lab: Bir Switch Bir Dakikada Ne Kadar Konuşur?
- Aynı Satırın Yüzlerce Kez Tekrarı Bir Arıza İşaretidir
- Neyi Toplarsınız, Neyi Atarsınız?
- Sonuç: Katip Yoksa Duruşma Hiç Olmamıştır
- Syslog Hakkında Sık Sorulan Sorular
Syslog, bir cihazın başına gelenleri düz metin satırları hâlinde yazıp merkezî bir sunucuya göndermesini sağlayan protokoldür. Switch’ler, firewall’lar, sunucular, yazıcılar ve kesintisiz güç kaynakları bunu kırk yıldır neredeyse aynı biçimde yapar: olay olur, cihaz bir satır üretir, o satır ağa çıkar. Sizin tarafınızda yapılması gereken tek şey, o satırı dinleyecek birinin bulunmasıdır.
Bir duruşma salonunda zabıt katibi tam olarak bunu yapar. Hâkim konuşur, taraflar konuşur, tanık konuşur; katip söylenenleri yorumlamadan, olduğu gibi ve saatiyle yazar. Katibin işi karar vermek değildir, hatta ne konuşulduğunu anlamak zorunda bile değildir. İşi kaydın var olmasını sağlamaktır. Duruşma bittikten aylar sonra bir itiraz geldiğinde herkesin başvurduğu şey hafızalar değil, o tutanaktır.
Ağdaki cihazlarınız da sürekli konuşuyor. Sorun konuşmamaları değil, çoğu kurumda katibin olmaması. Bu yazıda bir syslog satırının neye benzediğini, baştaki köşeli parantezin içindeki sayının nasıl çözüldüğünü, protokolün neden UDP 514’ü seçtiğini ve neyi taşımadığını ele alıyoruz. Sonunda da lab switch’imden gelen gerçek kayıtlara bakıp asıl zor soruya geliyoruz: kayıtlar akmaya başladığında onların hangisi işe yarar?
Elinizde zaten bir log satırı varsa ve doğrudan onu çözmek istiyorsanız, bir syslog satırının anatomisine geçebilirsiniz.
Bu makale Kurumsal Ağ Protokolleri rehberimizin “görmek” ayağına, yani cihazların kendi durumlarını dışarı bildirme biçimine odaklanır.
Syslog Nedir ve Hangi Sorunu Çözer?
Syslog, olayları üreten cihaz ile o olayları saklayan sunucuyu birbirinden ayırır. Cihaz yalnızca “şu oldu” der ve satırı ağa bırakır; satırın nereye yazılacağı, ne kadar saklanacağı ve kimin okuyacağı artık cihazın sorunu değildir. Protokolün bütün gücü bu ayrımdan gelir, ve bütün eksikleri de.
Katip benzetmesi burada birebir oturuyor. Hâkim tutanağı kendi tutmaz. Tutsaydı iki iş birden yapmak zorunda kalırdı ve ikisini de kötü yapardı.
Kayıt Tutulmayan Olay Olmamış Sayılır
Bir arızanın en pahalı hâli, iz bırakmadan geçenidir. Gece üçte bir port bir dakikalığına düşüp geri kalkarsa, sabah kimse bir şey fark etmez. Kullanıcılar “internet bir ara gitti galiba” der, siz bakarsınız her şey normaldir, ve aynı şey üç hafta sonra tekrarlanır.
Bu, teşhis edilemeyen bir arıza değildir. Kaydı olmayan bir arızadır. İkisi arasındaki fark, elinizde tutanak olup olmamasıdır.
Cihazın Kendi Üstündeki Log Neden Yetmez?
Her switch ve firewall kendi içinde bir kayıt tutar. Sorun bu kaydın var olması değil, üç ayrı şekilde elinizden kaçmasıdır:
- Kalıcı değildir. Cihazın hafızasındaki kayıt alanı yetersiz gelebilir ya da elektrik gidince silinebilir.
- Sınırlıdır. Alan dolduğunda en eski satırların üzerine yazılır. Cihaz ne kadar konuşkansa geçmiş o kadar kısalır.
- Arıza anında ulaşılamaz. Asıl ihtiyaç duyduğunuz an, cihazın kendisinin cevap vermediği andır. Kayıt oradaysa, o kayda da ulaşamazsınız.
Birinci maddeyi lab switch’imde ölçtüm ve kanıtı ilginç bir yerde duruyor. Switch elektrik kesintisiyle yeniden başladıktan sonra hafızasındaki kayıt defterinin en eski satırı şuydu:
<185> Aug 19 06:57:16 0.0.0.0-1 SIM[Cnfgr_Thread ]: sim_util.c(3804) 8 %% Switch was reset due to power disruption.Bu satırın öncesi yok. Kesintiden önceki bütün geçmiş, kesintiyle birlikte gitti. Cihaz size hafızasını kaybettiğini söylüyor, ve bunu kaybettiği hafızanın içinden söylüyor.
Syslog Ne Zaman Gerekmez?
Üç kişilik bir ofiste, tek bir modem ve tek bir switch varsa merkezi log kurmak gereksiz bir katman olur. Cihaz sayısı bir elin parmaklarını geçmiyorsa ve arıza olduğunda tek tek bakmak birkaç dakika sürüyorsa, çözüm zaten elinizdedir.
Eşik cihaz sayısında değil, soruyu cevaplama süresindedir. “Dün akşam saat kaçta ne oldu” sorusuna cihazlara tek tek bakarak cevap veremiyorsanız, merkezi log gerekiyor demektir.
Burada sahada çok sık gördüğüm bir durumu ayırmak gerekiyor. Birçok kurumda merkezi log yoktur ama tek bir yapılandırılmış kayıt vardır: RADIUS accounting. Kablosuz ağ ya da 802.1X kurulurken kendiliğinden gelir, kimse ayrıca kurmaz, ve yıllarca birikir. Bu gerçek bir kayıttır, ama farklı bir soruyu cevaplar:
- RADIUS accounting oturumları kaydeder: kim, ne zaman bağlandı, ne zaman ayrıldı, ne kadar trafik geçti. Yapısı bellidir, alanları sabittir. Ayrıntısı RADIUS protokolü rehberimizde.
- Syslog olayları kaydeder: hangi port düştü, hangi süreç hata verdi, hangi yapılandırma değişti. Yapısı serbesttir, cümledir.
Biri “kim girdi” sorusunun, diğeri “ne bozuldu” sorusunun cevabıdır. Elinizde yalnız birincisi varsa, ikinci soruya cevap verecek kaydınız hiç yok demektir.
Üçüncü bir kanal daha var ve onu da karıştırmamak gerekiyor: SNMP. SNMP cihazdan sayı çeker, syslog ise cihazın ürettiği cümleyi alır. İşlemcinin yüzde seksende olduğunu SNMP söyler; o yükün hangi süreçten geldiğini syslog söyler. İkisi rakip değil, aynı olayın iki farklı kanalıdır ve doğru kurulum ikisini birden toplar. Ayrımı SNMP protokolü yazımızda mekanizma düzeyinde ele alıyoruz.
Windows Neden Kendiliğinden Syslog Göndermez?
Karışık bir ağda merkezi log kurarken en sık takılınan yer burasıdır. Switch, firewall, yazıcı ve Linux sunucular syslog’u doğrudan konuşur; Windows konuşmaz.
Windows olaylarını Event Log’a yazar. Bu ayrı bir sistemdir: kayıtlar düz metin satırı değil, kimlik numarası ve alanları olan yapılandırılmış nesnelerdir. Bir olayın 4624 numarası vardır, gövdesi ayrı alanlara bölünmüştür ve dosya biçimi metin değildir.
Sonuç pratikte şudur: ağdaki cihazların çoğunu toplayıcıya bağlamak tek satırlık bir ayardır, Windows sunucular ise araya çeviri yapan bir ajan ister. Planlama yaparken bu iki grubu ayrı düşünün; aksi halde kurulum bittiğinde “her şey akıyor ama sunucular yok” tablosuyla karşılaşırsınız.
Syslog Mesajı Neye Benzer? Bir Satırın Anatomisi
Bir syslog mesajı düz metindir ve üç parçadan oluşur: öncelik alanı, zaman ve kaynak bilgisi, gövde. Tamamı tek satırdır, ayraç yoktur, uzunluğu değişkendir.
Lab switch’imin gönderdiği gerçek bir satır:
<189> Aug 19 06:57:33 sercebilisimsw01-1 TRAPMGR[trapTask]: traputil.c(735) 235 %% Link Up: Vl5Bu satıra bakarken üç yere dikkat edin:
- Baştaki
<189>süs değil, protokolün taşıdığı tek yapısal bilgidir. - Ortadaki kısım kaydı kime ve ne zamana bağlar.
- Sondaki metin cihaz üreticisinin serbestçe yazdığı bölümdür ve hiçbir standarda uymak zorunda değildir.
Öncelik Alanı: Baştaki Köşeli Parantezin İçindeki Sayı
Öncelik alanı (PRI), iki ayrı bilgiyi tek bir sayıya sıkıştırır: mesajın hangi kaynaktan geldiği ve ne kadar acil olduğu. Formül tek satır:
PRI = (facility × 8) + severityİlk okuyuşta kafa karıştırıyorsa bu normaldir, çünkü ortada tek bir sayı var ve içine iki ayrı bilgi gömülü; hangisinin nerede bittiği görünmüyor. Bir örnek üzerinden bölünce yerine oturuyor. Yukarıdaki satırın 189 değerini açalım:
189 ÷ 8 = 23, kalan5.- Bölüm
23, yani facility 23. - Kalan
5, yani severity 5.
Facility 23 local7e, severity 5 noticea karşılık gelir. Yani bu satır, local7 tesisinden gelen bilgilendirici bir kayıttır.
Bu çözümün doğru olduğunu tahmin etmek yerine cihaza sordum:
show loggingLogging is enabled
Console Logging: Level warnings. Messages : 85 logged, 315 ignored
Buffer Logging: Level informational. Messages : 210 logged, 190 ignored
File Logging: Level emergencies. Messages : 0 logged, 400 ignored
Logging facility level : local7Son satır local7 diyor. Hesabın bölüm kısmı cihazın kendi ayarıyla birebir tutuyor.
local7’nin tam olarak ne olduğuna ve neden sekiz tane local değeri bulunduğuna birazdan geliyoruz; şimdiden merak ettiyseniz tesis değerlerini anlattığımız bölüme atlayabilirsiniz. Buradaki tek iddia şu: hesap tutuyor.
Zaman, Kaynak ve Gövde
Öncelik alanından sonra gelen kısım kaydı bir ana ve bir cihaza bağlar. Yukarıdaki satırda Aug 19 06:57:33 zaman damgası, sercebilisimsw01-1 ise cihazın kendini tanıttığı isimdir.
Bu iki alanın kaynağı farklıdır ve ikisine de aynı derecede güvenilmez. Zaman damgasını cihaz kendi saatinden okur; saati kaymışsa kayıt yanlış anla arşive girer. Cihaz adını da yine cihazın kendisi yazar, yani toplayıcı bu ismi doğrulamaz, olduğu gibi kabul eder. Lab switch’imin sercebilisimsw01-1 demesinin sebebi, o ismin cihaza elle verilmiş olmasıdır; sondaki -1 ise yığın (stack) içindeki birim numarasıdır ve tek cihazlı kurulumda bile görünür.
Gövde tarafında standart biter. TRAPMGR[trapTask]: traputil.c(735) 235 %% Link Up: Vl5 ifadesi tamamen cihaz üreticisinin tercihidir ve dört parça taşır:
TRAPMGR[trapTask]: mesajı üreten süreç ve iş parçacığı.traputil.c(735): üretici yazılımının hangi kaynak dosyasının kaçıncı satırından geldiği.235: cihazın kendi olay sayacı, her mesajda bir artar.%% Link Up: Vl5: insan tarafından okunacak asıl mesaj.
Bu dört parçadan yalnız sonuncusu sizin için yazılmıştır; ilk üçü üreticinin destek ekibi içindir. Başka bir markanın cihazı aynı olayı bambaşka bir cümleyle bildirir, çünkü bu alanın biçimini hiçbir standart belirlemez.
Bu, protokolün en çok yanlış anlaşılan tarafıdır. Syslog mesajın nasıl taşınacağını standartlaştırır, ne yazacağını değil. Farklı markaları aynı toplayıcıya bağladığınızda kayıtlar yan yana durur ama aynı dili konuşmaz.
RFC 3164 ve RFC 5424: İki Format, İkisi de Sahada
Syslog’un iki format tanımı vardır ve sahada ikisiyle de karşılaşırsınız:
| RFC 3164 (BSD) | RFC 5424 | |
|---|---|---|
| Yıl | 2001, mevcut kullanımın belgelenmesi | 2009, gerçek standart |
| Zaman damgası | Aug 19 06:57:33, yıl ve saat dilimi yok | Tam ISO 8601, milisaniye ve saat dilimi dahil |
| Yapılandırılmış alan | Yok | Var (structured-data) |
| Sahadaki yaygınlığı | Ağ cihazlarında hâlâ baskın | Modern sunucu yazılımlarında yaygın |
Lab switch’im Aug 19 06:57:33 yazıyor, yani eski formatı kullanıyor. Yılın olmaması küçük bir ayrıntı gibi durur ama uzun saklamada sorun çıkarır: iki yıl arşivlenen bir kayıtta “19 Ağustos” hangi yılın 19 Ağustos’udur? Toplayıcı bu boşluğu kendi aldığı andan doldurur, yani doğruluk cihazın değil sunucunun saatine bağlanır.
Syslog Facility ve Severity: Tek Sayının İçindeki İki Bilgi
Severity mesajın ne kadar acil olduğunu, facility ise nereden geldiğini söyler. İkisi bağımsızdır: bir yazıcıdan da kritik mesaj gelebilir, çekirdekten de bilgilendirme.
Tutanağın kapağında da aynı iki bilgi durur: hangi mahkemenin tuttuğu ve dosyanın aciliyeti. İkisi ayrı ayrı yazılır, çünkü biri evrakın nereye dosyalanacağını, diğeri kimin ne zaman bakacağını belirler. Syslog bu iki bilgiyi tek bir sayının içine sıkıştırır, ve o sayıyı ayırmak toplayıcının ilk işidir.
Sekiz Önem Derecesi ve Sahada Hangisinin İşe Yaradığı
Severity sekiz değer alır ve küçük sayı daha acil demektir:
| Değer | Ad | Ne demek |
|---|---|---|
| 0 | emerg | Sistem kullanılamaz durumda |
| 1 | alert | Hemen müdahale gerekiyor |
| 2 | crit | Kritik durum |
| 3 | err | Hata oluştu |
| 4 | warning | Uyarı |
| 5 | notice | Normal ama dikkate değer |
| 6 | info | Bilgilendirme |
| 7 | debug | Ayıklama ayrıntısı |
Sayının küçüldükçe acilleşmesi ilk bakışta ters gelir, ama sıralama bir kez öğrenildiğinde eşik mantığı kendiliğinden oturur.
Aynı cihazdan gelen iki satırı yan yana koyunca ayrım somutlaşıyor:
<189> Aug 19 06:57:33 sercebilisimsw01-1 TRAPMGR[trapTask]: %% Link Up: Vl5
<185> Aug 19 06:57:16 0.0.0.0-1 SIM[Cnfgr_Thread ]: %% Switch was reset due to power disruption.189 = 23 × 8 + 5→local7.notice. Bir arayüz ayağa kalktı. Normal işleyiş.185 = 23 × 8 + 1→local7.alert. Cihaz elektrik kesintisi yüzünden yeniden başladı. Sabah ilk bakılacak satır budur.
Aradaki fark tek karakter. Ama o tek karakter, “her şey yolunda” ile “gece burada bir şey oldu” arasındaki farktır.
Yirmi Dört Tesis ve local0-local7 Neden Ayrılmış?
Facility toplam 24 değer alır ve bu 24 değer ikiye ayrılır. Ayrımın sebebi tarihsel.
İlk 16’sının anlamı sabittir ve değiştiremezsiniz. Bu liste 1980’lerin Unix sunucusundan kalma: kern çekirdek, mail posta servisi, auth kimlik doğrulama, lpr yazıcı kuyruğu. Bir switch’in ya da firewall’un bu listede karşılığı yok, çünkü liste yazıldığında “ağ cihazı” diye bir kategori henüz yoktu.
Kalan 8’i ise bilerek tanımsız bırakılmıştır. Adları local0’dan local7’ye kadar gider ve anlamlarını siz verirsiniz. Standart size “local4 şu demektir” demez; ne derseniz odur.
Sahada şöyle kullanılır: her cihaz sınıfına bir değer atarsınız, toplayıcıda da her değeri ayrı bir yere yazarsınız.
| Değer | Siz neyi atarsınız | Toplayıcıda nereye gider |
|---|---|---|
local0 | Switch’ler | /var/log/switch/ |
local1 | Firewall | /var/log/firewall/ |
local2 | Sunucular | /var/log/sunucu/ |
Kazanç şu: bir kaydın hangi cihaz sınıfından geldiğini, satırı hiç okumadan, yalnız baştaki sayıya bakarak anlarsınız.
Ama bir tuzağı var. Lab switch’im varsayılan olarak local7 kullanıyor, ve çoğu üretici aynı varsayılanı seçiyor. Yani hiçbir atama yapmazsanız bütün cihazlarınız aynı değere düşer; facility’nin sunduğu ayrım hiç oluşmaz.
Eşik Nasıl Çalışır: “Bu Seviyeden Yukarısı”
Cihazlar her hedef için ayrı bir eşik tutar ve o eşiğin altındaki mesajları hiç göndermez. Yukarıdaki show logging çıktısı bu mekanizmayı sayıyla gösteriyor:
| Hedef | Eşik | Kaydedilen | Elenen |
|---|---|---|---|
| Konsol | warnings (4) | 85 | 315 |
| Hafıza | informational (6) | 210 | 190 |
| Dosya | emergencies (0) | 0 | 400 |
Üç satır aynı olay akışına bakıyor ve üç farklı sonuç veriyor:
- Konsol
warningve daha acil olanları alıyor, 400 mesajın 315’ini eliyor. - Hafıza
infoseviyesine kadar iniyor, o yüzden daha fazlasını tutuyor. - Dosya yalnız
emergistiyor. Bu cihazda hiçemergüretilmediği için dosyaya tek satır bile yazılmamış.
Üçüncü satır sahada en sık yapılan hatanın ölçülmüş hâlidir: eşik fazla dar tutulduğunda log “çalışıyor” görünür ve içi boştur. Kimse emerg seviyesinde mesaj üretmeyi planlamaz; o seviye sistemin tamamen çöktüğü an içindir.
Syslog Neden 514 Portunu ve UDP’yi Kullanır?
Syslog varsayılan olarak UDP 514 kullanır, ve bu tercih protokolün tasarım amacından çıkar: kaydı üreten cihaz, kaydı göndermek için yavaşlamamalıdır.
UDP’de bağlantı kurulmaz, el sıkışma yapılmaz, teslim beklenmez. Cihaz satırı ağa bırakır ve kendi işine döner. Bir switch için bu ciddi bir avantajdır: log göndermek asıl işi olan paket anahtarlamanın önüne geçmez. İki taşıma protokolü arasındaki farkı ve bir portun ne anlama geldiğini port ve TCP/UDP yazımızda ayrıntısıyla anlatıyoruz.
Kayıp Neden Sessizdir?
Bedeli şudur: UDP teslim garantisi vermez, ve vermediğini kimseye haber de vermez. Kayıt yolda kaybolursa gönderen bunu bilmez, alıcı da eksik bir şey olduğunu fark etmez. İki taraf da mutludur, kayıt yoktur.
Katip benzetmesinde bu, tutanağın bir sayfasının kaybolmasına benzer. Sorun kaybolması değil; kaç sayfa olduğunu kimsenin yazmamış olması. Elinizdekinin eksik olduğunu anlamanızın bir yolu yoktur.
Peki bu ne kadar önemli? Ağ içi, düşük yükte bir bağlantıda UDP kaybı pratikte ihmal edilebilir. Kayıp asıl şu iki durumda anlamlı olur: toplayıcı ile cihaz arasında yoğun ve dar bir hat varsa, ya da toplayıcı ani bir mesaj patlamasında yetişemiyorsa. İkisi de tam olarak kayda en çok ihtiyaç duyduğunuz anlarda ortaya çıkar.
Yönetim trafiğini ayrı bir VLAN’a almanın sebeplerinden biri tam olarak budur. Log ve yönetim paketleri kullanıcı trafiğiyle aynı hattı paylaşırsa, hat dolduğunda ilk düşen onlar olur. Ayrı bir yönetim ağı bu paketleri kalabalıktan çıkarır; öncelik yapılandırması ise sıkışma anında onlara geçiş üstünlüğü verir. VLAN tarafını yönetim VLAN’ını ele aldığımız bölümde, öncelik tarafını ise QoS ve öncelikli devreler başlığında anlatıyoruz.
Bu tercihin mantığı, iki kaybı yan yana koyunca netleşiyor. Dosya indiren birinin bağlantısı bir saniye geç açılsa, ya da video görüşmesinin kalitesi birkaç saniye düşse, kimse ölmez. Ama biri firewall’unuza içeriden parola deneyerek girmeye çalışıyorsa ve o denemeleri bildiren satırlar tam o sırada kalabalığa takılıp kayboluyorsa, kaybettiğiniz şey birkaç saniyelik konfor değil, olayın kendisidir. Önceliklendirmenin gerçek gerekçesi hız değil, hangi paketin kaybolmasını göze aldığınızdır.
Tek @ ve Çift @@: Gönderen Tarafta Tek Karakterlik Fark
Linux tarafında gönderen yapılandırılırken taşıma tercihi tek bir karakterle yazılır ve bu, ilk kez görenleri en çok şaşırtan ayrıntıdır:
*.* @192.168.1.46:514
*.* @@192.168.1.46:514- Tek
@UDP demektir. - Çift
@@TCP demektir.
Aradaki fark bir karakter, sonuç ise kaybın sessiz olup olmamasıdır. Bir yapılandırmayı devralırken bakılacak ilk yerlerden biridir.
TCP ve TLS Ne Zaman Gerekir?
Üç durumda varsayılanın dışına çıkılır:
- Kaybı görmek istiyorsanız TCP. Teslim onaylanır, kopan bağlantı fark edilir. Bedeli cihaz üstünde biraz daha kaynak ve bağlantı yönetimidir.
- Kayıtların yolda okunmasını istemiyorsanız TLS. Syslog düz metin taşır; aynı ağdaki biri paketleri yakalarsa kullanıcı adları, cihaz adları ve yapılandırma değişiklikleri okunabilir. Şifreli taşıma
6514portunu kullanır. - Yasal saklama yapıyorsanız ikisi birden. Delil değeri taşıyacak bir kaydın hem eksiksiz hem de değiştirilmemiş olması beklenir.
TLS’in burada ne yaptığını karıştırmamak gerekiyor: taşımayı şifreler, kaydı imzalamaz. Kanal boyunca satırı okunamaz hâle getirir ve toplayıcının kimliğini sertifikayla doğrular, yani gönderen cihaz karşısındaki sunucunun gerçekten kendi toplayıcısı olduğunu anlar. Bu doğrulamanın kime dayandığı ayrı bir konudur ve iç ağda genellikle kendi kurduğunuz bir otoriteye bağlanır: sertifika otoritesi rehberimizde ele alıyoruz. Ama kayıt toplayıcıya ulaşıp diske yazıldıktan sonra TLS’in işi biter. Diskteki dosyanın sonradan değiştirilip değiştirilmediği ayrı bir sorudur ve cevabı bir sonraki bölümde. Ayrıca 6514 ayrı bir port olmak zorundadır, çünkü şifreli oturum ilk baytından itibaren el sıkışmayla başlar; 514’ü dinleyen bir toplayıcı o baytları syslog satırı sanardı.
Düz metin taşımanın ne demek olduğunu bu sitede daha önce paket düzeyinde gösterdik: Telnet protokolü yazımızda aynı switch’in yakalanan trafiğinde parolanın açıkça göründüğünü ölçmüştük. Syslog aynı sınıftadır.
Syslog Neyi Taşımaz? Kimlik, Bütünlük ve Sıra
Buraya kadar protokolün ne yaptığını gördük. Şimdi yapmadıklarını koyuyoruz, çünkü bir kaydın delil değeri tam olarak burada belirlenir.
Syslog kırk yıl önce, ağdaki herkesin birbirine güvendiği varsayımıyla tasarlandı. O varsayım artık geçerli değil ve protokol de bunu telafi etmeye çalışmıyor.
Gönderen Adresi Bir Kimlik Değildir
Toplayıcı, gelen kaydı paketin kaynak adresine bakarak bir cihaza atar. Bu bir kimlik doğrulaması değildir. UDP’de kaynak adresi taklit edilebilir; ağdaki herhangi bir makine, switch’inizin adresinden geliyormuş gibi görünen kayıtlar üretebilir.
Sonucu iki yönlüdür ve ikisi de kötüdür: uydurma kayıtlar arşive girebilir, ya da gerçek kayıtlar sahte olanların arasında değersizleşir.
Pratikte alınacak önlem protokolün içinde değil, çevresindedir: toplayıcının 514 portunu ağın tamamına değil yalnız bilinen gönderen adreslerine açmak. Bu, kimlik doğrulaması yerine geçmez ama çıtayı belirgin biçimde yükseltir.
Kaydın Sonradan Değiştirilmediğini Kim Garanti Eder?
Kısa cevap: syslog garanti etmez. Protokolün taşıdığı satırda ne imza vardır ne sağlama. Kayıt toplayıcıya ulaştıktan sonra sıradan bir metin dosyasıdır; o dosyaya yazma yetkisi olan herkes içeriğini değiştirebilir.
Bu, protokolün eksikliği değil kapsamının sınırıdır. Bütünlük garantisi toplayıcının üstüne kurulan ayrı bir katmandır: kayıtların zincirlenmiş sağlama değerleriyle mühürlenmesi, yazma yetkisinin daraltılması, arşivin ayrı bir ortamda tutulması.
Türkiye’de bu katman isteğe bağlı da değildir. 5651 sayılı kanun kapsamındaki kayıtlar için zaman damgası, değiştirilemezlik ve saklama süresi ayrı ayrı şart koşulur; bunların hiçbiri syslog’un işi değildir. Yükümlülüğün tamamını ve teknik karşılıklarını 5651 log yönetimi rehberimizde ele alıyoruz.
Saat Kayarsa Tutanak Ne Kadar İşe Yarar?
Bir tutanağın en kritik alanı zamandır. İki cihazın saati birbirinden on dakika farklıysa, ikisinden gelen kayıtları yan yana koyduğunuzda olayların sırası yanlış görünür. Önce olan sonra olmuş gibi durur.
Bunun teşhisi zordur, çünkü kayıtların kendisi doğrudur. Yanlış olan tek şey damganın vurulduğu andır.
Bu yüzden merkezi log kurulumunun ilk adımı toplayıcı değil, saat kaynağıdır. Ağdaki bütün cihazlar aynı zaman kaynağına bağlanmadan toplanan kayıtlar, tek tek doğru ve birlikte yanlış olur. Kurumsal ağda saat dağıtımını NTP protokolü yazımızda ayrıntılarıyla anlatıyoruz.
Sahada Syslog: Gürültüyü Nasıl Ayıklarsınız?
Toplayıcıyı kurdunuz, cihazları bağladınız, kayıtlar akıyor. Asıl iş şimdi başlıyor, çünkü toplamak ile okumak aynı şey değil.
Lab: Bir Switch Bir Dakikada Ne Kadar Konuşur?
Bu soruya sahada verilen standart cevap “bir switch pek konuşmaz, ara sıra bir port düşer” şeklindedir. Ölçtüm.
Lab switch’imi (sw01) yeni kurduğum toplayıcıya bağladım ve tek yaptığım şey beklemek oldu. Yapılandırma değiştirmedim, kablo takmadım, kimseyi bağlamadım. Altmış saniye sonunda gelen:
60 satır / 8.670 baytBu hızda, tek bir switch günde yaklaşık 11 MB, yılda yaklaşık 4,3 GB kayıt üretiyor. Hiçbir şey olmuyorken.
Sayı tek başına şaşırtıcı değil. Şaşırtıcı olan içeriği. Toplanan 149 satırın dağılımı şöyleydi:
| Kaynak program | Boyut | Satır |
|---|---|---|
DOT1S | 21,4 KB | 148 |
CLI_WEB | 147 bayt | 1 |
Anlamlı olan tek kayıt, hacmin binde yedisi. O 147 baytlık satır şuydu:
<190> Aug 19 07:01:59 sercebilisimsw01-1 CLI_WEB[emWeb]: %% [CLI:ilker:192.168.1.115] User has succesfully logged inYani switch’e kimin, ne zaman, hangi adresten yönetici olarak girdiği. Bir arıza incelemesinde ya da bir güvenlik sorusunda ilk bakacağınız satır tam olarak budur. Ve diğer 148 satırın arasında kaybolmuş durumda.
Aynı Satırın Yüzlerce Kez Tekrarı Bir Arıza İşaretidir
Gürültüyü oluşturan 148 satır rastgele değildi. İki mesajın dönüşümlü tekrarıydı:
<187> DOT1S[dtlTask]: dot1s_txrx.c(306) %% dot1sBpduReceive(): Discarding the BPDU, since it is an invalid BPDU type
<189> DOT1S[dtlTask]: dot1s_txrx.c(1286) %% dot1sBpduReceive(): Invalid Forward DelayHer iki saniyede bir, aralıksız. Switch, ağ döngülerini engelleyen protokolün mesajlarını alıyor ve anlamlandıramadığı için atıyor.
Buradan çıkan kural şudur: saniyede tekrarlanan bir mesaj bilgi değil, semptomdur. Bir kaydın yüzlerce kez tekrarlanması, o kaydı önemsiz yapmaz; tam tersine, arka planda düzelmemiş bir şeyin sürdüğünü gösterir.
Ama aynı kural, o mesajın arşive olduğu gibi girmemesi gerektiğini de söyler. Yılda 4,3 GB’ın neredeyse tamamı aynı iki cümlenin kopyasıdır.
Neyi Toplarsınız, Neyi Atarsınız?
Toplayıcıya gelen her satırı sonsuza kadar saklamak hem gereksiz hem masraflıdır. Ayıklama üç kademede yapılır:
- Gönderen tarafta eşik. Cihazın hangi seviyeden yukarısını göndereceğini ayarlayın.
debugseviyesini sürekli açık bırakmak, gürültünün en büyük kaynağıdır. Bu ayarın en çok fark yarattığı cihaz firewall’dur: bir güvenlik duvarı her bağlantı için kayıt üretebilir ve kurumsal firewall kurulumunda hangi kural setinin loglanacağı baştan kararlaştırılır. - Toplayıcıda ayrıştırma. Kayıtları gönderen cihaza ve üreten sürece göre ayrı dosyalara yazın.
DOT1SileCLI_WEBaynı dosyada olduğunda ikincisi görünmez olur; ayrı dosyada olduğunda 147 baytlık dosya kendini gösterir. - Tekrar bastırma ve saklama süresi. Aynı mesajın arka arkaya tekrarı tek satıra indirilir, eski kayıtlar sıkıştırılıp arşivlenir.
Üçünü de atlarsanız sonuç öngörülebilir: disk dolar, log yazımı durur, ve bunu ancak ihtiyacınız olduğu gün fark edersiniz.
Bu ayıklamanın ölçekteki karşılığını bir vaka üzerinden de anlatmıştık: on üç lokasyonlu bir ağda pahalı bir izleme ürününden açık kaynak araçlara geçerken karşılaştığımız asıl sorun veri toplamak değil, toplanan veriyi okunur kılmaktı.
Bu ayıklamanın nasıl kurulduğunu, hangi yapılandırma dosyasına ne yazıldığını ve gönderen cihazın nasıl bağlandığını Ubuntu’da syslog sunucusu kurulumu rehberimizde adım adım gösteriyoruz.
Sonuç: Katip Yoksa Duruşma Hiç Olmamıştır
Syslog karmaşık bir protokol değil. Cihaz bir satır üretir, öncelik alanına iki bilgi sıkıştırır, 514 portundan gönderir. Öğrenilecek asıl şey protokolün kendisi değil, neyi garanti etmediğidir: teslimi garanti etmez, göndereni doğrulamaz, kaydın değiştirilmediğini kanıtlamaz, saatin doğruluğundan sorumlu değildir.
Bunların hepsi sizin kuracağınız katmanlardır. Protokol yalnız tutanağın tutulmasını sağlar; tutanağın güvenilir olması ayrı bir iştir.
Ve ölçüm şunu gösterdi: bir switch hiçbir şey olmuyorken bile dakikada altmış satır konuşuyor. Bu satırların yüzde doksan dokuzu size bir şey anlatmayabilir. Ama geri kalan binde yedi, gece üçte kimin sisteme girdiğini söyleyen tek kayıttır.
O kaydı toplamıyorsanız, o olay hiç olmamış sayılır.
Syslog Hakkında Sık Sorulan Sorular
Yazan
İlker PehlivanBT 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üren bir ağ ve sistem mühendisidir. Şirketlere özel teknoloji rehberleri burada.
Benzer Makaleler
Kurumsal Ağ Protokolleri: DHCP'den LDAP'a
Bir şirketi ayakta tutan ağ protokolleri: DHCP, DNS, Kerberos, LDAP, SMB, RDP, SSH ve BGP. Hangisi ne yapar, nasıl zincirlenir, bozulduğunda nereden anlaşılır.
ARP Nedir? MAC Adresi, ARP Tablosu ve Spoofing
ARP, IP adresini MAC adresine çeviren protokoldür. ARP tablosu durumları, yayın alanı sınırı ve ARP spoofing, gerçek makineden alınmış paket dökümleriyle.
DHCP Nedir? Ağda IP Adresi Nasıl Dağıtılır?
DHCP nedir, nasıl çalışır? Ağdaki cihazlara IP adresi, subnet, gateway ve DNS bilgisinin otomatik dağıtımı: DORA akışı, kira süresi, APIPA ve DHCP relay.
DNS Nedir, Nasıl Çalışır? Kayıt Türleri ve TTL
DNS nedir, nasıl çalışır? Kök, TLD ve yetkili sunucu zinciri; A, CNAME, MX, TXT kayıtları; nameserver devri, TTL ve önbellek, nslookup ile arıza teşhisi.
Kurumsal Firewall Kurulumu, Yönetimi ve Danışmanlığı
Kurumsal firewall kurulumu, yönetimi ve danışmanlığı: Fortinet, Palo Alto ve pfSense ile kural yönetimi, IPS/IDS, VPN ve sürekli izleme hizmeti sunuyoruz.
HTTP ve HTTPS Nedir? Aradaki Fark ve Şifreleme
HTTP ve HTTPS nedir, farkı ne? İstek ve yanıt anatomisi, durum kodları, şifresiz bağlantıda ne sızdığı ve TLS el sıkışması adım adım.
ICMP Nedir? Ping, TTL ve Tracert Komutu
ICMP, ping ve tracert komutunun altında çalışan protokoldür. Request timed out, Destination host unreachable ve General failure farkı, lab ölçümleriyle.
IP Adresi Nedir? Subnet Maskesi, CIDR ve IPv6
IP adresi nedir, subnet maskesi ne işe yarar, /24 ne demek? Ağ ve host kısmı ayrımını, özel adres aralıklarını ve IPv6'yı gerçek lab ölçümleriyle anlatıyoruz.
Kurumsal Kablosuz Ağ Tasarımı: Survey'den Kuruluma
Kurumsal kablosuz ağ tasarımı: survey planlamadan access point yerleşimine, PoE kablolamadan kanal planına kadar 63 AP'lik bir projede izlenen gerçek sıra.
Kerberos Nedir? Kimlik Doğrulama ve Bilet Mantığı
Kerberos nedir, nasıl çalışır? Bilet mantığını, paket düzeyinde yakalanmış gerçek akışı ve oturum açılamadığında izlenecek teşhis sırasını adım adım gösteriyoruz.
LDAP ve LDAPS Nedir? Dizin Sorgulama ve 636 Portu
LDAP nedir, nasıl çalışır? Dizin yapısı, DN ve base DN mantığı, bind türleri ve 389 ile 636 farkı; gerçek paket yakalamalarıyla anlatıyoruz.
NFS Nedir? NAS ve Sanallaştırmada Dosya Paylaşımı
NFS nedir, nasıl çalışır? UID/GID kimlik modeli, root_squash ayarı, NFS ile SMB'nin aynı klasörde çakışması ve izin sorunlarının teşhisi, lab ölçümleriyle.
NTP Nedir? Kurumsal Ağda Saat Senkronizasyonu
NTP nedir, nasıl çalışır? Stratum hiyerarşisi, ağda tek saat kaynağı, Kerberos'un beş dakikalık toleransı ve saat arızalarında teşhis sırası.
Port Nedir? TCP ve UDP Farkı, Bağlantı Arızası Tespiti
Port numarası ne işe yarar, TCP ve UDP farkı nasıl işler, açık port nasıl kontrol edilir ve bağlantı kurulmadığında arıza hangi tarafta, nasıl kanıtlanır?
RADIUS Sunucusu Nedir? 802.1X ile Ağ Kimlik Doğrulama
RADIUS sunucusu nedir, nasıl çalışır? 802.1X akışını, EAP yöntemlerini ve ağa bağlanamayan kullanıcıda izlenecek teşhis sırasını paket düzeyinde gösteriyoruz.
SMB Nedir? Dosya Paylaşımı ve SYSVOL Bağımlılığı
SMB nedir, nasıl çalışır? Dosya ve yazıcı paylaşımı, sürüm farkları, SMBv1 riski ve grup ilkelerinin SYSVOL üzerinden dağıtımı.
SSH Nedir? Şifreli Yönetim ve Anahtar Tabanlı Giriş
SSH nedir, port 22'de el sıkışma nasıl olur, ana bilgisayar anahtarı neyi kanıtlar, sürüm 1 neden kapatılmalı ve parola yerine anahtarla giriş nasıl kurulur.
Kurumsal Switch, Router Kurulumu ve VLAN Yapılandırma
Kurumsal switch, router kurulumu ve VLAN yapılandırma: HSRP/VRRP yedekliliği, port güvenliği ve doğru mimari danışmanlığıyla güvenilir ağ altyapısı kuruyoruz.
Telnet Nedir? Şifresiz Yönetim Protokolü ve Riskleri
Telnet nedir, port 23 nasıl çalışır, parolayı neden düz metin taşır ve hâlâ açık bulunan cihazlarda ne yapılmalı: kapatma, SSH'a geçiş ve yönetim VLAN'ı.
VLAN Nedir? 802.1Q Etiketi, Access ve Trunk Farkı
VLAN tek switch'i mantıksal ağlara böler. 802.1Q etiketi, access ile trunk portun farkı ve native VLAN riski, gerçek paket dökümleriyle anlatılıyor.
NAT Nedir? Ağ Adresi Çevirisi Nasıl Çalışır?
NAT (Network Address Translation) nedir, SNAT ile DNAT farkı nedir, PAT nasıl çalışır ve NAT tablosu ne tutar? Çeviri tablosunu lab ortamında açıp gösteriyoruz.
RDP Nedir? Uzak Masaüstü Protokolü ve Güvenliği
RDP (Remote Desktop Protocol) nedir, 3389 portu ne yapar ve NLA ne işe yarar? Uzak masaüstü protokolünü Windows sunucuda ölçtük, güvenlik tarafıyla birlikte.
SNMP Nedir? MIB, OID ve Trap Mekanizması
SNMP nedir ve nasıl çalışır? Yönetici ve ajan mimarisi, MIB ile OID kataloğu, poll ve trap arasındaki fark, community string riski ve SNMPv3 ile çözümü.
FTP, FTPS ve SFTP Nedir? Aralarındaki Fark
FTP, FTPS ve SFTP arasındaki fark: iki kanallı mimari, aktif ve pasif mod, firewall arkasında kırılan aktarımlar ve paket düzeyinde şifresiz dosya kanıtı.
TFTP Nedir? Port 69, Switch Yedeği ve PXE
TFTP nedir, UDP 69 üzerinden nasıl çalışır ve switch yapılandırma yedeği neden bu protokolle alınır? Gerçek paket dökümü, PXE boot ve SFTP karşılaştırması.
TLS Nedir? SSL ile Farkı, Sürüm Pazarlığı ve Ölçümü
TLS nedir, SSL ile farkı ne? El sıkışmada sürüm ve şifre takımı nasıl seçilir, TLS 1.2 ile 1.3 arasında pakette ne değişir, sunucunuz hangisini konuşuyor?
IMAP Nedir, POP3 Nedir? Aralarındaki Fark
IMAP ile POP3 arasındaki fark: durumun sunucuda mı cihazda mı tutulduğu, 993 ve 995 portları, kota dolunca ne olur ve POP3'ten IMAP'a geçişin gerçek maliyeti.
SMTP Nedir? Mail Nasıl Gönderilir ve Neden Gitmez?
SMTP nedir, mail nasıl gönderilir: zarf ile başlık ayrımı, 25/587/465 portlarının farkı, STARTTLS öncesi düz metin okunan oturum ve gitmeyen mailin teşhisi.
Yapısal Kablolama ve Zayıf Akım: Kurumsal Bina Altyapısı
Kurumsal binada yapısal kablolama ve zayıf akım sistemleri nasıl kurulur? Kat kablolaması, kabinet düzeni, CAT6 ve fiber seçimi, test raporu ve saha hataları.
İçindekiler
Ücretsiz Değerlendirme
Switch ve firewall logları cihazın üstünde kalırsa ilk arızada kaybolur. Bakalım mı?
Ana Hizmet
Kurumsal Network Kurulumuİlgili Makaleler
- Kurumsal Ağ Protokolleri: DHCP'den LDAP'a
- ARP Nedir? MAC Adresi, ARP Tablosu ve Spoofing
- DHCP Nedir? Ağda IP Adresi Nasıl Dağıtılır?
- DNS Nedir, Nasıl Çalışır? Kayıt Türleri ve TTL
- Kurumsal Firewall Kurulumu, Yönetimi ve Danışmanlığı
- HTTP ve HTTPS Nedir? Aradaki Fark ve Şifreleme
- ICMP Nedir? Ping, TTL ve Tracert Komutu
- IP Adresi Nedir? Subnet Maskesi, CIDR ve IPv6
- Kurumsal Kablosuz Ağ Tasarımı: Survey'den Kuruluma
- Kerberos Nedir? Kimlik Doğrulama ve Bilet Mantığı
- LDAP ve LDAPS Nedir? Dizin Sorgulama ve 636 Portu
- NFS Nedir? NAS ve Sanallaştırmada Dosya Paylaşımı
- NTP Nedir? Kurumsal Ağda Saat Senkronizasyonu
- Port Nedir? TCP ve UDP Farkı, Bağlantı Arızası Tespiti
- RADIUS Sunucusu Nedir? 802.1X ile Ağ Kimlik Doğrulama
- SMB Nedir? Dosya Paylaşımı ve SYSVOL Bağımlılığı
- SSH Nedir? Şifreli Yönetim ve Anahtar Tabanlı Giriş
- Kurumsal Switch, Router Kurulumu ve VLAN Yapılandırma
- Telnet Nedir? Şifresiz Yönetim Protokolü ve Riskleri
- VLAN Nedir? 802.1Q Etiketi, Access ve Trunk Farkı
- NAT Nedir? Ağ Adresi Çevirisi Nasıl Çalışır?
- RDP Nedir? Uzak Masaüstü Protokolü ve Güvenliği
- SNMP Nedir? MIB, OID ve Trap Mekanizması
- FTP, FTPS ve SFTP Nedir? Aralarındaki Fark
- TFTP Nedir? Port 69, Switch Yedeği ve PXE
- TLS Nedir? SSL ile Farkı, Sürüm Pazarlığı ve Ölçümü
- IMAP Nedir, POP3 Nedir? Aralarındaki Fark
- SMTP Nedir? Mail Nasıl Gönderilir ve Neden Gitmez?
- Yapısal Kablolama ve Zayıf Akım: Kurumsal Bina Altyapısı