Günlükleri uzak bir ana bilgisayara yüklemek, birden fazla cihaz için raporları merkezileştirmemize ve günlüklere yerel olarak erişmemizi engelleyen bir sorun olması durumunda araştırma için bir rapor yedeği tutmamıza olanak tanır.
Bu öğretici, günlükleri barındırmak için bir uzak sunucunun nasıl kurulacağını ve bu günlüklerin istemci cihazlardan nasıl gönderileceğini ve dizinlerdeki günlüklerin istemci ana bilgisayara göre nasıl sınıflandırılacağını veya bölüneceğini gösterir.
Sanal bir cihaz kullanabileceğiniz talimatları takip etmek için Amazon'dan ücretsiz bir VPS seviyesi aldım (bir Amazon cihazı kurmak için yardıma ihtiyacınız olursa, şu adreste LinuxHint'te harika özel içeriklere sahipler https://linuxhint.com/kategori/aws/). Sunucu genel IP'sinin dahili IP'sinden farklı olduğunu unutmayın.
Başlamadan önce:
Günlükleri uzaktan göndermek için kullanılan yazılım rsyslog'dur, çalıştırmamanız durumunda varsayılan olarak Debian ve türetilmiş Linux dağıtımlarında gelir:
# sudo apt rsyslog'u kurunrsyslog durumunu her zaman çalıştırarak kontrol edebilirsiniz:
# sudo hizmeti rsyslog durumu
Ekran görüntüsünde durumun etkin olduğunu görebileceğiniz gibi, rsyslog'unuz etkin değilse, her zaman çalıştırarak başlatabilirsiniz:
# sudo hizmeti rsyslog başlangıcıVeya
# systemctl rsyslog'u başlat
Not: Debian hizmetlerini yönetmeye yönelik tüm seçenekler hakkında ek bilgi için kontrol edin Debian'da hizmetleri durdurun, başlatın ve yeniden başlatın.
rsyslog'u başlatmak şu anda alakalı değil çünkü bazı değişiklikler yaptıktan sonra yeniden başlatmamız gerekecek.
Uzak Sunucuya Linux Günlükleri Nasıl Gönderilir: Sunucu Tarafı
Her şeyden önce, sunucuda dosyayı düzenleyin /etc/resyslog.konf nano veya vi kullanarak:
# nano /etc/rsyslog.konf
Dosya içinde, aşağıdaki satırları yorumdan kaldırın veya ekleyin:
modül(load="imudp")input(type="imudp" bağlantı noktası="514")
modül(load="imtcp")
input(type="imtcp" bağlantı noktası="514")
Yukarıda, UDP ve TCP aracılığıyla günlük alımlarını yorumladık veya ekledik, bunlardan yalnızca birine veya her ikisine de izin verebilirsiniz, bir kez yorumlanmadığında veya eklendiğinde, güvenlik duvarı kurallarınızı, gelen günlüklere izin vermek, TCP üzerinden günlük alımına izin vermek için düzenlemeniz gerekir:
# ufw 514/tcp'ye izin verir
UDP protokolü çalıştırma yoluyla gelen günlüklere izin vermek için:
# ufw 514/udp'ye izin verir
Hem TCP hem de UDP üzerinden izin vermek için yukarıdaki iki komutu çalıştırın.
Not: UFW hakkında daha fazla bilgi için okuyabilirsiniz Debian Güvenlik Duvarları (UFW) ile Çalışmak.
Çalıştırarak rsyslog hizmetini yeniden başlatın:
# sudo hizmeti rsyslog yeniden başlatma
Şimdi, gönderme günlüklerini yapılandırmak için istemcide devam edin, ardından formatı iyileştirmek için sunucuya geri döneceğiz.
Uzak Sunucuya Linux Günlükleri Nasıl Gönderilir: İstemci Tarafı
İstemci gönderme günlüklerinde IP 18'i değiştirerek aşağıdaki satırı ekleyin.223.3.sunucu IP'niz için 241.
*.* @@18.223.3.241:514
CTRL +X tuşlarına basarak çıkın ve değişiklikleri kaydedin.
Düzenlendikten sonra rsyslog hizmetini çalıştırarak yeniden başlatın:
# sudo hizmeti rsyslog yeniden başlatma
Sunucu tarafında:
Artık /var/log içindeki günlükleri kontrol edebilirsiniz, bunları açarken günlüğünüz için karışık kaynaklar fark edeceksiniz, aşağıdaki örnek Amazon'un dahili arayüzünden ve Rsyslog istemcisinden (Montsegur) günlükleri göstermektedir:
Bir yakınlaştırma bunu net olarak gösterir:
Karışık dosyalara sahip olmak rahat değil, aşağıda günlükleri kaynağa göre ayırmak için rsyslog yapılandırmasını düzenleyeceğiz.
İstemci ana bilgisayarının adıyla bir dizindeki günlükleri ayırt etmek için /etc/rsyslog sunucusuna aşağıdaki satırları ekleyin.rsyslog'a uzak günlüklerin nasıl kaydedileceğini, bunu rsyslog içinde yapmak için conf.conf satırları ekleyin:
$template RemoteLogs,"/var/log/%HOSTNAME%/.kayıt"*.* ?Uzak Günlükler
& ~
CTRL +X tuşlarına basarak değişiklikleri kaydetmeden çıkın ve sunucuda rsyslog'u yeniden başlatın:
# sudo hizmeti rsyslog yeniden başlatma
Artık biri ip-172 olan yeni dizinleri görebilirsiniz.31.47.AWS dahili arabirimi olan 212 ve rsyslog istemcisi gibi "montsegur" olarak adlandırılan diğer.
Dizinler içinde günlükleri bulabilirsiniz:
Sonuç:
Uzaktan günlük kaydı, başlangıçta söylendiği gibi, sunucu deposunun günlüklerle dolduğunda hizmetleri durdurabilecek bir soruna harika bir çözüm sunar, ayrıca günlüklere erişime izin verilmeden sistemin ciddi şekilde zarar görebileceği bazı durumlarda bir zorunluluktur. , bu gibi durumlarda bir uzak günlük sunucusu, sunucu geçmişine sysadmin erişimini garanti eder.
Yüksek kaynaklara ihtiyaç olmadığı ve AWS ücretsiz katmanları gibi ücretsiz sunucuların bu görev için iyi olduğu düşünüldüğünde, bu çözümü uygulamak teknik olarak oldukça kolaydır ve hatta ücretsizdir, günlük aktarım hızını artırmanız durumunda yalnızca UDP protokolüne izin verebilirsiniz (güvenilirliği kaybetmenize rağmen). Rsyslog'un Flume veya Sentry gibi bazı alternatifleri vardır, ancak rsyslog, Linux kullanıcıları ve sistem yöneticileri arasında en popüler araç olmaya devam etmektedir.
Umarım Linux Günlüklerini Uzak Bir Sunucuya Gönderme konulu bu makaleyi faydalı bulmuşsunuzdur.