Astazi, anuntam disponibilitatea generala a unei caracteristici AWS App Mesh care permite criptarea traficului intre servicii utilizand AWS Certificate Manager (ACM) sau certificate furnizate de clienti. Am solicitat feedback de la clientii nostri anul trecut prin intermediul foilor de parcurs AWS App Mesh nr. 38 si # 39, iar caracteristicile au fost puse la dispozitie pe AWS App Mesh Preview Channel pentru ca clientii sa le incerce.

Clientii care construiesc arhitecturi de retea pot avea linii de baza de securitate si conformitate in cazul in care traficul dintre servicii trebuie criptat. In plus, aplicarea utilizarii TLS si validarea certificatului din serviciul din amonte, este un aspect important al unei retele de incredere zero. Utilizarea acestei functii va permite sa va asigurati ca conectivitatea este sigura si ca traficul este transmis catre un serviciu de incredere.

In aplicatia Mesh, criptarea traficului functioneaza intre nodurile virtuale si, prin urmare, intre trimisii din reteaua de servicii. Aceasta inseamna ca codul aplicatiei nu este responsabil pentru negocierea unei sesiuni criptate TLS, permitand in schimb proxy-ului local sa negocieze si sa rezilieze TLS in numele aplicatiei.

Figura 1: Fluxul de criptare a traficului intre servicii in contextul infrastructurii AWS utilizate

Surse de certificate de nod virtual: certificate ACM si certificate furnizate de client

In GitHub roadmap numarul 38 am adaugat capacitatea de a sursa certificatul dintr-un sistem de fisiere local, iar in numarul 39, am adaugat capacitatea de a sursa certificatul unui nod virtual de la ACM. Atunci cand configureaza un certificat pentru un nod virtual, clientii pot alege una dintre aceste surse disponibile.

Figura 2: Criptarea traficului AWS App Mesh utilizand certificate gestionate de ACM

Unii clienti prefera ACM sa-si gestioneze certificatele. Folosind aceasta optiune, ACM va reinnoi automat certificatele care se apropie de sfarsitul valabilitatii lor, iar App Mesh va distribui automat certificatele reinnoite. Folosind una dintre ilustratiile noastre de parcurs, Figura 2 arata criptarea traficului intre gateway si nodurile virtuale ColorTeller (alb si verde) utilizand ACM.

Nota: Ilustratia de mai sus din figura 2 poate fi testata folosind un exemplu de parcurs disponibil pe GitHub. Link-ul spre exemple este, de asemenea, disponibil mai jos in sectiunea „Mersuri practice si documentatie”.

Configurare backend nod virtual: politica client si implicit politica client

Cand ne gandim la relatia dintre serviciile conectate, discutam adesea aceasta relatie in termenii standard ai clientului (entitatea care trimite trafic) si a serverului (entitatea care primeste acel trafic). In App Mesh, reprezentam aceste concepte cu noi adaugiri la resursa nodului virtual.

In App Mesh, backend-urile unui nod virtual pot fi considerate destinatii cunoscute cu care nodul virtual necesita comunicarea. In acest fel, backend-urile sunt serverul relatiei client-server. Aceste backend-uri sunt reprezentate ca servicii virtuale in App Mesh, care sunt adesea detinute de alte echipe sau organizatii. Facem o conectivitate rezistenta intre client si server cat mai usoara, permitand proprietarului Serviciului Virtual sa defineasca setarile care vor fi distribuite automat clientilor, cum ar fi strategiile de reincercare si configuratia de verificare a starii.

Cu toate acestea, este adesea necesar ca clientul sa specifice setari pe care serverul nu le poate sau nu ar trebui sa le furnizeze. In cazul TLS, clientul trebuie sa indice in ce autoritati de certificare au incredere pentru a valida faptul ca serverul (backend-ul) cu care vorbeste este autentic si de incredere.

Pentru a sustine nevoia de a specifica diverse setari din perspectiva clientului, adaugam un concept nou numit „ClientPolicy” la backend-ul unui nod virtual. De asemenea, recunoastem ca aceste setari vor fi adesea aceleasi pentru multe sau pentru toate backend-urile unui nod virtual. Pentru a sustine aceasta nevoie, introducem in plus conceptul de „backendDefaults” in nodurile virtuale, care permit clientilor sa furnizeze setari implicite care se aplica tuturor backend-urilor.

porno tens jovenes zorras
mi mujer es muy puta follada por su jefe
viejas tetonas comic maduras
chupadas mamadas a dos bocas
mamadas en la playa pollones enormes
abuelas incestos mama incesto
chantaje y lujuria se folla a su hijo
hermanas tetonas porno españa casero
enseñando a follar humillada y follada
corridas en el culo follame xxx
videos porno manga porno iberico
madres que se follan a sus hijos porno maduras en español
guarras masturbandose penes negros
peliculas x en castellano peliculas porno de viejas
amas de casa follando mamas cachondas
voyeur playa abuelos calientes
jovencitas xxx hd porno de abuelas
videos porno gratis caseros milf squirt
violada xxx mi vecina me folla
mi mujer follando porno agresivo

Valorile implicite ale backend-ului pot fi anulate pe baza de backend, acolo unde este necesar.

