Giunsa ang Pag-setup sa Kliyente sa Rsyslog aron Ipadala ang mga Log sa Rsyslog Server sa CentOS 7


Ang pagdumala sa log usa sa labing kritikal nga sangkap sa usa ka imprastraktura sa network. Ang mga mensahe sa log kanunay nga gihimo sa daghang software sa sistema, sama sa mga utilities, aplikasyon, daemon, serbisyo nga may kalabotan sa network, kernel, pisikal nga aparato ug uban pa.

Ang mga file sa log mapamatud-an nga mapuslanon sa kaso sa pag-troubleshoot sa mga isyu sa sistema sa Linux, pag-monitor sa sistema ug pagrepaso sa kusog ug mga problema sa seguridad sa sistema.

Ang Rsyslog usa ka Open Source logging program, nga mao ang pinakapopular nga mekanismo sa pag-log sa daghang mga distribusyon sa Linux. Kini usab ang default nga serbisyo sa pag-log sa CentOS 7 o RHEL 7.

Ang Rsyslog daemon sa CentOS mahimong ma-configure aron modagan ingon usa ka server aron makolekta ang mga mensahe sa log gikan sa daghang mga aparato sa network. Kini nga mga aparato naglihok isip mga kliyente ug gi-configure aron ipadala ang ilang mga log sa usa ka server sa rsyslog.

Bisan pa, ang serbisyo sa Rsyslog mahimo usab nga ma-configure ug magsugod sa mode sa kliyente. Kini nga setup nagtudlo sa rsyslog daemon sa pagpasa sa mga mensahe sa log ngadto sa usa ka hilit nga Rsyslog server gamit ang TCP o UDP transport protocols. Ang serbisyo sa Rsyslog mahimo usab nga ma-configure aron modagan ingon usa ka kliyente ug ingon usa ka server sa parehas nga oras.

Sa kini nga panudlo among ihulagway kung giunsa ang pag-setup sa usa ka CentOS/RHEL 7 Rsyslog daemon aron magpadala mga mensahe sa log sa usa ka hilit nga server sa Rsyslog. Kini nga setup nagsiguro nga ang imong machine disk space mahimong mapreserbar alang sa pagtipig sa ubang mga data.

Ang dapit diin halos tanang log files gisulat sa default sa CentOS mao ang /var system path. Maayo usab nga maghimo kanunay og bulag nga partition para sa /var directory, nga mahimong dinamikong motubo, aron dili mahurot ang /(root) partition.

Ang usa ka kliyente sa Rsyslog kanunay nga nagpadala sa mga mensahe sa log sa yano nga teksto, kung dili gitino kung dili. Dili ka kinahanglan nga mag-setup sa usa ka kliyente sa Rsyslog aron ipadala ang mga mensahe sa log sa Internet o mga network nga wala sa imong hingpit nga kontrol.

  1. CentOS 7.3 Pamaagi sa Pag-instalar
  2. RHEL 7.3 Pamaagi sa Pag-instalar
  3. I-configure ang Rsyslog Server sa CentOS/RHEL 7

Lakang 1: I-verify ang Pag-install sa Rsyslog

1. Sa kasagaran, ang Rsyslog daemon na-install na ug nagdagan sa CentOS 7 nga sistema. Aron mapamatud-an kung ang serbisyo sa rsyslog naa sa sistema, i-isyu ang mosunud nga mga mando.

# rpm -q | grep rsyslog
# rsyslogd -v

2. Kung ang Rsyslog package wala ma-install sa CentOS, ipatuman ang ubos nga command aron ma-install ang serbisyo.

# yum install rsyslog

Lakang 2: I-configure ang Serbisyo sa Rsyslog ingon Kliyente

3. Aron mapatuman ang Rsyslog daemon nga na-install sa CentOS 7 nga sistema aron molihok isip usa ka log client ug rota ang tanang lokal nga namugna nga log messages ngadto sa usa ka remote Rsyslog server, usba ang rsyslog configuration file sama sa mosunod:

Una ablihi ang nag-unang configuration file alang sa pag-edit.

# vi /etc/rsyslog.conf

Dayon, idugang ang ubos nga linya sa katapusan sa file sama sa gihulagway sa ubos nga kinutlo.

*. *  @192.168.10.254:514

Sa linya sa ibabaw siguruha nga imong ilisan ang IP address sa FQDN sa hilit nga rsyslog server sumala niana. Ang linya sa ibabaw nagmando sa Rsyslog daemon nga ipadala ang tanan nga mga mensahe sa log, bisan unsa pa ang pasilidad o kagrabe, sa host nga adunay IP 192.168.10.254 pinaagi sa 514/UDP port.

4. Kung ang remote log server gi-configure aron maminaw lamang sa mga koneksyon sa TCP o gusto nimo nga mogamit ug kasaligan nga transport network protocol, sama sa TCP, pagdugang og laing @ nga karakter sa atubangan sa remote host sama sa gipakita sa sa ubos nga pananglitan:

*. *  @@logs.domain.lan:514

