Syslogd Linux ak UNIX Kòmandman

Sysklogd bay de sèvis piblik sistèm ki bay sipò pou sistèm antre ak kernel mesaj trapping. Sipò nan tou de sipò domèn entènèt ak UNIX pèmèt pake sèvis piblik sa a sipòte tou de lokal yo ak aleka.

Se sistèm antrepriz ki ofri pa yon vèsyon nan syslogd (8) ki sòti nan sous yo BSD stock. Sipò pou anrejistreman Kernel yo bay klogd (8) sèvis piblik la ki pèmèt Kernel Logging dwe fèt nan swa yon alamòd otonòm oswa kòm yon kliyan nan syslogd.

Syslogd bay yon kalite antrepriz ke anpil pwogram modèn itilize. Chak mesaj ki ligne gen ladan omwen yon tan ak yon jaden hostname, nòmalman yon jaden Non pwogram, tou, men ki depann sou ki jan konfyans pwogram nan logging se.

Pandan ke sous syslogd yo te lou modifye yon koup la nòt yo nan lòd. Premye a tout te gen yon tantativ sistematik asire ke syslogd swiv default li yo, estanda BSD konpòtman. Dezyèm konsèp enpòtan an note se ke vèsyon sa a nan syslogd reyaksyon transparan ak vèsyon an nan syslog yo te jwenn nan bibliyotèk yo estanda. Si yon binè lye nan bibliyotèk yo estanda pataje echwe kòrèkteman nou ta renmen yon egzanp nan konpòtman anonim.

