Syslogd Linux Ubuntu jeung Unix Komando

Sysklogd nyadiakeun dua sistem Utiliti nu nyadiakeun pangrojong pikeun sistem logging na trapping pesen kernel. Rojongan ti duanana internét jeung Unix domain sockets nyandak pakét utiliti ieu ngarojong duanana logging lokal sarta jauh.

Sistim logging geus disadiakeun ku versi syslogd (8) diturunkeun tina sumber stock BSD. Rojongan pikeun kernel logging geus disadiakeun ku klogd (8) utiliti anu ngamungkinkeun kernel logging bisa dipigawé di boh mangrupa busana mandiri atawa salaku klien tina syslogd.

Syslogd nyadiakeun jenis logging nu loba program modern ngagunakeun. Unggal pesen asup ngandung sahanteuna hiji waktu sarta médan hostname, ilaharna widang ngaran program, teuing, tapi yen gumantung kana kumaha trusty program logging nya.

Sedengkeun sumber syslogd geus beurat dirobah sababaraha catetan anu dina urutan. Munggaran sadaya aya geus usaha sistimatis pikeun mastikeun yén syslogd kieu standar na, kabiasaan BSD baku. Konsep penting kadua pikeun catetan éta versi ieu syslogd dilibetkeun transparan jeung versi syslog kapanggih di perpustakaan baku. Mun hiji binér numbu ka standar dibagikeun perpustakaan gagal alat anu fungsina neuleu urang hoyong conto paripolah anomalous.

