Linux'ta Rsyslog günlük sunucusu nasıl kurulur

Ağlar ve sistemler alanının yöneticileri, BT destek personeli veya yöneticileri olarak, sistem içinde meydana gelen her olayı hem kullanıcılar, uygulamalar hem de sistemin kendisi düzeyinde takip etmemize yardımcı olacak temel bir şeye sahibiz ve bunlar Etkinlikler.

Her olay, tarih, saat, kimlik, kullanıcı ve meydana gelen olay gibi değerlerle her bir aktiviteyi detaylı olarak belirlememize yardımcı olan bir dizi unsuru kayıt altına alarak bize çok daha merkezi bir yönetim ve idare imkanı sağlar.
Her kaydın sistem, güvenlik vb. gibi farklı bir kategoriye ait olduğunu görebiliriz.

Linux ortamlarında, bu olayları basit ve eksiksiz bir şekilde yönetmenin mümkün olacağı Rsyslog yardımcı programına sahibiz.

Rsyslog nedirRsyslog (log için roket hızında sistem - günlük işleme için hızlı sistem), yüksek performans, mükemmel güvenlik özellikleri ve her şirketin ihtiyacına göre ölçeklenebilir olmasını sağlayan modüler bir tasarım sunmak için tasarlanmış bir yardımcı programdır.

Rsyslog, çok çeşitli kaynaklardan gelen girdileri kabul edebilir, bunları dönüştürebilir ve çeşitli hedefler için sonuçlar üreterek BT ​​yönetimini optimize edebilir.

RSYSLOG, uzak hedefler de dahil olmak üzere sınırlı işleme uygulandığında yerel hedeflere saniyede bir milyondan fazla mesaj gönderme yeteneğine sahiptir.

Rsyslog ÖzellikleriRsyslog'u kullanırken aşağıdaki gibi özelliklere sahip olacağız:

  • $ LocalHostName [name] yönergesi: Bu yönerge, yönergede belirtilen sistemin ana bilgisayar adının üzerine yazmamızı sağlar. Yönerge birden çok kez verilirse, sonuncusu hariç tümü yok sayılır.
  • Hadoop HDFS desteği eklendi.
  • Rsyslog sayaçlarında periyodik istatistikleri çalıştırmak için bir impstat modülüne sahiptir.
  • imptcp eklentisine sahiptir.
  • Çıktı işlemeyi hızlandırmak için kullanılan yeni bir tür "dizi oluşturucu" modülü içerir.
  • OSX ve Solaris'i destekler.
  • Özel mesaj ayrıştırıcıları oluşturma yeteneği.
  • imudp için çoklu kural seti desteği.
  • Üstün performans sağlayan yeni işlemsel çıkış modülü arayüzü.
  • Çoklu iş parçacığı
  • TCP, SSL, TLS, RELP protokollerini destekler
  • MySQL, PostgreSQL, Oracle ve daha fazlasını destekler
  • Sistem günlüğü mesajının herhangi bir bölümünü filtreleyin
  • Tamamen yapılandırılabilir çıktı formatı
  • İşletme sınıfı yayın ağları için uygundur

Rsyslog filtrelemeRsyslog, syslog mesajlarını seçilen özelliklere ve eylemlere göre filtreleyebilir, bu filtreler şunlardır:

  • Tesis veya Öncelik Dosyaları
  • Mülk tabanlı filtreler
  • İfade tabanlı filtreler

Tesis filtresi, kayıtları üretmekten sorumlu dahili Linux alt sistemi tarafından temsil edilir, aşağıdaki seçeneklere sahibiz:

  • auth / authpriv = Kimlik doğrulama işlemleri tarafından üretilen mesajlardır
  • cron = cron görevleriyle ilişkili kayıtlardır
  • arka plan programı = Bunlar, çalışan sistem hizmetleriyle ilgili mesajlardır.
  • kernel = Linux çekirdek mesajlarını gösterir
  • mail = Posta sunucusundan gelen mesajları içerir
  • syslog = Sistem günlüğü veya diğer arka plan programlarıyla ilgili mesajlardır.
  • lpr = Yazıcıları veya yazdırma sunucusu mesajlarını kapsar
  • local0 - local7 = Yönetici kontrolü altındaki özel mesajları say
Rsyslog ile öncelik veya önem seviyeleri, bir anahtar kelimeye ve aşağıdaki gibi bir sayıya atanır:
  • acil = Acil - 0
  • uyarı = Uyarılar - 1
  • hata = Hatalar - 3
  • uyar = Uyarılar - 4
  • ihbar = Bildirim - 5
  • bilgi = Bilgi - 6
  • hata ayıklama = Hata ayıklama - 7

1. Linux'ta Rsyslog'un durumu nasıl yapılandırılır ve kontrol edilir

Aşama 1
Rsyslog arka plan programı çoğu Linux dağıtımına otomatik olarak yüklenir, ancak değilse, aşağıdaki komutları çalıştırmamız gerekir:

Debian sistemlerinde

 sudo apt-get kurulum Rsyslog 

RedHat veya CentOS sistemlerinde

 sudo yum Rsyslog'u kurun 

