syslog1.pdf
(
183 KB
)
Pobierz
MonitorowaniesystemuGNU/LinuxprzypomocySyslog
GrzegorzJacekNalepa
17.01.2000,Kraków,Revision:1.7
Streszczenie
ArtykułopisujesystemSyslogb¦d¡cypodstawowymnarz¦dziemsłu»¡cymdomoni-
torowaniasystemuGNU/Linux.OpisanajestarchitekturaSyslogaijegokonfigurowanie.
Zaprezentowanes¡sposobyrotowaniaplikówrejestrowych,któretworzySyslog.Naza-
ko«czeniewspomnianes¡pakietyalternatywnedoSyslog.
Spistre±ci
1Wst¦p
2
2JakdziałaSyslog
2
2.1Architektura
...................................... 2
2.2Współpracazinnymiprogramami
.......................... 2
3KonfigurowanieSyslogd
3
4Składniaplikukonfiguracyjnego
3
4.1Organizacjaplikówrejestrowych
........................... 4
5RotacjaplikówrejestrowychzwykorzystaniemCron
6
6Wi¦kszemo»liwo±cimonitorowania
7
6.1MonitorowanieTCP/IP
............................... 7
6.2WspółpracazIPChains
................................ 8
6.3Monitorowanieinstalowaniaprogramów
....................... 8
7AlternatywydlaSyslogd
8
7.1SecureSyslog
..................................... 9
7.2Syslog-NG
....................................... 9
8Podsumowanie
9
1
Tekstukazałsi¦w:
MagazynieNetForum
,nr3/2000,wydawanymprzezLupus.
2
Kontaktzautorem:
mail:gjn@agh.edu.pl
3
Tytułangielski:
MonitoringaGNU/LinuxSystemwithSyslog
4
Tekstjestrozpowszechnianynazasadachlicencji
GNUFreeDocumentationLicense
,którejpełnytekst
mo»naznale¹¢podadresem:
http://www.gnu.org/copyleft/fdl.html
1
GrzegorzJacekNalepa
:MonitorowaniesystemuGNU/LinuxprzypomocySyslog
1.Wst¦p
Bezpiecze«stwosystemukomputerowegozale»ynietylkoodtego,jakjestzabezpieczonyprzed
intruzami.Bardzowa»nedlabezpiecze«stwajestto,czyadministratormadost¦pneinformacje
ofunkcjonowaniusystemu.Dobrenarz¦dziedomonitorowaniapracysystemujestniezb¦dne
dojegou»ytkowaniaizabezpieczania.
WsystemieGNU/Linux,podobniejakwsystemachUnix,stosujesi¦pakietSyslog,który
umo»liwiamonitorowaniesystemu.Jesttoprogramobardzodu»ychmo»liwo±ciach,leczwy-
magaj¡cy,podobniejakinnenarz¦dziasystemowe,odpowiedniejkonfiguracji.
2.JakdziałaSyslog
ProgramSyslogjestjednymznajwa»niejszychnarz¦dzisystemowych.Umo»liwiarejestrowanie
zdarze«zachodz¡cychwsystemieprzypomocyzcentralizowanegomechanizmu.Pozwalanare-
jestrowanieinformacjipochodz¡cychztrzech¹ródeł:zgłosze«przekazywanychprzezbibliotek¦
systemow¡,orazinformacjipochodz¡cychodj¡drasystemu.
2.1.Architektura
Przyjmowanieminformacjizgłaszanychprzezbibliotek¦systemow¡zajmujesi¦demon
syslogd
.
Aplikacje,najcz¦±ciejró»nedemony,przekazuj¡informacjepoprzezstandardow¡funkcj¦
syslog(3)
.
S¡onenast¦pnieprzekazywanedodemona
syslogd
,którywzale»no±ciodichtypuipriorytetu,
zapisujejewodpowiednichplikach,takzwanych
plikachrejestrowych
(ang.
logfiles
).Ka»dy
wpisdoplikurejestrowegodokonywanyprzez
syslogd
zawierainformacjedotycz¡ceczasujego
powstania,maszynyiprocesu.
Raportyodj¡drasystemuLinuxzbierademon
klogd
.Poniewa»maj¡oneinn¡posta¢ni»
te,któreprzekazujebibliotekasystemowa,zostaj¡poddaneobróbceprzedprzesłaniemichdo
syslogd
.Taobróbkapoleganaopatrzeniuichinformacjamiotypieiprioryteciewiadomo±ci
zgodnymiz
syslogd
.
DziałanieopisanegosystemujestprzedstawionenaRysunku
1
.Jakwida¢Syslogmajeszcze
jedeninterfejsumo»liwiaj¡cywymian¦zbieranychinformacji.Obsługujemianowiciegniazda
UDPumo»liwiaj¡ceprzesyłaniewiadomo±cipomi¦dzyró»nymimaszynamiwsieci.Owyko-
rzystaniutegomechanizmub¦dziejeszczemowadalej.
2.2.Współpracazinnymiprogramami
Nawspomnianymrysunkuwida¢,»epodstawowymechanizmgenerowaniaraportówzapew-
niaaplikacjombibliotekasystemowa.Udost¦pniaonetrzyfunkcje:
openlog()
,
syslog()
i
closelog()
,któreumo»liwiaj¡odpowiednio:otwarciekomunikacji(stworzeniedeskryptora),
przesłaniewiadomo±ciizamkni¦ciekomunikacji.Ztychfunkcjikorzystaj¡demonyiaplikacje
pracuj¡cewsystemie.
Wartozauwa»y¢,i»mo»liwejestprzesyłaniewiadomo±cidoSyslogrównie»zpoziomuskryp-
tów,naprzykładskryptówwsh.Wygodniejestdotegowykorzysta¢program
logger
,który
wysyłainformacjepoprzezsyslogd.Natomiastwskryptachnapisanychwj¦zykuPerlmo»na
u»y¢pakietu
Sys::Syslog
,któryjestinterfejsemdoopisanychpowy»ejwywoła«funkcjisys-
temowych.
2JAKDZIAŁASYSLOG
2
GrzegorzJacekNalepa
:MonitorowaniesystemuGNU/LinuxprzypomocySyslog
Plik
Rejestrowy
Zdalna
Aplikacja
Maszyna
/var/log/
UDP
Syslogd
syslog()
/dev/log
Klogd
Biblioteka systemowa
/dev/klog
Jadro systemu Linux
Rysunek1:ArchitekturaSyslog
3.KonfigurowanieSyslogd
Syslogbyspełnia¢dobrzeswojefunkcjepowinienby¢uruchamianyjakojedenzpierwszychde-
monów.Uruchamiasi¦goprzewa»nieprzezwywołaniezeskryptówstartowychpodczasurucha-
mianiasystemu.WdystrybucjachDebian/GNUiRedHatskryptnazywasi¦poprostu
syslogd
iznajdujesi¦wkatalogu
/etc/init.d
lub
/etc/rc.d/init.d
.Skrypt,opróczstandardowych
opcji
start
i
stop
przyjmujerównie»
restart
i
reload
,którepowoduj¡odpowiednioza-
trzymanieiponowneuruchomienieSyslog,orazpowtórneprzeczytanieplikukonfiguracyjnego.
Skryptzatrzymujeiuruchamiademon
syslogd
oraz
klogd
.
4.Składniaplikukonfiguracyjnego
CałakonfiguracjaSyslogznajdujesi¦wpliku
/etc/syslog.conf
,opisanyw(
syslog.conf(5)
).
Jesttopliktekstowy,zawieraj¡cyreguływedługktórychSyslogsortujeinformacjeizapisuje
jedoró»nychplikówrejestrowych.Składniaplikujestnast¦puj¡ca:ka»dalinijkajestosobn¡
reguł¡,naktór¡składaj¡si¦dwapola:selektor(ang.
selector
)idziałanie(ang.
action
).
Pole„selektor”madwiecz¦±cifunkcja(ang.
facility
)ipriorytet(ang.
priority
)rozdzielone
kropk¡iokre±larodzajrejestrowanegokomunikatu,gdzie:
•„funkcja”wskazujena¹ródłokomunikatuimo»emie¢nast¦puj¡cewarto±ci:auth,auth-
priv,cron,daemon,kern,lpr,mail,mark,news,syslog,user,uucp,local0–local7.
•„priorytet”okre±lajegostopie«wa»no±ci(odnajni»szego):debug,info,notice,warning,
err,crit,alert,emerg.
Dodatkowowpolu„selektor”mo»nastosowa¢nast¦puj¡ceznaki:
4SKŁADNIAPLIKUKONFIGURACYJNEGO
3
GrzegorzJacekNalepa
:MonitorowaniesystemuGNU/LinuxprzypomocySyslog
•przecinek(
,
)–grupujekilkatypów„funkcji”,którymodpowiadatosamo„działanie”,w
tymprzypadku„priorytet”jestignorowany,
•±rednik(
;
)–pozwalanagrupowaniekilkuselektorów,którymodpowiadatosamodzia-
łanie.
•gwiazdka(
*
)–mo»ezast¦powa¢pola„funkcja”oraz„priorytet”ioznacza„dlaka»dej
warto±citegopola”.
Trzebapami¦ta¢,»e„priorytet”oznaczawszystkiekomunikatyopriorytecienieni»szymni»
podany,naprzykładpriorytet
err
oznaczakomunikatyopriorytecieod
err
do
emerg
.Mo»liwe
jestjednakpodawanieinnegorodzajuzakresówpriorytetów,wykorzystuj¡cznakrówno±ci(=)
iwykrzyknika(!).Oznaczaj¡oneodpowiedniokomunikatyodokładniepodanymprioryteciei
zanegowaniepodanegoprzedziałupriorytetów.Podaniezamiastpriorytetusłowa
none
oznacza,
»e»adnekomunikatyzpodanego¹ródłanieb¦d¡uwzgl¦dniane.Wykorzystanietychoperatorów
jestpokazanedalej.
Pole„działanie”wskazujecomasi¦dzia¢zkomunikatamiokre±lonymiprzezselektorreguły:
•nazwapliku–komunikatys¡dopisywanedopodanegopliku,poprzedzenienazwyznakiem
minuspowodujewywołanie
sync()
podopisaniuka»degokomunikatu,
•nazwaterminala–umo»liwiaprzesyłaniekomunikatównawybraneterminale,
•|nazwapotoku(ang.
namedpipe
)–komunikatys¡przesyłanedokolejkiFIFO(naprzy-
kładstworzonejprzypomocy
mkfifo
),sk¡dmog¡by¢odbieraneprzezinnyprogram,
•@nazwamaszyny–Syslogb¦dzieprzesyłałkomunikatydoinnejmaszynywsieci(naport
514/UDP),
•nazwau»ytkownika–komunikatyb¦d¡wy±wietlanenaterminalupodanegou»ytkownika,
oczywi±cieje»elijestzalogowany.Mo»napoda¢list¦nazwu»ytkownikówrozdzielonych
przecinkami,lubpoda¢gwiazdk¦(
*
)naoznaczeniewszystkichzalogowanychu»ytkowni-
ków.
Liniazaczynaj¡casi¦odznaku
#
jesttraktowanajakokomentarziignorowana.
Znaj¡cskładni¦plikukonfiguracyjnegomo»napoda¢przykładykonfiguracjiSyslogdod-
powiadaj¡cepotrzebomkonkretnegosystemu.Pisz¡c,lubmodyfikuj¡c,plikkonfiguracyjny
dlaSyslogporazpierwszynale»yzadba¢otobywszystkiekategoriekomunikatówbyłyreje-
strowany.Do±wiadczonyadministratormo»ezczasem±wiadomiezrezygnowa¢zrejestrowania
pewnychkategorii.Niejesttojednakzalecaneiwczasachgdytwardedyskis¡nies¡drogie
wartorejestrowa¢wszystko,aconajwy»ejcz¦±ciejusuwa¢starszefragmentymniejpotrzebnych
plikówrejestrowych.
4.1.Organizacjaplikówrejestrowych
Tradycyjnieplikirejestroweprzechowujesi¦wkatalogu
/var/log
.Dlawi¦kszo±cipodstawo-
wych¹ródełkomunikatówwartoprzeznaczy¢osobnepliki,którychnazwaodpowiadafunkcji
Syslog:
syslog.* -/var/log/syslog
cron.* /var/log/cron.log
daemon.* -/var/log/daemon.log
lpr.* /var/log/lpr.log
4SKŁADNIAPLIKUKONFIGURACYJNEGO
4
GrzegorzJacekNalepa
:MonitorowaniesystemuGNU/LinuxprzypomocySyslog
user.* /var/log/user.log
uucp.* /var/log/uucp.log
local.* /var/log/local.log
Informacjedotycz¡cebezpiecze«stwaiautoryzacjiwartoumie±ci¢wosobnympodkatalogu.
auth,authpriv.*-/var/log/security/auth.log
Poka»dymwpisiedopliku
auth.log
b¦dziewywoływanafunkcja
sync()
,abyupewni¢si¦,»e
daneznalazłysi¦natychmiastnadysku.
Je»elinamaszyniepracujeserwerpocztowykomunikatypochodz¡ceodniegomo»napo-
dzieli¢nakilkagrup.
mail.info /var/log/mail/mail.info
mail.warn /var/log/mail/mail.warn
mail.err -/var/log/mail/mail.err
Poni»szyprzykładpokazujejakmo»nadokładnierozdzieli¢grupykomunikatówwzale»no±ci
odpriorytetu.
kern.* /var/log/kernel/kern.all
kern.=debug /var/log/kernel/kern.debug
kern.info;kern.!err/var/log/kernel/kern.info-warning
kern.err /var/log/kernel/kern.err-emerg
Wszystkieinformacjeodj¡dras¡przekazywanedopliku
kern.all
.Kolejnereguływysyłaj¡
dookre±lonychplikówodpowiednio:teitylkote,któremaj¡priorytet
debug
,komunikatyo
priorytecieod
info
do
warning
,orazteopriorytecieod
err
do
emerg
.
Cz¦stospotykanymrozwi¡zaniemjestrównie»zapisywanieosobnowszystkichwiadomo±ci
opriorytecie
debug
.Wponi»szymprzykładziewykluczones¡komunikatypochodz¡cez
auth
,
authpriv
,
mail
i
news
.
*.debug;\
auth,authpriv.none\
news.none;mail.none-/var/log/debug
Czasami,dlaupewnieniasi¦,»erzeczywi±ciewszystkiekategoriekomunikatóws¡rejestro-
wane,mo»najeprzekazywa¢dojednegopliku.Nale»yjednakpami¦ta¢,»ewtrakciepracy
systemujegodługo±¢b¦dziebardzoszybkorosła.
*.* /var/log/all
Dlaadministratoracz¦stopracuj¡cegoprzykonsolimaszynymo»eby¢przydatnebezpo-
±redniewy±wietlaniekomunikatównaterminalu,lubprzypomocypolecenia
xconsole
.
*.warn /dev/tty9
*.info |/dev/xconsole
Informacjeozakłóceniupracysystemumog¡by¢natylepowa»ne,»epowinnijenatychmiast
otrzyma¢wszyscyzalogowaniu»ytkownicysystemu.
*.emerg
*
Zpunktuwidzeniabezpiecze«stwawartoprzechowywa¢komunikatySyslogpozadyskiem
maszynynaktórejpracujeSyslog,abyniemogłyzosta¢naskutekawariilubwłamaniado
systemu.Mo»nadotegowykorzysta¢zdaln¡maszyn¦,naktórejpracujeSyslog,lubwpraktyce
ka»dyinnyprogramnasłuchuj¡cynaporcie514/UDP,naktórySyslogprzesyłakomunikaty.
4SKŁADNIAPLIKUKONFIGURACYJNEGO
5
Plik z chomika:
tobin_chomikuj
Inne pliki z tego folderu:
.directory
(0 KB)
syslog1.pdf
(183 KB)
Inne foldery tego chomika:
Kali_Linux
Zgłoś jeśli
naruszono regulamin