Skip to main content

Syslogd Linux un Unix komandu

Anonim

Sysklogd nodrošina divas sistēmas utilītas, kas nodrošina atbalstu sistēmas mežizstrādei un kodola ziņu slazdošanai. Atbalsts gan interneta, gan unix domēnu ligzdām ļauj šo pakalpojumu paketi, lai atbalstītu gan vietējo, gan attālināto mežizstrādi.

Sistēmas mežizstrādi nodrošina versijasyslogd(8), kas iegūti no krājuma BSD avotiem. Atbalsts kodola mežizstrādei tiek nodrošināts arklogd(8) lietderība, kas ļauj kodola mežizstrādi veikt neatkarīgi vai kā syslogd klienta.

Syslogd ir sava veida mežizstrāde, ko izmanto daudzās mūsdienu programmās. Katrā reģistrētajā ziņojumā ir vismaz laiks un resursdatora nosaukums, parasti arī programmas nosaukuma lauks, bet tas ir atkarīgs no tā, cik ticama ir mežizstrādes programma.

Kaut arīsyslogd avoti ir ļoti mainīti, pāris piezīmes ir kārtībā. Vispirms ir bijis sistemātisks mēģinājums nodrošināt, ka syslogd seko tā noklusējuma standarta BSD uzvedībai. Otrais svarīgais jēdziens ir atzīmēt, ka šī syslogd versija ir pārredzami mijiedarbojas ar syslog versiju, kas atrodama standarta bibliotēkās. Ja binārā, kas saistīts ar standarta kopīgām bibliotēkām, nedarbojas pareizi, mēs vēlētos anomālās uzvedības piemēru.

