La gent pregunta on una VPN Site-to-Site d'AWS deixa de protegir el paquet i espera una resposta única: a la passarel·la. La versió útil d'aquesta resposta diu quina passarel·la, perquè una passarel·la privada virtual i una passarel·la de trànsit són disposicions diferents amb objectes d'adjunció diferents, i el revisor que assumeix la incorrecta construeix la resta de l'avaluació sobre un diagrama que no existeix. Feu les tres comprovacions següents en ordre. Cadascuna o bé confirma el límit o bé us diu que la resposta anterior era sobre un altre recurs.

Anomena les tres terminacions abans d'avaluar res

Una revisió del xifratge d'aquest camí necessita tres coses anomenades: la passarel·la del client, l'objectiu VPN d'AWS que acaba IPsec i la terminació de l'aplicació que rep el paquet interior. Escriviu-les amb els seus identificadors de recurs abans d'obrir cap pàgina de la consola, perquè tot el que ve després d'aquest punt és una afirmació sobre una d'aquestes tres.

La passarel·la del client és vostra i la seva configuració és visible per a vosaltres. L'objectiu d'AWS és un recurs gestionat, i l'error és donar-lo per fet: una connexió VPN es pot adjuntar a una passarel·la privada virtual o directament a una passarel·la de trànsit, i cap de les dues implica l'altra. La tercera terminació és la que la gent omet, i és l'única que respon la pregunta real sobre les dades de l'aplicació.

Comprovació 1: quina passarel·la acaba realment el túnel

Totes dues disposicions són compatibles i la guia d'arquitectura de Site-to-Site VPN les descriu costat a costat, així que pregunteu a l'API en lloc d'un diagrama que sovint té un any. Una consulta només de lectura sobre una connexió retorna els camps de l'objectiu VPN:

aws ec2 describe-vpn-connections --region eu-west-1   --vpn-connection-ids vpn-0123456789abcdef0   --query 'VpnConnections[0].{VGW:VpnGatewayId,TGW:TransitGatewayId,CGW:CustomerGatewayId,Category:Category}'

El discriminant és TransitGatewayId, no VpnGatewayId. Una connexió amb TransitGatewayId buit acaba en una passarel·la privada virtual independent, mentre que una connexió amb aquest camp establert acaba a l'adjunció VPN de la passarel·la de trànsit, i VpnGatewayId encara pot estar omplert en aquest cas perquè pot nomenar la passarel·la de suport de l'adjunció. Llegiu primer el camp TGW i després confirmeu el tipus d'adjunció a la llista d'adjuncions, no pel nom d'un camp, perquè una adjunció de VPC en aquesta passarel·la de trànsit no és l'adjunció VPN. Trobar la instància de destinació en una VPC adjunta no us diu res sobre quina adjunció VPN va portar el paquet.

Mentre hi sou, comproveu els túnels. La connexió porta dos túnels IPsec per redundància, i una connexió el segon túnel de la qual no s'ha aixecat mai és una troballa real per a la disponibilitat encara que no canviï res del límit del xifratge:

aws ec2 describe-vpn-tunnels --region eu-west-1   --filters Name=vpn-connection-id,Values=vpn-0123456789abcdef0   --query 'VpnTunnels[].{Outside:OutsideIpAddress,State:State,Status:Status}'

Comprovació 2: què porta encara el paquet interior

Quan IPsec acaba, AWS reenvia el paquet desencapsulat per la ruta que hi coincidia. A partir d'aquest punt el trànsit és trànsit VPC ordinari, i la protecció de la VPN s'ha acabat. Això no és un buit del servei; és el que significa el límit, i l'element de la llista de verificació és dir-ho clarament en lloc de deixar que "la VPN està xifrada" substitueixi "les dades estan xifrades d'extrem a extrem".

Ara examineu què hi havia a dins. Si el paquet interior és un protocol d'aplicació en text pla, res més avall no afegeix confidencialitat fins que una altra cosa el xifri. Si el paquet interior ja porta una sessió TLS, la retirada de l'IPsec exterior no canvia res per a aquesta sessió: continua protegida fins a la seva pròpia terminació, sigui on sigui.

La sobrecorrecció habitual és concloure que tot el que hi ha darrere la passarel·la està exposat. No ho està. El transport del servei, el xifratge de l'emmagatzematge i el TLS de l'aplicació són mecanismes separats amb condicions separades, i cadascun s'ha d'avaluar amb els seus propis termes en lloc d'inferir-se de la forma de la VPN. Una entrada del registre de fluxos que mostra ACCEPT demostra que l'encaminament va funcionar i no diu res sobre la confidencialitat, que és exactament l'error que aquesta llista existeix per evitar.

Comprovació 3: què acaba el TLS darrere la passarel·la

Seguiu l'oient, no l'adreça. Si un equilibrador de càrrega o un proxy acaba el TLS, la connexió que el vostre client manté s'acaba allà, i el proxy obre una segona connexió al backend que pot ser text pla o TLS amb una cadena de confiança diferent. Una adreça IP privada i una ruta coincident no són proves sobre aquesta segona connexió.

Proveu la terminació que realment us importa des de dins de la VPC, amb el nom que fa servir l'aplicació i no amb una IP que vau resoldre una vegada:

openssl s_client -connect internal.example:443 -servername internal.example -verify_return_error

Repetiu-ho per a cada salt pel qual passa la petició. Si la resposta difereix entre el nom orientat al client i el nom del backend, heu trobat exactament el segment que la VPN mai no va cobrir, i aquesta és la troballa que cal anotar.

Registreu el resultat com a segments, no com a veredicte

La sortida d'aquesta llista de verificació és una taula petita amb una fila per segment: passarel·la del client a objectiu VPN d'AWS, passarel·la a càrrega de treball, càrrega de treball a magatzem de dades i qualsevol salt de proxy entremig. Cada fila diu què la protegeix i de què depèn aquesta protecció. "Xifrat" sense mecanisme i sense terminació no és una fila.

Després responeu el requisit original amb els mateixos termes amb què es va plantejar. Si el requisit és que les dades es mantinguin confidencials fins que la càrrega de treball les rebi, la VPN satisfà només el primer segment, i les files restants necessiten transport d'aplicació, TLS de servei o xifratge d'emmagatzematge configurats i verificats per separat.

Guardeu els identificadors de connexió, els estats dels túnels i els subjectes dels certificats al registre. Quan algú revisiti el disseny d'aquí a sis mesos, aquests tres artefactes responen la pregunta del límit en minuts en lloc de reiniciar l'argument des d'un diagrama.

Articles relacionats