S3 lüüs või liidese lõpp-punkt kohalikule kliendile?
Lüüsi lõpp-punktid elavad marsruutimistabelites ja teenindavad VPC liiklust. Liidese lõpp-punktid annavad kohalikule teele privaatse aadressi, lisaks DNS-i ja poliitika.
S3-le jõudmine kontorivõrgust site-VPN-i kaudu ei ole marsruutimisprobleem, mille staatiline marsruut üksi lahendada suudab. Lüüsi lõpp-punkt on kinnitatud marsruutimistabelitele ja teenindab päringuid, mis tekivad VPC sees. Liidese lõpp-punkt paigutab privaatsete aadressidega elastseid võrguliideseid sinu alamvõrkudesse ja need aadressid on kohapealt kättesaadavad VPN-i või Direct Connecti kaudu. See, kust päring algab, otsustab, kumba kahest sa tegelikult vajad, ja DNS-i, turvagrupi ning poliitika töö tuleneb sellest vastusest.
Eralda lõpp-punkti tüübid selle järgi, kust päring algab
Lüüsi lõpp-punkt ilmub marsruutimistabeli kirjena, mis osutab hallatavale prefiksite loendile. Sellel ei ole võrguliidest, turvagruppi ega oma privaatset aadressi, ja just seetõttu ei saa kohapealne host sinna marsruutida: teisel pool ei ole midagi, kuhu marsruutida. VPC seest tulev liiklus jõuab S3-ni, sest alamvõrgu marsruutimistabel saadab selle prefiksi lõpp-punkti. Mujalt tuleval liiklusel ei ole sellist kirjet, mida järgida.
Liidese lõpp-punkt on sinu valitud alamvõrkudes asuvate võrguliideste kogum, igaühel selle alamvõrgu privaatne aadress ja külge kinnitatud turvagrupp. See on vorm, mida hübriidklient saab kasutada, sest see on tavaline sihtkoht, kuhu sinu tunnel saab pakette kanda. See tähendab ka, et lõpp-punkt kulutab alamvõrgus aadresse ja võib need otsa saada.
aws ec2 describe-vpc-endpoints --query "VpcEndpoints[].{Id:VpcEndpointId,Type:VpcEndpointType,Service:ServiceName,State:State}" --output table
Loe veergu Type, mitte nime. Üks VPC hoiab tavaliselt sama teenuse jaoks mõlemat tüüpi, ja kirje, mida sinu kohapealne rakendus vajab, on liidese oma.
Ehita tee liidese aadressini enne S3 testimist
Kolm asja peavad olema korraga tõesed: kohapealsel ruuteril on marsruut lõpp-punkti alamvõrku, selle alamvõrgu tagasitee jõuab kliendi võrku ja lõpp-punkti turvagrupp lubab kliendi lähtepiirkonda. Alamvõrgu võrgu-ACL võib paki siiski ära visata pärast seda, kui kõik kolm on täidetud, seega kontrolli seda neljanda punktina, mitte hiljem meenutava mõttena.
Töötav marsruut mõne VPC-s oleva EC2 eksemplarini ei tõesta sellest midagi. See näitab, et tunnel on üleval, mis on ainus tee osa, mida sa juba teadsid. Tõesta lõpp-punkti aadress eraldi ja seejärel tõesta, et nimi laheneb sellele.
ip route get 10.60.4.37 nc -vz 10.60.4.37 443 openssl s_client -connect 10.60.4.37:443 -servername bucket.vpce-0123456789abcdef0-abc123.s3.us-east-1.vpce.amazonaws.com </dev/null
Esimene käsk näitab, millist liidest klient kasutaks. Teine tõestab TCP kätlust. Kolmas tõestab, et TLS lõpeb lõpp-punkti nime jaoks kehtiva sertifikaadiga, ja see on kontroll, mis püüab vale aadressi enne, kui hakkad õigusi süüdistama.
Otsusta, millise DNS-vastuse rakendus saab
Liidese lõpp-punkti olemasolu VPC-s ei suuna kohapealset SDK-d iseenesest ümber. Klient kas kasutab lõpp-punktispetsiifilist nime, mille AWS selle lõpp-punkti jaoks avaldab, või privaatset hostitud tsooni, mille sa oled teadlikult kontorist lahendatavaks teinud.
Hübriidseks lahendamiseks vajab kohapealne lahendaja toetatud teed VPC DNS-vaatesse, tavaliselt Resolveri sissetuleva lõpp-punkti kaudu. Privaatse DNS-i sisselülitamine ilma mõistmata, milliseid päringuallikaid see mõjutab, on viis, kuidas otsing hakkab tagastama aadressi, kuhu kontor ei pääse. Seade muudab vastuseid päringutele, mis tulevad läbi VPC lahendaja, mitte igale kliendile igal pool.
dig +short bucket.vpce-0123456789abcdef0-abc123.s3.us-east-1.vpce.amazonaws.com aws s3api head-bucket --bucket example-artifacts --endpoint-url https://bucket.vpce-0123456789abcdef0-abc123.s3.us-east-1.vpce.amazonaws.com
Käivita mõlemad rakenduse hostis, mitte VPC-s olevas hüppekastis. Seal vastav lahendaja on see, mida sinu töökoormus kasutab, ja erinev vastus erinevast hostist on selle disaini kõige tavalisem segaduse allikas.
Kättesaadavus ei ole autoriseerimine
Lõpp-punkti jõudev päring vajab endiselt volitatud põhiisikut ja kohaldatavat korviõigust. Lõpp-punkti poliitika saab kitsendada seda, mida lõpp-punkt lubab, ja korvi poliitika saab seda veelgi kitsendada. Liideseni jõudmine ei ütle midagi selle kohta, milliseid objekte kutsuja tohib lugeda.
Testi mõlemat suunda: üks kahjutu volitatud kutse kavandatud korvi vastu ja üks kutse, mis peaks olema tagasi lükatud poliitikavälise identiteedi või ressursi jaoks. Hoia lõpp-punkti nimi, lahendatud aadress ja poliitika kontekst koos tulemusega, et järgmine inimene saaks seda korrata. Tagasilükkamine, mis nimetab poliitika tüübi, säästab tunni oletusi.
Lõpuks hinda kahe valiku hinda enne kasutuselevõttu. Liidese lõpp-punkti arveldatakse liidese tunni ja gigabaidi järgi, lüüsi lõpp-punkti aga mitte, ja see erinevus otsustab küsimuse paljude väikese mahuga töökoormuste puhul, mis vajavad ainult VPC-poolset juurdepääsu.