Differences

This shows you the differences between two versions of the page.

Link to this comparison view

gsr:resurse:proiect [2016/11/03 23:56]
george.milescu
gsr:resurse:proiect [2017/02/01 13:57] (current)
george.milescu [Task 06 - SSL/TLS (0.6 puncte)]
Line 4: Line 4:
  
 <note important>​ <note important>​
-Deadline: **26 Noiembrie (evaluare mid-term), ​în sesiune ​(evaluare end-term)**\\ +Deadline: **24 Noiembrie (evaluare mid-term), ​04 Februarie ​(evaluare end-term)**\\ 
-Timp de lucru: **TODO zile (pentru mid-term)**\\+Timp de lucru: **3 săptămâni ​(pentru mid-term), 3 săptămâni (pentru end-term)**\\
 Punctaj: **2.5 puncte** din nota finală (1 punct la evaluarea mid-term și 1.5 puncte la evaluarea end-term\\ Punctaj: **2.5 puncte** din nota finală (1 punct la evaluarea mid-term și 1.5 puncte la evaluarea end-term\\
 Forum pentru intrebari: [[http://​cs.curs.pub.ro/​2016/​mod/​forum/​view.php?​f=621|http://​cs.curs.pub.ro/​2016/​mod/​forum/​view.php?​f=621]] Forum pentru intrebari: [[http://​cs.curs.pub.ro/​2016/​mod/​forum/​view.php?​f=621|http://​cs.curs.pub.ro/​2016/​mod/​forum/​view.php?​f=621]]
Line 13: Line 13:
 Actualizări enunț:\\ Actualizări enunț:\\
  
-  * **Nu există actualizări**+  * **03.11.2016 - Versiunea 1.0 a enunțului** 
 +  * **12.01.2017 - Versiunea 2.0 a enunțului**
 </​note>​ </​note>​
  
Line 47: Line 48:
     - Availability Zone: **GP**     - Availability Zone: **GP**
     - Instance Name: **dns**, **mail** sau **web** în funcție de ce mașină virtuală creați     - Instance Name: **dns**, **mail** sau **web** în funcție de ce mașină virtuală creați
-    - Flavor: **m1.small** +    - Flavor: **m1.tiny** 
     - Instance count: **1**     - Instance count: **1**
     - Instance Boot Source: **Boot from Image**     - Instance Boot Source: **Boot from Image**
Line 56: Line 57:
 {{ :​gsr:​resurse:​instances_overview.jpg?​700 |}} {{ :​gsr:​resurse:​instances_overview.jpg?​700 |}}
  
-===== Cerințe =====+===== Cerințe ​mid-term ​=====
  
 ==== Task 01 - Setup VM (0.1 puncte) ==== ==== Task 01 - Setup VM (0.1 puncte) ====
Line 63: Line 64:
  
  
-==== Task 02 - DNS (0.puncte) ====+==== Task 02 - DNS (0.puncte) ====
  
 Instalare și configurare server DNS Instalare și configurare server DNS
Line 74: Line 75:
   - Mașinile virtuale ale fiecărui student trebuie să folosească ca și resolver nameserverul proaspăt creat   - Mașinile virtuale ale fiecărui student trebuie să folosească ca și resolver nameserverul proaspăt creat
   - Fiecare server de DNS va avea configurată o zonă //slave// pentru domeniul **gsr**, iar master-ul se va afla la adresa **10.9.46.19**   - Fiecare server de DNS va avea configurată o zonă //slave// pentru domeniul **gsr**, iar master-ul se va afla la adresa **10.9.46.19**
-  - Fiecare DNS server va trebui să fie **slave** pentru un alt domeniu al unui alt student, astfel încât fiecare domeniu de tip **s//​X//​.gsr** să aibe cel puțin două NS-uri+  - Fiecare DNS server va trebui să fie **slave** pentru un alt domeniu al unui alt student, astfel încât fiecare domeniu de tip **s//​X//​.gsr** să aibe cel puțin două NS-uri. Pentru a configura serverele master/​slave,​ vă rugam să lucrați în echipe de câte doi. ATENȚIE: doar acest subpunct presupune lucrul în echipă. Restul exercițiilor (unde nu este menționat în mod explicit lucrul în echipa) sunt individuale.
  
-==== Task 03 - E-mail (0.puncte) ====+==== Task 03 - E-mail (0.puncte) ====
  
 Instalare și configuare server e-mail Instalare și configuare server e-mail
Line 82: Line 83:
   - Fiecare student va configura Dovecot pentru citirea mesajelor folosind protocolul POP3   - Fiecare student va configura Dovecot pentru citirea mesajelor folosind protocolul POP3
   - Fiecare MTA va trebuie să fie relay pentru cele 3 servere alocate fiecărui student   - Fiecare MTA va trebuie să fie relay pentru cele 3 servere alocate fiecărui student
-  - Fiecare MTA trebuie să fie configurat astfel încât să fie **relay** pentru alt domeniu (de exemplu mail.s1.gsr să fie relay pentru s5.sX.gsr și tot așa până când fiecare domeniu are un MX principal si unul secundar) +  - Fiecare MTA trebuie să fie configurat astfel încât să fie **relay** pentru alt domeniu (de exemplu mail.s1.gsr să fie relay pentru s5.gsr și tot așa până când fiecare domeniu are un MX principal si unul secundar). Pentru a configura serverele MX principale/​secindare,​ vă rugam să lucrați în echipe de câte doi. ATENȚIE: doar acest subpunct presupune lucrul în echipă. Restul exercițiilor (unde nu este menționat în mod explicit lucrul în echipa) sunt individuale. 
-  - Crearea a doi utilizatori locali pe fiecare mașină și verificarea că pot trimite sau citi e-mail+  - Crearea a doi utilizatori locali pe fiecare mașină și verificarea că pot trimite sau citi e-mail-uri din conturile utilizatorilor creați
   - Configurarea Dovecot pe masina mail.sX.gsr astfel încât cei doi utilizatori creați anterior să poată citi mesajele via POP3   - Configurarea Dovecot pe masina mail.sX.gsr astfel încât cei doi utilizatori creați anterior să poată citi mesajele via POP3
  
-==== Task 04 - File Sharing (0.puncte) ====+==== Task 04 - File Sharing (0.puncte) ====
  
-TODO+Configurare server NFS 
 +  - Pe mașina cu rol de **E-mail server**, fiecare student va exporta un director cu numele **///​mnt/​exported//​** 
 +  - Pe masinile cu rol de **DNS server** și **Web server**, se va monta directorul exportat în **///​mnt/​nfs/​remote//​** 
 +  - Directorul exportat trebuie să poată fi montat doar de pe cele două mașini indicate 
 + 
 + 
 +===== Cerințe end-term ===== 
 + 
 +Partea a doua a proiectului depinde de funcționarea corectă a tuturor exercițiilor din prima parte (task-01 - task-04). Asigurați-vă că aveți funcționalitatea completă de la mid-term înainte de a vă apuca de partea a doua. Asigurați-vă că aveți adresele IP trecute în mod corect în formularul de la task-01. 
 + 
 + 
 +==== Task 05 - Web (0.6 puncte) ==== 
 + 
 +  - Instalați Apache pe mașina cu rol de Web server și asigurați-vă că serviciul rulează pe portul 80. 
 +  - Adaugați două intrări în serverul de DNS configurat la task-ul 02 pentru a putea accesa site-urile **static.web.sX.gsr** și **shared.web.sX.gsr** ce vor fi găzduite pe mașina cu rol de web server. 
 +  - Configurați în Apache un site de tip virtual host accesibil folosind URL-urile **static.web.sX.gsr** și **www.static.web.sX.gsr**. 
 +    - Site-ul va avea o singură pagină HTML statică, cu textul "This site is static.web.sX.gsr for student X" (unde X este numărul studentului din catalog) 
 +    - Sursa HTML a site-ului se va găsi în directorul ''/​var/​www/​static/''​ 
 +  - Configurați în Apache un site de tip virtual host accesibil folosind URL-urile **shared.web.sX.gsr** și **www.shared.web.sX.gsr**. 
 +    - Site-ul va avea o singură pagina HTML statică, cu textul "This site is shared.web.sX.gsr for student X" (unde X este numărul studentului din catalog) 
 +    - Sursa HTML a site-ului se va găsi în directorul ''/​mnt/​nfs/​remote/​www/​shared''​ (director care e montat prin NFS în cadrul task-ului 04) 
 +    - Conținutul paginii HTML trebuie să poată fi modificat din orice locație prin NFS 
 +  - Configurați serverul Apache pentru a stoca log-uri în fișiere separate pentru fiecare din cele două site-uri 
 +  - Configurați serverul bind de pe masina de DNS astfel încât la accesarea **www1.static.web.sX.gsr** să fie afișat site-ul static al unui coleg. ATENȚIE: doar acest subpunct presupune lucrul în echipă. Restul exercițiilor (unde nu este menționat în mod explicit lucrul în echipa) sunt individuale. 
 +  - Instalați serverul Apache pe mașina **email** și configurați-l în mod **reverse proxy** așa încat, la accesarea **www2.static.web.sX.gsr** să fie afișat conținutul site-ului **static.web.sX.gsr**. Trebuie realizate îi configurarile de DNS corespunzătoare. Site-ul **www2.static.web.sX.gsr** trebuie să fie hostat pe mașina de email. 
 + 
 +==== Task 06 - SSL/TLS (0.6 puncte) ==== 
 +  - Creați CSR-uri pentru a genera certificate digitale pentru fiecare dintre serverele de web și mail 
 +    - Pentru serverul de web, CSR-ul va fi creat pentru numele **static.web.sX.gsr** 
 +  - După crearea CSR-urilor, folosiți aplicația de la adresa http://​elf.cs.pub.ro:​8090/​ pentru a obtine certificatele aferente 
 +  - Folosiți cele două certificate obținute pentru a configura serverele de mail și web 
 +    - Configurați serverul de POP3 să folosească SSL/TLS pentru securizarea conexiunii cu clienții 
 +    - Configurati serverul de SMTP să folosească TLS (STARTTLS) pentru a primi emailuri, cât și pentru a trimite mesaje folosind TLS atunci când serverul de la destinație suportă acest protocol 
 +    - Configurați serverul de web pentru a servi site-ul **static.web.sX.gsr** folosind HTTPS 
 +  - Testarea pentru email se va realiza în modul următor (pașii pot fi reproduși de voi local): 
 +    - Echipa de GSR va trimite un email către student@mail.**s//​X//​**.gsr 
 +    - Email-ul se va trimite doar dacă serverul de mail este configurat corect cu certificatul semnat mai sus 
 +    - Fiecare student trebuie să răspundă la acel email trimitând un mesaj înapoi la adresa de la care a trimis echipa email-ul inițial 
 +  - Testarea pentru web se va realiza în modul următor (pașii pot fi reproduși de voi local): 
 +    - Echipa de GSR va accesa site-ul **https://​static.web.sX.gsr** și va verifica certificatul oferit de serverul web 
 +  - Testarea intermediară se poate realiza și folosind OpenSSL ''​sclient''​ 
 +  - Certificatul RootCA este urmatorul: {{:​gsr:​resurse:​root_ca.txt|}} 
 + 
 +==== Task 07 - Securitate și hardening (0.3 puncte) ==== 
 +  - Configurați un firewall pe serverul de web pentru a loga un mesaj corespunzător fiecărei conexiuni deschise către portul 80 al serverului 
 +  - Instalați fail2ban pe serverul de **mail** și configurați-l pentru a 
 +    - bloca tempotar accesul stațiilor după 3 autentificare eșuate prin SSH 
 +    - trimite o notificare prin email pentru fiecare autentificare realizată cu succes
gsr/resurse/proiect.1478210211.txt.gz · Last modified: 2016/11/03 23:56 by george.milescu
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