Galvenais konfigurācijas fails /etc/syslog.conf vai alternatīvs fails, kas norādīts ar-f opcija, tiek lasīta, startējot. Jebkuras līnijas, kas sākas ar hash zīmes (`` # '') un tukšas līnijas tiek ignorētas. Ja parsēšanas laikā rodas kļūda, tiek ignorēta visa rinda.

Kopsavilkums

syslogd -a kontaktligzda -d -f konfigurācijas fails -h -l resursdatora saraksts -m intervāls -n -p kontaktligzda -r -s domēnu saraksts -v -x

Iespējas

-a kontaktligzda

Izmantojot šo argumentu, jūs varat norādīt papildu sockets no tāsyslogd ir jāuzklausa. Tas ir nepieciešams, ja jūs dodaties, lai daži dēmoni darbotos hroot () vidē. Jūs varat izmantot līdz pat 19 papildu kontaktligzdām. Ja jūsu videi vajadzīgs vēl vairāk, simbols jāpalielinaMAXFUNIX syslogd.c avota faila ietvaros. Hrona () daemona piemēru apraksta cilvēki no OpenBSD vietnē http://www.psionic.com/papers/dns.html.

-d

Ieslēdz atkļūdošanas režīmu. Izmantojot šo dēmonu neizdosiesdakša(2), lai uzstādītu sevi fonā, bet pretēji šim palikt priekšplānā un uzrakstīt lielu atkļūdošanas informāciju par pašreizējo tty. Sīkāku informāciju skatiet nodaļā DEBUGGING.

-f konfigurācijas fails

Norādiet alternatīvu konfigurācijas failu, nevis /etc/syslog.conf , kas ir noklusējums.

-h

Pēc noklusējuma syslogd netiks pārsūtītas ziņas no attālinātiem saimniekiem. Norādot šo slēdzi komandrindā, žurnāla dēmons pārsūtīs visas attālās ziņas, ko tā saņem, lai pārsūtītu jau izveidotās saimniekdatorus.

-l resursdatora saraksts

Norādiet saimniekdatora nosaukumu, kas jāreģistrē tikai ar tā vienkāršo saimniekdatora nosaukumu, nevis fqdn. Vairāki saimnieki var tikt norādīti, izmantojot kolu (``: '') atdalītāju.

-m intervāls

Thesyslogd regulāri reģistrē atzīmes laika zīmi. Noklusējums intervāls starp diviem - MARK - līnijas ir 20 minūtes. To var mainīt ar šo opciju. Iestatījums intervāls uz nulli izslēdz to pilnīgi.

-n

Izvairieties no automātiskās fona. Tas ir vajadzīgs, jo īpaši, jasyslogd sāk un kontrolētajā(8).

-p kontaktligzda

Jūs varat norādīt alternatīvu Unix domēna ligzdu vietā / dev / log .

-r

Šī opcija ļaus iespējai saņemt ziņojumu no tīkla, izmantojot interneta domēna ligzdu ar syslog pakalpojumu (sk. (5)). Pēc noklusējuma netiek saņemti nekādi ziņojumi no tīkla.

Šī opcija ir ieviesta sysklogd pakotnes versijā 1.3. Lūdzu, ņemiet vērā, ka noklusējuma darbība ir pretēja tam, kā vecākas versijas rīkojas, tāpēc jums, iespējams, būs jāieslēdz.

-s domēnu saraksts

Norādiet domēna nosaukumu, kas pirms reģistrēšanas jāizslēdz. Vairāki domēni var tikt norādīti, izmantojot kolu (``: '') separatoru. Lūdzu, ņemiet vērā, ka nav norādīti apakšdomēni, bet tikai visi domēni. Piemēram, ja-s ziemeļi.de ir norādīts un uzņēmēja mežizstrāde atrisina pie satuhinfodrom.north.de nevienu domēnu netiks samazināts, jums būs jānorāda divi domēni, piemēram:-s north.de:infodrom.north.de.

-v

Drukas versija un izeja.

-x

Atspējojot vārdu meklēšanu, saņemot tālvadības ziņojumus. Tas novērš strupceļus, kad nosaukumu serveris darbojas tajā pašā datorā, kurā darbojas syslog daemon.

Signāli

Syslogd reaģē uz signālu kopu. Jūs varat viegli nosūtīt signālu uzsyslogd izmantojot šādu:

kill-SIGNAL `cat / var / run / syslogd.pid '

Sighup

Tas ļaujsyslogd veikt atkārtotu inicializāciju. Visi atvērtie faili ir slēgti, konfigurācijas fails (pēc noklusējuma ir /etc/syslog.conf ) tiks izlasīts unsyslog(3) objekts tiek sākts no jauna.

SIGTERM

Thesyslogd nomirs.

SIGINT, SIGQUIT

Ja ir iespējota atkļūdošana, tās tiek ignorētas, pretējā gadījumāsyslogd nomirs.

SIGUSR1

Pārslēgt atkļūdošanas ieslēgšanu / izslēgšanu. Šo opciju var izmantot tikai tad, jasyslogd tiek sākta ar-d atkļūdošanas opcija.

SIGCHLD

Gaidiet, lai bērns, ja kāds būtu piedzimis, sūtot ziņojumus.

Konfigurācijas failu sintakse atšķirības

Syslogd tā konfigurācijas failam izmanto nedaudz atšķirīgu sintaksi nekā sākotnējie BSD avoti. Sākotnēji visi ziņojumi ar noteiktu prioritāti un augstāk tika pārsūtīti log failā.

Piemēram, sekojošā rindiņa izraisīja VISU izvadi no daemoniem, izmantojot deemonu iespējas (atkļūdošana ir viszemākā prioritāte, tāpēc katrs lielāks būs arī atbilstošs), lai ieietu / usr / adm / daemons :

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

Saskaņā ar jauno shēmu šī uzvedība nemainās. Starpība ir četru jaunu specifikāciju pievienošana, zvaigznīte (*) aizstājējzīme, vienādojuma zīme (=), izsaukuma zīme (!) un mīnusa zīme (-).

The* norāda, ka visi konkrētā objekta ziņojumi jānosūta uz galamērķi. Ņemiet vērā, ka šī uzvedība ir izkropļota, norādot atkļūdošanas prioritātes līmeni. Lietotāji ir norādījuši, ka zvaigznītes apzīmējums ir intuitīvāks.

The= aizstājējzīmi izmanto, lai ierobežotu piesaisti noteiktām prioritātes klasēm. Tas ļauj, piemēram, novirzīt tikai atkļūdošanas ziņojumus uz konkrētu mežizstrādes avotu.

Piemēram, nākamajā rindā ir syslog.conf novirzītu atkļūdošanas ziņojumus no visiem avotiem uz / usr / adm / atkļūdošana fails

# Sample syslog.conf *. = Debug / usr / adm / debug

The! tiek izmantots, lai izslēgtu norādīto prioritāšu reģistrēšanu. Tas ietekmē visas (!) Iespējas precizēt prioritātes.

Piemēram, sekojošās rindās būtu jāreģistrē visi iekārtas ziņu ziņojumi, izņemot tos, kuriem ir prioritātes informācija / usr / adm / mail fails Un visi ziņojumi no news.info (ieskaitot) uz news.crit (izņemot) tiks reģistrēti pie / usr / adm / ziņas fails

# Sample syslog.conf mail. *; Mail!! = Info / usr / adm / mail news.info; ziņas! Crit / usr / adm / news

Jūs varat to intuitīvi izmantot kā izņēmuma norādītāju. Iepriekš minētā interpretācija ir vienkārši apgriezta. To darot, jūs varat to izmantot

mail.none

vai

pasts.! *

vai

pasts! .. atkļūdošana

lai izlaistu katru ziņu, kas nāk ar pasta iespēju. Ar to ir daudz iespēju spēlēt. :-)

The- var izmantot tikai, lai prefiksētu faila nosaukumu, ja vēlaties izlaist faila sinhronizāciju pēc katra rakstīšanas uz to.

Tas var radīt zināmu aklimatizāciju tiem indivīdiem, kuri izmanto tīru BSD uzvedību, taču testētāji ir norādījuši, ka šis sintakse ir nedaudz elastīgāks nekā BSD uzvedība. Ņemiet vērā, ka šīs izmaiņas nedrīkst ietekmēt standartusyslog.conf(5) faili. Īpaši jāmaina konfigurācijas faili, lai iegūtu uzlabotu darbību.

Atbalsts tālvadības reģistrēšanai

Šīs modifikācijas nodrošina tīklu atbalstu syslogd objektam. Tīkla atbalsts nozīmē, ka ziņojumus var pārsūtīt no viena mezgla, kurā darbojas syslogd, uz citu mezglu, kurā darbojas syslogd, kur tie tiks faktiski reģistrēti diska failā.

Lai to izdarītu, jums jāprecizē-r opcija komandrindā. Noklusējuma darbība ir tāsyslogd neuzklausīs tīklu.

Stratēģija ir panākt, lai syslogd klausītos uz unix domēna ligzdas lokāli ģenerētiem žurnālu ziņojumiem. Šī rīcība ļaus syslogd sadarboties ar syslog, kas atrodams C standarta bibliotēkā. Tajā pašā laikā syslogd klausās standarta syslog portu ziņojumiem, kas tiek pārsūtīti no citiem saimniekiem. Lai pareizi darbotos, rīkojieties šādipakalpojumi(5) faili (parasti ir atrodami / etc ) jābūt šādam ierakstam:

syslog 514 / udp

Ja šis ieraksts nav pieejamssyslogd nevar nosūtīt tālvadības ziņojumus vai nosūtīt tos, jo nevar atvērt UDP portu. Tā vietā syslogd mirs nekavējoties, izpūšot kļūdas ziņojumu.

Lai izraisītu ziņojumu pārsūtīšanu uz citu uzņēmēju, nomainiet parasto faila rindiņu syslog.conf fails ar tā uzņēmēja nosaukumu, kuram ziņojumi tiek nosūtīti, pievienojot @.

Piemēram, nosūtītVISI ziņojumus attālajam uzņēmumam, izmantojot tālāk norādīto syslog.conf ieraksts:

# Parauga syslogd konfigurācijas failu uz # ziņojumiem attālinātai uzņēmējai uz priekšu visu. *. * @hostname

Visu nosūtītkodols ziņojumi attālajai mītnei konfigurācijas fails ir šāds:

# Parauga konfigurācijas fails, lai pārsūtītu visus kodola # ziņojumus attālajai mītnei. kern. * @hostname

Ja attālās saimniekdatora nosaukumu nevar atrisināt palaišanas laikā, jo vārda serveris, iespējams, nav pieejams (to var sākt pēc syslogd), jums nav jāuztraucas.Syslogd mēģinās atrisināt vārdu desmit reizes un pēc tam sūdzas. Vēl viena iespēja to izvairīties ir izvietot saimniekdatora nosaukumu / etc / hosts .

Ar normālusyslogdja jūs nosūtītu ziņojumus, kas tika saņemti no attālās mītnes uz to pašu uzņēmēju (vai sarežģītāka trešā uzņēmēja, kas to nosūta atpakaļ uz pirmo, un tā tālāk). Manā domēnā (Infodrom Oldenburg) mēs nejauši saņēmām vienu un mūsu diski ir piepildīti ar vienu un to pašu ziņojumu. :-(

Lai to vairs neizvairītos, turpmākos laikos neviens ziņojums, kas tika saņemts no attālā datora, vairs netiek nosūtīts uz citu (vai to pašu) attālināto mītni. Ja ir scenāriji, kur tas nav jēgas, lūdzu, nolaidiet mani (Joey) līniju.

Ja attālā uzņēmēja atrodas tajā pašā domēnā, kurā atrodas saimniekdators,syslogd darbojas tikai, viss fqdn vietā tiek reģistrēts tikai vienkāršs resursdatora nosaukums.

Vietējā tīklā jūs varat izveidot centrālu žurnālu serveri, lai visu svarīgo informāciju glabātu vienā datorā. Ja tīkls sastāv no dažādiem domēniem, jums nav sūdzēties par pilnīgi kvalificētu vārdu reģistrēšanu, nevis vienkāršu saimniekdatoru nosaukumu. Varat vēlēties izmantot sloksnes domēna funkciju-s no šī servera. Jūs varat pastāstītsyslogd lai noņemtu vairākus domēnus, izņemot to, kurā atrodas serveris, un tikai reģistrē vienkāršus saimniekdatoru nosaukumus.

Izmantojot-l tur ir arī iespēja definēt atsevišķus saimniekus kā vietējās mašīnas. Arī tas nozīmē, ka tiek reģistrēti tikai viņu vienkāršie saimniekdatoru nosaukumi, nevis fqdns.

UDP ligzda, ko izmanto, lai pārsūtītu ziņojumus uz attālinātiem saimniekiem vai saņemtu no tiem ziņojumus, tiek atvērta tikai tad, kad tas ir nepieciešams. Release pirms 1.3-23 tas tika atvērts katru reizi, bet nav atvērts attiecīgi lasīšanai vai pārsūtīšanai.

Izvads uz nosauktajiem caurulēm (FIFO)

Šī syslogd versija atbalsta izejmateriālu reģistrēšanu nosauktajās caurulēs (FIFOS). Fakss vai nosaukta caurule var tikt izmantota kā galamērķis žurnālu ziņojumiem, pievienojot faila nosaukumam pipy simbolu (`| | ''). Tas ir ērti, lai veiktu atkļūdošanu. Ņemiet vērā, ka FIFO ir jāizveido ar komandu mkfifo pirms syslogd sākt.

