curs 2 - server basics - pub.roelf.cs.pub.ro/gsr/res/cursuri/curs-02.pdf · 2016. 12. 15. · curs...
Post on 30-Jan-2021
5 Views
Preview:
TRANSCRIPT
-
Curs 2Server basics
Gestiunea serviciilor de ret,ea (GSR)13 octombrie 2016
Departamentul de Calculatoare, Comunitatea RLUG
CSE Dep, RLUG Curs 2, Server basics 1/31
-
Cuprins
Procese s, i daemoni
Servere s, i servicii
Investigarea serviciilor
Cron
Jurnalizare
NTP
Resurse utile
CSE Dep, RLUG Curs 2, Server basics 2/31
-
Procese standard
I Un proces standard este un program interactiv cu utilizatorul
I Este de obicei rulat de utilizator din shell, are acces lastdin/stdout/stderr
I Poate fi oprit cu o comandă internă specifică (exit/quit) saude către utilizator folosind Ctrl-C
CSE Dep, RLUG Curs 2, Server basics 3/31
-
Daemon
I Un sistem modern trebuie să poată realiza mai multe task-urineinteractive ı̂n acelas, i timp
I Aceste task-uri sunt realizate prin daemons
I Un daemon este un proces care rulează ı̂n background(decuplat de la terminal, având uzual stdin s, i stdout legate la/dev/null) al cărui părinte este ı̂n mod uzual init
I Daemonii sunt pornit, i de către sistemul de operare prinintermediul script-urilor de start-up (SysV/systemd/upstart)
CSE Dep, RLUG Curs 2, Server basics 4/31
-
Interact, iunea cu un daemon
I Fis, iere de configurare
I UNIX sockets / TCP sockets
I script de start-up (... stop/start/restart/reload/status)
CSE Dep, RLUG Curs 2, Server basics 5/31
-
Cuprins
Procese s, i daemoni
Servere s, i servicii
Investigarea serviciilor
Cron
Jurnalizare
NTP
Resurse utile
CSE Dep, RLUG Curs 2, Server basics 6/31
-
Ce este un server?
În mod uzual termenul de server paote face referint, ă la oricare dinurmătoarele concepte:
I Un computer fizic, care rulează un sistem de operare adecvatpentru servere
I Un daemon care serves, te răspunsuri la cererile venite (deobicei) peste ret,ea
CSE Dep, RLUG Curs 2, Server basics 7/31
-
Servicii
I Un serviciu, ı̂n terminologie *NIX, reprezintă un daemon careimplementează o anume funct, ionalitate(HTTP/SMTP/DNS/. . . )
I Un serviciu are ca s, i componente auxiliare:I Un utilizator/grup dedicatI Un port TCP/UDP dedicat
I do one thing well
CSE Dep, RLUG Curs 2, Server basics 8/31
-
Utilizatori dedicat, i pentru servicii
I Un utilizator poate avea acces numai la fis, ierele det,inute deel sau de grupul/grupurile din care face parte
I Serviciile au fiecare unul sau mai mult, i utilizatori dedicat, i.I Motivele pentru care se face acest lucru sunt:
I separare de privilegiiI asignarea de resurse separateI prevenirea atacurilor informatice
CSE Dep, RLUG Curs 2, Server basics 9/31
-
Demo
Demo
CSE Dep, RLUG Curs 2, Server basics 10/31
-
Cuprins
Procese s, i daemoni
Servere s, i servicii
Investigarea serviciilor
Cron
Jurnalizare
NTP
Resurse utile
CSE Dep, RLUG Curs 2, Server basics 11/31
-
Depanarea serviciilor - fis, iere configurare s, i jurnalizare
I Fiecare serviciu are un fis, ier de configurare s, i un fis, ier dejurnalizare
I Pentru configurareI httpd.confI rsyslog.confI sshd_config
I Pentru jurnalizareI /var/log/apache/error_logI /var/log/{messages,syslog}I /var/log/{messages,secure}
CSE Dep, RLUG Curs 2, Server basics 12/31
-
Depanarea serviciilor - unelte
I În cazul serviciilor de ret,ea: ascultă pe portul care trebuie?I netstat -antplu
I Ce fis, iere deschise are un serviciu?I lsof -p $PID | less
I Ce ı̂ncearcă să facă un daemon?I strace
CSE Dep, RLUG Curs 2, Server basics 13/31
-
Demo
Demo
CSE Dep, RLUG Curs 2, Server basics 14/31
-
Cuprins
Procese s, i daemoni
Servere s, i servicii
Investigarea serviciilor
Cron
Jurnalizare
NTP
Resurse utile
CSE Dep, RLUG Curs 2, Server basics 15/31
-
Rularea periodică de comenzi/programe
I crond se ocupă de programarea rulării la anumite intervale aunor comenzi sau programe
I Programarea se poate face din minut ı̂n minut, la o anumităoră, o dată pe zi/săptămână/lună sau orice alt tip de interval
I Programarea se poate face per user
I Editarea configurat, iei se face folosind comanda crontab -e
CSE Dep, RLUG Curs 2, Server basics 16/31
-
Formatul fis, ierului de configurare
/etc/crontab
# Minute Hour Day of Month Month Day of Week Command
# (0-59) (0-23) (1-31) (1-12 or Jan-Dec) (0-6 or Sun-Sat)
0 2 12 * * /usr/bin/echo "middle of the night"
CSE Dep, RLUG Curs 2, Server basics 17/31
-
Cuprins
Procese s, i daemoni
Servere s, i servicii
Investigarea serviciilor
Cron
Jurnalizare
NTP
Resurse utile
CSE Dep, RLUG Curs 2, Server basics 18/31
-
Nevoia de jurnalizare
I Pentru daemoni/servicii
I Configurarea jurnalizării
I Jurnalizare directă sau printr-un serviciu de jurnalizare
I Serviciul de jurnalizare/logging pe Unix: syslog
CSE Dep, RLUG Curs 2, Server basics 19/31
-
Mesajele de jurnalizare
Formatul general al unui mesaj de jurnalizare:
I timestamp, metadate, mesajul efectiv
Exemplu /var/log/auth.log
Oct 12 21:14:44 dr0fw0 sshd[8835]: Accepted publickey
for eugen from 192.168.10.254 port 17855 ssh2: ED25519
2e:7e:72:c2:75:15:54:e8:10:60:e0:da:6a:c7:b7:4
CSE Dep, RLUG Curs 2, Server basics 20/31
-
Configurarea syslog
I /etc/*syslog.conf
I Fis, ierul de configurare al daemonului de syslog constă ı̂ndefinit, ii de tip Parametru-Valoare
I mail.* -/var/log/maillogI - ı̂nseamnă că mesajele primite cu facility mail pot fi
bufferedI ı̂n mod uzual, mesajele primite de daemonul de syslog sunt
scrise imediat pe disc folosind O FSYNC
CSE Dep, RLUG Curs 2, Server basics 21/31
-
Demo: Verificarea jurnalizării folosind comanda logger
Logger command
logger -p local0.notice -t console-log ”look ma, i’m in syslog”
syslog output
/var/log/messages: Aug 12 09:56:44 ve1 console-log: look ma, i’m in syslog
CSE Dep, RLUG Curs 2, Server basics 22/31
-
Remote logging
I Serviciu central de jurnalizare s, i servicii agentI UDP vs TCP
I UDP: Fire and Forget. Mărimea maximă a unui mesaj desyslog este de 1460-1482 bytes
I Workaround pentru a transmite un mesaj mai lung peste UDPeste adăugarea unui index de secvent, ă la ı̂nceputul mesajului:[1], [2] etc.
I TCP: Presupune o metodă sigură de a transmite un mesaj ı̂ncealaltă parte până la o lungime de aproximativ 1MB per mesaj
CSE Dep, RLUG Curs 2, Server basics 23/31
-
Cuprins
Procese s, i daemoni
Servere s, i servicii
Investigarea serviciilor
Cron
Jurnalizare
NTP
Resurse utile
CSE Dep, RLUG Curs 2, Server basics 24/31
-
Despre NTP
I De ce e necesar
I Mecanism de funct, ionare
I Surse de timp
I Clock strata
I Utilitare de verificare a stării
CSE Dep, RLUG Curs 2, Server basics 25/31
-
Mecanism de funct, ionare
I Clientul interoghează unul sau mai multe servere de timp
I Calculează delay-ul (round trip time) ı̂ntre el s, i server(e)
I Ceasul sistemului este ajustat treptat până este sincronizat lacâteva milisecunde fat, ă de serverele de timp
CSE Dep, RLUG Curs 2, Server basics 26/31
-
Stratum
I Serverele NTP sunt ”organizate” ierarhic ı̂n funct, ie deacuratet,ea lor
I Stratum 0: ceasul atomic (sursa exactă de timp)I Stratum 1: ceasurile sincronizate direct cu Stratum 0I Stratum 2: ceasurile sincronizate direct cu Stratum 1I ...I Stratum 16: ceasul nu este sincronizat
CSE Dep, RLUG Curs 2, Server basics 27/31
-
Configurarea NTP
/etc/ntp.conf
server 0.centos.pool.ntp.org
server ntp2.usv.ro
CSE Dep, RLUG Curs 2, Server basics 28/31
-
Unelte
I ntpstat
I ntpq
I ntpdate
CSE Dep, RLUG Curs 2, Server basics 29/31
-
Cuprins
Procese s, i daemoni
Servere s, i servicii
Investigarea serviciilor
Cron
Jurnalizare
NTP
Resurse utile
CSE Dep, RLUG Curs 2, Server basics 30/31
-
Resurse utile
I https://en.wikipedia.org/wiki/Daemon_(computing)
I https://tools.ietf.org/html/rfc3164 s, ihttps://tools.ietf.org/html/rfc5424
I https://en.wikipedia.org/wiki/Cron
I https:
//en.wikipedia.org/wiki/Network_Time_Protocol
I https://en.wikipedia.org/wiki/Ntpdate s, ihttps://en.wikipedia.org/wiki/Ntpd
I http://www.ecoca.ro/ntponeusvro/
CSE Dep, RLUG Curs 2, Server basics 31/31
https://en.wikipedia.org/wiki/Daemon_(computing)https://tools.ietf.org/html/rfc3164https://tools.ietf.org/html/rfc5424https://en.wikipedia.org/wiki/Cronhttps://en.wikipedia.org/wiki/Network_Time_Protocolhttps://en.wikipedia.org/wiki/Network_Time_Protocolhttps://en.wikipedia.org/wiki/Ntpdatehttps://en.wikipedia.org/wiki/Ntpdhttp://www.ecoca.ro/ntponeusvro/
Procese și daemoniServere și serviciiInvestigarea serviciilorCronJurnalizareNTPResurse utile
top related