GNU/Linux >> Znalost Linux >  >> Cent OS

Rsyslog:Jak posílat soubory protokolu na vzdálený server v CentOS/RHEL 6,7

Potřeba centralizovaného serveru Rsyslog

Každý systém *NIX má nějaký druh protokolovacího zařízení, které bude produkovat textové protokoly, které lze zapisovat do libovolného umístění na úložném zařízení (normálně výchozí na lokální diskový oddíl). Nyní je to nezbytné, ale může to také způsobit problémy jako:

  • Abyste mohli protokoly uložit, musíte mít na místním serveru dostatečný úložný prostor.
  • Musíte zavést rotaci, abyste zabránili jejich přílišnému růstu.
  • Pokud protokoly obsahují citlivé informace, jako je číslo kreditní karty, chcete, aby byly uloženy na bezpečném místě, nejlépe ne na místním serveru.
  • Pokud dojde k havárii serveru a data nelze obnovit, můžete o protokoly přijít.

Abychom se vyhnuli všem takovým problémům, můžeme použít centralizovaný server syslog. Centralizovaný server syslog poskytuje zabezpečení, odpovídající úložiště, centralizované zálohování atd.

Příspěvek nastiňuje kroky ke konfiguraci Rsyslog pro odesílání souborů protokolu na vzdálený server pomocí TCP i UDP.

Konfigurace centralizovaného serveru Rsyslog

1. Upravte soubor /etc/rsyslog.conf a odkomentujte následující řádky:

Pro TCP;

# vi /etc/rsyslog.conf
$ModLoad imtcp
$InputTCPServerRun 514

Pro UDP;

# vi /etc/rsyslog.conf
$ModLoad imudp
$UDPServerRun 514
Poznámka :K přenosu protokolů na vzdálený server rsyslog můžete použít režim TCP i UDP. Doporučil bych však použít UDP, protože je na klientském serveru z hlediska výkonu velmi snadné. Jedinou nevýhodou použití UDP je to, že některé zprávy protokolu mohou být ztraceny, pokud je server příliš zaneprázdněn, aby mohl přijímat pakety UDP. Použijte TCP tam, kde jsou vaše protokoly kritické; jinak zůstaňte u UDP.

2. Uložte soubor a restartujte službu rsyslog.

# service rsyslog restart          ### CentOS/RHEL 6
# systemctl restart rsyslog        ### CentOS/RHEL 7

Konfigurace klienta Rsyslog

1. Upravte soubor /etc/rsyslog.conf na klientském serveru a přidejte níže uvedené řádky. Když před vzdáleným hostitelem přidáte jediné @ používáte UDP. Chcete-li použít TCP, použijte @@ místo toho.

Pro UDP

# vi /etc/rsyslog.conf
# remote host is: name/ip:port, e.g. 192.168.0.1:514, port optional
#*.* @remote-host:514
*.* @x.x.x.x:514

Pro TCP

# vi /etc/rsyslog.conf
# remote host is: name/ip:port, e.g. 192.168.0.1:514, port optional
#*.* @@remote-host:514
*.* @@x.x.x.x:514

Zde nahraďte x.x.x.x vaším centralizovaným serverem rsyslog. Pokud nechcete posílat protokoly se všemi zahrnutými závažnostmi (*.*), můžete upravit poslední řádek takto:

*.info      @x.x.x.x:514

2. Uložte soubor a restartujte službu rsyslog.

# service rsyslog restart        ### CentOS/RHEL 6
# systemctl restart rsyslog        ### CentOS/RHEL 7

Ověření konfigurace

Můžete použít „logger ” pro ruční vygenerování zprávy protokolu a zjištění, zda ji vzdálený server syslog přijímá správně.

Na klientském serveru:

# logger "Test message from the system `hostname`"

Na centralizovaném serveru rsyslog:

# tail /var/log/messages  
June 15 12:32:01 geeklab root: Test message from the system geeklab

Spuštění Rsyslog na nestandardním portu

Pokud chcete spustit rsyslog na jiném portu, než je výchozí port 514, budete muset provést další změny selinuxu. Chcete-li zobrazit aktuální nastavení portů SELinux pro rsyslog:

# semanage port -l| grep syslog
syslog_tls_port_t              tcp      6514, 10514
syslog_tls_port_t              udp      6514, 10514
syslogd_port_t                 tcp      601, 20514
syslogd_port_t                 udp      514, 601, 20514

Chcete-li do SELinuxu přidat port UDP 541, použijte příkaz:

# semanage port -a -t syslogd_port_t -p udp 541

Ověřte, zda je port přidán do nastavení SELinux:

# semanage port -l| grep syslog
syslog_tls_port_t              tcp      6514, 10514
syslog_tls_port_t              udp      6514, 10514
syslogd_port_t                 tcp      601, 20514
syslogd_port_t                 udp      541, 514, 601, 20514


Cent OS
  1. Jak nainstalovat Puppet na CentOS 8 / RHEL 8

  2. Jak nastavit SysLog Server na CentOS 7 / RHEL 7

  3. Jak nainstalovat Puppet 6.x na CentOS 7 / RHEL 7

  1. Jak nastavit server NFS na CentOS 7 / RHEL 7

  2. Jak změnit výchozí adresář protokolu (/var/log) v Rsyslog pro CentOS/RHEL 6,7

  3. Jak odeslat protokoly auditu na vzdálený server Rsyslog v CentOS/RHEL 6,7

  1. CentOS / RHEL 7:Jak nainstalovat GUI

  2. Konfigurace vzdáleného protokolování pomocí rsyslog v CentOS/RHEL

  3. Jak nakonfigurovat vzdálený Rsyslog pro akceptování TLS a Non-TLS v CentOS/RHEL