Nahrávání protokolů na vzdáleného hostitele nám umožňuje centralizovat zprávy pro více než jedno zařízení a uchovávat zálohu zpráv pro výzkum v případě, že něco selže a znemožní nám místní přístup k protokolům.
Tento kurz ukazuje, jak nastavit vzdálený server na hostování protokolů a jak tyto protokoly odesílat z klientských zařízení a jak klasifikovat nebo rozdělit protokoly v adresářích podle klienta klienta.
Chcete-li postupovat podle pokynů, můžete použít virtuální zařízení, vzal jsem si od Amazonu bezplatnou vrstvu VPS (pokud potřebujete pomoc s nastavením zařízení Amazon, mají v něm skvělý vyhrazený obsah na Linuxu) https: // linuxhint.com / category / aws /). Všimněte si, že veřejná IP adresa serveru se liší od jeho interní IP.
Před spuštěním:
Software používaný k dálkovému odesílání protokolů je rsyslog, který je standardně dodáván v distribucích Debian a odvozených Linuxech, pokud jej nemáte spuštěný:
# sudo apt nainstalovat rsyslogStav rsyslog můžete kdykoli zkontrolovat spuštěním:
# sudo service rsyslog status
Jak vidíte, stav na snímku obrazovky je aktivní, pokud váš rsyslog není aktivní, můžete jej vždy spustit spuštěním:
# sudo service rsyslog startNebo
# systemctl start rsyslog
Poznámka: Další informace o všech možnostech správy služeb Debianu najdete v části Zastavte, spusťte a restartujte služby v Debianu.
Spuštění rsyslog není právě teď relevantní, protože po provedení některých změn jej budeme muset restartovat.
Jak posílat protokoly Linuxu na vzdálený server: Na straně serveru
Nejprve upravte soubor na serveru / etc / resyslog.konf pomocí nano nebo vi:
# nano / etc / rsyslog.konf
V souboru odkomentujte nebo přidejte následující řádky:
modul (load = "imudp")vstup (typ = "imudp" port = "514")
modul (load = "imtcp")
vstup (typ = "imtcp" port = "514")
Výše jsme nekomentovali nebo přidali recepce protokolů prostřednictvím UDP a TCP, můžete povolit pouze jeden z nich nebo oba, po odkomentování nebo přidání budete muset upravit pravidla brány firewall tak, aby umožňovala příchozí protokoly, aby bylo možné přijímat protokoly prostřednictvím běhu TCP:
# ufw povolit 514 / tcp
Chcete-li povolit spuštění příchozích protokolů pomocí protokolu UDP:
# ufw povolit 514 / udp
Chcete-li povolit prostřednictvím protokolu TCP i UDP, spusťte dva výše uvedené příkazy.
Poznámka: Další informace o UFW si můžete přečíst Práce s Debian Firewally (UFW).
Restartujte službu rsyslog spuštěním:
# sudo služba rsyslog restart
Nyní pokračujte v klientovi v konfiguraci odesílání protokolů, pak se vrátíme na server, abychom vylepšili formát.
Jak odesílat protokoly Linuxu na vzdálený server: Na straně klienta
Na klientovi odesílající protokoly přidejte následující řádek a nahraďte IP 18.223.3.241 pro IP adresu vašeho serveru.
*.* @@ 18.223.3.241: 514
Ukončete a uložte změny stisknutím kombinace kláves CTRL + X.
Po úpravě restartujte službu rsyslog spuštěním:
# sudo služba rsyslog restart
Na straně serveru:
Nyní můžete zkontrolovat protokoly uvnitř / var / log, při jejich otevírání si všimnete smíšených zdrojů pro váš protokol, následující příklad ukazuje protokoly z interního rozhraní Amazonu a z klienta Rsyslog (Montsegur):
Zvětšení ukazuje jasně:
Mít smíšené soubory není pohodlné, níže upravíme konfiguraci rsyslog do samostatných protokolů podle zdroje.
Chcete-li rozlišit protokoly uvnitř adresáře se jménem hostitele klienta, přidejte na server / etc / rsyslog následující řádky.conf instruovat rsyslog, jak ukládat vzdálené protokoly, jak to udělat v rsyslog.conf přidejte řádky:
$ template RemoteLogs, "/ var / log /% HOSTNAME% /.přihlásit "*.* ?RemoteLogs
& ~
Ukončete ukládání změn stisknutím kláves CTRL + X a znovu spusťte rsyslog na serveru:
# sudo služba rsyslog restart
Nyní můžete vidět nové adresáře, jeden s názvem ip-172.31.47.212, což je interní rozhraní AWS a další zvané „montsegur“, jako je klient rsyslog.
V adresářích najdete protokoly:
Závěr:
Vzdálené protokolování nabízí skvělé řešení problému, který může snížit služby, pokud se úložiště serveru zaplní protokoly, jak bylo řečeno na začátku, je také nutností v některých případech, kdy může dojít k vážnému poškození systému bez povolení přístupu k protokolům , v takových případech vzdálený server protokolu zaručuje přístup sysadmin k historii serveru.
Implementace tohoto řešení je technicky velmi snadná a dokonce bezplatná vzhledem k tomu, že vysoké zdroje nejsou potřeba a bezplatné servery, jako jsou bezplatné úrovně AWS, jsou pro tento úkol dobré, pokud zvýšíte rychlost přenosu protokolu, můžete povolit pouze protokol UDP (navzdory ztrátě spolehlivosti). Existuje několik alternativ k Rsyslog, jako například: Flume nebo Sentry, přesto rsyslog zůstává nejoblíbenějším nástrojem mezi uživateli Linuxu a sysadminy.
Doufám, že vám tento článek o tom, jak posílat protokoly systému Linux na vzdálený server, připadal užitečný.