Turpmāka konfigurācijas fails novirza atkļūdošanas ziņojumus no kodola uz fifo:

# Paraugu konfigurācija, lai maršrutizētu kodolu atkļūdošanas # ziņojumus TIKAI uz / usr / adm / atkļūdošanu, kas ir # nosaukta caurule. kern. = debug / / usr / adm / debug

Uzstādīšanas bažas

Instalējot šo syslogd versiju, iespējams, ir viens svarīgs apsvērums. Šī syslogd versija ir atkarīga no pareizas ziņojumu formatēšanas ar syslog funkciju. Syslog funkciju darbība dalītajās bibliotēkās kaut kur mainījās libc.so.4 reģionā 2-4 .n. Konkrētās izmaiņas bija tādas, ka ziņojums tika pārtraukts pirms tā nosūtīšanas uz / dev / log kontaktligzda. Šī syslogd versijas pareiza darbība ir atkarīga no ziņojuma null-izbeigšanās.

Šī problēma parasti izpaužas, ja sistēmā tiek izmantoti veci statistiski saistīti bināri. Binārie faili, kas izmanto syslog funkciju vecās versijas, radīs tukšas rindas, kas jāreģistrē, kam seko ziņa ar pirmā rakstzīmi noņemtajā ziņojumā. Pārvietojot šos binārus uz jaunākajām koplietojamo bibliotēku versijām, tiks novērsta šī problēma.