Fichier konfigirasyon prensipal la /etc/syslog.conf oswa yon altènatif dosye, bay ak -f opsyon an, li nan demaraj. Nenpòt liy ki kòmanse ak make a hash (`` # '') ak liy vid yo inyore. Si yon erè rive pandan analyse liy an antye inyore.

Rezime

syslogd [ -a socket ] [ -d ] [ -f config dosye ] [ -h ] [ -l hostlist ] [ -m entèval ] [ -n ] [ -p socket ] [ -r ] [ -s domainlist ] [ - v ] [ -x ]

Opsyon

-a priz

Lè l sèvi avèk agiman sa a ou ka presize sipò anplis soti nan ki syslogd te koute. Sa a se nesesè si w ap ale nan kite kèk daemon kouri nan yon anviwònman kwot (). Ou ka itilize jiska 19 sipò adisyonèl. Si anviwònman ou bezwen menm plis, ou gen ogmante MAXFUNIX la senbòl nan dosye syslogd.c sous la. Yon egzanp pou yon chroot () dyaman dekri nan moun ki soti nan OpenBSD nan http://www.psionic.com/papers/dns.html.

-d

Vire sou mòd debug. Sèvi ak sa a daemon a pa pral kontinye yon fouchèt (2) yo mete tèt li nan background nan, men opoze ak sa a rete nan premye plan an epi ekri anpil debogaj enfòmasyon sou aktyèl tty la. Gade seksyon DEBUGGING la pou plis enfòmasyon.

-f config dosye

Espesifye yon dosye konfigirasyon altènatif olye pou yo /etc/syslog.conf , ki se default la.

-h

Pa default syslogd pa pral voye mesaj li resevwa soti nan tout pouvwa aleka. Espesifye sa a chanje sou liy lan lòd pral lakòz daemon boutèy la voye yon mesaj aleka li resevwa transfere gen tout pouvwa a ki te defini.

-l hostlist

Espesifye yon hostname ki ta dwe louvri sesyon sèlman ak hostname senp li yo epi yo pa fqdn la. Plizyè hôtes ka espesifye itilize kolon (``: '') separator.

-m entèval

Syslogd la mòso bwa yon mak timè regilyèman. Entèval defo ant de - MARK - liy se 20 minit. Sa ka chanje ak opsyon sa a. Anviwònman entèval a zewo vire l 'nèt.

-n

Evite oto-backgrounding. Sa a bezwen espesyalman si syslogd la te kòmanse ak kontwole pa init (8).

-p priz

Ou ka presize yon altènatif priz domèn unix olye pou yo / dev / boutèy demi lit.

-r

Opsyon sa a pral pèmèt etablisman an pou resevwa yon mesaj nan rezo a lè l sèvi avèk yon priz domèn entènèt ak sèvis syslog la (gade (5)). Default la se pa resevwa okenn mesaj nan rezo a.

Opsyon sa a prezante nan vèsyon pipiti de youn 1.3 nan pake sysklogd. Tanpri sonje ke konpòtman an default se opoze a ki jan pi gran vèsyon konpòte yo, kidonk, ou ta ka gen vire sa a sou.

-s domainlist

Espesifye yon non domèn ki ta dwe dezabiye koupe anvan ou antre. Domèn miltip yo ka espesifye lè l sèvi avèk kolon (``: '') separatè a. Tanpri dwe avize ke pa gen okenn sub-domèn dwe espesifye men se sèlman domèn tout antye. Pou egzanp si -s north.de se espesifye ak antre nan lame rezoud satu.infodrom.north.de ta gen okenn domèn dwe koupe, ou pral gen presize de domèn tankou: -s nord.de:infodrom.north.de .

-V

Vèsyon enprime ak sòti.

-x

Itilize notifikasyon non lè w ap resevwa mesaj aleka. Sa a evite deadlocks lè nameserver a ap kouri sou machin nan menm ki kouri dyamèt la syslog.

Siyal

Syslogd reyaji nan yon seri siyal. Ou ka fasil voye yon siyal nan syslogd lè l sèvi avèk sa ki annapre yo:

touye -SIGNAL `chat / var / run / syslogd.pid`

Sighup

Sa a pèmèt syslogd fè yon re-inisyalizasyon. Tout dosye louvri yo fèmen, dosye a konfigirasyon (default se /etc/syslog.conf ) yo pral relè ak syslog la (3) etablisman te kòmanse ankò.

SIGTERM

Syslogd a ap mouri.

SIGINT , SIGQUIT

Si se debogaj pèmèt yo sa yo inyore, otreman syslogd ap mouri.

SIGUSR1

Chanje debogaj sou / sou. Opsyon sa a ka itilize sèlman si syslogd te kòmanse avèk opsyon debug -d .

SIGCHLD

Rete tann pou timoun si gen kèk moun ki te fèt, paske yo te mesaj wall'ing.

Configured File Sentaks Diferans

Syslogd sèvi ak yon sentaks ti kras diferan pou dosye konfigirasyon li yo pase sous orijinal BSD yo. Originally tout mesaj nan yon priyorite espesifik ak pi wo a yo te voye nan dosye a boutèy demi lit.

Pou egzanp, liy ki anba la a lakòz tout pwodiksyon soti nan daemons lè l sèvi avèk enstalasyon yo daemon (debug se pi ba priyorite a, se konsa chak pi wo ap tou matche ak) ale nan / usr / adm / daemons :

# Egzanp syslog.conf daemon.debug / usr / adm / daemons

Anba konplo a nouvo, konpòtman sa a rete menm jan an. Diferans lan se adisyon nan kat espesifik nouvo, asterisk ( * ) wildcard, siy nan ekwasyon ( = ), mak la esklamasyon ( ! ), Ak siy nan mwens ( - ).

* La presize ke tout mesaj pou etablisman an espesifik yo dwe dirije nan destinasyon an. Remake byen ke konpòtman sa a dejenere ak espesifye yon nivo priyorite nan debug. Itilizatè yo te endike ke notè a asterisk se pi plis entwisyon.

Se Wildcard la itilize limite antre nan klas priyorite a espesifye. Sa a pèmèt, pou egzanp, routage sèlman lèt deba nan yon sous antrepriz sous.

Pou egzanp, liy ki anba la a nan syslog.conf ta dirèk mesaj debaz ki sòti nan tout sous nan / usr / adm / debug dosye a.

# Egzanp syslog.conf *. = Debug / usr / adm / Debug

A ! itilize pou eskli antrepriz priyorite yo espesifye. Sa a afekte tout (!) Posiblite pou espesifye priyorite.

Pou egzanp, liy ki annapre yo ta ka ale nan tout mesaj nan lapòs la etablisman eksepte moun ki gen enfòmasyon nan priyorite / usr / adm / mail dosye a. Ak tout mesaj ki soti nan news.info (ki gen ladan) nan news.crit (eksepte) ta dwe louvri sesyon nan dosye a / usr / adm / nouvèl .

# Egzanp syslog.conf lapòs. *; Lapòs.! = Info / usr / adm / mail news.info; nouvèl.! Crit / usr / adm / nouvèl

Ou ka itilize li entwitif kòm yon espesifik eksepsyon. Entèpretasyon pi wo a mansyone tou senpleman Envèse. Fè sa ou ka itilize

mail.none

oswa

lapòs.! *

oswa

mail.! Debug

sote tout mesaj ki vini ak yon lapòs etablisman. Gen anpil plas pou yo jwe avèk li. :-)

