EC2-regel kun for VPN: hver tilknyttet sikkerhedsgruppe skal være enig
Sikkerhedsgrupper tillader kun, og hver tilknyttet gruppe tilføjer sin egen tilladelse. Find den kilde, instansen faktisk ser, før du tilføjer en smal VPN-regel.
Du tilføjer én indgående regel for VPN-klientpuljen, fjerner intet, og tjenesten er stadig tilgængelig fra internettet. Intet er i stykker. En sikkerhedsgruppe har ingen tilsidesættelse, prioritet eller endelig afvisning, som den smalle regel kan vinde over. Hver gruppe, der er tilknyttet instansen, bidrager med sine egne tilladelser til ét samlet sæt, og den brede regel, du glemte, er stadig i det sæt. At gøre instansen til kun-VPN betyder at revidere dem alle, ikke at tilføje en bedre klingende regel til én.
Skriv tjenesten ned, før du skriver reglen
Start med den præcise destination, protokol og port samt det netværkskort, som tjenesten faktisk lytter på. En instans med flere netværkskort eller flere tjenester på én port kræver, at revisionen køres pr. netværkskort, fordi de tilknyttede grupper kan være forskellige. Bestem derefter hvilken kildeadresse netværkskortet faktisk modtager for en VPN-bruger, i stedet for den adresse, klienten viser i sit eget forbindelsesvindue.
De to adresser divergerer oftere, end folk forventer, når først oversættelse og routing er involveret.
Tre kildemodeller, tre forskellige regler
Med privat routet adgang modtager instansen klientpuljen eller det virksomhedsinterne område, afhængigt af hvordan stien routes og oversættes. Med et offentligt endepunkt, der nås via virksomhedens udgang, ser instansen i stedet virksomhedens NAT-adresse, og kun hvis destinationen faktisk bruger VPN-stien, da split tunnelling kan efterlade den på en hjemmeforbindelse. Med et administreret Client VPN-endepunkt gælder den dokumenterede model for tilknytning og målnetværk, og klientadressen kommer fra det konfigurerede klient-CIDR.
Det, der ikke virker, er at referere til en VPN-gateway som kilde for en sikkerhedsgruppe. Gruppereferencer matcher elastiske netværkskort i VPC'en eller i et peered netværk, og en gateway, der videresender pakker, er ikke et af dem.
Læs foreningen på tværs af alle tilknyttede grupper
Åbn instansen, find dens netværkskort, og list hver sikkerhedsgruppe, der er tilknyttet. For hver af dem skal du kontrollere hver regel, der dækker din protokol og port, inklusive brede portområder og begge adressefamilier. En IPv4-regel fra 0.0.0.0/0 fritager dig ikke for at kontrollere ::/0, og en regel, der tillader al trafik, skjuler portspørgsmålet helt. Først efter den opgørelse kan du sige, hvad den effektive tilladelse for tjenesten er.
AWS-regelreferencen beskriver sikkerhedsgrupper som kun-tilladende og angiver, at reglerne fra alle tilknyttede grupper aggregeres, hvilket er hele mekanismen bag denne fejl.
Netværks-ACL'er er en separat, tilstandsløs politik med ordnede tilladelses- og afvisningsposter, og de evalueres på undernettet i stedet for på instansen.
Svar ikke med en afvisningsmur
At tilføje en undernetbred NACL-afvisning for at efterligne en firewall, du er vant til, er det forkerte værktøj og et risikabelt et. NACL-poster er ordnede og tilstandsløse, så en afvisning placeret over en eksisterende tilladelse bryder stille urelateret trafik, inklusive returvejen for de sessioner, du forsøgte at beholde. Ret den brede sikkerhedsgruppetilladelse i den gruppe, der ejer den, og lad derefter ACL'en være, medmindre den virkelig er en del af designet.
At fjerne en offentlig adresse fra instansen er en stærkere garanti, og det er også en arkitektonisk ændring med administrative og applikationsmæssige konsekvenser snarere end et flueben på en tilladelsesliste.
Test med en ny session, og behold en vej ind
Før du nedlægger en eksisterende tilladelse, skal du bekræfte en godkendt uafhængig administrativ vej, fordi den regel, du er ved at slette, kan være den, din sessionsgendannelse afhænger af. Test derefter en ny tilladt forbindelse fra VPN'en og en ny afvist forbindelse fra en autoriseret testvej uden VPN. Eksisterende sporede sessioner overlever regelændringer på måder, der gør gamle åbne shells ubrugelige som acceptbevis.
Til sidst skal du beholde applikationens egen autorisation. En oversat virksomhedsudgang kan repræsentere hundreder af mennesker, og netværksadgang har aldrig identificeret en individuel bruger eller dennes enhed.