Erstellen, Konfigurieren und Löschen von Sicherheitsgruppen für Amazon EC2 - AWS Command Line Interface

Python 2.7, 3.4 und 3.5 sind für AWS CLI-Version 1 veraltet. Weitere Informationen finden Sie im Abschnitt AWS CLI-Version 1 von Über die AWS CLI-Versionen.

Erstellen, Konfigurieren und Löschen von Sicherheitsgruppen für Amazon EC2

Sie können eine Sicherheitsgruppe, die im Wesentlichen als Firewall fungiert, für Ihre Amazon-Elastic-Compute-Cloud-(Amazon-EC2)-Instances mit Regeln erstellen, die den ein- und ausgehenden Netzwerkverkehr bestimmen.

Sie können Sicherheitsgruppen für die Verwendung in einer Virtual Private Cloud (VPC) oder einem geteilten, flachen EC2-Classic-Netzwerk erstellen. Weitere Informationen zu den Unterschieden zwischen EC2-Classic und EC2-VPC finden Sie unter Unterstützte Plattformen im Amazon-EC2-Benutzerhandbuch für Linux-Instances.

Mit der AWS Command Line Interface (AWS CLI) erstellen Sie eine neue Sicherheitsgruppe, fügen Regeln zu vorhandenen Sicherheitsgruppen hinzu und löschen Sicherheitsgruppen.

Prerequisites

Zur Ausführung von ec2-Befehlen benötigen Sie:

Erstellen einer Sicherheitsgruppe

Sie können Sicherheitsgruppen für EC2-Classic erstellen oder Sicherheitsgruppen, die mit VPCs verknüpft sind.

EC2-VPC

Im folgenden Beispiel aws ec2 create-security-group wird gezeigt, wie Sie eine Sicherheitsgruppe für eine bestimmte VPC erstellen.

$ aws ec2 create-security-group --group-name my-sg --description "My security group" --vpc-id vpc-1a2b3c4d { "GroupId": "sg-903004f8" }

Zum Anzeigen der Anfangsinformationen für eine Sicherheitsgruppe führen Sie den Befehl aws ec2 describe-security-groups aus. Sie können auf eine EC2-VPC-Sicherheitsgruppe nur mit der vpc-id und nicht mit ihrem Namen verweisen.

$ aws ec2 describe-security-groups --group-ids sg-903004f8 { "SecurityGroups": [ { "IpPermissionsEgress": [ { "IpProtocol": "-1", "IpRanges": [ { "CidrIp": "0.0.0.0/0" } ], "UserIdGroupPairs": [] } ], "Description": "My security group" "IpPermissions": [], "GroupName": "my-sg", "VpcId": "vpc-1a2b3c4d", "OwnerId": "123456789012", "GroupId": "sg-903004f8" } ] }

EC2-Classic

Im folgenden Beispiel aws ec2 create-security-group wird gezeigt, wie Sie eine Sicherheitsgruppe für EC2-Classic erstellen.

$ aws ec2 create-security-group --group-name my-sg --description "My security group" { "GroupId": "sg-903004f8" }

Zum Anzeigen der Anfangsinformationen für eine my-sg führen Sie den Befehl aws ec2 describe-security-groups aus. Auf eine EC2-Classic-Sicherheitsgruppe können Sie mit deren Namen verweisen.

$ aws ec2 describe-security-groups --group-names my-sg { "SecurityGroups": [ { "IpPermissionsEgress": [], "Description": "My security group" "IpPermissions": [], "GroupName": "my-sg", "OwnerId": "123456789012", "GroupId": "sg-903004f8" } ] }

Hinzufügen von Regeln zu Ihrer Sicherheitsgruppe

Wenn Sie eine Amazon-EC2-Instance ausführen, müssen Sie Regeln in der Sicherheitsgruppe aktivieren, um eingehenden Netzwerkverkehr für Ihre Art der Verbindung zum Image zu aktivieren.

Wenn Sie beispielsweise eine Windows-Instance starten, fügen Sie im Allgemeinen eine Regel hinzu, um eingehenden Datenverkehr über TCP-Port 3389 zu erlauben, um das Remote Desktop Protocol (RDP) zu unterstützen. Beim Starten einer Linux-Instance fügen Sie im Allgemeinen eine Regel hinzu, um eingehenden Datenverkehr über TCP-Port 22 zu erlauben, um SSH-Verbindungen zu unterstützen.