- Yo ka itilize sèlman pou prefix yon fichier si ou vle oblije senkronize dosye a apre chak ekri li.

Sa a ka pran kèk aklimatizasyon pou moun ki te itilize nan konpòtman an BSD pi bon men Tester te endike ke sentaks sa a se yon ti jan pi fleksib pase konpòtman an BSD. Remake byen ke chanjman sa yo pa ta dwe afekte dosye syslog.conf (5) estanda. Ou dwe espesyalman modifye dosye yo konfigirasyon yo jwenn konpòtman an améliorée.

Sipò pou Remote Logging

Modifikasyon sa yo bay sipò rezo nan etablisman an syslogd. Sipò Rezo vle di ke mesaj yo ka voye soti nan yon sèl syslogd kouri ne nan yon lòt ne kouri syslogd kote yo pral aktyèlman louvri sesyon nan yon dosye ki gen kapasite.

Pou pèmèt sa a ou dwe presize opsyon nan -r sou liy lan bay lòd. Konpòtman an default se ke syslogd pa pral koute rezo a.

Estrateji a se gen syslogd koute sou yon priz domèn unix pou mesaj ki fèt nan lespas lokalman. Konpòtman sa a pral pèmèt syslogd pou inter-operate ak syslog yo jwenn nan bibliyotèk estanda C a. An menm tan an syslogd koute sou pò a sslog estanda pou mesaj voye soti nan lòt gen tout pouvwa a. Pou yo gen travay sa a kòrèkteman sèvis yo (5) dosye (tipikman yo te jwenn nan / elatriye ) dwe gen antre sa a:

syslog 514 / udp

Si antre sa a ki manke syslogd ni ka resevwa mesaj aleka ni voye yo, paske pò a UDP cant louvri. Olye de sa, syslogd ap mouri imedyatman, mouche soti yon mesaj erè.

Pou lakòz mesaj yo dwe voye nan yon lòt lame ranplase liy lan dosye nòmal nan dosye a syslog.conf ak non an nan lame a ki mesaj yo dwe voye prepended ak yon @.

Pou egzanp, voye tout mesaj nan yon lame aleka lè l sèvi avèk antre syslog.conf sa yo:

# Sample syslogd konfigirasyon dosye nan # mesaj nan yon lame aleka pou pi devan tout. *. * @hostname

Pou voye tout mesaj Kernel nan yon lame aleka dosye a konfigirasyon ta dwe jan sa a:

# Echantiyon konfigirasyon dosye a voye tout mesaj Kernel # nan yon lame aleka. kern. * @hostname

Si hostname a aleka pa ka rezoud nan demaraj, paske non-sèvè a pa ta ka aksesib (li ka kòmanse apre syslogd) ou pa bezwen enkyete. Syslogd ap repete rezoud non an dis fwa lè sa a epi pote plent. Yon lòt posibilite pou fè pou evite sa a se nan plas hostname a nan / etc / gen tout pouvwa a .