Utama file konfigurasi /etc/syslog.conf atanapi hiji file alternatif, tinangtu kalawan pilihan -f, ieu baca dina ngamimitian. Sagala garis anu dimimitian ku tanda Hash ( `` # '') jeung garis kosong nu teu dipalire. Lamun kasalahan lumangsung salila FITML sakabeh garis anu teu dipalire.

Synopsis

syslogd [-a stop kontak] [-d] [-f config file] [-h] [-l hostlist] [interval -m] [-n] [-p stop kontak] [-r] [-s domainlist] [- v] [-x]

Pilihan

stop kontak -a

Ngagunakeun ieu argumen anjeun bisa nangtukeun sockets tambahan ti nu syslogd boga ngadangukeun. Ieu diperlukeun lamun nuju bade hayu sababaraha daemon ngajalankeun dina lingkungan chroot (). Anjeun tiasa make nepi ka 19 sockets tambahan. Lamun lingkungan Anjeun perlu malah leuwih, Anjeun kudu ningkatkeun MAXFUNIX simbol dina file sumber syslogd.c. Hiji conto pikeun chroot () daemon digambarkeun ku urang tina OpenBSD di http://www.psionic.com/papers/dns.html.

-d

Kabukti dina modeu debug. Ngagunakeun ieu daemon moal neruskeun garpu (2) pikeun ngeset sorangan di tukang, tapi sabalikna mun nu tetep di foreground jeung nulis loba informasi debug dina TTY ayeuna. Ningali bagian DEBUGGING kanggo inpormasi lengkep.

-f file config

Sebutkeun hiji file konfigurasi alternatif gaganti /etc/syslog.conf, nu standar nu.

-h

Ku syslogd standar moal neraskeun seratan eta ditampa ti sarwa jauh. Nangtukeun switch ieu dina garis paréntah bakal ngakibatkeun log daemon teruskeun wae pesen jauh eta narima ka diteruskeun sarwa nu geus tangtu.

-l hostlist

Sebutkeun hiji hostname nu kudu asup ngan kalawan hostname basajan na teu fqdn nu. Sababaraha sarwa bisa jadi dieusian ngagunakeun titik ( ``: '') SEPARATOR.

interval -m

Syslogd The log hiji tanda timestamp rutin. Interval standar antara dua - tanda - garis nyaeta 20 menit. Ieu bisa dirobah ku pilihan ieu. Netepkeun interval ka enol kabukti dipareuman sagemblengna.

-n

Ulah otomatis-backgrounding. Ieu diperlukeun utamana lamun syslogd kasebut dimimitian tur dikawasa ku init (8).

stop kontak -p

Anjeun tiasa nangtukeun alternatif Unix domain stop kontak gaganti / dev / kumplit.

-r

pilihan ieu bakal ngaktipkeun fasilitas pikeun nampa pesen ti jaringan anu ngagunakeun internét stop kontak domain jeung layanan syslog (tingali (5)). standar nya éta henteu nampi pesen naon ti jaringan.

pilihan ieu diwanohkeun dina versi 1.3 nu pakét sysklogd. Perhatikeun yén kabiasaan standar nyaéta sabalikna ti sabaraha versi heubeul kalakuanana, jadi Anjeun bisa kudu ngahurungkeun ieu dina.

-s domainlist

Sebutkeun ngaran domain anu kudu dilucuti kaluar méméh logging. Sababaraha domain bisa jadi dieusian ngagunakeun titik ( ``: '') SEPARATOR. Mangga jadi disarankan yén euweuh sub-domain bisa jadi dieusian tapi ngan sakabéh domain. Contona lamun north.de -s geus dieusian jeung logging host resolves mun satu.infodrom.north.de euweuh domain bakal dipotong, Anjeun kudu nangtukeun dua domain kawas: -s north.de:infodrom.north.de.

-V

Vérsi citak na kaluar.

-x

Nonaktipkeun lookups ngaran nalika narima pesen jauh. Ieu avoids deadlocks nalika nameserver kasebut ngajalankeun dina mesin sarua nu ngalir dina daemon syslog.

sinyal

Syslogd meta ka set sinyal. Anjeun bisa kalayan gampang ngirimkeun sinyal ka syslogd ngagunakeun handap:

maéhan -SIGNAL `ucing / var / ngajalankeun / syslogd.pid`

Sighup

Ieu nyanggakeun syslogd ngalakukeun ulang initialization. Sakabéh payil kabuka keur ditutup, di file konfigurasi (standar téh /etc/syslog.conf) bakal reread na syslog (3) fasilitas ieu dimimitian deui.

SIGTERM

Syslogd bakal maot.

SIGINT, SIGQUIT

Mun debugging diaktipkeun ieu dipaliré, disebutkeun syslogd bakal maot.

SIGUSR1

Pindah debugging on / off. Pilihan ieu ngan bisa dipaké lamun syslogd geus dimimitian kalawan pilihan debug -d.

SIGCHLD

Ngadagoan childs lamun sababaraha anu dilahirkeun, kusabab seratan wall'ing.

Konfigurasi File Beda Rumpaka

Syslogd ngagunakeun rumpaka rada beda keur file konfigurasi na batan sumber BSD aslina. Asalna sakabeh seratan ti hiji prioritas husus sarta di luhur anu diteruskeun kana file kumplit.

Contona, garis handap disababkeun ALL kaluaran ti daemons ngagunakeun fasilitas daemon (debug teh prioritas panghandapna, jadi unggal luhur ogé bakal cocog) pikeun muka kana / usr / adm / daemons:

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

Dina skéma anyar, kabiasaan ieu tetep sarua. Bédana téh ditambah opat specifiers anyar, nu bintang (*) bonus, anu tanda persamaan (=), tanda exclamation, jeung tanda minus (!) (-).

* The hususna nu sagala pesen kanggo fasilitas dieusian anu bisa diarahkeun ka tujuan. Catet yén kabiasaan ieu téh degenerate kalayan nangtukeun tingkat prioritas of debug. Pamaké geus dituduhkeun yén notasi bintang téh beuki intuitif.

The = bonus anu dipaké pikeun ngawatesan logging ka kelas prioritas nu dieusian. Hal ieu ngamungkinkeun, contona, routing mung seratan debug ka sumber logging tangtu.

Contona, garis handap di syslog.conf bakal langsung pesen debug ti sumber kana / usr / adm / debug file.

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

The! ieu dipaké pikeun ngaluarkeun logging tina prioritas dieusian. Ieu mangaruhan sagala (!) Kemungkinan tina nangtukeun prioritas.

Contona, dina garis handap bakal asup kabeh pesen tina mail fasilitas iwal jelema jeung info prioritas kana file / usr / adm / mail. Sarta sakabeh seratan ti news.info (kaasup) kana news.crit (teu kaasup) bakal asup ka / usr / adm / file warta.

# Sampel mail syslog.conf *;..! Mail = info / usr / adm / mail news.info;.! Warta crit / usr / adm / warta

Anjeun bisa make eta intuisi salaku hiji specifier iwal. Interprétasi didadarkeun di luhur ieu saukur inverted. Lakukeun nu bisa make

mail.none

atawa

mail.! *

atawa

mail.! debug

mun skip unggal surat nu hadir kalawan fasilitas mail. Aya loba kamar maén kalawan eta. :-)

