This is an old revision of the document!


Laborator 08: Servicii diverse

Demo: Inspectarea configurației cron

Pentru task-urile de cron, folositi masina virtuala din /mnt/sda5/gsr/

Pentru a vedea configurația cron a sistemului inspectăm configurațiile din fișierele/directoarele /etc/cron*. Fișierele /etc/cron.d/* și fișierul /etc/crontab conțin configurații standard cron la nivelul sistemului. Liniile de configurare urmează sintaxa crontab așa cum este exemplificată aici.

Pentru a vedea configurația pentru utilizatorul curent folosim comanda

crontab -l

Dacă suntem autentificați ca utilizator privilegiat, putem vizualiza configurația cron pentru un utilizator dat putem folosi comanda

crontab -u <username> -l

unde <username> este numele utilizatorului a cărui configurație dorim să o afișăm.

Pentru a afla job-urile cron active per utilizator putem inspecta, ca utilizator privilegiat, directorul de spooling /var/spool/cron/

sudo tree /var/spool/cron/

În subdirectorul /var/spool/cron/crontabs/ se găsesc job-urile cron active (marcate per utilizator).

Configurare cron cu standard output

Dacă dorim să avem un job care să ruleze periodic vom crea o intrare în crontab-ul utilizatorului curent.

Următorul exercițiu este didactic, ca să putem urmări comportamentul cron.

Comanda de mai jos este folosită pentru a afișa numărul de procese și thread-uri curente la nivelul sistemului:

/bin/echo "Num processes: $(ps -e --no-header | wc -l), num threads: $(ps -eL --no-header | wc -l)"

Folosim calea completă către comanda echo pentru că nu știm cum arată variabila PATH în mediul în care rulează cron.

Adăugați comanda de mai sus să ruleze la fiecare două minute prin alterarea crontab-ului utilizatorului student. După adăugare urmăriți spool-ul cron în /var/spool/cron/crontabs/student.

În urma funcționării corecte, veți primi un e-mail către utilizatorul student cu output-ul comenzii.

Puteți verifica e-mail-ul primit folosind comanda mail.

Pentru crearea intrării în crontab-ul utilizatorului student urmăriți indicațiile de aici.

Alte configurări cron

Actualizați comanda cron de mai sus astfel încât output-ul comenzii să nu mai fie livrat prin e-mail ci să fie adăugat într-un fișier dat. Output-ul să conțină și data la care a fost rulată comanda.

Instalați pachetul debsums. Urmăriți ce configurări de cron sunt adăugate la instalarea pachetului.

Urmăriți conținutului unui pachet instalat folosind comanda

dpkg -L <nume-pachet>

unde <nume-pachet> este numele pachetului.

Configurare serviciu cron de pornire client Bittorrent

Instalați un client de Bittorrent care funcționează în linia de comandă, precum transmission-cli sau bittorrent sau bittornado și porniți-l în background (folosind nohup) ca să descarce un anumit conținut Bittorrent. Găsiți un fișier .torrrent pe Internet și descărcați-l.

Apoi creați un script care să verifice dacă este pornit clientul Bittorrent pentru acel fișier .torrent și dacă nu este pornit să-l repornească.

Plasați script-ul în crontab cu verificare la 10 minute.

Gestionare client de BitTorrent folosind supervisord

Folosiți supervisord pentru a porni și gestiona clientul BitTorrent de mai sus.

Funcționarea NTP

Pentru a verifica funcționarea NTP (Network Time Protocol) o soluție este instalarea utilitarului ntpdate. Dacă nu-l aveți instalat, instalați-l folosind comanda

sudo apt-get install ntpdate

Aveți două utilitare pe care le puteți folosi interschimbabil pentru actualizarea timpului sistemului: ntpdate care primește ca argument un server NTP, și nptdate-debian care folosește serverele configurate în /etc/default/ntpdate (directiva NTPSERVERS).

Configurare server NTP. Sincronizare sisteme

Instalați, dacă nu este instalat serverul NTP prin intermediul pachetului ntp. Serverul va porni automat și veți putea verifica faptul că ascultă conexiuni pe portul 123 UDP folosind comanda

sudo netstat -ulpn

Discutați cu 2-3 colegi și aflați adrese IP stațiilor pe care aceștia lucrează și adăugați configurare pentru serverul NTP în fișierul /etc/ntp.conf. După un timp se va crea un mesh de comunicare între serverele NTP din sala de laborator.

Pentru a investiga la orice moment informații despre funcționarea serverului NTP și peer-ii cu care acesta comunică puteți folosi una dintre comenzile de mai jos

ntpq -p
ntpq -pn

Demo: Funcționarea dhclient

Clientul de DHCP este reprezentat în Linux de comanda dhclient. La o rulare a comenzii dhclient este interogat serverul DHCP pentru transmiterea unei adrese.

Pentru a testa această funcționalitate, vom dezactiva configurația curentă și apoi vom face o nouă configurație.

Pentru dezactivare identificăm interfața activă prin rularea comenzii

ip a s

Interfața activă este cea care are adresa IP din rețeaua 172.16.4.0/24.

Apoi dezactivăm configurația interfeței:

sudo ip a f dev <interface>

unde <interface> este numele interfeței.

Apoi solicităm o nouă adresă IP pentru interfață folosind comanda

sudo dhclient <interface>

unde <interface> este numele interfeței.

Putem urmări în /var/log/syslog mesajele afișate de clientul DHCP.

Dacă dorim să dăm release la configurație, putem folosi comanda

sudo dhclient -r <interace>

unde <interface> este numele interfeței.

Verificare configurare server de DHCP

Dacă ați deschis mașina virtuală GSR Debian, închideți-o și ștergeți-o (împreună cu fișierele aferente) din VirtualBox. Din /mnt/sda5/gsr/ în VirtualBox deschideți aplicația DHCP-Appliance.ova. Aplicația are două mașini virtuale.

Întâi porniți mașina virtuală GSR Debian care este serverul de DHCP și după ce a bootat, porniți mașina virtuală GSR Debian 2 care este clientul de DHCP.

Urmăriți adresele IP pe interfața eth2 a fiecărei mașini virtuale. Urmăriți în fișierul /etc/network/interface configurația pentru interfața eth2 a fiecărei mașini virtuale.

Urmăriți configurația serverului de DHCP în /etc/default/isc-dhcp-server și în /etc/dhcp/dhcpd.conf. Verificați că serverul este pornit și ascultă conexiuni pe portul 68 UDP.

Urmăriți în fișierele de tip jurnal de pe fiecare sistem (/var/log/syslog) mesaje afișate de clientul și serverul DHCP.

Folosiți, pe client, comenzile

sudo ifdown eth2
sudo ifup eth2

pentru dezactivarea și reactivarea interfeței și, deci pentru reinterogarea serverului DHCP, care duce la conduce la generarea de noi mesaje de jurnalizare.

Configurare server de DHCP

Modificați configurația serverului DHCP astfel încât acesta să furnizeze adrese în subnet-ul 1.1.1.0/24, în range-ul 1.1.1.2-1.1.1.50. Adresa IP a serverului DHCP pe interfața eth2 trebuie să fie 1.1.1.1.

Va trebui ca pe serverul DHCP să modificați și configurația interfeței eth2 în fișierul /etc/network/interfaces.

Pentru aceasta, dezactivați interfața:

sudo ip link set dev eth2 down
sudo ip add flush dev eth2

faceți modificarea în fișierul /etc/network/interfaces și apoi refaceți configurația

sudo ifup eth2

gsr/laboratoare/laborator-08.1449770106.txt.gz · Last modified: 2015/12/10 19:55 by alexandru.carp
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0