Abassyslogd(8) unklogd(8) var palaist no init (8) vai sākt kā daļu no rc. * Secības. Ja tas ir sākts no init opcijas -n ir jānosaka, pretējā gadījumā jūs saņemsiet tonnas syslog daemons sācies. Tas ir tāpēc, katajā(8) ir atkarīgs no procesa ID.

Drošības apdraudējumi

Pastāv iespēja, ka syslogd dēmons tiks izmantots kā pakalpojuma uzbrukuma atteikšanas kanāls. Paldies, dodieties uz John Morrisonu ([email protected]), lai brīdinātu mani par šo potenciālu. Negatīvā programma (mer) var ļoti viegli pārpludināt syslogd dēmonu ar syslog ziņojumiem, kā rezultātā log faili patērē visu atlikušo vietu failu sistēmā. Protams, aktivizējot pieslēgšanos domēna domēnu ligzdām, sistēma var tikt pakļauta riskam ārpus vietējā datora programmām vai personām.

Ir vairākas metodes mašīnas aizsardzībai:

  1. Ieviest kodola ugunsmūri, lai ierobežotu, kuriem saimniekiem vai tīkliem ir piekļuve 514 / UDP ligzdai.
  2. Mežizstrādi var novirzīt uz izolētu vai nesaistītu failu sistēmu, kas, ja to aizpilda, netraucēs šo mašīnu.
  3. Var izmantot ext2 failu sistēmu, kuru var konfigurēt, lai ierobežotu noteiktu procentuālo daļu no failu sistēmas, izmantojot tikai root.PIEZĪME ka tas prasīs, lai syslogd darbotos kā nekontrolēts process. ARĪ PIEZĪME ka tas neļaus izmantot attālo mežizstrādi, jo syslogd nevarēs piesaistīt 514 / UDP ligzdai.
  4. Inet domēnu ligzdu atspējošana ierobežos vietējās mašīnas risku.
  5. Izmantojiet 4. darbību un, ja problēma atkārtojas un nav sekundāra pret negodīgu programmu / dēmonu, iegūstiet 3,5 metru (apmēram 1 metru) sprauslas stieņa garumu * un tērzējiet ar attiecīgo lietotāju. Sucker stieņa def. --- 3/4, 7/8 vai 1 in. sacietināts tērauda stienis, ar vītni uz abiem galiem. Primārais izmantojums naftas rūpniecībā Rietumu Ziemeļdakotā un citās vietās, lai sūknētu "piesūcināt" eļļu no naftas akām. Sekundārie lietojumi ir paredzēti liellopu barības partiju būvniecībai un darbībām ar neregulāru, atkārtoti vai karojošu indivīdu.