The - mungkin ukur dipaké pikeun awalan Ngaran koropak a upami Anjeun hoyong ngaleungitkeun disingkronkeun file sanggeus unggal nyuratan ka eta.

Ieu bisa butuh sababaraha acclimatization pikeun maranéhanana individu dipaké pikeun paripolah BSD murni tapi testers geus dituduhkeun yén sintaksis ieu rada leuwih fleksibel ti paripolah BSD. Catet yén parobahan ieu teu kudu mangaruhan syslog.conf baku (5) payel. Anjeun kudu husus ngaropéa payil konpigurasi pikeun ménta paripolah ditingkatkeun.

Rojongan Pikeun Jauh logging

Modifikasi ieu nyadiakeun rojongan jaringan kana fasilitas syslogd. rojongan Network hartina pesen bisa diteruskeun ti hiji titik ngajalankeun syslogd ka titik sejen ngajalankeun syslogd dimana maranéhna bakal sabenerna asup ka file disk.

Pikeun ngaktipkeun ieu anjeun kudu nangtukeun pilihan -r on garis paréntah. Paripolah standar éta syslogd moal ngadangukeun jaringan.

strategi nya éta mibanda syslogd ngadangukeun dina Unix stop kontak domain pikeun pesen log dihasilkeun lokal. kabiasaan ieu bakal ngidinan syslogd mun antar-beroperasi jeung syslog kapanggih dina perpustakaan C baku. Wanoh syslogd sarua listens dina port syslog baku pikeun pesen diteruskeun ti sarwa lianna. Pikeun mibanda karya ieu neuleu éta jasa (5) file (ilaharna kapanggih dina / jsb) kudu boga asupna handap:

syslog 514 / udp

Lamun asupna ieu leungit syslogd ngayakeun tiasa nampa talatah jauh atawa ngirim aranjeunna, sabab port UDP cant dibuka. Gantina, syslogd bakal maot langsung, niupan kaluar hiji pesen kasalahan.

Ngabalukarkeun pesen bisa diteruskeun kana host sejen ngaganti garis file normal dina file syslog.conf kalawan ngaran host nu di pesen téh bisa dikirim prepended kalawan @.

Contona, teruskeun ALL pesen ka host jauh ngagunakeun Éntri syslog.conf handap:

# Sampel file konfigurasi syslogd mun pesen # ka host jauh ka hareup sadayana. *. * @hostname

Teruskeun sagala pesen kernel ka host jauh file konfigurasi bakal jadi kieu:

# File konfigurasi Sampel teruskeun sagala kernel # pesen ka host jauh. Kern. * @hostname

Lamun hostname jauh teu bisa ngumbar dina ngamimitian, sabab nami-server bisa jadi teu bisa diasupan (eta bisa jadi dimimitian sanggeus syslogd) anjeun teu kudu salempang. Syslogd bakal Coba deui pikeun ngabéréskeun nami sapuluh kali lajeng ngawadul. Kamungkinan sejen ulah aya ieu pikeun nempatkeun di hostname di / jsb / sarwa.

