plik


Podstawowe usBugi systemu Lokalne Sieci Komputerowe 1 Plan wykBadu " init, " getty, " login " telnet, " ssh, " syslog " cron i at Inicjalizacja systemu Linux Program init kontroluje proces Badowania trybu wielou\ytkownikowego, m.in. uruchamia wszystkie zaplanowane skrypty. " Podczas normalnego dziaBania init sprawdza czy dziaBa getty (aby umo\liwi u\ytkownikom zalogowanie), adoptuje osierocone procesy. " Podczas zamykania systemu init jest odpowiedzialny za zabicie wszystkich procesw, oraz inne skonfigurowane rzeczy. init Czynno[ci przygotowujce system do pracy wykonywane przez proces init: " sprawdzanie spjno[ci systemw plikw za pomoc polecenia fsck, " montowanie lokalnych dyskw, " startowanie UNIX-owych procesw usBugowych " uruchamianie demonw sieciowych i montowanie (o ile s dostpne) zdalnych systemw plikw, " umo\liwienie u\ytkownikom wBczania si do systemu przez wystartowanie procesw getty. Poziomy pracy  System V W systemach UNIX istnieje szereg z gry zdefiniowanych stanw systemu, okre[lanych jako poziomy pracy (run-levels) identyfikowanych jednoznakow nazw (zwykle cyfr). Poziomy pracy  System V Poziom pracy Nazwa i wykorzystanie 0 WyBczony: warunki, w ktrych mo|na bezpiecznie odBczy zasilanie. 1 (s lub S) Tryb jednou|ytkownikowy lub administracyjny (w wielu wersjach nierozr|nialne) Tryb wielou|ytkownikowy: normalny stan dziaBania pojedynczego systemu, nie 2 skonfigurowanego w sieci. 3 Stan dostpu do zdalnych plikw. Poziom 3 jest sieciowym poziomem pracy systemu. 4 Stan konfigurowalny: (nie u|ywany) 5 Stan firmowy: stosowany w celu wykonania niektrych czynno[ci konserwacyjnych. 6 Restart systemu. plik /etc/inittab " Plik inittab opisuje, ktre procesy powinny zosta uruchomione przez proces init podczas startu systemu. Ka\da linia w pliku inittab jest zapisana w nastpujcym formacie: id : runlevels : action : process " id  etykieta jednoznacznie identyfikujca lini " runlevel - lista poziomw pracy " action - akcja, ktra powinna zosta podjta " process - proces, ktry zostanie uruchomiony plik /etc/inittab (pole action) " initdefault - domy[lny poziom pracy systemu " boot - wykonywana podczas startu systemu " bootwait - wykonywana podczas startu systemu, init czeka na jej zakoDczenie " sysinit - wykonywana przed akcjami typu boot oraz bootwait " wait - wykonywana w chwili przej[cia na okre[lony polem runlevel poziom pracy, proces init czeka na jej zakoDczenie " once - wykonywana w chwili przej[cia na okre[lony polem runlevel poziom pracy " respawn - proces zastaje automatycznie wznowiony po zakoDczeniu dziaBania (np. getty) " ctrlaltdel - wykonywana po naci[niciu przez u\ytkownika kombinacji klawiszy Alt+Ctrl+Delete /etc/rc*.d " Nazwy wszystkich plikw w takim katalogu rozpoczynaj si od liter "S" lub "K", po ktrych nastpuje dwucyfrowa liczba, a nastpnie opisowy fragment nazwy. " Skrypty "rcn" wykonuj pliki zaczynajce si na "K", w kolejno[ci alfabetycznej, a nastpnie, rwnie\ alfabetycznie, pliki S " Pliki na "K" u\ywane s zwykle w celu zabijania procesw i wykonywania innych zwizanych z tym czynno[ci. " Pliki z nazw rozpoczynajc si od litery "S" odpowiadaj za startowanie procesw i wykonywanie pozostaBych funkcji inicjujcych. " Pliki w katalogach "rc*.d" s z reguBy linkami do plikw w katalogu "/etc/init.d", ktry stanowi podstawowe miejsce dla skryptw inicjujcych. Plan wykBadu " init, " getty, " login " telnet, " ssh, " syslog " cron i at getty " getty jest programem zarzdzajcym fizycznymi lub wirtualnymi terminalami. Po wykryciu poBczenia, monituje o podanie nazwy u\ytkownika i uruchamia program login w celu uwierzytelnienia u\ytkownika " Pierwotnie, w systemach Unix, getty obsBugiwaB poBczenia terminali szeregowych podBczonych do hosta.  tty w nazwie oznacza teletype (dalekopis), ale obecnie oznacza dowolny terminal tekstowy " Komputery pracujce pod kontrol systemw uniksowych, nawet je[li nie [wiadcz usBugi zdalnego logowania, wci\ korzystaj z getty do logowania do virtualnej konsoli " Zamiast programu login, getty mo\e by skonfigurowany przez administratora tak, by uruchamiaB dowolny inny program, np. demon ppp do zapewnienia wdzwanianego dostpu do internetu. Plan wykBadu " init, " getty, " login " telnet, " ssh, " syslog " cron i at login " Program jest odpowiedzialny za autoryzacj u\ytkownika oraz inicjalizacj jego [rodowiska - ustawienie odpowiednich praw dostpu do terminala, uruchomienie powBoki, etc. " Cz[ci inicjalizacji [rodowiska jest wy[wietlenie pliku /etc/motd /etc/motd /etc/motd /etc/motd (mo\na zablokowa umieszczajc plik .hushlogin w katalogu .hushlogin .hushlogin .hushlogin domowym). " Plik /etc/nologin blokuje wszelkie prby zalogowania si (jest /etc/nologin /etc/nologin /etc/nologin zazwyczaj tworzony przez shutdown login odmawiajc wy[wietli shutdown). login shutdown login shutdown login zawarto[ tego\ pliku. " login zapisuje wszelkie niepoprawne prby zalogowania si login login login poprzez syslog syslog. Loguje rwnie\ wszelkie logowania dokonane syslog syslog przez roota, umo\liwiajc w ten sposb wytropienie wBamywaczy. login " Aktualnie zalogowani u\ytkownicy umieszczani s w /var/run/utmp /var/run/utmp /var/run/utmp. Plik ten przy ka\dym restarcie systemu jest /var/run/utmp usuwany. Polecenia takie jak: who w opieraj si na jego who, w who w who w zawarto[ci. " Wszelkie poprawne logowania si zapisywane s w /var/log/wtmp. Co jaki[ czas nale\y go usun  nie istniej \adne ograniczenia co do jego rozmiaru. Program last sBu\y do przegldania pliku wtmp last wtmp. last wtmp last wtmp " utmp i wtmp s w formacie binarnym przez co przegldanie ich utmp wtmp utmp wtmp utmp wtmp zawarto[ci wymaga specjalnych programw. Proces logowania Logowanie si poprzez terminale: interakcja pomidzy: init, getty, login i powBok. yrdBo: The Linux System Administrators' Guide http://www.linuxpl.org/SAG/ Plan wykBadu " init, " getty, " login " telnet, " ssh, " syslog " cron i at telnet " Telnet jest najstarsz i najbardziej elementarn usBug internetow. ZostaB opisany w dokumentach RFC numer RFC 854 i RFC 855 UsBuga telnet umo\liwia prac na zdalnym komputerze. Uruchomia si j poprzez wpisanie polecenia: telnet adres Po nawizaniu poBczenia telnet wy[wietli nam informacj o wersji systemu operacyjnego serwera, jego nazwie oraz numerze wirtualnego terminala (np. ttyp0, ttyp1, ttyp2, itd& ) Nastpnie pojawi si monit o podanie nazwy u\ytkownika oraz hasBa (login i password). telnet " UsBuga telnet czsto implementowana jest do urzdzeD aktywnych sieci (switche, routery) w celu uBatwienia ich konfiguracji. " PoBczenie tego typu nie jest szyfrowane, a wic mo\liwe do podsBuchu. Z tego powodu cz[ciej stosuje si jego nastpc czyli SSH. Plan wykBadu " init, " getty, " login " telnet, " ssh, " syslog " cron i at SSH (secure shell) " SSH to tylko nastpca protokoBu telnet. W SSH transfer wszelkich danych jest zaszyfrowany, oraz mo\liwe jest rozpoznawanie u\ytkownika na wiele sposobw. " SSH to wsplna nazwa dla caBej rodziny protokoBw, nie tylko terminalowych, lecz tak\e sBu\cych do przesyBania plikw (SCP, SFTP), zdalnej kontroli zasobw, tunelowania itp. " Wspln cech wszystkich tych protokoBw jest identyczna z ssh technika szyfrowania danych i rozpoznawania u\ytkownika. Plan wykBadu " init, " getty, " login " telnet, " ssh, " syslog " cron i at Syslog - wprowadzenie " Program Syslog jest jednym z najwa\niejszych narzdzi systemowych. " Umo\liwia rejestrowanie zdarzeD zachodzcych w systemie przy pomocy zcentralizowanego mechanizmu. " Pozwala na rejestrowanie informacji pochodzcych z nastpujcych zrdeB:  zgBoszeD przekazywanych przez bibliotek systemow  informacji pochodzcych od jdra systemu. Syslog - architektura " Przyjmowaniem informacji zgBaszanych przez bibliotek systemow zajmuje si demon syslogd. " Aplikacje, najcz[ciej r\ne demony, przekazuj informacje poprzez standardow funkcj syslog(3). S one nastpnie przekazywane do demona syslogd, ktry w zale\no[ci od ich typu i priorytetu, zapisuje je w odpowiednich plikach, tak zwanych plikach rejestrowych (ang. log files). " Ka\dy wpis do pliku rejestrowego dokonywany przez syslogd zawiera informacje dotyczce czasu jego powstania, maszyny i procesu. " Raporty od jdra systemu Linux zbiera demon klogd. Po opatrzeniu ich informacjami o typie i priorytecie zostaj przesBane do syslogd. Syslog - architektura yrdBo: http://home.agh.edu.pl/~gjn/dydaktyka/papers/GJN-Cron/GJN-Syslog.html Syslog  wspBpraca z innymi programami " Na rysunku wida, \e podstawowy mechanizm generowania raportw zapewnia aplikacjom biblioteka systemowa, ktra udostpnia trzy funkcje:  openlog() - otwarcie komunikacji (stworzenie deskryptora),  syslog() - przesBanie wiadomo[ci,  closelog() - zamknicie komunikacji. " Z tych funkcji korzystaj demony i aplikacje pracujce w systemie. " Mo\liwe jest przesyBanie wiadomo[ci do Syslog rwnie\ z poziomu skryptw, na przykBad skryptw w sh. " Wygodnie jest do tego wykorzysta program logger, ktry wysyBa informacje poprzez syslogd. " W skryptach napisanych w jzyku Perl mo\na u\y pakietu Sys::Syslog, ktry jest interfejsem do opisanych powy\ej wywoBaD funkcji systemowych. Konfiguracja syslogd " CaBa konfiguracja Syslog znajduje si w pliku /etc/syslog.conf. " Jest to plik tekstowy, zawierajcy reguBy wedBug ktrych Syslog sortuje informacje i zapisuje je do r\nych plikw rejestrowych. " Ka\da linijka pliku jest osobn reguB, na ktr skBadaj si dwa pola: (1) selektor (ang. selector) (2) dziaBanie (ang. action). Konfiguracja syslogd - selektor Pole  selektor ma dwie cz[ci rozdzielone kropk, ktre okre[laj rodzaj rejestrowanego komunikatu: " funkcja (facility) wskazuje na zrdBo komunikatu i mo\e mie nastpujce warto[ci: auth, authpriv, cron, daemon, kern, lpr, mail, mark, news, syslog, user, uucp, local0-local7. priorytet (priority) okre[la jego stopieD wa\no[ci (od najni\szego): debug, info, notice, warning, err, crit, alert, emerg. Konfiguracja syslogd  selektor (2) Dodatkowo w polu  selektor mo\na stosowa nastpujce znaki: " przecinek (,) - grupuje kilka typw  funkcji , ktrym odpowiada to samo  dziaBanie , w tym przypadku  priorytet jest ignorowany, " [rednik (;) - pozwala na grupowanie kilku selektorw, ktrym odpowiada to samo dziaBanie. " gwiazdka (*) - mo\e zastpowa pola  funkcja oraz  priorytet i oznacza  dla ka\dej warto[ci tego pola . Trzeba pamita, \e priorytet oznacza wszystkie komunikaty o priorytecie nie ni\szym ni\ podany! Np. priorytet err oznacza komunikaty o priorytetach: err, crit, alert i emerg Mo\liwe jest jednak podawanie innego rodzaju zakresw priorytetw, wykorzystujc znak rwno[ci (=) i wykrzyknika (!). Konfiguracja syslogd  dziaBanie Wskazuje co ma si dzia z komunikatami okre[lonymi przez selektor: " nazwa pliku - komunikaty s dopisywane do pliku, poprzedzenie nazwy minusem powoduje wywoBanie sync() po dopisaniu ka\dego komunikatu, " nazwa terminala - przesyBa komunikaty na wybrane terminale, " |nazwa potoku (ang. named pipe) - komunikaty s przesyBane do kolejki FIFO (na przykBad stworzonej przy pomocy mkfifo), skd mog by odbierane przez inny program, " @nazwa maszyny - Syslog bdzie przesyBaB komunikaty do innej maszyny w sieci (na port 514/UDP), " nazwa u\ytkownika - komunikaty bd wy[wietlane na terminalu u\ytkownika (je\eli zalogowany). Mo\na poda list nazw u\ytkownikw rozdzielonych przecinkami, lub poda gwiazdk (*). syslog  organizacja plikw Pliki rejestrowe przechowuje si w katalogu /var/log. Dla wikszo[ci podstawowych zrdeB komunikatw warto przeznaczy osobne pliki o nazwie odpowiadajcej funkcji: syslog.* -/var/log/syslog cron.* /var/log/cron.log daemon.* -/var/log/daemon.log lpr.* /var/log/lpr.log user.* /var/log/user.log uucp.* /var/log/uucp.log local.* /var/log/local.log syslog  organizacja plikw (2) Informacje dotyczce bezpieczeDstwa i autoryzacji warto umie[ci w osobnym podkatalogu. auth,authpriv.* -/var/log/security/auth.log Po ka\dym wpisie do pliku auth.log bdzie wywoBywana funkcja sync(), aby upewni si, \e dane znalazBy si natychmiast na dysku. Je\eli na maszynie pracuje serwer pocztowy komunikaty pochodzce od niego mo\na podzieli na kilka grup. mail.info /var/log/mail/mail.info mail.warn /var/log/mail/mail.warn mail.err -/var/log/mail/mail.err syslog  organizacja plikw (2) Poni\szy przykBad pokazuje jak mo\na dokBadnie rozdzieli grupy komunikatw w zale\no[ci od priorytetu. 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 Wszystkie informacje od jdra s przekazywane do pliku kern.all. Kolejne reguBy wysyBaj do okre[lonych plikw odpowiednio: te i tylko te, ktre maj priorytet debug, komunikaty o priorytecie od info do warning, oraz te o priorytecie od err do emerg. Plan wykBadu " init, " getty, " login " telnet, " ssh, " syslog " cron i at Cron " System Cron skBada si z dwch podstawowych cz[ci: serwera i klienta. " Serwer, czyli demon crond, pracuje caBy czas w systemie i na podstawie systemowych plikw konfiguracyjnych oraz konfiguracji u\ytkownikw cyklicznie uruchamia zadania. " Program klient nosi nazw crontab i sBu\y do edycji pliku konfiguracyjnego u\ytkownika. crontab " Polecenie korzysta z zewntrznego edytora do edycji pliku. Uruchamiany edytor mo\na wybra przy pomocy zmiennej VISUAL lub EDITOR. Przewa\nie domy[lnym edytorem jest VI. " Podstawowe wywoBania crontab to:  crontab -e - edycja pliku,  crontab -l - wy[wietlenie pliku,  crontab -r - usunicie pliku,  crontab -u user {-e|-l-r}  praca z plikiem zadanego u\ytkownika - wywoBanie tylko dla administratora,  crontab plik - u\ycie gotowego pliku jako crontab. crontab " Jedna linia opisuje jedno zadanie i skBada si z sze[ciu pl, rozdzielonych biaBymi spacjami. " Pola w ka\dej linii oznaczaj kolejno: minut, godzin dzieD miesica, miesic, dzieD tygodnia, ostatnie to nazwa polecenia do wykonania. " Gwiazdka w miejscu warto[ci oznacza:  dla ka\dej warto[ci pola . " W danym polu mo\na podawa kilka warto[ci rozdzielonych przecinkami, natomiast u\ycie znaku  - pozwala na podanie zakresu warto[ci. " Podanie po zakresie znaku  / i kolejnej warto[ci umo\liwia podanie kroku w obrbie zakresu. crontab - przykBady 0 * * * * polecenie uruchomi polecenie co godzin 0 8 * * * polecenie spowoduje wykonanie polecenie codziennie o 8:00 0,20,40 8-16 * * * polecenie co dwadzie[cia minut, midzy 8 a 16 crontab - przykBady 10 * 5 * * polecenie co godzin ka\dego pitego dnia miesica 20-40 0,8,16 1-30/2 * * polecenie od 0:20 do 0:40 co minut, nastpnie od 8:20 do 8:40 co minut (podobnie dla 16), co dwa dni 30 6 10 * 1 polecenie 10. dnia miesica o 6:30 oraz w ka\dy poniedziaBek. (pola dzieD miesica i tygodnia Bcz si) ? jaki efekt przyniesie podanie 5 gwiazdek w polu czasu? * * * * * polecenie Cron z perspektywy administratora " Klient mo\e by uruchamiany przez u\ytkownika systemu do edycji jego wBasnego pliku. " Administrator ma mo\liwo[ edycji pliku dowolnego u\ytkownika, w tym u\ytkownikw systemowych, podajc w poleceniu opcj -u. " Wszystkie pliki crontab znajduj si w jednym katalogu, przewa\nie /var/spool/cron/crontabs. " Ka\demu u\ytkownikowi, ktry zaBo\yB wBasny crontab odpowiada plik o takiej nazwie jak nazwa jego konta. " Po uruchomieniu polecenia crontab, nie edytuje si plikw z tego katalogu, lecz ich kopie. Po sprawdzeniu skBadni pozbawiona bBdw skBadniowych nowa wersja crontaba jest kopiowana do wBa[ciwego pliku w katalogu /var/spool/cron/crontabs. /etc/crontab " Oprcz plikw u\ytkownikw system Cron ma jeden systemowy plik konfiguracyjny, /etc/crontab, ktry mo\e by edytowany bezpo[rednio przez administratora. " Typowy przykBad takiego pliku jest pokazany poni\ej: # /etc/crontab: system-wide crontab SHELL=/bin/sh PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin # m h dom mon dow user command 25 6 * * * root run-parts --report /etc/cron.daily 47 6 * * 7 root run-parts --report /etc/cron.weekly 52 6 1 * * root run-parts --report /etc/cron.monthly Architektura systemu Cron yrdBo: http://home.agh.edu.pl/~gjn/dydaktyka/papers/GJN-Cron/GJN-Cron.html At i batch at i batch czytaj ze standardowego wej[cia lub podanego pliku polecenia, ktre maj zosta wykonane w terminie pzniejszym przy u\yciu /bin/sh. " at wykonuje polecenia o zadanym czasie. " atq pokazuje oczekujce zadania u\ytkownika; w przypadku roota wy[wietlane s zadania wszystkich u\ytkownikw. " atrm usuwa zadania o zadanych identyfikatorach. " batch wykonuje polecenia, gdy pozwala na to poziom obci\enia systemu. At - przykBady at 4pm + 3 days at 10am Jul 31 at 1am tomorrow specyfikacj czasu mo\na znalez w: /usr/doc/packages/at/timespec Literatura " AEleen Frisch - Unix - administracja systemu (wyd III). Read Me, Warszawa 2003 " http://home.agh.edu.pl/~gjn/wiki/_media/dydaktyka:unix:gjn-syslog.pdf " http://home.agh.edu.pl/~gjn/wiki/_media/dydaktyka:unix:gjn-cron.pdf " The Linux System Administrators' Guide - http://www.linuxpl.org/SAG/

Wyszukiwarka

Podobne podstrony:
LSK1 Linux wyklad4
linux dzienne wyklad01
Sieci komputerowe wyklady dr Furtak
Wykład 05 Opadanie i fluidyzacja
WYKŁAD 1 Wprowadzenie do biotechnologii farmaceutycznej
mo3 wykladyJJ
ZARZĄDZANIE WARTOŚCIĄ PRZEDSIĘBIORSTWA Z DNIA 26 MARZEC 2011 WYKŁAD NR 3
Wyklad 2 PNOP 08 9 zaoczne
Wyklad studport 8
Kryptografia wyklad
Budownictwo Ogolne II zaoczne wyklad 13 ppoz
wyklad09
Sporzadzanie rachunku przepływów pienieżnych wykład 1 i 2

więcej podobnych podstron