Differences

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

Link to this comparison view

rl:labs:11 [2020/10/09 10:44]
florin.stancu swap from Docker
rl:labs:11 [2024/01/09 08:27] (current)
cosmin.prunaru [Pregătire infrastructură de laborator]
Line 1: Line 1:
 ~~NOTOC~~ ~~NOTOC~~
  
-====== Laborator 11. Securitatea Rețelelor Locale ​======+====== Laborator 11. Google Cloud Platform (GCP) ======
  
-  * [[ https://acs.curs.pub.ro/2019/course/​view.php?​id=222 | Feedback CA]] +  * [[ https://​curs.upb.ro/2023/mod/feedbackadm/​view.php?​id=9386 | Feedback CA]] 
-  * [[ https://acs.curs.pub.ro/2019/course/​view.php?​id=223 | Feedback CB]] +  * [[ https://​curs.upb.ro/2023/mod/feedbackadm/​view.php?​id=9388 | Feedback CB]] 
-  * [[ https://acs.curs.pub.ro/2019/course/​view.php?​id=224 | Feedback CC]] +  * [[ https://​curs.upb.ro/2023/mod/​feedbackadm/​view.php?​id=9390 | Feedback CC]] 
-  +  ​* ​[[ https://curs.upb.ro/2023/mod/feedbackadm/view.php?id=9392 Feedback CD]]
-<​hidden>​ +
-Enunțul laboratorului se poate găsi și [[ https://docs.google.com/document/d/154aKwkeu_W_KSoXn7rTiLbHSdt6UJtdN9A3kEv-cVhs/edit?​usp=sharing | aici]] +
-</​hidden>​ +
- +
-Arhiva laboratorlui se găsește [[ https://​drive.google.com/​file/​d/​1guW9Kx3S8PATZ_ljmPmadP16rq7pWd42/​view?usp=sharing ​aici]]+
  
 ===== Cunoștințe și abilități ce vor fi dobândite ===== ===== Cunoștințe și abilități ce vor fi dobândite =====
  
-  * Descoperirea de informații despre o anumită rețea, entitate +  * Administrarea resurselor cloud folosind consola grafică. 
-  * Folosirea utilitarelor ​în linia de comandă în Linux (whois, nmap, wireshark) +  * Securitate ​în cloud. 
-  * Descoperirea vulnerabilităților +  * Configurarea rutării în cloud. 
-  * Înțelegerea tipului ​de atac MiTM (Man in the Middlefolosind ARP spoofing și DNS spoofing+  * Accesarea serviciilor ​de transfer de fișiere ​(FTP).
  
 ===== Pregătire infrastructură de laborator ===== ===== Pregătire infrastructură de laborator =====
-   Laboratorul ​va fi rezolvat direct pe calculatoarele din laboratorul ​de RLNu aveți nevoie ​de Openstack sau de mașina virtuală din cadrul laboratorului. + 
-   ​Pentru ​pregăti configurația de laboratorpe calculatorul ​din laborator folosiți comenzile următoare din contul utilizatorului ''​root''​ (puteți da copy/paste la comenzi în terminal):<code bash+  * Vom crea o infrastructură de rețea în cloud-ul Google. 
-root@mjolnir:~# # descărcați arhiva ​din browser: https://drive.google.com/file/d/1guW9Kx3S8PATZ_ljmPmadP16rq7pWd42/view?usp=sharing +  ​Fiecare student ​va folosi contul propriu ​de pe [[https://​console.cloud.google.com/​|GCP]]. Pentru a putea crea infrastructura necesară veți primi un număr ​de credite pentru GCP.   
-root@mjolnir:~# unzip Laborator12sec_rl.zip + 
-root@mjolnir:~# apt-get update +<note warning>​Fiecare student își va denumi resursele astfel //​student<​X>//​-[nume_resursa]. De exemplu //​student1-//​vpc. GCP acceptă în numele ​de obiecte doar litere mici, cifre și cratimă.  
-root@mjolnir:​~#​ apt-get install wireshark python3-pip tcpdump apache2 dsniff + 
-</code>+Vă puteți afla ID-ul accesând linkul **"​https://​rl.vladn.st/​get/<​email>"​** </​note>​ 
 + 
 +===== Introducere ===== 
 + 
 +Servicii de cloud existente:​ 
 +  * Google Cloud Platform 
 +  * Microsoft Azure 
 +  * Amazon Web Services. 
 + 
 +Vom discuta mai departe despre **Google Cloud Platform** (GCP). Serviciile pe care le vom folosi în cadrul laboratorului
 + 
 +  * Google Compute Engine 
 +  * Networking: VPC, Cloud NAT 
 + 
 +Alte servicii în cloud-ul GCP: 
 + 
 +  * Cloud Storage 
 +  * Databases: AlloyDB, Cloud SQL, Cloud Bigtable 
 +  * Networking: Cloud DNS, Cloud CDN 
 +  * Cloud Monitoring 
 + 
 +O listă completă a tuturor serviciilor oferite de Google poate fi consultată aici : 
 +[[https://​cloud.google.com/​terms/​services| GCP Services]] 
 + 
 + 
 +**(Google) Compute Engine** oferă capacitate dinamică computațională în cloud. De asemenea, pentru ​dezvolta și lansa aplicații nu mai ai nevoie să îți achiziționezi hardware-ul,​ acest serviciu punându-ți la dispoziție:​ servere virtuale, configurarea securității și networking, ajustarea spațiului de stocare. 
 + 
 +{{ :​rl:​labs:​vpc-overview-example.png?​500 |}} 
 + 
 +**Virtual Private Cloud (VPC) Network** te ajută să pornești resursele GCP într-o rețea virtuală definită de tine. Această rețea seamănă cu o rețea tradițională unde poți configura ​spații de adresetabele de rutare, gateways și setări de securitate, dar are în plus beneficiile utilizării unui infrastructuri scalabile. Fiecare VPC creat este izolat logic de oricare alt VPC din cloud. 
 + 
 +Două sau mai multe VPC-uri pot comunica folosind **VPC Network Peering**. Rețelele VPC conectate folosind VPC Network Peering pot fi în acelașproiect sau proiecte diferite. \\ 
 +\\ 
 +Pot fi create două tipuri de rețele tip VPC: 
 +  * auto-mode - unde un subnet ​din fiecare regiune este automat alocat, subnet-ul fiind creat sub blocul de adrese 10.128.0.0/​9 .  
 +  * custom-mode - nu sunt create subnet-uri automat și utilizatorul poate avea control complet asupra clasei de IP-uri private utilizate pentru crearea VPC-ului.  
 + 
 +Având în vedere considerentele de mai sus, nu se pot conecta două rețele VPC create în auto-mode, dar se pot conecta două rețele, una creată auto-mode, cealaltă custom-mode cât timp nu folosesc adrese IP din aceeașclasă.  
 + 
 +3 tipuri de adrese IP: 
 + 
 +  * adrese IP private 
 +  * adrese IP publice. O adresă publică ce a fost atribuită unei instanțe pe care am închis-o va reveni în pool-ul inițial de adrese. Când vom reporni instanța, aceasta va avea o altă adresă IP publică. 
 +  * adrese IP publice statice sunt adrese IP publice care rămân asociate pe cont până în momentul în care alegi să renunți la ele.\\ 
 + 
 + 
 +<note tip> 
 +//Care este diferența între adrese IP private și adresele IP publice?//​ 
 +</​note>​ 
 + 
 + 
 + 
 + 
 +**Subnet** - interval de adrese IP într-un VPC. Poți să lansezi resursele GCP într-un subnet fie ales automat (auto-mode) fie creat la alegere (custom-mode)
 + 
 +În GCP avem două tipuri de **IP-uri**: 
 + 
 +  * **Publice** (atunci când resursele trebuie să aibă acces direct în Internet, de exemplu serverele web). O adresă IP publică poate fi configurată pe interfața unei mașini virtuale create în GCP. Pot fi aplicate ulterior reguli de firewall pentru a putea controla accesul către acea mașină virtuală.  
 +  * **Private** (atunci când resursele nu trebuie să fie accesibile din Internet, de exemplu bazele de date) 
 + 
 + 
 +<note important
 + 
 +În fiecare subnet, există 4 IP-uri rezervate în intervalul primar ​: 
 + 
 +  * Prima este adresă de rețea 
 +  * A doua este rezervată ca adresă pentru default gateway. 
 +  * Penultima adresă este rezervată de către GCP pentru viitoare utilizări.  
 +  * Ultima este adresa de broadcast 
 + 
 +</​note>​ 
 + 
 + 
 +**Cloud NAT**. Cloud NAT este o componentă a GCP care permite comunicarea între instanțele din VPC care nu folosesc adrese IP publice șInternet.\\ 
 +Cloud NAT oferă conectivitate în Internet pentru următoarele tipuri de resurse: 
 +  * Mașini virtuale ​din Compute Engine fără adrese IP publice/​externe asociate 
 +  * Clustere de Google Kubernetes Engine (GKE) 
 +  * Instanțe de Cloud Run (aplicații containerizate),​ Cloud Functions (code in the cloud/​FaaS),​ App Engine 
 + 
 + 
 +**Tabela de rutare**. Fiecare subnet dintr-un VPC trebuie să aibă asociată o tabelă de rutare, definită în cadrul VPC network. 
 +Google Cloud folosește mai multe tipuri de rute: 
 + 
 +  * Generate de sistem 
 +      * Rute default ( 0.0.0.0/0 pentru IPv4 sau ::/0 pentru IPv6) 
 +      * Rute pentru subrețea (create automat pentru fiecare subrețea) 
 +  * Rute personalizate (custom) 
 +      * Statice (către diverse destinații) 
 +      * Dinamice (sesiuni BGP către un Cloud Router) 
 +  * Rute peering 
 +  * Rute policy-based (către un Network Load Balancer din GCP). 
 + 
 +Un **VPC firewall** acționează ca un firewall virtual care controlează traficul pentru una sau mai multe instanțe. Putem adăuga reguli pentru fiecare firewall care să permită traficul către/de la instanțele asociate. ​   
 + 
 +Prestabilit,​ fiecare firewall permite tot traficul de ieșire și blochează traficul de intrare.  
 +Acțiunile pentru o regulă din firewall pot fi ori "​allow"​ ori "​deny",​ nu ambele.  
 + 
 +<note tip>​Pentru mai multe detalii despre funcționarea VPC-urilor și resursele GCP, urmăriți [[https://www.youtube.com/watch?​v=vACTtmLWiQY|tutorialul]]. 
 + 
 +Documentație GCP: 
 + 
 +[[https://cloud.google.com/curated-resources/​compute-engine?hl=en|Compute Engine]]\\ 
 +[[https://cloud.google.com/​vpc/​docs/​overview?​hl=en|VPC and Subnets]]\\ 
 +[[https://​cloud.google.com/​network-connectivity/​docs/​router/​concepts/​overview?​hl=en|Cloud Router]]\\ 
 +</note> 
 + 
 + 
 +===== Topologie ===== 
 + 
 +{{ :​rl:​labs:​12:​gcp_infrastructure.png |}}
  
 ===== Navigare ===== ===== Navigare =====
  
-**[[:​rl:​labs:​12|Laboratorul ​12]]** +**[[:​rl:​labs:​11|Laboratorul ​11]]** 
-{{page>:​rl:​labs:​12:​meta:​nav&​nofooter&​noeditbutton}}+{{page>:​rl:​labs:​11:​meta:​nav&​nofooter&​noeditbutton}}
  
 ===== Exerciții ===== ===== Exerciții =====
  
-În cadrul exercițiilor din laboratoarele de Linux vom folosi [[:​rl:​labs:​12#​topologie|topologia ​de mai sus]].+Acest laborator își propune configurarea unei rețele asemănătoare topoligiei ​de mai sus
 +Vom avea nevoie de crearea **unui VPC** cu **4 subnets**, unul în care va fi creată stația **Host**, iar apoi **câte un subnet** separat pentru **Red**, **Green** și **Blue**. 
 + 
 +Stația **Host** va fi folosită drept **Bastion**,​ o mașină virtuală folosită doar pentru a ne conecta prin Internet la celelalte mașini, **Red**, **Green** și **Blue**. 
 + 
 +Această va avea configurată o adresa IP publică, celelalte vor avea configurate doar adresa IP private, comunicând pe Internet cu ajutorul serviciului de **Cloud NAT**. 
 + 
 + 
 +Următoarele exerciții constituie pașii de parcurgere pentru ca la final să putem folosi rețeaua.
  
-{{namespace>:​rl:​labs:​12:​contents&​nofooter&​noeditbutton}} 
  
 +{{namespace>:​rl:​labs:​11:​contents&​nofooter&​noeditbutton}}
  
rl/labs/11.1602229461.txt.gz · Last modified: 2020/10/09 10:44 by florin.stancu
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