Kalawan normal syslogd s Anjeun bakal meunang syslog-puteran lamun ngirimkeun kaluar pesen nya éta narima ti host jauh ka host anu sarua (atawa leuwih pajeulit ka host katilu anu ngirimkeun eta deui ka salah sahiji mimiti, jeung saterusna). Dina domain kuring (Infodrom Oldenburg) urang ngahaja ngagaduhan salah jeung disk kami kaeusi nepi ka pesen tunggal sami. :-(

Ulah aya di kali salajengna moal pesen nya éta narima ti host jauh dikirim kaluar ka nu sejen (atawa sarua dina) jauh host deui. Mun aya skenario tempat ieu teu make akal pikiran, sumangga leupaskeun abdi (Joey) a garis.

Lamun host jauh perenahna di domain sarua salaku host teh, syslogd geus ngajalankeun on, mung hostname basajan bakal asup gaganti sakabeh fqdn.

Dina jaringan lokal Anjeun bisa nyadiakeun hiji server log sentral pikeun mibanda sagala informasi anu penting diteundeun dina hiji mesin. Mun jaringan nu diwangun ku domain béda anjeun teu kudu ngawadul ngeunaan logging ngaran mumpuni pinuh tinimbang hostnames basajan. Anjeun meureun hoyong nganggo fitur strip-domain -s tina server ieu. Anjeun tiasa ngabejaan syslogd ka jajan kaluar sababaraha domain séjénna ti hiji server anu lokasina di na wungkul log hostnames basajan.

Ngagunakeun pilihan -l aya ogé kamungkinan keur ngartikeun tunggal sarwa sakumaha mesin lokal. Ieu teuing, ngakibatkeun logging ukur hostnames basajan maranéhna teu di fqdns.

stop kontak di UDP dipaké pikeun neraskeun seratan ka sarwa jauh atawa nampa talatah ti aranjeunna ngan dibuka keur diperlukeun. Dina Kaluaran saméméh 1.3-23 eta dibuka unggal waktu tapi henteu dibuka pikeun bacaan atawa diteruskeun mungguh.

Output keur pipa Dingaranan (FIFOs)

Vérsi ieu syslogd boga rojongan pikeun logging output keur pipa ngaranna (fifos). A fifo atawa ngaranna pipe bisa dipaké salaku tujuan pikeun pesen log ku prepending simbol pipy ( `` | '') jeung ngaran payil. Ieu gunana pikeun debugging. Catet yén fifo nu kudu dijieun jeung paréntah mkfifo saméméh syslogd geus dimimitian.

Konfigurasi handap seratan file ruteu debug ti kernel mun fifo a:

# Sampel konfigurasi kana kernel jalur seratan debugging # ukur keur / usr / adm / debug nu mangrupakeun # ngaranna pipe. Kern = debug |. / usr / adm / debug

kapaur instalasi

Aya meureun salah tinimbangan penting lamun masang versi ieu syslogd. Vérsi ieu syslogd téh gumantung pormat ditangtoskeun tina seratan ku fungsi syslog. Fungsi tina fungsi syslog di perpustakaan dibagikeun robah wae di wewengkon libc.so.4. [2-4] .n. Parobahan husus ieu null-nungtungan suratna saméméh ngalirkeun eta kana stop kontak / dev / kumplit. fungsi ditangtoskeun tina versi ieu syslogd téh gumantung null-terminasi suratna.

masalah ieu ilaharna bakal manifest sorangan lamun lami binaries statically numbu nu dipake dina sistim. Binaries maké versi heubeul tina fungsi syslog bakal ngabalukarkeun garis kosong bisa asup dituturkeun ku pesen jeung karakter mimiti dina surat dihapus. Relinking binaries ieu mun versi anyar tina pustaka dibagikeun baris ngabenerkeun masalah ieu.

Boh syslogd (8) jeung klogd nu (8) bisa boh jadi ngajalankeun ti init (8) atawa dimimitian salaku bagian tina RC nu. * Runtuyan. Lamun geus dimimitian ti init pilihan -n kudu diatur, disebutkeun, Anjeun bakal meunang ton daemons syslog dimimitian. Ieu kusabab init (8) gumantung kana ID prosés.

Ancaman kaamanan

Aya potensi pikeun daemon syslogd bisa dipaké salaku conduit pikeun panolakan tina serangan jasa. Hatur nuhun buka John Morrison (jmorriso@rflab.ee.ubc.ca) pikeun alerting kuring mun potensial ieu. Hiji program rogue (mer) bisa pisan gampang bah nu daemon syslogd kalawan pesen syslog hasilna payil log consuming sagala spasi sésana dina filesystem . Ngaktipkeun logging ngaliwatan sockets domain inet baris tangtu ngalaan sistem pikeun resiko luar tina program atawa individu dina mesin lokal.

Aya sababaraha métode nu mayungan mesin a:

  1. Nerapkeun firewalling kernel mun ngawatesan nu sarwa atawa jaringan boga aksés kana stop kontak 514 / UDP.
  2. Logging bisa diarahkeun ka filesystem terasing atawa non-root anu, upami kaeusi, moal ngaruksak mesin.
  3. The ext2 filesystem bisa dipaké nu bisa ngonpigurasi ka ngawatesan perséntase tangtu filesystem pikeun pamakéan ku akar wungkul. CATETAN yen ieu bakal merlukeun syslogd bisa ngajalankeun salaku prosés non-root. Ogé dicatet yén ieu bakal nyegah pamakéan of logging jauh saprak syslogd bakal bisa ngabeungkeut kana stop kontak 514 / UDP.
  4. Nganonaktipkeun inet sockets domain bakal ngawatesan resiko kana mesin lokal.
  5. Paké hambalan 4 sarta lamun masalahna persists na teu sekundér pikeun program rogue / daemon meunangkeun 3,5 ft (approx. 1 méter) panjang mamat rod * na boga obrolan jeung pamaké dina sual. Mamat rod TKR. --- 3/4, 7/8 atanapi 1in. rod baja hardened, jalu threaded on unggal tungtung. pamakéan primér dina industri minyak di Kulon North Dakota tur lokasi nu sejen pikeun ngompa 'nyedot' minyak tina sumur minyak. kagunaan sekundér anu pikeun pangwangunan sapi eupan kavling jeung kaayaan individu recalcitrant atanapi suka gelut occasional.

Debugging

Nalika debugging dihurungkeun ngagunakeun pilihan -d lajeng syslogd bakal pisan verbose ku tulisan loba naon hancana on stdout. Iraha éta file konfigurasi ieu reread na ulang parsed anjeun gé ningali tabular a, pakait jeung struktur data internal. tabular Ieu ngawengku opat widang:

jumlah

widang ieu ngandung sababaraha serial dimimitian ku nol. Jumlah ieu ngagambarkeun posisi dina struktur data internal (ie Asép Sunandar Sunarya dina). Lamun salah sahiji angka ieu ditinggalkeun kaluar lajeng aya bisa jadi kasalahan dina garis saluyu dina /etc/syslog.conf.

corak

médan Ieu tricky sarta ngagambarkeun struktur internal persis. Unggal kolom nangtung pikeun fasilitas a (tingal syslog (3)). Sakumaha anjeun tiasa tingali, aya kénéh sabagian fasilitas ditinggalkeun bébas pikeun urut pamakéan, mung kénca paling anu dipaké. Unggal widang dina kolom a ngagambarkeun prioritas (tingal syslog (3)).

aksi

widang ieu ngajelaskeun peta sabagean anu lumangsung iraha pesen anu narima eta cocog pola. Tingal syslog.conf (5) manpage pikeun sakabéh tindakan mungkin.

alesan

widang ieu nembongkeun alesan tambahan kana lampah dina widang tukang. Pikeun file-logging ieu teh Ngaran koropak pikeun logfile nu; pikeun pamaké-logging ieu daptar pamaké; pikeun logging jauh ieu teh hostname tina mesin asup ka; pikeun konsol-logging ieu konsol dipaké; pikeun TTY-logging ieu teh TTY dieusian; témbok boga alesan tambahan.

Tempo ogé

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

Collaborators

Syslogd dicokot tina sumber BSD, Nagreg Wettstein (greg@wind.enjellic.com) dipigawé port ka Linux Ubuntu , Martin Schulze (joey@linux.de) dibereskeun sababaraha bug na ditambahkeun sababaraha fitur anyar. Klogd asalna ditulis ku Steve Gusti (lord@cray.com), Nagreg Wettstein dijieun perbaikan utama.

Dr Nagreg Wettstein
Kamekaran Enjellic Systems

Fasilitas Onkologi Panalungtikan Divisi komputasi
Roger Maris Kangker Center
Fargo, nd
greg@wind.enjellic.com

Stephen Tweedie
Jurusan Élmu Komputer
Edinburgh Universitas, Skotlandia
sct@dcs.ed.ac.uk

Juha Virtanen
jiivee@hut.fi

Gek Alderton
shane@ion.apana.org.au

Martin Schulze
Infodrom Oldenburg
joey@linux.de

Nu penting: Paké paréntah lalaki (% lalaki) ningali kumaha paréntah nu dipaké dina komputer husus Anjeun.

Artikel nu patali