This shows you the differences between two versions of the page.
systems:uso:laboratoare:laborator-09 [2012/09/16 12:05] 127.0.0.1 external edit |
— (current) | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Laborator 09 - Servicii de rețea ====== | ||
- | ==== Descriere ==== | ||
- | * Modelul client-server | ||
- | * Browsing: Firefox, addons, sintaxa unui URL | ||
- | * SSH, SCP (mentionat si mai devreme, prompt modificat pe mașinile de la distanță) | ||
- | * Chei SSH, utilizare port non-standard pentru SSH | ||
- | * netstat, netcat, nmap | ||
- | * Modelul P2P: BitTorrent | ||
- | * Wireshark | ||
- | * ** TODO: VPN ** | ||
- | |||
- | Referințe din urmă: | ||
- | * SSH | ||
- | * creare de utilizatori (lab 04) | ||
- | * inspectarea rețelei (lab 08) | ||
- | |||
- | ==== Materiale ajutătoare ==== | ||
- | |||
- | ==== Exerciții === | ||
- | |||
- | === 1. Firefox Addons === | ||
- | |||
- | Firefox are un plugin care ascunde toate reclamele de pe pagini. | ||
- | * Intrați pe http://starwars.wikia.com/. Identificați reclamele în partea de sus a paginii. | ||
- | * Instalați addon-ul AdBlock Plus. Reporniți browser-ul atunci când vi se cere. | ||
- | * Accesați din nou pagina inițială. Much better, right? | ||
- | |||
- | Unele reclame nu sunt doar enervante, ci dăunătoare ochilor sau malițioase (script-uri care urmăresc activitatea). | ||
- | |||
- | <note tip> | ||
- | Există numeroase extensii de Firefox, disponibile pe [[http://addons.mozilla.org|site-ul oficial]]. Câteva sugestii: | ||
- | * [[https://addons.mozilla.org/en-US/firefox/addon/1843/|Firebug]] -- inspectarea codului sursă al unei pagini; util pentru dezvoltatorii web. | ||
- | * [[https://addons.mozilla.org/en-US/firefox/addon/433/|Flashblock]] -- blochează tot conținutul flash; util pentru calculatoarele mai vechi. | ||
- | * [[https://addons.mozilla.org/en-US/firefox/addon/684/|FireFTP]] -- client complet pentru FTP; permite și upload-area de fișiere. | ||
- | * [[https://addons.mozilla.org/en-US/firefox/addon/6584/|Flash Video Downloader]] -- pentru descărcarea locală a filmelor de pe YouTube și alte site-uri similare. | ||
- | * [[https://addons.mozilla.org/en-US/firefox/addon/201/|DownThemAll!]] -- Download manager avansat, include opțiunea de a salva toate link-urile de pe o pagină. | ||
- | * [[https://addons.mozilla.org/en-US/firefox/addon/4891/|Vimperator]] -- face Firefox să se comporte mai mult ca Vim. | ||
- | </note> | ||
- | |||
- | === 2. Autentificarea SSH folosind chei === | ||
- | |||
- | Configurați sistemul ''lucas'' pentru a vă putea autentifica drept utilizatorul ''lucas'' fără parolă: | ||
- | * Folosiți ''ssh-keygen'' //pe mașina fizică// pentru a genera o cheie. | ||
- | * Apăsați Enter la întrebarea prompt-ul care întreabă unde va fi salvată cheia. Se va folosi locația din paranteză. | ||
- | * Nu puneți passphrase pe cheie. Dacă puneți, la autentificare, în loc de parola utilizatorului remote, vi se va cere passphrase-ul cheii. | ||
- | * Folosiți ''ssh-copy-id'' pentru a copia cheia pe mașina virtuală. Destinația este în același format cu cea acceptată de ''ssh''. | ||
- | * Folosiți ''ssh''. Nu ar trebui să vi se mai ceară o parolă. | ||
- | |||
- | Cheile generate (publică și privată) sunt pe mașina fizică în directorul ''~/.ssh''. Vizualizați-le. Comparați cheia publică de pe mașina fizică cu conținutul fișierului ''~/.ssh/authorized_keys'' de pe mașina virtuală. | ||
- | |||
- | <solution> | ||
- | <screen> | ||
- | $ ssh-keygen | ||
- | Generating public/private rsa key pair. | ||
- | Enter file in which to save the key (/home/ddvlad/.ssh/id_rsa): | ||
- | Enter passphrase (empty for no passphrase): | ||
- | Enter same passphrase again: | ||
- | [...] | ||
- | $ ssh-copy-id lucas@lucas.local | ||
- | # Se va cere parola utilizatorului lucas | ||
- | $ ssh lucas@lucas.local | ||
- | # Nu se va cere parolă | ||
- | </screen> | ||
- | </solution> | ||
- | |||
- | === 3. SCP folosind chei === | ||
- | |||
- | SCP folosește SSH pentru transfer. Astfel, pentru că acum vă puteți autentifica fără parolă pe ''lucas.local'', puteți folosi și ''scp'' fără parolă. | ||
- | |||
- | Copiați directorul ''/var/starwars'' de pe mașina virtuală pe sistemul fizic. | ||
- | * Folosiți scp ca utilizator ''lucas''. | ||
- | * Puteți specifica, după partea de host, o cale absolută pe disc. | ||
- | * Va trebui, de asemenea, să folosiți un parametru al ''scp'' pentru a copia recursiv. Folosiți manualul. | ||
- | |||
- | <solution> | ||
- | <screen> | ||
- | $ scp -r lucas@lucas.local:/var/starwars . | ||
- | </screen> | ||
- | </solution> | ||
- | |||
- | === 4. BitTorrent === | ||
- | |||
- | Descărcați fișierul torrent de [[http://elf.cs.pub.ro/uso/store/rednalob_480_dl.mov.torrent|aici]]. Folosiți Transmission, clientul implicit de BitTorrent pe Ubuntu, pentru a descărca trailerul episodului 3 al Star Wars. | ||
- | |||
- | === 5. Netstat === | ||
- | |||
- | Inspectați porturile deschise de pe mașina virtuală. Folosiți ''netstat''. | ||
- | * Listați doar porturile TCP în starea //listening//. | ||
- | * Afișați valorile numerice ale porturilor. | ||
- | |||
- | Corelați numărul portului cu exercițiul la care a fost folosit serviciul corespunzător. | ||
- | |||
- | <solution> | ||
- | <screen> | ||
- | $ netstat -tlpn | ||
- | </screen> | ||
- | </solution> | ||
- | |||
- | |||
- | === 6. Inspectarea traficului de rețea. Wireshark === | ||
- | |||
- | * Wireshark este un program care capturează și analizează traficul de rețea. Instalați-l și porniți-l ca ''root''. Pornirea ca root este necesară pentru a putea captura pachete. | ||
- | * Folosiți butonul din stânga toolbar-ului (//List available interfaces//). Selectați interfața ''eth0''. | ||
- | * Accesați ftp://student:uso@lucas.local/obiwan.bin. Observați că apar în Wireshark în timp real pachetele schimbate. | ||
- | * Opriți captura de pachete. | ||
- | * Analizați traficul. Descoperiți pachetul care trimite parola. Observați că este trimisă în clar. Oricine ascultă pe linie o poate vedea. | ||
- | |||
- | <note tip> | ||
- | Nu lăsați niciodată pornită captura de pachete în Wireshark mai mult decât este necesar. Vor fi capturate multe pachete și veți rămâne rapid fără memorie. | ||
- | </note> | ||
- | |||
- | |||
- | === 7. Client HTTP în linia de comandă === | ||
- | |||
- | * ''wget'' este un client neinteractiv pentru protocolul HTTP. | ||
- | * Folosiți-l pentru a descărca fișierul de la http://lucas.local:80/macewindu.bin. | ||
- | |||
- | <note tip> | ||
- | * Avantajul ''wget'' este că poate fi folosit în script-uri shell, despre care veți învăța mai multe în laboratorul 10. | ||
- | * Există, de asemenea, clienți interactivi în mod text: ''links'', ''elinks'', ''lynx'', ''w3m''. | ||
- | * Un alt tool interesant este [[http://en.wikipedia.org/wiki/HTTrack|HTTrack]]. | ||
- | </note> | ||
- | |||
- | <solution> | ||
- | <screen> | ||
- | $ wget http://lucas.local:80/macewindu.bin | ||
- | </screen> | ||
- | </solution> | ||
- | |||
- | FIXME |