Adım 2
Aşağıdaki satırı çalıştırarak Rsyslog'un mevcut durumunu kontrol edebiliriz:

Systemd kullanan Linux dağıtımlarında

 systemctl durumu rsyslog.service 

Linux'un eski sürümlerinde

 hizmet rsyslog durumu /etc/init.d/rsyslog durumu

BÜYÜT

Aşama 3
Rsyslog hizmetinin durumu aktif değilse, aşağıdakileri yürüterek başlatabiliriz:

Linux'un yeni sürümlerinde

 systemctl rsyslog.service'i başlat 

Linux'un eski sürümlerinde

 hizmet rsyslog başlatma /etc/init.d/rsyslog başlatma

BÜYÜT

2. Linux'ta Rsyslog yapılandırması


Bir rsyslog programını sunucu modunda çalışacak şekilde yapılandırmak için, /etc/rsyslog.conf dizinindeki yapılandırma dosyasını düzenlemeliyiz.

Aşama 1
İstenen düzenleyiciyi kullanarak erişebiliriz:

 sudo nano /etc/rsyslog.conf

BÜYÜT

Adım 2
Orada aşağıdaki değişiklikleri yapacağız. 514 numaralı bağlantı noktasından UDP günlük mesajlarının alınmasına izin vermek için aşağıdaki satırlardan (#) işaretini kaldırarak bulun ve yorumdan vazgeçin. Varsayılan olarak, UDP bağlantı noktası syslog tarafından mesaj göndermek ve almak için kullanılır:

 $ ModLoad imudp $ UDPServerRun 514
Aşama 3
UDP protokolü bir ağ üzerinden veri alışverişi için güvenilir değildir, bu nedenle Rsyslog'u TCP protokolü aracılığıyla uzak bir sunucuya günlük mesajları gönderecek şekilde yapılandırabiliriz. TCP alım protokolünü etkinleştirmek için aşağıdaki satırları kaldıracağız:
 $ ModLoad imtcp $ GirişTCPServerRun 514
4. Adım
Bu, rsyslog arka plan programının 514 numaralı bağlantı noktasındaki bir TCP soketini bağlamasına ve dinlemesine izin verecektir.
Her iki protokol de rsyslog'da Linux'ta aynı anda çalışacak şekilde etkinleştirilebilir.
Hangi göndericilerin rsyslog arka plan programına erişmesine izin verildiğini belirtmek gerekirse, aşağıdaki satırları eklemeliyiz:
 $ AllowedSender TCP, 127.0.0.1, 192.168.0.5/24, * .domain.com 

BÜYÜT

Adım 5
Bu noktada, gelen günlükleri almadan önce rsyslog arka plan programı tarafından analiz edilecek yeni bir şablon oluşturmak gerekecektir. Bu şablon, yerel Rsyslog sunucusuna gelen günlük mesajlarının nerede saklanacağını söylemelidir. Bu şablon $ AllowedSender satırından sonra gelir:

 $ şablonu Gelen günlükler, "/ var / log /% HOSTNAME% /% PROGRAMNAME% .log" *. *? Gelen günlükler & ~ 

BÜYÜT

6. Adım
Yalnızca kern tarafından oluşturulan mesajları kaydetmek için aşağıdakileri ekleyeceğiz. Yukarıdakilerle, alınan kayıtlar şablon tarafından analiz edilir ve yerel dosya sisteminde / var / log / dizininde, % HOSTNAME% ve % PROGRAMNAME% yolunda saklanır.

 çekirdek *? Gelen günlükler
7. Adım
Aşağıdaki tuş kombinasyonunu kullanarak değişiklikleri kaydedebiliriz:

Ctrl + O

Düzenleyiciyi şunu kullanarak bırakıyoruz:

Ctrl + X

3. Hizmeti yeniden başlatın ve Linux'ta Rsyslog bağlantı noktalarını kontrol edin

Aşama 1
Herhangi bir değişiklik yaptığımızda aşağıdaki seçeneklerden birini uygulayarak hizmeti yeniden başlatmalıyız:

 sudo hizmeti rsyslog yeniden başlat sudo systemctl Rsyslog'u yeniden başlat
Adım 2
Rsyslog tarafından kullanılan portları kontrol etmek için aşağıdakileri uygulayacağız:
 sudo netstat -tulpn | grep rsyslog'u
Aşama 3
Belirttiğimiz gibi kullanılan port 514 olacaktır, güvenlik duvarında aşağıdaki satırlarla kullanım için etkinleştirmemiz gerekmektedir.

RedHat ve CentOS'ta

 firewall-cmd --kalıcı --add-port = 514 / tcp firewall-cmd -reload

Debian'da

 ufw 514 / tcp'ye izin ver ufw 514 / udp'ye izin ver
IPTable'ları kullanırsak:
 iptables -A INPUT -p tcp -m tcp --dport 514 -j KABUL ET iptables -A INPUT -p udp --dport 514 -j KABUL

BÜYÜT

Bu şekilde, içinde sürekli olarak oluşturulan çeşitli günlük türlerini yönetmek için Linux'ta Rsyslog'u kurduk.

wave wave wave wave wave