Syslog - Syslog
v výpočetní, syslog /ˈsɪslɒɡ/ je standard pro protokolování zpráv. Umožňuje oddělení softwaru, který generuje zprávy, systému, který je ukládá, a softwaru, který je hlásí a analyzuje. Každá zpráva je označena kódem zařízení, označujícím typ softwaru, který zprávu generuje, a je jí přiřazena úroveň závažnosti.
Návrháři počítačových systémů mohou použít systémový protokol pro správu systému a auditování zabezpečení, jakož i obecné informační, analytické a ladicí zprávy. Standard syslog používá široká škála zařízení, jako jsou tiskárny, směrovače a přijímače zpráv na mnoha platformách. To umožňuje konsolidaci protokolovacích dat z různých typů systémů v centrálním úložišti. Implementace syslog existují pro mnoho operačních systémů.
Při provozu v síti používá syslog a klient-server architektura, kde a server syslog poslouchá a zaznamenává zprávy přicházející od klientů.
Dějiny
Syslog byl vyvinut v 80. letech 20. století společností Eric Allman jako součást Poslat mail projekt.[1] To bylo snadno přijato jinými aplikacemi a od té doby se stalo standardním logovacím řešením Unixový systémy. Různé implementace existují také v jiných operačních systémech a běžně se nacházejí v síťových zařízeních, jako je směrovače.
Syslog původně fungoval jako de facto standard, bez jakékoli autoritativně publikované specifikace a existovalo mnoho implementací, z nichž některé byly nekompatibilní. The Pracovní skupina pro internetové inženýrství zdokumentoval status quo v RFC 3164. Standardizovalo to RFC 5424.[2]
Různé společnosti se pokusily nárokovat patenty na konkrétní aspekty implementací syslog.[3][4] To mělo malý vliv na použití a standardizaci protokolu.[Citace je zapotřebí ]
Součásti zprávy
Informace poskytované původcem zprávy syslog zahrnují kód zařízení a úroveň závažnosti. Software syslog přidá informace do záhlaví informace před předáním záznamu do přijímače syslog. Mezi takové komponenty patří ID procesu původce, časové razítko a název hostitele nebo IP adresa zařízení.
Zařízení
Kód zařízení se používá k určení typu programu, který protokoluje zprávu. Zprávy s různými zařízeními mohou být zpracovány odlišně.[5] Seznam dostupných zařízení je definován standardem:[2]:9
Kód objektu | Klíčové slovo | Popis |
---|---|---|
0 | kern | Zprávy jádra |
1 | uživatel | Zprávy na úrovni uživatele |
2 | pošta | Poštovní systém |
3 | démon | Systémoví démoni |
4 | ověř | Zprávy zabezpečení / ověřování |
5 | syslog | Zprávy generované interně programem syslogd |
6 | lpr | Subsystém řádkové tiskárny |
7 | zprávy | Subsystém síťových zpráv |
8 | uucp | Subsystém UUCP |
9 | cron | Hodinový démon |
10 | ověř | Zprávy zabezpečení / ověřování |
11 | ftp | FTP démon |
12 | ntp | Subsystém NTP |
13 | bezpečnostní | Audit protokolu |
14 | řídicí panel | Výstraha protokolu |
15 | solaris-cron | Plánování démona |
16–23 | local0 - local7 | Místně využívaná zařízení |
Mapování mezi kódem zařízení a klíčovým slovem není v různých operačních systémech a implementacích syslog jednotné.[6]
Úroveň závažnosti
Seznam závažností je také definován standardem:[2]:10
Hodnota | Vážnost | Klíčové slovo | Zastaralá klíčová slova | Popis | Stav |
---|---|---|---|---|---|
0 | Nouzový | vynořit se | panika [7] | Systém je nepoužitelný | Stav paniky.[8] |
1 | Výstraha | výstraha | Je třeba okamžitě jednat | Podmínka, která by měla být okamžitě opravena, například poškozená databáze systému.[8] | |
2 | Kritický | krit | Kritické podmínky | Tvrdé chyby zařízení.[8] | |
3 | Chyba | chybovat | chyba [7] | Chybové podmínky | |
4 | Varování | Varování | varovat [7] | Varovné podmínky | |
5 | Oznámení | oznámení | Normální, ale významné podmínky | Podmínky, které nejsou chybovými podmínkami, ale které mohou vyžadovat zvláštní zacházení.[8] | |
6 | Informační | informace | Informační zprávy | ||
7 | Ladit | ladit | Zprávy na úrovni ladění | Zprávy, které obsahují informace, které se obvykle používají pouze při ladění programu.[8] |
Význam jiných úrovní závažnosti než Nouzový a Ladit jsou relativní k aplikaci. Například pokud je účelem systému zpracovávat transakce za účelem aktualizace informací o zůstatku na účtu zákazníka, měla by být chybě v posledním kroku přiřazena úroveň výstrahy. Došlo však k chybě při pokusu o zobrazení PSČ zákazníka lze přiřadit Chyba nebo dokonce Varování úroveň.
Proces serveru, který zpracovává zobrazení zpráv, obvykle zahrnuje všechny nižší (přísnější) úrovně, když je požadováno zobrazení méně závažných úrovní. To znamená, že pokud jsou zprávy odděleny podle jednotlivých závažností, a Varování při filtrování pro Oznámení, Info a Ladit zprávy.
Zpráva
v RFC 3164, byla zadána komponenta zprávy (známá jako MSG), která má tato pole: ŠTÍTEK, což by měl být název programu nebo procesu, který zprávu vygeneroval, a OBSAH který obsahuje podrobnosti zprávy.
Popsáno v RFC 5424,[9] „MSG je to, čemu se říkalo OBSAH RFC 3164. TAG je nyní součástí záhlaví, ale ne jako jedno pole. Značka TAG byla rozdělena na APP-NAME, PROCID a MSGID. To se úplně nepodobá použití TAG, ale poskytuje stejnou funkci pro většinu případů. “Populární nástroje syslog jako Rsyslog vyhovět této nové normě.
Pole obsahu by mělo být zakódováno do a UTF-8 znaková sada a oktetové hodnoty v tradiční verzi Rozsah řídicích znaků ASCII je třeba se vyhnout.
Logger
Vygenerované zprávy protokolu mohou být směrovány do různých cílů, včetně řídicí panel, soubory, vzdálené servery syslog nebo relé. Většina implementací poskytuje obslužný program příkazového řádku, který se často nazývá záznamník, stejně jako a softwarová knihovna, k odesílání zpráv do protokolu.
Chcete-li zobrazit a sledovat shromážděné protokoly, musíte použít klientskou aplikaci nebo přistupovat k souboru protokolu přímo v systému. Základní nástroje příkazového řádku jsou ocas a grep. Servery protokolu lze nakonfigurovat tak, aby protokoly odesílaly přes síť (kromě místních souborů). Některé implementace zahrnují reportovací programy pro filtrování a zobrazování zpráv syslog.
Síťový protokol
Při provozu v síti používá syslog a klient-server architektura, kde server naslouchá na a dobře známý nebo registrovaný port pro požadavky protokolu od klientů. Historicky nejběžnější protokol transportní vrstvy pro protokolování v síti byl Protokol uživatele Datagram (UDP), přičemž server naslouchá na portu 514. Protože UDP postrádá mechanismy řízení přetížení, podpora pro Zabezpečení transportní vrstvy je vyžadováno v implementacích a doporučeno pro obecné použití[10] na protokol kontroly přenosu (TCP) port 6514.[11]
Omezení
Vzhledem k tomu, že každý proces, aplikace a operační systém byl napsán nezávisle, je malá část jednotnosti užitečného obsahu zprávy protokolu. Z tohoto důvodu se nepředpokládá jeho formátování ani obsah. Zpráva syslog je naformátována (RFC 5424 dává Augmented Backus – Naur forma (ABNF) definice), ale jeho pole MSG není.
Síťový protokol je simplexní komunikace, bez jakéhokoli způsobu potvrzení doručení původci.
Výhled
Různé skupiny pracují na návrzích standardů, které podrobně popisují použití syslogu pro více než pouhé protokolování událostí v síti a zabezpečení, jako je jeho navrhovaná aplikace v prostředí zdravotní péče.[12]
Předpisy, jako je Zákon o Sarbanes-Oxley, PCI DSS, HIPAA a mnoho dalších vyžaduje, aby organizace implementovaly komplexní bezpečnostní opatření, která často zahrnují sběr a analýzu protokolů z mnoha různých zdrojů. Formát syslog se osvědčil při konsolidaci protokolů, protože existuje mnoho open-source a proprietárních nástrojů pro reportování a analýzu těchto protokolů. Existují nástroje pro převod z Protokol událostí systému Windows a další formáty protokolu do syslog.
Poskytovatelé spravovaných bezpečnostních služeb pokusit se použít analytické techniky a algoritmy umělé inteligence k detekci vzorů a upozornění zákazníků na problémy.
Standardní internetové dokumenty
Protokol Syslog je definován Žádost o připomínky (RFC) dokumenty zveřejněné Pracovní skupina pro internetové inženýrství (Internetové standardy ). Následuje seznam RFC, které definují protokol syslog:[13]
- Protokol BSD syslog. RFC 3164. (zastaral Protokol Syslog. RFC 5424.)
- Spolehlivé doručení pro syslog. RFC 3195.
- Protokol Syslog. RFC 5424.
- Transportní mapování TLS pro Syslog. RFC 5425.
- Přenos zpráv Syslog přes UDP. RFC 5426.
- Textové konvence pro správu syslogů. RFC 5427.
- Podepsané zprávy Syslog. RFC 5848.
- Transportní mapování transportní vrstvy datagramu (DTLS) pro Syslog. RFC 6012.
- Přenos zpráv Syslog přes TCP. RFC 6587.
Viz také
Reference
- ^ „Eric Allman“. Internetová síň slávy. Citováno 2017-10-30.
- ^ A b C Gerhards, Rainer. Protokol Syslog. doi:10.17487 / RFC5424. RFC 5424.
- ^ „LXer: Patent ohrozuje standard IETF syslog“.
- ^ „Zveřejnění IPR IETF o patentových nárocích HUAWEI“.
- ^ „Syslog Facility“. Citováno 22. listopadu 2012.
- ^ „Vstupy a výstupy systémového protokolování pomocí Syslogu“. Institut SANS.
- ^ A b C "syslog.conf (5) - Linux page". Citováno 2017-03-29.
- ^ A b C d E "closelog, openlog, setlogmask, syslog - protokol kontrolního systému". Citováno 2017-03-29.
- ^ Gerhards, Rainer (březen 2009). „RFC 5424 - Syslog Protocol“.
Tento dokument popisuje vrstvenou architekturu pro syslog. Cílem této architektury je oddělit obsah zpráv od přenosu zpráv a současně umožnit snadnou rozšiřitelnost pro každou vrstvu.
- ^ „RFC 5424 - Syslog Protocol“.
- ^ „RFC 5425 - TLS Transport Mapping pro Syslog“.
- ^ „ATNA + SYSLOG je dost dobrý“. Standardy zdravotní výměny. Citováno 2018-06-06.
- ^ „Bezpečnostní problémy v protokolování síťových událostí (syslog)“. IETF.
externí odkazy
- Pracovní skupina pro internetové inženýrství: Datatracker: pracovní skupina syslog (uzavřeno)
- Institut SANS: „Vstupy a výstupy systémového protokolování pomocí Syslog“ (bílý papír )
- National Institute of Standards and Technology: "Guide to Computer Security Log Management" (Zvláštní publikace 800-92) (bílý papír)
- Software pro správu sítě: „Porozumění systému Syslog: Servery, zprávy a zabezpečení“
- Paessler IT vysvětlil - Syslog
- MonitorWare: Vše o Syslogu