Atkļūdošana

Kad atkļūdošana ir ieslēgta, izmantojot-d tad iespējasyslogd būs ļoti verbose, rakstot daudz, ko tas dara ar stdout. Ikreiz, kad konfigurācijas fails tiek pārlasīts un atkārtoti analizēts, jūs redzēsit tabulu, kas atbilst iekšējai datu struktūrai. Šis tabula sastāv no četriem laukiem:

numurs

Šajā laukā ir sērijas numurs, kas sākas ar nulli. Šis numurs norāda pozīciju iekšējā datu struktūrā (t.i., masīvu). Ja tiek izslēgts viens numurs, attiecīgajā rindiņā var būt kļūda /etc/syslog.conf .

modelis

Šis lauks ir sarežģīts un precīzi atspoguļo iekšējo struktūru. Katrā kolonnā ir norāde par objektu (sksyslog(3)). Kā jūs varat redzēt, joprojām ir dažas iespējas, kas palicis brīvā bijušai izmantošanai, bet tiek izmantoti tikai visvairāk pa kreisi. Katrs ailes kolonnā ir norādītas prioritātes (sksyslog(3)).

rīcība

Šajā laukā ir aprakstīta konkrētā darbība, kas notiek ikreiz, kad saņemta ziņa, kas atbilst modelim. Skatiet sadaļusyslog.conf(5) manpages par visām iespējamām darbībām.

argumenti

Šajā laukā tiek parādīti papildu argumenti pēdējā laukā esošajām darbībām. Failu reģistrēšanai šis ir faila nosaukums logfailam; lietotāja reģistrēšanai tas ir lietotāju saraksts; attālās mežizstrādes gadījumā tas ir mašīnista resursdatora nosaukums, lai pieteiktos; konsoles mežizstrādei šī ir izmantotā konsole; tty-logging tas ir norādītais tty; sienā nav papildu argumentu.

Skatīt arī

mežizstrādātājs(1), syslog(2), (5)

Līdzstrādnieki

Syslogd ir ņemts no BSD avotiem, Greg Wettstein ([email protected]) veica portu uz Linux, Martin Schulze ([email protected]) izlaboja dažas kļūdas un pievienoja vairākas jaunas funkcijas.Klogdsākotnēji bija rakstījis Steve Lord ([email protected]), Greg Wettstein izdarīja būtiskus uzlabojumus.

Dr. Gregs WettsteinsEnjellic Systems Development

Onkoloģijas izpētes nodaļas datorsistēmaRoger Maris Vēža centrsFargo, ND[email protected]

Stephen TweedieDatorzinātņu katedraEdinburgas Universitāte, Skotija[email protected]

Juha Virtanen[email protected]

Shane Alderton[email protected]

Martin SchulzeInfodrom Oldenburg[email protected]

Svarīgs: Izmantojiet cilvēks komanda ( % cilvēks ), lai redzētu, kā komanda tiek izmantota jūsu konkrētajā datorā.

Saistītie raksti

  • sysklogd - Linux Command - Unix komandu
  • rwall - Kas ir rwa