Fügen Sie mit dem Befehl authorize-security-group-ingress eine Regel zu Ihrer Sicherheitsgruppe hinzu. Ein erforderlicher Parameter dieses Befehls ist die öffentliche IP-Adresse Ihres Computers oder das Netzwerk (in Form eines Adressbereichs), das mit Ihrem Computer verbunden ist. Dabei wird die CIDR-Notation verwendet.

Anmerkung

Mit unserem Service https://checkip.amazonaws.com/, können Sie Ihre öffentliche IP-Adresse bestimmen. Zum Finden weiterer Services zur Identifizierung Ihrer IP-Adresse geben Sie in Ihren Browser "wie lautet meine IP-Adresse" ein. Wenn Sie eine Verbindung über einen ISP oder von hinter einer Firewall mit einer dynamischen IP-Adresse herstellen (über ein NAT-Gateway von einem privaten Netzwerk), können Sie diese regelmäßig ändern. In diesem Fall müssen Sie den IP-Adressbereich herausfinden, der von Client-Computern verwendet wird.

EC2-VPC

Im folgenden Beispiel wird gezeigt, wie Sie eine Regel für das RDP (TCP-Port 3389) zu einer EC2-VPC-Sicherheitsgruppe mit der ID sg-903004f8 mithilfe Ihrer IP-Adresse hinzufügen.

Um zu starten, suchen Sie Ihre IP-Adresse.

$ curl https://checkip.amazonaws.com x.x.x.x

Sie können die IP-Adresse dann zur Sicherheitsgruppe hinzufügen, indem Sie den authorize-security-group-ingress-Befehl ausführen.

$ aws ec2 authorize-security-group-ingress --group-id sg-903004f8 --protocol tcp --port 3389 --cidr x.x.x.x

Der folgende Befehl fügt eine weitere Regel hinzu, um SSH-Instances in derselben Sicherheitsgruppe zu aktivieren.

$ aws ec2 authorize-security-group-ingress --group-id sg-903004f8 --protocol tcp --port 22 --cidr x.x.x.x

Zum Anzeigen der Änderungen der Sicherheitsgruppe führen Sie den Befehl aws ec2 describe-security-groups aus.

$ aws ec2 describe-security-groups --group-ids sg-903004f8 { "SecurityGroups": [ { "IpPermissionsEgress": [ { "IpProtocol": "-1", "IpRanges": [ { "CidrIp": "0.0.0.0/0" } ], "UserIdGroupPairs": [] } ], "Description": "My security group" "IpPermissions": [ { "ToPort": 22, "IpProtocol": "tcp", "IpRanges": [ { "CidrIp": "x.x.x.x" } ] "UserIdGroupPairs": [], "FromPort": 22 } ], "GroupName": "my-sg", "OwnerId": "123456789012", "GroupId": "sg-903004f8" } ] }

EC2-Classic

Der folgende Befehl aws ec2 authorize-security-group-ingress fügt eine Regel für das RDP zur EC2-Classic-Sicherheitsgruppe namens my-sg hinzu.

$ aws ec2 authorize-security-group-ingress --group-name my-sg --protocol tcp --port 3389 --cidr x.x.x.x

Mit diesem Befehl fügen Sie eine weitere Regel für SSH zur selben Sicherheitsgruppe hinzu.

$ aws ec2 authorize-security-group-ingress --group-name my-sg --protocol tcp --port 22 --cidr x.x.x.x

Zum Anzeigen der Änderungen der Sicherheitsgruppe führen Sie den Befehl aws ec2 describe-security-groups aus.

$ aws ec2 describe-security-groups --group-names my-sg { "SecurityGroups": [ { "IpPermissionsEgress": [], "Description": "My security group" "IpPermissions": [ { "ToPort": 22, "IpProtocol": "tcp", "IpRanges": [ { "CidrIp": "x.x.x.x" } ] "UserIdGroupPairs": [], "FromPort": 22 } ], "GroupName": "my-sg", "OwnerId": "123456789012", "GroupId": "sg-903004f8" } ] }

Löschen Ihrer Sicherheitsgruppe

Um eine Sicherheitsgruppe zu löschen, führen Sie den Befehl aws ec2 delete-security-group aus.

Anmerkung

Sie können eine Sicherheitsgruppe nicht löschen, wenn sie aktuell an eine Umgebung angefügt ist.

EC2-VPC

Das folgende Befehlsbeispiel löscht die EC2-VPC-Sicherheitsgruppe.

$ aws ec2 delete-security-group --group-id sg-903004f8

EC2-Classic

Das folgende Befehlsbeispiel löscht die EC2-Classic-Sicherheitsgruppe mit Namen my-sg:

$ aws ec2 delete-security-group --group-name my-sg

References

AWS CLI Referenz:

Andere Referenz: