Complete a 3 Question Survey and Earn a re:Post Badge
Help improve AWS Support Official channel in re:Post and share your experience - complete a quick three-question survey to earn a re:Post badge!
Wie aktualisiere ich yum oder installiere Pakete ohne Internetzugang auf meinen EC2-Instances, auf denen Amazon Linux ausgeführt wird?
Ich möchte yum aktualisieren oder Pakete auf meiner Amazon Elastic Compute Cloud (Amazon EC2)-Instance installieren, ohne eine Internetverbindung. Auf der Instance wird Amazon Linux 1 (AL1), Amazon Linux 2 (AL2) oder Amazon Linux 2023 (AL2023) ausgeführt.
Kurzbeschreibung
Amazon-Linux-Repositorys werden in Amazon Simple Storage Service (Amazon S3)-Buckets gehostet. Um Pakete ohne Internetverbindung auf deiner Instance zu aktualisieren und zu installieren, erstelle einen Amazon Virtual Private Cloud (Amazon VPC)-Gateway-Endpunkt für Amazon S3. Füge dem VPC-Endpunkt eine Richtlinie hinzu, die den Zugriff auf die Repository-Buckets ermöglicht. Ordne dann den VPC-Endpunkt der Routing-Tabelle deines Instance-Subnetzes zu.
Hinweis: Um Repositorys von Drittanbietern wie Extra Packages für Enterprise Linux (EPEL) zu aktivieren, muss deine Instance über eines der folgenden Geräte auf das Internet zugreifen können:
- NAT-Gateway
- NAT-Instance
- Internet-Gateway
- AWS VPN- oder AWS Direct-Connect-Verbindung zu deinem Rechenzentrum, das die yum-Anfrage über das öffentliche Internet weiterleitet.
Lösung
Überprüfung deiner Konfiguration
Stelle sicher, dass die Sicherheitsgruppe, die an deine Instance angehängt ist, ausgehenden HTTP- und HTTPS-Verkehr zulässt. Die Sicherheitsgruppe, die an deinen VPC-Endpunkt für Amazon S3 angehängt ist, muss eingehenden HTTP-Datenverkehr aus dem Subnetz deiner Instance zulassen.
Überprüfe auch die Netzwerk-Zugriffssteuerungsliste (Netzwerk-ACL), die dem Subnetz deiner Instance zugeordnet ist. Die Netzwerk-ACL muss ausgehenden Verkehr auf den Ports 80 (HTTP) und 443 (HTTPS) in die AWS-Region deines Amazon S3-Service zulassen. Die Netzwerk-ACL muss auch eingehenden Verkehr auf kurzlebigen TCP-Ports (1024-65535) aus der Region des Amazon S3-Service zulassen. Die Region des Amazon S3-Service ist das CIDR für die öffentliche IP-Adresse für den Amazon S3-Service. Du kannst keine Präfixlisten in Netzwerk-ACLs verwenden. Verwende stattdessen 0.0.0.0/0, um den Amazon S3-CIDR zu deiner Netzwerk-ACL hinzuzufügen. Du kannst auch die tatsächlichen Amazon S3-CIDRs in der Netzwerk-ACL verwenden. Die Amazon S3-CIDRs könnten sich jedoch ändern.
VPC-Endpunkte erstellen
Führe die folgenden Schritte aus:
-
Öffne die Amazon-EC2-Konsole.
-
Wähle deine Instance aus.
-
Wähle die Registerkarte Netzwerk und notiere dir dann die Werte für die VPC-ID und Subnetz-ID.
-
Öffne die Amazon VPC-Konsole.
-
Wähle Subnetze und dann wähle deine Subnetz-ID aus.
-
Wähle die Registerkarte Routing-Tabelle aus und notieren dir dann die Werte für die Routing-Tabellen-ID.
-
Wähle Endpunkte und dann Endpunkt erstellen.
-
Um den Gateway-Endpunkt zu erstellen, konfiguriere die folgenden Einstellungen:
Wähle unter Region den Regionalcode für den Ort aus, an dem du deinen Endpunkt erstellen möchtest. Um beispielsweise einen Endpunkt in us-east-1 zu erstellen, wählst du com.amazonaws.us-east-1.s3 aus.
Wähle unter VPC die VPC-ID deiner Instance aus.
Wähle unter Routing-Tabellen konfigurieren die Routing-Tabellen-ID deiner Instance aus.
Wähle unter Richtlinie die Option Vollzugriff aus, um vollen Zugriff auf Amazon S3 zu ermöglichen. Wenn du Benutzerdefiniert auswählst, musst du den s3:GetObject-API-Aufruf in den Amazon-Linux-Repository-Buckets zulassen.
**Hinweis:**Ersetze in den folgenden Beispielrichtlinien us-east-1 durch deine Endpunktregion.
AB 2023:{ "Statement": [ { "Principal": "*", "Action": [ "s3:GetObject" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::al2023-repos-us-east-1-de612dc2/*" ] } ] }
AL2:
{ "Statement": [ { "Principal": "*", "Action": [ "s3:GetObject" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::amazonlinux.us-east-1.amazonaws.com/*", "arn:aws:s3:::amazonlinux-2-repos-us-east-1/*" ] } ] }
AL1:
{ "Statement": [ { "Principal": "*", "Action": [ "s3:GetObject" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::packages.us-east-1.amazonaws.com/*", "arn:aws:s3:::repo.us-east-1.amazonaws.com/*" ] } ] }
Hinweis: In den vorherigen AL1- und AL2-Richtlinien hosten die Buckets arn:aws:s3:::amazonlinux.us-east-1.amazonaws.com/* und arn:aws:s3:::amazonlinux-2-repos-us-east-1/* die Repositorys.
-
Wähle Endpunkt erstellen aus.
Nachdem du den VPC-Endpunkt erstellt hast, kannst du Pakete in deiner Amazon-Linux-Instance installieren und aktualisieren.
Ähnliche Informationen