Astazi, configuratia Politicii pentru clienti adauga setari specifice pentru initierea si validarea TLS, dar va fi imbunatatita in viitor pentru a sprijini setari suplimentare pentru clienti, cum ar fi expirarile personalizate. Pentru setarile specifice TLS, clientii pot specifica daca doresc aplicarea TLS (adica se incearca o negociere si conexiunea esueaza daca nu se poate), optional pe ce porturi doresc sa o aplice si autoritatile de certificare sa foloseasca atunci cand valideaza certificat. Pentru ca autoritatile de certificare sa le poata utiliza, clientii au doua optiuni dintre care sa aleaga:

  1. Un set de autoritati de certificare private ACM.
  2. O referinta la sistemul de fisiere local in care este instalata colectia autoritatilor de certificare radacina (adica pachetul de incredere).

Aplicarea politicii clientului de backend de nod virtual cu un ARN al autoritatii de certificare ACM

Urmatorul exemplu arata o politica client setata pe backend-ul unui nod virtual catre un serviciu virtual, care impune utilizarea TLS pe ​​portul 443 folosind doar ACM ca autoritate de certificare (CA) de incredere. Retineti utilizarea ACM Private Certificate Authority (PCA) in sectiunea Trust ACM.

$ aws appmesh create-virtual-node –mesh-name my-mesh \ –virtual-node-name my-node \ –spec {“backends”: [{“virtualService”: {“virtualServiceName”: “foo. mesh.local “,” clientPolicy “: {” tls “: {// (OPTIONAL) Daca TLS este sau nu aplicat pentru acest backend. // Implicit: adevarat „enforce”: adevarat, // (OPTIONAL) Aranjeaza in ce porturi din amonte se aplica TLS. // Implicit: toate porturile “porturi”: [443], // (NECESAR) Context de validare pentru conexiunile TLS la acest backend. „validare”: {// (NECESAR) Setari pentru a determina unde sa recupereze lantul de incredere. “trust”: {“acm”: {// (NECESAR) ARN-urile CA-urilor de incredere. “certificateAuthorityArns”: [“arn: aws: acm-pca: us-west-2: 123456789012:

Nota: In exemplul de mai sus, atat aplicarea, cat si porturile din setarile TLS ale politicii clientului sunt optionale. Daca nu le specificati, TLS va fi aplicat in mod implicit pe toate porturile.

Puteti specifica pana la 3 ARN-uri de autoritate de certificare ACM pe care sa le utilizati la validarea certificatului din amonte. Daca una dintre autoritatile de certificare a semnat certificatul din amonte, atunci acesta este considerat valid.

Aplicarea politicii clientului backend-ului nodului virtual cu certificate furnizate de client

Un model obisnuit pentru aplicarea TLS este acela de a utiliza lantul de incredere implicit pe sistemul de fisiere local (sau un alt lant stocat local) pentru a valida certificatul serviciului din amonte. Majoritatea sistemului de operare sunt livrate cu un pachet de autoritati de certificare radacina care pot fi utilizate pentru validarea serviciilor publice.

Urmatorul exemplu demonstreaza o politica client, care impune TLS pe ​​portul 443 utilizand sistemul de fisiere local pentru a obtine autoritatile de certificare care vor fi utilizate pentru validarea certificatului serviciului din amonte:

$ aws appmesh create-virtual-node –mesh-name my-mesh \ –virtual-node-name my-node \ –spec {“backends”: [{“virtualService”: {“virtualServiceName”: “foo. mesh.local “,” clientPolicy “: {” tls “: {// (OPTIONAL) Intinderea porturilor in amonte pentru a impune TLS. // Implicit: toate porturile „porturi”: [443], // (NECESAR) Context de validare pentru conexiunile TLS la acest backend. „validare”: {// (NECESAR) Setari pentru a determina de unde sa obtineti lantul de incredere. “trust”: {“file”: {// (NECESAR) Calea catre lantul de certificate. “certificateChain”: “/path/to/cert-chain.pem”}}}}}}}]}

Preturi

Pentru utilizarea certificatelor provenite de la ACM, clientii platesc o taxa lunara pentru functionarea fiecarei autoritati de certificare private AWS Certificate Manager pana cand o sterg. De asemenea, clientii platesc pentru certificatul privat emis in fiecare luna si pentru certificatele private exportate. Pentru mai multe informatii, consultati Preturile AWS Certificate Manager.

Ghiduri si documentatii practice

Pentru a incerca aceasta caracteristica, clientii pot folosi accesoriile GitHub din depozitul de exemple App Mesh pentru a testa ambele functii legate mai jos. Aceste exemple utilizeaza aplicatia Color care a fost utilizata anterior pentru continuitate si usurinta in explicare.

  1. Certificatele provenite de la ACM trec prin: https://github.com/aws/aws-app-mesh-examples/tree/master/walkthroughs/tls-with-acm
  2. Certificatele furnizate de clienti trec prin: https://github.com/aws/aws-app-mesh-examples/tree/master/walkthroughs/howto-tls-file-provided

Veti gasi mai multe detalii despre aceste caracteristici si mai multe indrumari in sectiunea Transport Layer Security (TLS) din documentatia AWS App Mesh. Va multumim feedback-ul dvs. prin intermediul canalului nostru de foaie de parcurs AWS App Mesh si suntem incantati sa utilizati aceasta caracteristica pentru a crea aplicatii mesh sigure si conforme!