Avèk syslogd nòmal ou ta ka jwenn syslog-pasan si ou voye mesaj yo te resevwa nan men yon lame aleka nan lame a menm (oswa plis konplike nan yon lame twazyèm ki voye li tounen nan yon sèl nan premye, ak sou sa). Nan domèn mwen an (Infodrom Oldenburg) nou aksidantèlman te resevwa yon sèl ak disk nou ranpli moute ak menm mesaj la sèl. :-(

Pou evite sa a nan fwa plis pa gen okenn mesaj ki te resevwa nan men yon lame aleka yo voye soti nan yon lòt (oswa menm bagay la tou) lame aleka ankò. Si gen senaryo kote sa a pa fè sans, tanpri lage m '(Joey) yon liy.

Si lame a aleka ki sitiye nan domèn nan menm jan ak lame a, syslogd ap kouri sou, se sèlman hostname a senp yo pral louvri sesyon olye pou yo fqdn an antye.

Nan yon rezo lokal ou ka bay yon sèvè louvri sesyon santral yo gen tout enfòmasyon ki enpòtan kenbe sou yon sèl machin. Si rezo a konsiste de domèn diferan ou pa bezwen pote plent sou antre non konplètman kalifye olye pou yo hostnames senp. Ou ka vle sèvi ak karakteristik nan teren-domèn - nan sèvè sa a. Ou ka di syslogd nan dezabiye plizyè domèn lòt pase youn nan sèvè a sitiye nan epi sèlman louvri sesyon hostnames senp.

Lè l sèvi avèk -l opsyon an gen nan tou yon posibilite defini gen tout pouvwa a sèl kòm machin lokal yo. Sa a, tou, rezilta nan antre sèlman hostnames senp yo epi yo pa fqdns yo.

UDP priz la itilize yo voye mesaj yo bay aleka aleka oswa yo resevwa mesaj nan men yo sèlman louvri lè li nesesè. Nan degaje anvan 1.3-23 li te louvri chak fwa men se pa louvri pou lekti oswa voye li respektivman.

Sòti yo rele tiyo (FIFOs)

Sa a vèsyon an syslogd gen sipò pou pwograme pwodiksyon yo rele tiyo (fifos). Yon fifo oswa rele tiyo ka itilize kòm yon destinasyon pou mesaj boutèy pa prepann yon senbòl pipi (`` | '') nan non an nan dosye a. Sa a se sou la men pou debogaj. Remake byen ke fifo a dwe kreye ak lòd mkfifo a anvan syslogd te kòmanse.

Fichye konfigirasyon sa yo debri mesaj soti nan Kernel a nan yon fifo:

# Echantiyon konfigirasyon nan debugging debri Kernel # mesaj SÈLMAN nan / usr / adm / debug ki se yon # tiyo rele. kern. = debog | / usr / adm / debug

Enstalasyon enkyetid

Gen pwobableman yon enpòtan konsiderasyon lè enstale vèsyon sa a nan syslogd. Sa a vèsyon an syslogd se depann sou fòma apwopriye nan mesaj pa fonksyon an syslog. Fonksyònman fonksyon syslog la nan bibliyotèk yo pataje yon kote nan rejyon an nan libc.so.4 [2-4] .n. Chanjman nan espesifik se te null-mete fen mesaj la anvan li transmèt li nan priz la / dev / boutèy . Bon fonksyone nan vèsyon sa a nan syslogd se depann sou nil-revokasyon nan mesaj la.

Pwoblèm sa a ap manifeste tèt li si fin vye granmoun estatik lye binè yo te itilize sou sistèm nan. Binè lè l sèvi avèk vèsyon fin vye granmoun nan fonksyon an syslog ap lakòz liy vid yo dwe louvri sesyon ki te swiv pa mesaj la ak karaktè nan premye nan mesaj la yo retire. Relye binè sa yo nan vèsyon plus nan bibliyotèk yo pataje pral korije pwoblèm sa a.

Tou de syslogd la (8) ak klogd la (8) ka swa ka kouri soti nan init (8) oswa te kòmanse kòm yon pati nan rc la. * Sekans. Si li te kòmanse soti nan init opsyon -n a dwe mete, otreman, ou pral jwenn tòn syemlog daemons te kòmanse. Sa a se paske init (8) depann de idantite pwosesis la.

Sekirite e menas

Gen potansyèl la pou dyem a syslogd yo dwe itilize kòm yon gwo kannal anba tè pou yon refi nan atak sèvis. Mèsi ale nan John Morrison (jmorriso@rflab.ee.ubc.ca) pou alète m 'sa a potansyèl. Yon pwogram vakabon (mer) te kapab fasilman inonde dyaman an syslogd ak mesaj syslog ki kapab lakòz nan dosye boutèy la konsome tout espas ki rete a sou filesystem la . Aktive antre sou sipò domèn inite a pral nan kou ekspoze yon sistèm nan risk deyò pwogram oswa moun sou machin lokal la.

Gen yon kantite metòd pou pwoteje yon machin:

  1. Aplike kwen firewalling limite ki gen tout pouvwa oswa rezo gen aksè a priz la 514 / UDP.
  2. Logging ka dirije nan yon filesystem izole oswa ki pa rasin ki, si plen, pa pral afekte machin nan.
  3. Ka systemystem a ext2 dwe itilize ki ka configuré limite yon sèten pousantaj nan yon filèsistèm nan l 'pa rasin sèlman. REMAK ke sa a pral mande pou syslogd yo dwe kouri kòm yon pwosesis ki pa rasin. REMAK tou ke sa a ap anpeche itilizasyon aleka aleka depi syslogd yo pral kapab mare nan priz la 514 / UDP.
  4. Defo domèn Inet domèn yo ap limite risk pou machin lokal la.
  5. Sèvi ak etap 4 epi si pwoblèm nan toujou epi li pa segondè nan yon pwogram vakabon / daemon jwenn yon 3.5 ft (approx 1 mèt) longè nan baton sucker * epi yo gen yon chat ak itilizatè a nan kesyon. Sucker baton def. --- 3/4, 7/8 oswa 1in. baton asye fè tèt di toujou, gason Threaded sou chak fen. Prensipal itilize nan endistri lwil oliv nan lwès North Dakota ak lòt kote pou lwil oliv ponpe 'lwil oliv' nan pwi lwil oliv. Itilizasyon Segondè yo se pou konstriksyon an nan anpil manje manje ak pou fè fas ak okazyonèl rekalsitrant lan oswa goumen moun.

Debaz

Lè debogaj la vire sou lè l sèvi avèk -d opsyon Lè sa a, syslogd pral trè vèseuz pa ekri anpil nan sa li fè sa sou stdout. Chak fwa dosye a konfigirasyon se relè ak re-analyse ou pral wè yon tabulèr, ki koresponn ak estrikti a done entèn yo. Tablè sa a konsiste de kat jaden:

nimewo

Jaden sa a gen yon nimewo seri kòmanse pa zewo. Nimewo sa a reprezante pozisyon nan estrikti entèn la (sa vle di etalaj la). Si yon nimewo kite soti Lè sa a, ta ka yon erè nan liy ki koresponn lan nan / etc / syslog.conf .

modèl

Jaden sa a se difisil epi li reprezante estrikti entèn la egzakteman. Chak kolòn kanpe pou yon etablisman (al gade nan syslog (3)). Kòm ou ka wè, gen toujou kèk enstalasyon kite gratis pou itilize ansyen, sèlman ki pi gòch yo yo te itilize. Chak jaden nan yon kolòn reprezante priyorite yo (al gade nan syslog (3)).

aksyon

Jaden sa a dekri aksyon an patikilye ki pran plas chak fwa yo resevwa yon mesaj ki matche ak modèl la. Gade nan syslog.conf (5) manpage pou tout aksyon posib.

agiman

Jaden sa a montre agiman adisyonèl nan aksyon yo nan dènye jaden an. Pou dosye-antre sa a se fichye a pou dosye a; pou user-journal sa a se yon lis itilizatè; pou aleka aleka sa a se hostname a nan machin nan ouvri sesyon; pou konsole-antrepriz sa a se konsole a itilize; pou tty-journalizasyon sa a se tty la espesifye; miray pa gen okenn lòt agiman.

Gade tou

logger (1), syslog (2), (5)

Kolaboratè yo

Syslogd se te pran nan sous BSD, Greg Wettstein (greg@wind.enjellic.com) te fè pò a Linux , Martin Schulze (joey@linux.de) fiks kèk pinèz e li te ajoute plizyè karakteristik nouvo. Klogd te orijinal ekri pa Steve Lord (lord@cray.com), Greg Wettstein te fè gwo amelyorasyon.

Doktè Greg Wettstein
Enjellik Sistèm Devlopman

Nkoloji Rechèch Divizyon Computing Lokalite
Roger Maris Kansè Sant
Fargo, ND
greg@wind.enjellic.com

Stephen Tweedie
Depatman Syans enfòmatik
Edinburgh Inivèsite, Scotland
sct@dcs.ed.ac.uk

Juha Virtanen
jiivee@hut.fi

Shane Alderton
shane@ion.apana.org.au

Martin Schulze
Infodrom Oldenburg
Joey@linux.de

Enpòtan: Sèvi ak kòmandman an moun ( moun ) yo wè ki jan yon lòd yo itilize sou òdinatè patikilye ou.

Atik ki gen rapò