Vad är AWS säkerhetsgrupper och hur använder du dem?

0
154

AWS hanterar brandväggskonfiguration med säkerhetsgrupper. Varje EC2-förekomst eller annan tjänst med ett elastiskt nätverksgränssnitt (ENI) använder din säkerhetsgruppskonfiguration för att bestämma vilka paket som ska släppas och vilken typ av trafik som ska tillåtas.

Säkerhetsgrupper är AWS brandväggssystem

I huvudsak är en säkerhetsgrupp en brandväggskonfiguration för dina tjänster. Den definierar vilka portar på maskinen som är öppna för inkommande trafik, vilket direkt styr funktionerna som är tillgängliga från den samt maskinens säkerhet.

Som standard är varje port stängd. Många brandväggssystem har & # 8220; DENY & # 8221; regler; AWS blockerar istället allt om det inte finns en regel som specifikt tillåter att den går igenom. Detta innebär att alla paket som inte matchar några regler kommer att släppas direkt. Så om du vill köra en webbserver på din EC2- eller ECS-instans måste du skapa en säkerhetsgrupp som tillåter port 80 och port 443 genom brandväggen.

De flesta instanser kommer med en ny säkerhetsgrupp som standard, som du kan redigera individuellt, men om du vill kan du också skapa dina egna säkerhetsgrupper och tillämpa dem på flera instanser. När du sedan redigerar en grupp öppnas eller stängs portarna i alla instanser.

Hur fungerar säkerhetsgrupper?

Eftersom AWS brandväggssystem händer i deras nätverk behöver du inte oroa dig för att konfigurera ufw eller iptables med kommandon på varje server. Det hanteras på själva Elastic Network Interface, som ansluter din instans till nätverket. ENI hanterar trafik för EC2 och andra tjänster som använder instanser, som ECS och EKS. Instanser kan också ha flera ENI för olika nätverksanslutningar, vilket innebär att de också kan ha flera säkerhetsgrupper för var och en.

Annonsering

Instanser kan också ha flera säkerhetsgrupper för varje gränssnitt. Eftersom AWS inte nekar trafik kommer varje säkerhetsgrupp att samlas, vilket ger åtkomst om någon av säkerhetsgrupperna matchar ett specifikt paket.

Som standard tillåter säkerhetsgrupper all utgående trafik från din instans. Det betyder att den har full internetåtkomst, vilket vanligtvis är vad du vill, men om du inte kan neka utgående trafik också genom att ta bort den regeln och manuellt ange vilken typ av trafik du vill släppa.

Säkerhetsgrupper är också statliga. Om du skickar en begäran som går ut från din instans får den trafik som kommer tillbaka från den begäran komma tillbaka oavsett inkommande säkerhetsregler och vice versa för förfrågningar som kommer in och svar som går ut.

Bästa praxis för säkerhetsgrupper

Eftersom säkerhetsgrupper oftast bara är brandväggar gäller vanliga bästa metoder för Linux-servrar här. Du borde inte skapa säkerhetsgrupper med stora portområden, eftersom det inte är onödigt och bara öppnar fler portar att attackera. Du bör hålla de flesta portar blockerade, till exempel FTP- och CIFS-portar. Du bör överväga att vitlista SSH-åtkomst till specifika administrativa IP-adresser, eller ställa in en OpenVPN-server och vitlista åtkomst till den.

RELATED Så här ställer du in en OpenVPN-server för att säkra ditt nätverk

Eftersom du kan använda säkerhetsgrupper i flera instanser bör du göra det när det är möjligt. Att använda diskreta grupper för varje enskild instans kan leda till felkonfiguration eller felhantering. Du kan till exempel behöva stänga en port efter en programuppdatering. Om du har flera servrar med olika grupper kan du glömma att stänga porten på en av dem.

Och i allmänhet bör du inte tillåta åtkomst till 0.0.0.0/0, eller & # 8220; Alla IP-adresser, om inte absolut nödvändigt. För många saker, som databaser, bör du lämna dessa stängda för de specifika instanser som behöver dem.

Arbeta med säkerhetsgrupper från AWS-konsolen

Säkerhetsgruppskonfiguration hanteras i AWS EC2 Management Console. Gå till EC2-konsolen och hitta & # 8220; Säkerhetsgrupper & # 8221; under & # 8220; Nätverk & amp; Säkerhet & # 8221; i sidofältet.

Annons

Du borde se en lista över alla säkerhetsgrupper som för närvarande används av dina instanser. Du kan redigera befintliga eller skapa en ny:

< p>Huvudkonfigurationen är helt enkelt att ställa in regler för inkommande och utgående, för det mesta möjliggör specifik inkommande trafik eftersom all utgående är aktiverad som standard.

Först måste du konfigurera protokollet. Du kan ange anpassade TCP/UDP-portar, men det finns också förinställda alternativ för saker som HTTP och vissa databaser. Du kan också ange ICMP eller helt anpassade protokoll.

Då måste du tillåta åtkomst från en specifik källa. Du kan välja & # 8220; Anywhere & # 8221; som gör att den är öppen, eller & # 8220; Min IP & # 8221; som vitlistar din nuvarande maskin. Du kan också ange anpassad CIDR-notering för specifika undernät.

RELATERAD: Vad är undernät och hur påverkar de mitt nätverk?

En mycket användbar funktion på konsolen är vitlistning av åtkomst till andra säkerhetsgrupper. Detta tar bort smärtan av att konfigurera CIDR-block eller manuellt lägga till IP-adresser. varje instans som använder den angivna säkerhetsgruppen tillåts av regeln.

Annonsering

Utöver det måste du ge det ett namn och eventuellt en beskrivning och tagg.

Sedan kan du byta dina instanser eller tjänster till den nya säkerheten grupp. För EC2-instanser kan du göra detta från konsolen genom att högerklicka och välja & # 8220; Säkerhet & gt; Ändra säkerhetsgrupper. & # 8221;