Gitugotan usab sa Linux rsyslog nga adunay pipila ka espesyal nga mga karakter, sama sa = o !, nga mahimong prefix sa lebel sa prayoridad aron ipakita ang \kini nga prayoridad lamang alang sa parehas nga timaan ug\Dili kini nga prayoridad o mas taas kaysa niini.

Pipila ka mga sample sa Rsyslog priority level qualifiers sa CentOS 7:

  • kern.info = mga log sa kernel nga adunay prayoridad sa impormasyon ug mas taas.
  • kern.=info = mga mensahe lang sa kernel nga adunay prayoridad sa impormasyon.
  • kern.info;kern.!err = mga mensahe lang sa kernel nga adunay impormasyon, pahibalo, ug mga prayoridad sa pasidaan.
  • kern.debug;kern.!=warning = tanang kernel priorities gawas sa warning.
  • kern.* = tanang kernel priorities nga mensahe.
  • kern.none = ayaw pag-log sa bisan unsang may kalabutan nga mga mensahe sa pasilidad sa kernel bisan unsa pa ang prayoridad.

Pananglitan, kung gusto nimo magpadala lamang sa usa ka piho nga mga mensahe sa pasilidad sa usa ka hilit nga log server, sama sa tanan nga may kalabutan nga mga mensahe sa mail bisan unsa pa ang lebel sa prayoridad, idugang ang linya sa ubos sa rsyslog configuration file:

mail.* @192.168.10.254:514 

5. Sa kataposan, aron magamit ang bag-ong configuration, ang serbisyo sa Rsyslog kinahanglang i-restart aron makuha sa daemon ang mga kausaban, pinaagi sa pagpadagan sa ubos nga sugo:

# systemctl restart rsyslog.service

6. Kung tungod sa pipila ka mga rason ang Rsyslog daemon wala ma-enable sa panahon sa boot, i-isyu ang ubos nga command aron mahimo ang serbisyo sa tibuok sistema:

# systemctl enable rsyslog.service

Lakang 3: Ipadala ang Apache ug Nginx Logs ngadto sa Remote Log Server

7. Ang Apache HTTP server mahimong ma-configure aron magpadala og mga mensahe sa logs ngadto sa usa ka remote syslog server pinaagi sa pagdugang sa mosunod nga linya ngadto sa nag-unang configuration file niini sama sa gihulagway sa ubos nga pananglitan.

# vi /etc/httpd/conf/httpd.conf

Sa Apache main conf file idugang ang ubos nga linya.

CustomLog "| /bin/sh -c '/usr/bin/tee -a /var/log/httpd/httpd-access.log | /usr/bin/logger -thttpd -plocal1.notice'" combined

Ipatuman sa linya ang HTTP nga daemon aron isulat ang mga mensahe sa log sa sulod sa filesystem log file, apan iproseso usab ang mga mensahe pinaagi sa pipe to logger utility, nga ipadala kini sa usa ka layo nga syslog server, pinaagi sa pagmarka niini nga gikan sa local1 pasilidad.

8. Kung gusto nimo nga idirekta usab ang mga mensahe sa log sa error sa Apache sa usa ka hilit nga server sa syslog, pagdugang usa ka bag-ong lagda sama sa gipakita sa pananglitan sa ibabaw, apan siguroha nga ilisan ang ngalan sa httpd log file ug ang lebel sa kagrabe sa log file sa pagpares sa prayoridad sa sayop, sama sa gipakita sa mosunod nga sample:

ErrorLog "|/bin/sh -c '/usr/bin/tee -a /var/log/httpd/httpd-error.log | /usr/bin/logger -thttpd -plocal1.err'"

9. Kung nadugang na nimo ang mga linya sa ibabaw, kinahanglan nimo nga i-restart ang Apache daemon aron magamit ang mga pagbag-o, pinaagi sa pag-isyu sa mosunod nga mando:

# systemctl restart httpd.service                 

10. Ingon sa bersyon 1.7.1, ang Nginx web server adunay mga kapabilidad sa pagtukod aron direkta nga ma-log ang mga mensahe niini sa usa ka hilit nga syslog server, pinaagi sa pagdugang sa mosunod nga mga linya sa code sa usa ka file sa pag-configure sa nginx.

error_log syslog:server=192.168.1.10:514,facility=local7,tag=nginx,severity=error;
access_log syslog:server=192.168.10.254:514,facility=local7,tag=nginx,severity=info main;

Para sa IPv6 server, gamita ang mosunod nga syntax format aron ilakip ang IPv6 address.

access_log syslog:server=[7101:dc7::9]:514,facility=local7,tag=nginx,severity=info;

11. Sa hilit nga Rsyslog server kinahanglan nimo nga buhaton ang mosunod nga pagbag-o sa rsyslog configuration file, aron madawat ang mga log nga gipadala sa Apache web server.

local1.* @Apache_IP_address:514

Kana lang! Malampuson nimong na-configure ang Rsyslog daemon nga modagan sa client mode ug, usab, imong gisugo ang Apache HTTP server o Nginx nga ipasa ang mga mensahe sa log niini ngadto sa usa ka remote syslog server.

Kung nahagsa ang imong sistema, kinahanglan nimo nga masusi ang problema pinaagi sa pag-inspeksyon sa sulud sa mga file sa log nga gitipigan sa hilit nga syslog server.