Setja EKS-API bak við VPN: röð aðgerða
Virkjaðu einkatengipunktinn, sannaðu að kubectl náði honum, og lokaðu síðan þeim opinbera. Stigskipt runbook með skipununum og prófununum milli hvers þreps.
Hættulega útgáfan af þessari breytingu er ein skipun sem snýr tengipunktinum og lokar öllum stjórnendum út á sama tíma. Örugga útgáfan heldur báðum leiðum opnum, sannar að einkaleiðin virkar frá VPN-inu, og dregur aðeins þá til baka opinbera tengipunktinn. Gerðu ráð fyrir núverandi klasa, samþykktri göngu inn í VPC hans og kubeconfig sem virkar þegar; verkefnið er einkaaðgangur að Kubernetes-API, ekki einkanóður og ekki nýtt heimildamódel. Sérhvert þrep hér fyrir neðan hefur prófun sem þú getur mistekist á öruggan hátt.
1. Skráðu tengipunktinn og haltu eftir leið til baka
Skráðu núverandi ástand áður en þú breytir því, þar á meðal opinberu CIDR-heimilistasamansettninguna og öryggishóp klasans. Þetta eru þau tvö sem þú berð saman þegar eitthvað hættir að virka, og heimil listinn er líka afturköllunarleiðin þín ef einkaleiðin reynist röng.
aws eks describe-cluster --region REGION --name CLUSTER \
--query 'cluster.{endpoint:endpoint,public:resourcesVpcConfig.endpointPublicAccess,private:resourcesVpcConfig.endpointPrivateAccess,cidrs:resourcesVpcConfig.publicAccessCidrs}'
REGION og CLUSTER eru staðgenglar hér. Taktu eftir því hvað einkafáninn segir núna, því klasi sem var búinn til með einkaaðgangi þegar virkum þarf annað fyrsta þrep en sá sem hefur aldrei haft hann. Haltu að minnsta kosti einni samþykktri stjórnunarleið opinni meðan á umskiptunum stendur; VPN sem er háð því að sami klasi sé aðgengilegur er ekki endurheimtarleið.
2. Virkjaðu einkaaðgang með netleiðina til staðar
Að kveikja á fánanum er auðveldi helmingurinn. Göngin þurfa leið að einkatölvum tengipunktsins, og öryggishópur klasans þarf TCP 443 frá þeim uppruna sem VPN-ið leggur raunverulega fram. Client VPN-tenging, síðu-til-síðu hlið og jafningja-VPC geta öll lagt fram mismunandi upprunatölvur, svo notaðu módelið sem þú settir upp í stað almenns einkasviðs.
aws eks update-cluster-config --region REGION --name CLUSTER \
--resources-vpc-config endpointPublicAccess=true,endpointPrivateAccess=true
aws eks describe-update --region REGION --name CLUSTER --update-id UPDATE_ID
Uppfærslan er ósamstillt. Spurðu uppfærsluauðkennisins þar til það tilkynnir árangur í stað þess að bíða ákveðins fjölda sekúndna og gera ráð fyrir. Láttu umferð nóðanna og stjórnflatarins vera í friði á meðan þú gerir þetta: að skipta um allan öryggishóp klasans fyrir reglu fyrir fartölvuna þína er leiðin sem virkur gagnagrunnsflötur verður að öðru atviki.
Skjölun EKS-tengipunkta er þess virði að lesa einu sinni í heild, því þar segir að aðeins-einkaaðgangur geti komið frá VPC-inu eða tengdu neti. Þessi setning er öll ástæðan fyrir því að þessi flutningur er mögulegur, og hún er líka ástæðan fyrir því að næsta þrep er til.
3. Sannaðu að vinnustöðin notaði einkaleiðina
Með báða tengipunkta virka sannar árangursríkt kubectl get ns ekkert um hvor svaraði. Leystu hýsilnafn tengipunktsins og athugaðu hvort veitt vistfang tilheyrir einkasviðinu eða því opinbera. Ef tengda netið þitt fær ekki einkasýnina í gegnum DNS mun skipunin takast yfir opinbera tengipunktinn og þú munt draga opinberu leiðina til baka á fölskum sönnunum. Þetta er algengasta leiðin sem þessi flutningur fer úrskeiðis, og það lítur nákvæmlega út eins og árangur.
nslookup HASH.gr7.REGION.eks.amazonaws.com
kubectl cluster-info
kubectl get ns --request-timeout=10s
Haltu hýsilnafninu og vottorðasannprófuninni nákvæmlega eins og þau eru. Að skipta út fyrir einkatölvu í kubeconfig og sleppa TLS-sannprófun er ekki flutningurinn sem þú lýstir í breytingaskránni, og hann mun mistakast aftur á þeirri stundu sem tengipunkturinn snýst.
4. Dragðu opinberan aðgang til baka af ásetningi
Þegar einkaleiðin hefur verið sýnd og endurheimtarflæðið samþykkt, lokaðu opinbera tengipunktinum. Þetta er raunveruleg breyting en ekki forskoðun, svo keyrðu hana á þeim reikningi og stillingum sem þú átt í raun við.
aws eks update-cluster-config --region REGION --name CLUSTER \
--resources-vpc-config endpointPublicAccess=false,endpointPrivateAccess=true
Í aðeins-einka hamleysir opinbera DNS-nafnið upp í einkatölvur tengipunktsins innan frá VPC-inu, svo upplausn og aðgengi hætta að vera sami hluturinn. Allt sem byggði á opinbera vistfanginu, þar á meðal CI-keyrur eða fartölva á öðru neti, þarf nú sína eigin innkomuleið.
5. Haltu netstefnu og auðkennastefnu aðskildum
CIDR-listinn fyrir opinberan aðgang stjórnar aðeins opinbera tengipunktinum. Hann takmarkar ekki einkatengipunktinn, sem er í staðinn afmarkaður af öryggishópi klasans og stefnu tengda netsins. Ef þú heldur opinbera tengipunktinum verður heimil listinn hans að passa við opinberu útleiðina sem API-viðskiptavinir þínir og nóður nota raunverulega; VPN-safnvistfang er sjaldan sá uppruni.
Ekkert af þessu breytir IAM eða Kubernetes RBAC. Tengipunktastillingar eru stjórnunaraðgerð, og venjulegir notendur ættu ekki að fá heimild til að slaka á mörkunum bara til að ná API-inu. Skrifaðu lokastöðuna, dagsetninguna og endurheimtarleiðina í runbookið, og prófaðu síðan endurheimtarleiðina einu sinni meðan hún er enn auðveld.