Virtualizarea este una dintre tehnologiile care a permis dezvoltarea si evolutia serviciilor cloud pe care le consumam astazi atat de natural incat nici nu ne mai gandim la acest aspect. Insa, in vremurile nu de demult, virtualizarea era folosita on-premises, in data center-ul local, pentru eficientizarea consumului de resurse si pentru economii de costuri operationale. Sistemele virtualizate puteau fi mult mai usor securizate intrucat infrastructura de dedesubt era in controlul organizatiei. Sistemele virtualizate pe care le folosim in cloud sunt gazduite pe o infrastructura pusa la dispozitie de furnizorul de cloud, dar care este partajata cu mai clienti de-ai acestuia. De aceea, sistemele virtualizate trebuie sa fie protejate in mod corespunzator. In acest sens prezentam 5 solutii care pot fi folosite:
1. Folosirea sabloanelor de configuratie. Desi multi sysadmin-i sunt foarte tentati sa isi configureze singuri sistemele pe care le administreaza pentru a obtine maximum de performante, in unele cazuri folosirea template-urilor este o optiune mai buna, mai ales cand vine vorba de securitate. Producatorii de solutii cloud pun la dispozitie configuratii standard cu un motiv intemeiat – aceste configuratii sunt cat se poate de sigure. Vom considera cazul cloud-ului Amazon AWS si a serviciului Lightsail. Lightsail ofera template-uri predefinte pentru cele mai uzuale aplicatii web, printre care si WordPress. Evident ca putem sa ne cream propria instanta de WordPress si propriul server LAMP (Linux, Apache, MySQL, PHP) pe care aplicatia sa ruleze, dar ne vom descurca sa securizam corespunzator de la zero acest ecosistem? O intrebare mai buna ar fi: merita sa ne pierdem timpul cu asa ceva? In aproape toate situatii raspunsul este nu. Mai ales cand avem o alternativa foarte viabila la indemana. Template-ul oferit de LightSail este bazat pe imaginea Bitnami WordPress care si-a dovedit deja rezistenta in multe medii de productie.
2. Auditarea resurselor consumate in cloud. Auditarea este o functie importanta in infrastructura oricarei organizatii, cu atat mai mult in cloud unde, pe langa informatiile de cine, cand, cum si de unde a accesat o resursa, importante pentru a verifica daca regulile de acces sunt respectate, este necesara si contorizarea gradului de folosire a resurselor pentru a tine costurile sub control.
3. Segmentarea retelei. Aceasta este una dintre solutiile de securitate fundamentale, care a fost este si va fi folosita in orice tip de infrastructura IT on-premises sau in cloud. Resursele din cloud trebuie sa comunice intre ele si cu entitati terte doar pentru serviciile strict necesare, deci trebuie respectat principiul privilegiului minim. In mod traditional, segmentarea retelelor on-premises se face cu VLAN-uri. Furnizorii de cloud ofera si ei mecanisme de creare de retele virtuale private (Amazon are serviciul Virtual Private Cloud – VPC), care au la baza VLAN-uri, dar care ofera mai multa robustete si mai multe optiuni de configurare.
4. Administrarea securizata de la distanta. In 100% din cazuri resursele din mediile cloud trebuie sa fie administrate de la distanta, in esenta acestea fiind gazduite pe “PC-ul altcuiva”. Nu ma pot duce in fata serverului cu un monitor, mouse si tastatura (kitul KVM nelipsit din trusa oricarui sysadmin) si sa fac configuratiile la fata locului. Pentru resursele din cloud, unelte de baza folosite in administrarea sistemelor sunt: masinile de tip bastion, jump server-ele, conexiunile VPN, protocolul SSH si tunelele SSH folosite pentru transferul securizat al fisierelor.
5. Protocoale securizate de comunicare. Solutiile cloud se bazeaza aproape in exclusivitate pe API-uri pentru a comunica. API-uri incep sa fie din ce mai folosite ca vectori de atac pentru a compromite aplicatiile web gazduite in cloud. De aceea, organizatiile trebuie sa acorde o atentie sporita acestui mecanism de interactiune cu resursele virtualizate. Configuratiile pe care noi le facem din interfata grafica a dashboard-ului de administrare a cloud-ului nostru sunt traduse in fundal in call-uri API. Aceste call-uri trebuie sa fie transmise peste un canal securizat care sa foloseasca metode de criptare precum TLS. Un alt mod prin care putem asigura API-urile este prin folosirea tichetelor de autentificare. Un call API (o configuratie noua, o modificare a unui parametru, stergerea unei setari pentru o resursa) va fi executat doar daca are cheia corecta de autentificare.
Dendrio, ca integrator de servicii multicloud, este gata sa va ajute in securizarea resurselor pe care le folositi in cloud, avand experienta si specialistii care va sa ajute in acest sens.
Mihai Dumitrascu, Sr Systems Engineer