

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Sicherheit und Compliance in Amazon Linux 2023
<a name="security"></a>

**Wichtig**  
 Wenn Sie eine Sicherheitslücke melden möchten oder Sicherheitsbedenken in Bezug auf AWS Cloud-Dienste oder Open-Source-Projekte haben, wenden Sie sich über die [Seite zur Meldung von AWS Sicherheitslücken an die Sicherheitsabteilung](https://aws.amazon.com/security/vulnerability-reporting/) 

Cloud-Sicherheit AWS hat höchste Priorität. Als AWS Kunde profitieren Sie von einer Rechenzentrums- und Netzwerkarchitektur, die darauf ausgelegt sind, die Anforderungen der sicherheitssensibelsten Unternehmen zu erfüllen.

Sicherheit ist eine gemeinsame Verantwortung von Ihnen AWS und Ihnen. Das [Modell der geteilten Verantwortung](https://aws.amazon.com/compliance/shared-responsibility-model/) beschreibt dies als Sicherheit *der* Cloud und Sicherheit *in* der Cloud:
+ **Sicherheit der Cloud** — AWS ist verantwortlich für den Schutz der Infrastruktur, die AWS Dienste in der AWS Cloud ausführt. AWS bietet Ihnen auch Dienste, die Sie sicher nutzen können. Externe Prüfer testen und verifizieren regelmäßig die Wirksamkeit unserer Sicherheitsmaßnahmen im Rahmen der [AWS](https://aws.amazon.com/compliance/programs/) . Weitere Informationen zu den Compliance-Programmen, die für gelten AL2023, finden Sie unter [AWS Services im Umfang nach Compliance-Programmen AWS](https://aws.amazon.com/compliance/services-in-scope/) .
+ **Sicherheit in der Cloud**: Ihr Verantwortungsumfang wird durch den AWS -Service bestimmt, den Sie verwenden. Sie sind auch für andere Faktoren verantwortlich, einschließlich der Vertraulichkeit Ihrer Daten, für die Anforderungen Ihres Unternehmens und für die geltenden Gesetze und Vorschriften. 

**Topics**
+ [Amazon Linux-Sicherheitsempfehlungen für AL2023](alas.md)
+ [Liste der zutreffenden Hinweise](listing-applicable-advisories.md)
+ [Direktes Anwenden von Sicherheitsupdates](security-inplace-update.md)
+ [SELinux Einstellmodi für AL2 023](selinux-modes.md)
+ [Aktivieren Sie den FIPS-Modus auf 023 AL2](fips-mode.md)
+ [Aktivieren Sie den FIPS-Modus in einem AL2 023-Container](fips-mode-container.md)
+ [Tauschen Sie OpenSSL FIPS-Anbieter auf 023 aus AL2](fips-openssl-swap-provider.md)
+ [AL2023 Kernelhärtung](kernel-hardening.md)
+ [Anmeldung mit Repository-Metadaten AL2023](repo-metadata-signing.md)
+ [UEFI Secure Boot aktiviert AL2023](uefi-secure-boot.md)

# Amazon Linux-Sicherheitsempfehlungen für AL2023
<a name="alas"></a>

 Wir arbeiten kontinuierlich an der Sicherheit von Amazon Linux, dennoch werden von Zeit zu Zeit Sicherheitsprobleme auftauchen, die behoben werden müssen. Ein *Hinweis* wird herausgegeben, wenn ein Fix verfügbar ist. Der Hauptort, an dem wir unsere Empfehlungen veröffentlichen, ist das Amazon Linux Security Center (ALAS). Weitere Informationen erhalten Sie im [Amazon-Linux-Sicherheitszentrum](https://alas.aws.amazon.com/alas2023.html). 

**Wichtig**  
 Wenn Sie eine Sicherheitslücke melden möchten oder Sicherheitsbedenken in Bezug auf AWS Cloud-Dienste oder Open-Source-Projekte haben, wenden Sie sich über die Seite zur [Meldung von AWS Sicherheitslücken an die Sicherheitsabteilung](https://aws.amazon.com/security/vulnerability-reporting/) 

 Informationen zu Problemen und den relevanten Updates, die sich darauf auswirken, AL2023 werden vom Amazon Linux-Team an verschiedenen Orten veröffentlicht. Normalerweise rufen Sicherheitstools Informationen aus diesen Primärquellen ab und präsentieren Ihnen die Ergebnisse. Daher interagieren Sie möglicherweise nicht direkt mit den primären Quellen, die Amazon Linux veröffentlicht, sondern mit der Schnittstelle, die von Ihren bevorzugten Tools wie [Amazon Inspector](https://docs.aws.amazon.com/inspector/latest/user/what-is-inspector.html) bereitgestellt wird. 

## Ankündigungen des Amazon Linux Security Center
<a name="alas-announcements"></a>

 *Ankündigungen* von Amazon Linux beziehen sich auf Artikel, die nicht in eine Empfehlung passen. Dieser Abschnitt enthält Ankündigungen über ALAS selbst sowie Informationen, die nicht in eine Empfehlung passen. Weitere Informationen finden Sie unter [Ankündigungen des Amazon Linux Security Center (ALAS)](https://alas.aws.amazon.com/announcements.html). 

 Zum Beispiel passt die [Amazon Linux Hotpatch-Ankündigung 2021-001 für Apache Log4j](https://alas.aws.amazon.com/announcements/2021-001.html) eher in eine Ankündigung als in eine Empfehlung. In dieser Ankündigung hat Amazon Linux ein Paket hinzugefügt, das Kunden dabei unterstützt, ein Sicherheitsproblem in Software zu beheben, die nicht Teil von Amazon Linux war. 

 Der [Amazon Linux Security Center CVE Explorer](https://explore.alas.aws.amazon.com/) wurde ebenfalls in den ALAS-Ankündigungen angekündigt. Weitere Informationen finden Sie unter [Neue Website für CVEs](https://alas.aws.amazon.com/announcements/2023-001.html). 

## Häufig gestellte Fragen zum Amazon Linux Security Center
<a name="alas-faqs"></a>

 Antworten auf einige häufig gestellte Fragen zu ALAS und zur Bewertung CVEs von Amazon Linux finden Sie unter [Häufig gestellte Fragen zum Amazon Linux Security Center (ALAS) (FAQs)](https://alas.aws.amazon.com/faqs.html). 

## ALAS-Empfehlungen
<a name="alas-advisories"></a>

 Ein Amazon Linux-Advisory enthält wichtige Informationen, die für Amazon Linux-Benutzer relevant sind, in der Regel Informationen zu Sicherheitsupdates. Im [Amazon Linux Security Center](https://alas.aws.amazon.com/alas2023.html) sind die Advisories im Internet sichtbar. Hinweisinformationen sind auch Teil der Metadaten des RPM-Paket-Repositorys. 

## Hinweise und RPM-Repositorien
<a name="advisory-and-repos"></a>

 Ein Amazon Linux 2023-Paket-Repository kann Metadaten enthalten, die keine oder mehr Updates beschreiben. Der `dnf updateinfo` Befehl ist nach dem Dateinamen der Repository-Metadaten benannt, der diese Informationen enthält`updateinfo.xml`. Der Befehl ist zwar benannt `updateinfo` und die Metadatendatei bezieht sich auf eine`update`, aber alle beziehen sich auf Paket-Updates, die Teil eines Advisory sind. 

 Amazon Linux-Advisories werden auf der [Amazon Linux Security Center-Website](https://alas.aws.amazon.com/alas2023.html) zusammen mit Informationen in den RPM-Repository-Metadaten veröffentlicht, auf die sich der `dnf` Paketmanager bezieht. Die Website- und Repository-Metadaten sind letztendlich konsistent, und es kann zu Inkonsistenzen bei den Informationen auf der Website und in den Repository-Metadaten kommen. Dies AL2023 ist in der Regel der Fall, wenn eine neue Version von gerade veröffentlicht wird und ein Advisory nach der letzten AL2023 Version aktualisiert wurde. 

 Es ist zwar üblich, dass zusammen mit dem Paket-Update, das das Problem behebt, ein neues Advisory veröffentlicht wird, aber das ist nicht immer der Fall. Ein Hinweis kann für ein neues Problem erstellt werden, das in bereits veröffentlichten Paketen behoben ist. Eine bestehende Empfehlung kann auch mit neuen aktualisiert werden CVEs , die durch das bestehende Update behoben werden. 

 Die [Deterministische Upgrades durch versionierte Repositorys auf AL2023](deterministic-upgrades.md) Funktion von Amazon Linux 2023 bedeutet, dass das RPM-Repository für eine bestimmte AL2023 Version einen Snapshot der RPM-Repository-Metadaten für diese Version enthält. Dazu *gehören* die Metadaten, die Sicherheitsupdates beschreiben. Das RPM-Repository für eine bestimmte AL2023 Version *wird nach der Veröffentlichung nicht aktualisiert*. Neue oder aktualisierte Sicherheitshinweise *werden nicht angezeigt, wenn Sie sich eine ältere Version der AL2023 RPM-Repositorys* ansehen. [Liste der zutreffenden Hinweise](listing-applicable-advisories.md)In diesem Abschnitt erfahren Sie, wie Sie den `dnf` Paketmanager verwenden können, um sich entweder die `latest` Repository-Version oder eine bestimmte AL2023 Version anzusehen. 

## Hinweis IDs
<a name="advisory-ids"></a>

 Auf jedes Advisory wird mit einem verwiesen`id`. Derzeit ist es eine Eigenart von Amazon Linux, dass auf der [Amazon Linux Security Center-Website](https://alas.aws.amazon.com/alas2023.html) eine Empfehlung als [ALAS-2024-581](https://alas.aws.amazon.com/AL2023/ALAS-2024-581.html) aufgeführt wird, während der `dnf` Paketmanager diese Empfehlung mit der ID -2024-581 [auflistet](listing-applicable-advisories.md). ALAS2023 Wenn [Direktes Anwenden von Sicherheitsupdates](security-inplace-update.md) die Paketmanager-ID verwendet werden muss, wenn auf ein bestimmtes Advisory verwiesen wird. 

 Für Amazon Linux hat jede Hauptversion des Betriebssystems ihren eigenen IDs Advisory-Namespace. Es sollten keine Annahmen über das Format von Amazon Linux Advisory getroffen IDs werden. In der Vergangenheit folgte Amazon Linux Advisory IDs dem Muster von`NAMESPACE-YEAR-NUMBER`. Der gesamte Bereich möglicher Werte für `NAMESPACE` ist nicht definiert, umfasst aber`ALAS`,`ALASCORRETTO8`, `ALAS2023``ALAS2`,`ALASPYTHON3.8`, und`ALASUNBOUND-1.17`. Dabei handelt es `YEAR` sich um das Jahr, in dem das Advisory erstellt wurde. Dabei handelt `NUMBER` es sich um eine eindeutige Ganzzahl innerhalb des Namespace. 

 Obwohl die Empfehlung IDs *normalerweise* sequentiell und in der Reihenfolge erfolgt, in der die Updates veröffentlicht werden, gibt es viele Gründe, warum dies nicht der Fall sein könnte. Daher sollte nicht davon ausgegangen werden. 

 Behandeln Sie die Advisory-ID als undurchsichtige Zeichenfolge, die für jede Hauptversion von Amazon Linux eindeutig ist. 

 In Amazon Linux 2 befand sich jedes Extra in einem separaten RPM-Repository, und die Advisory-Metadaten sind nur in dem Repository enthalten, für das sie relevant sind. Eine Empfehlung für ein Repository *gilt nicht* für ein anderes Repository. Auf der [Amazon Linux Security Center-Website](https://alas.aws.amazon.com/alas2.html) gibt es derzeit eine Liste mit Hinweisen für jede Hauptversion von Amazon Linux, die nicht in Listen pro Repository unterteilt ist. 

 Da der Extras-Mechanismus AL2023 nicht verwendet wird, um alternative Versionen von Paketen zu verpacken, gibt es derzeit nur zwei RPM-Repositorys, von denen jedes über Advisories verfügt: das Repository und das `core` Repository. `livepatch` Das `livepatch` Repository ist für. [Kernel Live Patching auf 023 AL2](live-patching.md) 

## Veröffentlichungsdatum der Empfehlung und Aktualisierungsdatum der Empfehlung
<a name="advisory-dates"></a>

 Das Veröffentlichungsdatum der Empfehlung für Amazon Linux Advisories gibt an, wann das Sicherheitsupdate zum ersten Mal im RPM-Repository öffentlich verfügbar gemacht wurde. Advisories werden auf der [Amazon Linux Security Center-Website](https://alas.aws.amazon.com/alas2023.html) veröffentlicht, unmittelbar nachdem Fixes über das RPM-Repository zur Installation zur Verfügung gestellt wurden. 

 Das Aktualisierungsdatum der Empfehlung gibt an, wann neue Informationen zu einer Empfehlung hinzugefügt wurden, nachdem sie zuvor veröffentlicht wurde. 

 Zwischen der AL2023 Versionsnummer (z. B. 2023.6.20241031) und dem Veröffentlichungsdatum der zusammen mit dieser Pressemitteilung veröffentlichten Advisories sollten keine Annahmen getroffen werden. 

## Arten von Hinweisen
<a name="advisory-types"></a>

 Die Metadaten des RPM-Repositorys unterstützen Advisories verschiedener Typen. Amazon Linux hat zwar fast überall nur Advisories herausgegeben, bei denen es sich um Sicherheitsupdates handelt, aber davon sollte nicht ausgegangen werden. Es ist möglich, dass Ankündigungen für Ereignisse wie Bugfixes, Verbesserungen und neue Pakete herausgegeben werden und dass die Empfehlung so gekennzeichnet ist, dass sie diese Art von Update enthält. 

## Schweregrade der Empfehlung
<a name="advisory-severities"></a>

 Jede Empfehlung hat ihren eigenen Schweregrad, da jedes Problem separat bewertet wird. In einem einzigen Advisory CVEs können mehrere behandelt werden, und jeder CVE kann eine andere Bewertung haben, aber das Advisory selbst hat einen Schweregrad. Es kann mehrere Advisories geben, die sich auf ein einzelnes Paket-Update beziehen, sodass es für ein bestimmtes Paket-Update mehrere Schweregrade geben kann (einer pro Advisory). 

 In der Reihenfolge des abnehmenden Schweregrads hat Amazon Linux Kritisch, Wichtig, Moderat und Niedrig verwendet, um den Schweregrad einer Empfehlung anzugeben. Amazon Linux Advisories *haben möglicherweise auch keinen Schweregrad*, obwohl dieser äußerst selten vorkommt. 

 Amazon Linux ist eine der RPM-basierten Linux-Distributionen, die den Begriff Moderat verwendet, während einige andere RPM-basierte Linux-Distributionen den entsprechenden Begriff Medium verwenden. Der Amazon Linux-Paketmanager behandelt beide Begriffe als gleichwertig, und Paket-Repositorys von Drittanbietern können den Begriff Medium verwenden. 

 Amazon Linux-Advisories können den *Schweregrad im Laufe der Zeit ändern*, wenn mehr über die in der Empfehlung behandelten relevanten Probleme bekannt ist. 

 Der Schweregrad einer Empfehlung entspricht in der *Regel* dem höchsten von Amazon Linux bewerteten CVSS-Score für das, CVEs auf das die Empfehlung verweist. Es kann Fälle geben, in denen dies nicht der Fall ist. Ein Beispiel wäre, wenn ein Problem behoben wird, für das kein CVE zugewiesen wurde. 

 Weitere Informationen darüber, wie Amazon Linux die Schweregrade von Advisory verwendet, finden Sie in den [häufig gestellten Fragen zu ALAS](https://alas.aws.amazon.com/faqs.html). 

## Empfehlungen und Pakete
<a name="advisory-packages"></a>

 Für ein einzelnes Paket kann es viele Advisories geben, und nicht für alle Pakete wird jemals ein Advisory veröffentlicht. Auf eine bestimmte Paketversion kann in mehreren Advisories verwiesen werden, von denen jedes seinen eigenen Schweregrad und hat. CVEs 

 Es ist möglich, dass mehrere Advisories für dasselbe Paket-Update gleichzeitig in einer neuen AL2023 Version oder schnell hintereinander veröffentlicht werden. 

 Wie bei anderen Linux-Distributionen kann es ein bis viele verschiedene Binärpakete geben, die aus demselben Quellpaket erstellt wurden. Beispielsweise ist [ALAS-2024-698](https://alas.aws.amazon.com/AL2023/ALAS-2024-698.html) eine Empfehlung, die im [AL2023 Abschnitt der Amazon Linux Security Center-Website als für das](https://alas.aws.amazon.com/alas2023.html) Paket relevant aufgeführt ist. `mariadb105` Dies ist der Name des *Quellpakets*, und das Advisory selbst bezieht sich neben dem Quellpaket auch auf die *Binärpakete*. In diesem Fall werden über ein Dutzend Binärpakete aus einem `mariadb105` Quellpaket erstellt. Es ist zwar sehr üblich, dass es ein Binärpaket mit demselben Namen wie das Quellpaket gibt, aber das ist nicht universal. 

 Obwohl Amazon Linux Advisories in der Regel alle Binärpakete aufgelistet haben, die aus dem aktualisierten Quellpaket erstellt wurden, sollte davon nicht ausgegangen werden. Der Paketmanager und das RPM-Repository-Metadatenformat ermöglichen Advisories, die eine Teilmenge der aktualisierten Binärpakete auflisten. 

 Ein bestimmter Hinweis kann auch nur für eine bestimmte CPU-Architektur gelten. Es kann Pakete geben, die nicht für alle Architekturen erstellt wurden, oder Probleme, die nicht alle Architekturen betreffen. Für den Fall, dass ein Paket auf allen Architekturen verfügbar ist, ein Problem aber nur für eine auftritt, hat Amazon Linux in der Regel kein Advisory herausgegeben, das nur auf die betroffene Architektur verweist, obwohl davon nicht ausgegangen werden sollte. 

 Aufgrund der Art der Paketabhängigkeiten ist es üblich, dass ein Advisory auf ein Paket verweist, aber die Installation dieses Updates erfordert andere Paket-Updates, einschließlich Pakete, die nicht in der Empfehlung aufgeführt sind. Der `dnf` Paketmanager kümmert sich um die Installation der erforderlichen Abhängigkeiten. 

## Ratschläge und CVEs
<a name="advisory-cves"></a>

 Ein Advisory kann keine oder mehrere Adressen enthalten CVEs, und es kann mehrere Advisories geben, die sich auf dasselbe CVE beziehen. 

 Ein Beispiel dafür, wann ein Advisory auf Null verweisen kann, CVEs ist, wenn dem Problem noch kein CVE (oder noch nie) zugewiesen wurde. 

 Ein Beispiel dafür, dass mehrere Advisories auf denselben CVE verweisen können, wenn der CVE (zum Beispiel) für mehrere Pakete gilt. Beispielsweise gilt [CVE-2024-21208](https://alas.aws.amazon.com/cve/html/CVE-2024-21208.html) für Corretto 8, 11, 17 und 21. [https://alas.aws.amazon.com/AL2023/ALAS-2024-752.html](https://alas.aws.amazon.com/AL2023/ALAS-2024-752.html) Diese Corretto-Versionen haben zwar alle dieselbe Liste von CVEs, dies sollte jedoch nicht davon ausgegangen werden. 

 Ein bestimmter CVE kann für verschiedene Pakete unterschiedlich bewertet werden. Wenn beispielsweise in einem Advisory mit dem Schweregrad Wichtig auf ein bestimmtes CVE verwiesen wird, ist es möglich, dass ein anderes Advisory herausgegeben wird, das sich auf denselben CVE mit einem anderen Schweregrad bezieht. 

 Die Metadaten des RPM-Repositorys ermöglichen eine Referenzliste für jedes Advisory. Während Amazon Linux in der Regel nur referenziert hat CVEs, ermöglicht das Metadatenformat andere Referenztypen. 

 Auf die Metadaten des RPM-Paket-Repositorys wird nur verwiesen, CVEs wenn ein Fix verfügbar ist. Der [Abschnitt Erkunden der Amazon Linux Security Center-Website](https://explore.alas.aws.amazon.com) enthält Informationen zu den Informationen CVEs , die Amazon Linux bewertet hat. Diese Bewertung kann zu einer CVSS-Basisbewertung, einem Schweregrad und einem Status für verschiedene Amazon Linux-Versionen und -Pakete führen. Der Status eines CVE für eine bestimmte Amazon Linux-Version oder ein bestimmtes Paket kann „Nicht betroffen“, „Ausstehende Korrektur“ oder „Kein Fix geplant“ lauten. Der Status und die Bewertung von CVEs können sich vor der Veröffentlichung einer Empfehlung mehrfach und *in beliebiger Weise* ändern. Dies beinhaltet eine Neubewertung der Anwendbarkeit eines CVE auf Amazon Linux. 

 Die Liste der Personen, auf die in einer Empfehlung CVEs verwiesen wird, kann sich nach der ersten Veröffentlichung dieser Empfehlung ändern. 

## Text der Empfehlung
<a name="advisory-text"></a>

 Ein Hinweis wird auch einen Text enthalten, der das Problem oder die Probleme beschreibt, die der Grund für die Erstellung des Ratgebers waren. Es ist üblich, dass es sich bei diesem Text um den unveränderten CVE-Text handelt. Dieser Text kann sich auf Upstream-Versionsnummern beziehen, für die ein Fix verfügbar ist, die sich von der Paketversion unterscheiden, auf die Amazon Linux einen Fix angewendet hat. Es ist üblich, dass Amazon Linux Fixes aus neueren Upstream-Versionen zurückportiert. Falls im Text der Ankündigung eine Upstream-Version erwähnt wird, die sich von der Version unterscheidet, die in einer Amazon Linux-Version ausgeliefert wurde, gelten die Amazon Linux-Paketversionen in der Empfehlung für Amazon Linux. 

 Es ist möglich, dass der Hinweistext in den Metadaten des RPM-Repositorys Platzhaltertext ist, der lediglich auf die [Amazon Linux Security Center-Website](https://alas.aws.amazon.com/alas2023.html) verweist, um weitere Informationen zu erhalten. 

## Kernel Live Patch Advisories
<a name="livepatch-advisories"></a>

 Ankündigungen für Live-Patches sind insofern einzigartig, als sie sich auf ein anderes Paket (den Linux-Kernel) beziehen als das Paket, gegen das sich die Ankündigung richtet (z. B.`kernel-livepatch-6.1.15-28.43`). 

 Eine Empfehlung für einen [Kernel-Live-Patch](live-patching.md) bezieht sich auf die Probleme (z. B. CVEs), die das jeweilige Live-Patch-Paket für die *spezifische* Kernel-Version, für die das Live-Patch-Paket gilt, beheben kann. 

 Jeder Live-Patch bezieht sich auf eine *bestimmte* Kernel-Version. Um einen Live-Patch für eine CVE anzuwenden, muss das richtige Live-Patch-Paket für Ihre Kernel-Version installiert und der Live-Patch angewendet werden. 

 Zum Beispiel kann [CVE-2023-6111](https://alas.aws.amazon.com/cve/html/CVE-2023-6111.html) für die Kernel-Versionen,, und live gepatcht werden. AL2023 `6.1.56-82.125` `6.1.59-84.139` `6.1.61-85.141` [Eine neue Kernel-Version mit einem Fix für diesen CVE wurde ebenfalls veröffentlicht, für die es eine separate Empfehlung gibt.](https://alas.aws.amazon.com/AL2023/ALAS-2023-461.html) Damit [CVE-2023-6111](https://alas.aws.amazon.com/cve/html/CVE-2023-6111.html) AL2023 entweder auf einer Kernel-Version behoben werden kann, die der Angabe von [ALAS2023-2023-461](https://alas.aws.amazon.com/AL2023/ALAS-2023-461.html) entspricht oder später ist, muss entweder eine der Kernelversionen mit einem Live-Patch für diese CVE *ausgeführt* werden, auf der der entsprechende Livepatch angewendet wurde. 

 Wenn neue Live-Patches für eine bestimmte Kernel-Version verfügbar sind, für die bereits ein Live-Patch verfügbar ist, wird eine neue Version des Pakets veröffentlicht. `kernel-livepatch-KERNEL_VERSION` Zum Beispiel wurde das [https://alas.aws.amazon.com/AL2023/ALASLIVEPATCH-2023-003.html](https://alas.aws.amazon.com/AL2023/ALASLIVEPATCH-2023-003.html)Advisory zusammen mit dem `kernel-livepatch-6.1.15-28.43-1.0-1.amzn2023` Paket veröffentlicht, das Live-Patches für den `6.1.15-28.43` Kernel enthielt, die drei Patches abdeckten CVEs. Später wurde das [https://alas.aws.amazon.com/AL2023/ALASLIVEPATCH-2023-009.html](https://alas.aws.amazon.com/AL2023/ALASLIVEPATCH-2023-009.html)Advisory zusammen mit dem `kernel-livepatch-6.1.15-28.43-1.0-2.amzn2023` Paket veröffentlicht; es war ein Update des vorherigen Live-Patch-Pakets für den `6.1.15-28.43` Kernel, das Live-Patches für drei weitere enthält CVEs. Es gab auch andere Probleme mit Live-Patch-Advisories für andere Kernel-Versionen, wobei Pakete Live-Patches für diese spezifischen Kernel-Versionen enthielten. 

 Weitere Informationen zum Live-Patchen des Kernels finden Sie unter. [Kernel Live Patching auf 023 AL2](live-patching.md) 

 Allen, die Tools rund um Sicherheitsempfehlungen entwickeln, wird außerdem empfohlen, diesen [XML-Schema für Sicherheitshinweise und `updateinfo.xml`](#advisory-schema) Abschnitt für weitere Informationen zu lesen. 

## XML-Schema für Sicherheitshinweise und `updateinfo.xml`
<a name="advisory-schema"></a>

 Die `updateinfo.xml` Datei ist Teil des Paket-Repository-Formats. Es sind die Metadaten, die der `dnf` Paketmanager analysiert, um Funktionen wie [Liste der zutreffenden Hinweise](listing-applicable-advisories.md) und [Direktes Anwenden von Sicherheitsupdates](security-inplace-update.md) zu implementieren. 

 Wir haben empfohlen, die API des `dnf` Paketmanagers zu verwenden, anstatt benutzerdefinierten Code zu schreiben, um die Metadatenformate des Repositorys zu analysieren. Die Version von `dnf` in AL2023 kann sowohl das Repository-Format als auch das AL2023 AL2 Repository-Format analysieren, sodass die API verwendet werden kann, um die Beratungsinformationen für beide Betriebssystemversionen zu überprüfen. 

 Das [RPM-Softwaremanagement-Projekt](https://github.com/rpm-software-management/) dokumentiert die RPM-Metadatenformate im [RPM-Metadaten-Repository unter](https://github.com/rpm-software-management/rpm-metadata). GitHub 

 Denjenigen, die Tools zur direkten Analyse der `updateinfo.xml` Metadaten entwickeln, wird dringend empfohlen, die [RPM-Metadaten-Dokumentation](https://github.com/rpm-software-management/rpm-metadata) sorgfältig zu lesen. Die Dokumentation behandelt, was in freier Wildbahn beobachtet wurde, und enthält viele Ausnahmen von dem, was Sie vernünftigerweise als Regel für das Metadatenformat interpretieren könnten. 

 Es gibt auch eine wachsende Anzahl von Beispielen aus der realen Welt für `updateinfo.xml` Dateien im [raw-historical-rpm-repository-examples-Repository](https://github.com/rpm-software-management/raw-historical-rpm-repository-examples) unter. GitHub 

 Falls in der Dokumentation etwas unklar ist, können Sie ein Problem im GitHub Projekt eröffnen, damit wir die Frage beantworten und die Dokumentation entsprechend aktualisieren können. Da es sich um Open-Source-Projekte handelt, sind auch Pull-Requests zur Aktualisierung der Dokumentation willkommen. 

# Liste der zutreffenden Hinweise
<a name="listing-applicable-advisories"></a>

 Der `dnf` Paketmanager hat Zugriff auf Metadaten, die beschreiben, welche Advisories in welchen Paketversionen behoben wurden. Somit kann er auflisten, welche Advisories für eine Instanz oder ein Container-Image gelten. 

**Anmerkung**  
 Tools wie [AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/)können diese Funktionalität nutzen, um zu zeigen, welche Updates für eine Flotte relevant sind und nicht nur für eine einzelne Instanz. 

 Wenn Sie Updates auflisten, können Sie `dnf` anweisen, sich die Metadaten einer bestimmten Version AL2 023 oder die Metadaten der neuesten Version anzusehen. 

**Anmerkung**  
 Sobald eine Version AL2 023 veröffentlicht wurde, ist sie unveränderlich. Daher werden neue oder aktualisierte Hinweise im [Amazon Linux Security Center](https://alas.aws.amazon.com/alas2023.html) nur zu den Metadaten *neuer Versionen von AL2 0.23* hinzugefügt. 

 Wir werden uns nun anhand von Beispielen ansehen, welche Hinweise für einige AL2 023-Container-Images gelten. Diese Befehle funktionieren alle in nicht containerisierten Umgebungen wie Instances. EC2 

------
#### [ Listing advisories in a specific version ]

 [In diesem Beispiel werden wir uns ansehen, welche Hinweise in der Version [2023.1.20230628 in einem Container-Image der Version 2023.0.20230315](https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes-2023.1.20230628.html) relevant sind.](https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes-2023.0.20230315.html) 

**Anmerkung**  
 [In diesem Beispiel werden die Versionen [2023.0.20230315 und 2023.1.20230628](https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes-2023.0.20230315.html)[verwendet, und dies *sind* nicht die neueste](https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes-2023.1.20230628.html) Version von 023. In den Versionshinweisen zu 023 finden Sie die neuesten Versionen, die die neuesten Sicherheitsupdates enthalten. AL2 AL2](https://docs.aws.amazon.com/linux/al2023/release-notes/) 

 [In diesem Beispiel beginnen wir mit einem Container-Image für die Version 2023.0.20230315.](https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes-2023.0.20230315.html) 

 Zuerst holen wir uns dieses Container-Image aus der Container-Registry. Das `.0` am Ende steht für die Version des Images für eine bestimmte Version; diese Image-Version ist normalerweise Null. 

```
$ docker pull public.ecr.aws/amazonlinux/amazonlinux:2023.0.20230315.0
	  2023.0.20230315.0: Pulling from amazonlinux/amazonlinux
b76f3b09316a: Pull complete
Digest: sha256:94e7183b0739140dbd5b639fb7600f0a2299cec5df8780c26d9cb409da5315a9
Status: Downloaded newer image for public.ecr.aws/amazonlinux/amazonlinux:2023.0.20230315.0
public.ecr.aws/amazonlinux/amazonlinux:2023.0.20230315.0
```

 Wir können jetzt eine Shell innerhalb des Containers erzeugen, von der aus wir fragen`dnf`, welche Hinweise für die im Container installierten Pakete relevant sind. 

```
$ docker run -it public.ecr.aws/amazonlinux/amazonlinux:2023.0.20230315.0
	  bash-5.2#
```

 Der `dnf updateinfo` Befehl wird nun verwendet, um eine Zusammenfassung der Empfehlungen in der Version [2023.1.20230628](https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes-2023.1.20230628.html) anzuzeigen, die für unsere installierten Pakete relevant sind. 

```
$ dnf updateinfo --releasever=2023.1.20230628
Amazon Linux 2023 repository                     42 MB/s |  15 MB     00:00
Last metadata expiration check: 0:00:02 ago on Mon Jul 22 20:24:24 2024.
Updates Information Summary: available
    8 Security notice(s)
        1 Important Security notice(s)
        5 Medium Security notice(s)
        2 Low Security notice(s)
```

 Um eine Liste der Empfehlungen zu erhalten, kann die Option angegeben werden. `--list` `dnf updateinfo` 

```
$ dnf updateinfo --releasever=2023.1.20230628 --list
Last metadata expiration check: 0:01:22 ago on Mon Jul 22 20:24:24 2024.
ALAS2023-2023-193 Medium/Sec.    curl-minimal-8.0.1-1.amzn2023.x86_64
ALAS2023-2023-225 Medium/Sec.    glib2-2.74.7-688.amzn2023.0.1.x86_64
ALAS2023-2023-195 Low/Sec.       libcap-2.48-2.amzn2023.0.3.x86_64
ALAS2023-2023-193 Medium/Sec.    libcurl-minimal-8.0.1-1.amzn2023.x86_64
ALAS2023-2023-145 Low/Sec.       libgcc-11.3.1-4.amzn2023.0.3.x86_64
ALAS2023-2023-145 Low/Sec.       libgomp-11.3.1-4.amzn2023.0.3.x86_64
ALAS2023-2023-145 Low/Sec.       libstdc++-11.3.1-4.amzn2023.0.3.x86_64
ALAS2023-2023-163 Medium/Sec.    libxml2-2.10.4-1.amzn2023.0.1.x86_64
ALAS2023-2023-220 Important/Sec. ncurses-base-6.2-4.20200222.amzn2023.0.4.noarch
ALAS2023-2023-220 Important/Sec. ncurses-libs-6.2-4.20200222.amzn2023.0.4.x86_64
ALAS2023-2023-181 Medium/Sec.    openssl-libs-1:3.0.8-1.amzn2023.0.2.x86_64
ALAS2023-2023-222 Medium/Sec.    openssl-libs-1:3.0.8-1.amzn2023.0.3.x86_64
```

------
#### [ Listing advisories in the latest version ]

 In diesem Beispiel werden wir uns ansehen, welche Updates in der Version AL2 023 verfügbar sind, wenn wir einen Container der `latest` Version [2023.4.20240319](https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes-2023.4.20240319.html) gestartet haben. Zum Zeitpunkt der Erstellung dieses Artikels ist die `latest` Version [2023.5.20240708](https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes-2023.5.20240708.html), sodass die in diesem Beispiel aufgelisteten Updates ab dieser Version gültig sind. 

**Anmerkung**  
 *In diesem Beispiel werden die Versionen [2023.4.20240319 und 2023.5.20240708](https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes-2023.4.20240319.html) [verwendet, wobei letztere die neueste Version zum Zeitpunkt](https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes-2023.5.20240708.html) der Erstellung dieses Artikels ist.* [Weitere Informationen zu den neuesten Versionen finden Sie in den Versionshinweisen zu 023. AL2](https://docs.aws.amazon.com/linux/al2023/release-notes/) 

 In diesem Beispiel beginnen wir mit einem Container-Image für die Version [2023.4.20240319](https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes-2023.4.20240319.html). 

 Zuerst holen wir uns dieses Container-Image aus der Container-Registry. Das `.1` am Ende gibt die Version des Images für eine bestimmte Version an. Während die Image-Version normalerweise Null ist, wird in diesem Beispiel eine Version verwendet, bei der es sich um eine Image-Version handelt. 

```
$ docker pull public.ecr.aws/amazonlinux/amazonlinux:2023.4.20240319.1
	  2023.4.20240319.1: Pulling from amazonlinux/amazonlinux
6de065fda9a2: Pull complete
Digest: sha256:b4838c4cc9211d966b6ea158dacc9eda7433a16ba94436508c2d9f01f7658b4e
Status: Downloaded newer image for public.ecr.aws/amazonlinux/amazonlinux:2023.4.20240319.1
public.ecr.aws/amazonlinux/amazonlinux:2023.4.20240319.1
```

 Wir können jetzt eine Shell im Container erzeugen, von der aus wir nach Updates suchen. 

```
$ docker run -it public.ecr.aws/amazonlinux/amazonlinux:2023.4.20240319.1
	  bash-5.2#
```

 Der `dnf updateinfo` Befehl wird nun verwendet, um eine Zusammenfassung der Hinweise in der neuesten Version anzuzeigen, die für unsere installierten Pakete relevant sind. Zum Zeitpunkt der Erstellung dieses Artikels war [2023.1.20230628](https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes-2023.1.20230628.html) die neueste Version. 

```
$ dnf --releasever=latest updateinfo
Amazon Linux 2023 repository                     76 MB/s |  25 MB     00:00
Last metadata expiration check: 0:00:04 ago on Mon Jul 22 20:59:54 2024.
Updates Information Summary: available
    9 Security notice(s)
        4 Important Security notice(s)
        4 Medium Security notice(s)
        1 Low Security notice(s)
```

 Um eine Liste der Empfehlungen zu erhalten, können Sie die Option wählen. `--list` `dnf updateinfo` 

```
$ dnf updateinfo --releasever=latest --list
Last metadata expiration check: 0:00:58 ago on Mon Jul 22 20:59:54 2024.
ALAS2023-2024-581 Low/Sec.       curl-minimal-8.5.0-1.amzn2023.0.3.x86_64
ALAS2023-2024-596 Medium/Sec.    curl-minimal-8.5.0-1.amzn2023.0.4.x86_64
ALAS2023-2024-576 Important/Sec. expat-2.5.0-1.amzn2023.0.4.x86_64
ALAS2023-2024-589 Important/Sec. glibc-2.34-52.amzn2023.0.10.x86_64
ALAS2023-2024-589 Important/Sec. glibc-common-2.34-52.amzn2023.0.10.x86_64
ALAS2023-2024-589 Important/Sec. glibc-minimal-langpack-2.34-52.amzn2023.0.10.x86_64
ALAS2023-2024-586 Medium/Sec.    krb5-libs-1.21-3.amzn2023.0.4.x86_64
ALAS2023-2024-581 Low/Sec.       libcurl-minimal-8.5.0-1.amzn2023.0.3.x86_64
ALAS2023-2024-596 Medium/Sec.    libcurl-minimal-8.5.0-1.amzn2023.0.4.x86_64
ALAS2023-2024-592 Important/Sec. libnghttp2-1.59.0-3.amzn2023.0.1.x86_64
ALAS2023-2024-640 Medium/Sec.    openssl-libs-1:3.0.8-1.amzn2023.0.12.x86_64
ALAS2023-2024-605 Medium/Sec.    python3-3.9.16-1.amzn2023.0.7.x86_64
ALAS2023-2024-616 Important/Sec. python3-3.9.16-1.amzn2023.0.8.x86_64
ALAS2023-2024-605 Medium/Sec.    python3-libs-3.9.16-1.amzn2023.0.7.x86_64
ALAS2023-2024-616 Important/Sec. python3-libs-3.9.16-1.amzn2023.0.8.x86_64
```

------

# Direktes Anwenden von Sicherheitsupdates
<a name="security-inplace-update"></a>

 Eine Übersicht über das Anwenden von Updates finden Sie unter[Anwenden von Sicherheits-Updates mithilfe von DNF- und Repository-Versionen](managing-repos-os-updates.md#apply-security-updates). `--security`Mit der Option „zu“ `dnf upgrade` werden die Paket-Updates auf diejenigen beschränkt, für die ein Advisory verfügbar ist. Im Rest dieses Abschnitts wird beschrieben, wie nur bestimmte Sicherheitsupdates installiert werden. 

**Anmerkung**  
 Es wird empfohlen, *alle* in einer neuen Version AL2 023 verfügbaren Updates zu installieren. Die Auswahl nur von Sicherheitsupdates oder nur bestimmten Updates sollte eher die Ausnahme als die Regel sein. 

## Anwenden von Updates, die in einem Advisory erwähnt werden
<a name="applying-advisory-updates"></a>

 Die Hinweiskennungen in der ersten Spalte der Ausgabe von `dnf upgradeinfo` können verwendet werden, um Updates für die in der Empfehlung genannten Pakete anzuwenden. Der `dnf` Paketmanager kann angewiesen werden, die Pakete in der Empfehlung entweder auf die neueste verfügbare Version oder nur auf die in der Empfehlung genannten Versionen zu aktualisieren. Wenn die Updates bereits installiert sind, ist der Aktualisierungsbefehl ein No-Op. 

 Um die Updates für die betroffenen Pakete *nur bis zu der in der Empfehlung genannten Version* anzuwenden, verwenden Sie den `dnf upgrade-minimal` Befehl und gleichzeitig die `--advisory` Option zur Angabe der Empfehlung. Das folgende Beispiel wird `dnf upgrade-minimal` in einem Container der Version AL2 023, Version [2023.0.20230315](https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes-2023.0.20230315.html), ausgeführt. 

```
$ dnf upgrade-minimal -y --releasever=2023.1.20230628 --advisory ALAS2023-2023-193
Amazon Linux 2023 repository                     46 MB/s |  15 MB     00:00
Last metadata expiration check: 0:00:03 ago on Mon Jul 22 20:36:13 2024.
Dependencies resolved.
================================================================================
 Package              Arch        Version                Repository        Size
================================================================================
Upgrading:
 curl-minimal         x86_64      8.0.1-1.amzn2023       amazonlinux      150 k
 libcurl-minimal      x86_64      8.0.1-1.amzn2023       amazonlinux      249 k

Transaction Summary
================================================================================
Upgrade  2 Packages

Total download size: 399 k
Downloading Packages:
(1/2): curl-minimal-8.0.1-1.amzn2023.x86_64.rpm 2.7 MB/s | 150 kB     00:00
(2/2): libcurl-minimal-8.0.1-1.amzn2023.x86_64. 3.8 MB/s | 249 kB     00:00
--------------------------------------------------------------------------------
Total                                           2.5 MB/s | 399 kB     00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                        1/1
  Upgrading        : libcurl-minimal-8.0.1-1.amzn2023.x86_64                1/4
  Upgrading        : curl-minimal-8.0.1-1.amzn2023.x86_64                   2/4
  Cleanup          : curl-minimal-7.88.1-1.amzn2023.0.1.x86_64              3/4
  Cleanup          : libcurl-minimal-7.88.1-1.amzn2023.0.1.x86_64           4/4
  Running scriptlet: libcurl-minimal-7.88.1-1.amzn2023.0.1.x86_64           4/4
  Verifying        : libcurl-minimal-8.0.1-1.amzn2023.x86_64                1/4
  Verifying        : libcurl-minimal-7.88.1-1.amzn2023.0.1.x86_64           2/4
  Verifying        : curl-minimal-8.0.1-1.amzn2023.x86_64                   3/4
  Verifying        : curl-minimal-7.88.1-1.amzn2023.0.1.x86_64              4/4

Upgraded:
  curl-minimal-8.0.1-1.amzn2023.x86_64  libcurl-minimal-8.0.1-1.amzn2023.x86_64

Complete!
```

 Dieselben Paketversionen werden aktualisiert, auch wenn sie `--releasever=latest` als Anforderung für das *minimale Update verwendet werden, das `dnf` zur Behebung der Empfehlung erforderlich* ist. 

 Wenn Sie den regulären `dnf upgrade` Befehl mit der `--advisory` Option verwenden, werden die entsprechenden Pakete, die in der Empfehlung erwähnt werden, auf die *neueste* verfügbare Version aktualisiert, die möglicherweise neuer ist als die in der Empfehlung angegebene Version. 

**Anmerkung**  
 Sofern das `system-release` Paket nicht aktualisiert wird, ändert sich die Version der AL2 023-Repositorys, für die gesperrt `dnf` ist, *nicht*. 

**Warnung**  
 Wenn Updates aus einer anderen Version von AL2 023 installiert werden, ohne die Version des Projektarchivs zu ändern, für das gesperrt `dnf` ist, *muss* bei allen nachfolgenden Mutationsvorgängen Vorsicht walten. `dnf` Wenn Sie beispielsweise Pakete installieren oder aktualisieren, kann die ältere Version, die Sie weiterhin verwenden, diese neuen Abhängigkeiten möglicherweise nicht erfüllen, da sich die Paketabhängigkeiten in der neueren Version möglicherweise geändert haben. 

 [Das folgende Beispiel wird in einem Container der Version AL2 023, Version [2023.0.20230315](https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes-2023.0.20230315.html) ausgeführt, der sich auf die neueste Version von AL2 023 bezieht, deren Zeitpunkt der Erstellung 2023.5.20240708 war.](https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes-2023.5.20240708.html) Beachten Sie, dass sowohl die Version, auf die aktualisiert `curl` wird, neuer ist als die Version, auf die aktualisiert wurde, dass diese neuere Version jedoch neue Abhängigkeiten mit sich bringt`update-minimal`. 

```
$ dnf upgrade -y --releasever=latest --advisory ALAS2023-2023-193
Amazon Linux 2023 repository                     80 MB/s |  25 MB     00:00
Last metadata expiration check: 0:00:04 ago on Mon Jul 22 20:48:38 2024.
Dependencies resolved.
================================================================================
 Package                   Arch     Version                 Repository     Size
================================================================================
Upgrading:
 curl-minimal              x86_64   8.5.0-1.amzn2023.0.4    amazonlinux   160 k
 libcurl-minimal           x86_64   8.5.0-1.amzn2023.0.4    amazonlinux   275 k
 libnghttp2                x86_64   1.59.0-3.amzn2023.0.1   amazonlinux    79 k
Installing dependencies:
 libpsl                    x86_64   0.21.1-3.amzn2023.0.2   amazonlinux    61 k
 publicsuffix-list-dafsa   noarch   20240212-61.amzn2023    amazonlinux    59 k

Transaction Summary
================================================================================
Install  2 Packages
Upgrade  3 Packages

Total download size: 634 k
Downloading Packages:
(1/5): publicsuffix-list-dafsa-20240212-61.amzn 1.1 MB/s |  59 kB     00:00
(2/5): curl-minimal-8.5.0-1.amzn2023.0.4.x86_64 2.6 MB/s | 160 kB     00:00
(3/5): libpsl-0.21.1-3.amzn2023.0.2.x86_64.rpm  949 kB/s |  61 kB     00:00
(4/5): libnghttp2-1.59.0-3.amzn2023.0.1.x86_64. 3.7 MB/s |  79 kB     00:00
(5/5): libcurl-minimal-8.5.0-1.amzn2023.0.4.x86 6.7 MB/s | 275 kB     00:00
--------------------------------------------------------------------------------
Total                                           3.5 MB/s | 634 kB     00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                        1/1
  Upgrading        : libnghttp2-1.59.0-3.amzn2023.0.1.x86_64                1/8
  Installing       : publicsuffix-list-dafsa-20240212-61.amzn2023.noarch    2/8
  Installing       : libpsl-0.21.1-3.amzn2023.0.2.x86_64                    3/8
  Upgrading        : libcurl-minimal-8.5.0-1.amzn2023.0.4.x86_64            4/8
  Upgrading        : curl-minimal-8.5.0-1.amzn2023.0.4.x86_64               5/8
  Cleanup          : curl-minimal-7.88.1-1.amzn2023.0.1.x86_64              6/8
  Cleanup          : libcurl-minimal-7.88.1-1.amzn2023.0.1.x86_64           7/8
  Cleanup          : libnghttp2-1.51.0-1.amzn2023.x86_64                    8/8
  Running scriptlet: libnghttp2-1.51.0-1.amzn2023.x86_64                    8/8
  Verifying        : libpsl-0.21.1-3.amzn2023.0.2.x86_64                    1/8
  Verifying        : publicsuffix-list-dafsa-20240212-61.amzn2023.noarch    2/8
  Verifying        : curl-minimal-8.5.0-1.amzn2023.0.4.x86_64               3/8
  Verifying        : curl-minimal-7.88.1-1.amzn2023.0.1.x86_64              4/8
  Verifying        : libcurl-minimal-8.5.0-1.amzn2023.0.4.x86_64            5/8
  Verifying        : libcurl-minimal-7.88.1-1.amzn2023.0.1.x86_64           6/8
  Verifying        : libnghttp2-1.59.0-3.amzn2023.0.1.x86_64                7/8
  Verifying        : libnghttp2-1.51.0-1.amzn2023.x86_64                    8/8

Upgraded:
  curl-minimal-8.5.0-1.amzn2023.0.4.x86_64
  libcurl-minimal-8.5.0-1.amzn2023.0.4.x86_64
  libnghttp2-1.59.0-3.amzn2023.0.1.x86_64
Installed:
  libpsl-0.21.1-3.amzn2023.0.2.x86_64
  publicsuffix-list-dafsa-20240212-61.amzn2023.noarch

Complete!
```

# SELinux Einstellmodi für AL2 023
<a name="selinux-modes"></a>

Standardmäßig ist Security Enhanced Linux (SELinux) auf `enabled` den `permissive` Modus 023 eingestellt. AL2 Im permissiven Modus werden Zugriffsverweigerungen zwar protokolliert, aber nicht erzwungen. SELinux ist eine Sammlung von Kernelfunktionen und Hilfsprogrammen zur Bereitstellung einer starken, flexiblen MAC-Architektur (Mandatory Access Control) für die wichtigsten Subsysteme des Kernels. 

SELinux bietet einen verbesserten Mechanismus zur Durchsetzung der Trennung von Informationen auf der Grundlage von Vertraulichkeits- und Integritätsanforderungen. Diese Trennung von Informationen reduziert die Gefahr, dass die Sicherheitsmechanismen von Anwendungen manipuliert und umgangen werden. Sie begrenzt auch Schäden, die durch bösartige oder fehlerhafte Anwendungen verursacht werden können. 

SELinux enthält eine Reihe von Beispielkonfigurationsdateien für Sicherheitsrichtlinien, die darauf ausgelegt sind, alltägliche Sicherheitsziele zu erreichen.

Weitere Informationen zu SELinux Features und Funktionen finden Sie unter [SELinux Notebook](https://github.com/SELinuxProject/selinux-notebook/blob/main/src/toc.md) und [Policy Languages“](https://github.com/SELinuxProject/selinux-notebook/blob/main/src/policy_languages.md). 

**Topics**
+ [SELinux Standardstatus und -modi für AL2 023](default-SELinux-modes-states.md)
+ [Wechseln in den `enforcing`-Modus](enforcing-mode.md)
+ [Option zum Deaktivieren SELinux für AL2 023](disable-option-selinux.md)

# SELinux Standardstatus und -modi für AL2 023
<a name="default-SELinux-modes-states"></a>

Für AL2 023 ist dies SELinux standardmäßig der Modus `enabled` und ist auf Modus eingestellt. `permissive` Im `permissive`-Modus werden Zugriffsverweigerungen protokolliert, aber nicht durchgesetzt.

Die **sestatus** Befehle **getenforce** oder informieren Sie über den aktuellen SELinux Status, die Richtlinie und den aktuellen Modus. 

Wenn der Standardstatus auf `enabled` und `permissive` gesetzt ist, dann gibt der **getenforce**-Befehl `permissive` zurück. 

Der **sestatus** Befehl gibt den SELinux Status und die aktuelle SELinux Richtlinie zurück, wie im folgenden Beispiel gezeigt: 

```
$ sestatus
SELinux status:                 enabled
  SELinuxfs mount:                /sys/fs/selinux
  SELinux root directory:         /etc/selinux
  Loaded policy name:             targeted
  Current mode:                   permissive
  Mode from config file:          permissive
  Policy MLS status:              enabled
  Policy deny_unknown status:     allowed
  Memory protection checking:     actual (secure)
  Max kernel policy version:      33
```

Wenn Sie SELinux den `permissive` Modus ausführen, beschriften Benutzer Dateien möglicherweise falsch. Wenn Sie SELinux im `disabled` Status ausführen, werden Dateien nicht beschriftet. Falsch benannte oder unbenannte Dateien können Probleme verursachen, wenn Sie in den `enforcing`-Modus wechseln.

SELinux benennt Dateien automatisch neu, um dieses Problem zu vermeiden. SELinux verhindert Probleme mit der automatischen Neubeschriftung, wenn Sie den Status auf ändern. `enabled`

# Wechseln in den `enforcing`-Modus
<a name="enforcing-mode"></a>

Wenn Sie laufen SELinux im `enforcing` Modus, der SELinux Utility ist `enforcing` die konfigurierte Richtlinie. SELinux steuert die Funktionen ausgewählter Anwendungen, indem der Zugriff auf der Grundlage der Richtlinienregeln zugelassen oder verweigert wird.

Um den aktuellen zu finden SELinux Modus, führe den `getenforce` Befehl aus.

```
getenforce
Permissive
```

## Bearbeiten der Konfigurationsdateizur `enforcing`-Modusaktivierung
<a name="config-file-enforcing"></a>

Gehen Sie wie folgt vor`enforcing`, um den Modus zu ändern.

1. Bearbeiten Sie die `/etc/selinux/config`-Datei, um in den `enforcing`-Modus zu wechseln. Die `SELINUX` Einstellung sollte wie im folgenden Beispiel aussehen.

   ```
   SELINUX=enforcing
   ```

1. Starten Sie Ihr System neu, um den `enforcing`-Moduswechsel abzuschließen.

   ```
   $ sudo reboot
   ```

Beim nächsten Start SELinux benennt alle Dateien und Verzeichnisse im System neu. SELinux fügt auch das hinzu SELinux Kontext für Dateien und Verzeichnisse, die erstellt wurden wann SELinux war`disabled`.

Nach dem Wechsel in `enforcing` den Modus SELinux könnte einige Aktionen ablehnen, weil sie falsch sind oder fehlen SELinux politische Regeln. Sie können die Aktionen anzeigen, die SELinux lehnt mit dem folgenden Befehl ab.

```
$ sudo ausearch -m AVC,USER_AVC,SELINUX_ERR,USER_SELINUX_ERR -ts recent
```

## Verwenden Sie cloud-init um den Modus zu aktivieren `enforcing`
<a name="cloud-init-enforcing"></a>

Alternativ können Sie beim Starten Ihrer Instance Folgende `cloud-config` als Benutzerdaten übergeben, um den `enforcing`-Modus zu aktivieren. 

```
#cloud-config
selinux: 
  mode: enforcing
```

Standardmäßig führt diese Einstellung dazu, dass die Instance neu gestartet wird. Für mehr Stabilität empfehlen wir, Ihre Instance neu zu starten. Sie können den Neustart auch überspringen, wenn Sie möchten. Geben Sie dazu Folgendes an: `cloud-config`.

```
#cloud-config
selinux:
  mode: enforcing
  selinux_no_reboot: 1
```

# Option zum Deaktivieren SELinux für AL2 023
<a name="disable-option-selinux"></a>

Wenn du deaktivierst SELinux, SELinux Die Richtlinie ist nicht geladen oder wird nicht durchgesetzt, und Access Vector Cache (AVC) -Meldungen werden nicht protokolliert. Sie verlieren alle Vorteile des Laufens SELinux. 

Anstatt zu deaktivieren SELinux, wir empfehlen, den `permissive` Modus zu verwenden. Der Betrieb im `permissive` Modus kostet nur wenig mehr als das Deaktivieren SELinux vollständig. Der Übergang von `permissive` Modus zu `enforcing` Modus erfordert viel weniger Konfigurationsanpassungen als der Übergang zurück in den `enforcing` Modus nach der Deaktivierung SELinux. Sie können Dateien kennzeichnen, und das System kann Aktionen verfolgen und protokollieren, die die aktive Richtlinie möglicherweise verweigert hat. 

## Änderung SELinux in den `permissive` Modus
<a name="change-to-permissive"></a>

Wenn du rennst SELinux im `permissive` Modus SELinux Die Richtlinie wird nicht durchgesetzt. Im `permissive` Modus SELinux protokolliert AVC-Nachrichten, verweigert jedoch keine Operationen. Sie können diese AVC-Meldungen zur Problembehandlung, zum Debuggen und SELinux politische Verbesserungen. 

Um sich zu ändern SELinux Gehen Sie wie folgt vor, um in den permissiven Modus zu wechseln.

1. Bearbeiten Sie die `/etc/selinux/config`-Datei, um in den `permissive`-Modus zu wechseln. Der `SELINUX` Wert sollte wie im folgenden Beispiel aussehen.

   ```
   SELINUX=permissive
   ```

1. Starten Sie Ihr System neu, um den `permissive`-Moduswechsel abzuschließen.

   ```
   sudo reboot
   ```

## Deaktivieren SELinux
<a name="disable-selinux"></a>

Wenn du deaktivierst SELinux, SELinux Die Richtlinie ist nicht geladen oder wird nicht durchgesetzt, und AVC-Meldungen werden nicht protokolliert. Sie verlieren alle Vorteile des Laufens SELinux.

Um zu deaktivieren SELinux, gehen Sie wie folgt vor.

1. Stellen Sie sicher, dass das `grubby` Paket installiert ist.

   ```
   rpm -q grubby
   grubby-version
   ```

1. Konfigurieren Sie Ihren Bootloader so, dass er `selinux=0` zur Kernel-Befehlszeile hinzufügt.

   ```
   sudo grubby --update-kernel ALL --args selinux=0
   ```

1. Starten Sie Ihr System neu.

   ```
   sudo reboot
   ```

1. Führen Sie den `getenforce ` Befehl aus, um dies zu bestätigen SELinux ist`Disabled`.

   ```
   $ getenforce
   Disabled
   ```

Weitere Informationen zur SELinux, siehe [SELinux Notizbuch ](https://github.com/SELinuxProject/selinux-notebook/blob/main/src/toc.md) und [SELinux Konfiguration](http://selinuxproject.org/page/Guide/Mode#SELinux_Config).

# Aktivieren Sie den FIPS-Modus auf 023 AL2
<a name="fips-mode"></a>

In diesem Abschnitt wird erklärt, wie die Federal Information Processing Standards (FIPS) auf 023 aktiviert werden. AL2 Weitere Informationen über FIPS finden Sie unter:
+ [Federal Information Processing Standard (FIPS)](https://aws.amazon.com/compliance/fips/)
+ [Einhaltung FAQs: Bundesstandards für die Informationsverarbeitung](https://www.nist.gov/standardsgov/compliance-faqs-federal-information-processing-standards-fips)

**Anmerkung**  
In diesem Abschnitt wird die Aktivierung beschrieben FIPS Modus in AL2 023, er deckt nicht den Zertifizierungsstatus von AL2 023-Kryptografiemodulen ab.

**Voraussetzungen**
+ Eine bestehende EC2 Amazon-Instance AL2 023 (AL2023.2 oder höher) mit Internetzugang zum Herunterladen der erforderlichen Pakete. Weitere Informationen zum Starten einer AL2 EC2 023-Amazon-Instance finden Sie unter[AL2023 mit der Amazon EC2 EC2-Konsole starten](ec2.md#launch-from-ec2-console).
+ Sie müssen über SSH oder AWS Systems Manager eine Verbindung zu Ihrer EC2 Amazon-Instance herstellen. Weitere Informationen finden Sie unter [AL2023 Verbindung zu Instances herstellen](connecting-to-instances.md).

**Wichtig**  
ED25519 SSH-Benutzerschlüssel werden im FIPS-Modus nicht unterstützt. Wenn Sie Ihre EC2 Amazon-Instance mit einem ED25519 SSH-Schlüsselpaar gestartet haben, müssen Sie mithilfe eines anderen Algorithmus (z. B. RSA) neue Schlüssel generieren. Andernfalls verlieren Sie möglicherweise den Zugriff auf Ihre Instance, nachdem Sie den FIPS-Modus aktiviert haben. Weitere Informationen finden Sie unter [Schlüsselpaare erstellen](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-key-pairs.html) im * EC2 Amazon-Benutzerhandbuch*.

**Aktivieren des FIPS-Modus**

1. Stellen Sie über SSH oder eine Connect zu Ihrer AL2 023-Instance her. AWS Systems Manager

1. Stellen Sie sicher, dass das System auf dem neuesten Stand ist. Weitere Informationen finden Sie unter [Paket- und Betriebssystemupdates verwalten in AL2023](managing-repos-os-updates.md).

1. Stellen Sie sicher, dass die `crypto-policies` Dienstprogramme installiert sind und. up-to-date

   ```
   sudo dnf -y install crypto-policies crypto-policies-scripts
   ```

1. Aktivieren Sie den FIPS-Modus mit folgendem Befehl. [Dadurch wird der FIPS-Modus systemweit für die in der 023 FAQ aufgeführten Module aktiviert AL2](https://aws.amazon.com/linux/amazon-linux-2023/faqs/) 

   ```
   sudo fips-mode-setup --enable
   ```

1. Starten Sie die Instance mit dem folgenden Befehl neu.

   ```
   sudo reboot
   ```

1. Stellen Sie erneut eine Verbindung mit Ihrer Instance her und führen Sie den folgenden Befehl aus, um zu prüfen, ob der FIPS-Modus aktiviert ist.

   ```
   sudo fips-mode-setup --check
   ```

   In der folgenden Beispielausgabe sehen Sie, dass der FIPS-Modus aktiviert ist:

   ```
   FIPS mode is enabled.
   ```

# Aktivieren Sie den FIPS-Modus in einem AL2 023-Container
<a name="fips-mode-container"></a>

In diesem Abschnitt wird erklärt, wie die Federal Information Processing Standards (FIPS) in einem AL2 023-Container aktiviert werden. Weitere Informationen über FIPS finden Sie unter:
+ [Federal Information Processing Standard (FIPS)](https://aws.amazon.com/compliance/fips/)
+ [Einhaltung FAQs: Bundesstandards für die Informationsverarbeitung](https://www.nist.gov/standardsgov/compliance-faqs-federal-information-processing-standards-fips)

**Anmerkung**  
In diesem Abschnitt wird beschrieben, wie Sie die Aktivierung durchführen FIPS Modus in einem AL2 023-Container. Er deckt nicht den Zertifizierungsstatus von AL2 023-Kryptografiemodulen ab.

**Voraussetzungen**
+ Eine bestehende EC2 Amazon-Instance AL2 023 (AL2023.2 oder höher) mit Internetzugang zum Herunterladen der erforderlichen Pakete. Weitere Informationen zum Starten einer AL2 EC2 023-Amazon-Instance finden Sie unter[AL2023 mit der Amazon EC2 EC2-Konsole starten](ec2.md#launch-from-ec2-console).
+ Sie müssen über SSH oder AWS Systems Manager eine Verbindung zu Ihrer EC2 Amazon-Instance herstellen. Weitere Informationen finden Sie unter [AL2023 Verbindung zu Instances herstellen](connecting-to-instances.md).

**Wichtig**  
Der `fips-mode-setup` Befehl funktioniert innerhalb des Containers nicht richtig. Bitte lesen Sie die folgenden Schritte, um den FIPS-Modus in einem AL2 023-Container richtig zu konfigurieren.

**Aktivieren Sie den FIPS-Modus in einem 023-Container AL2**

1. Der FIPS-Modus muss zuerst auf dem AL2 023-Container-Host aktiviert werden. Folgen Sie den Anweisungen unter[Aktivieren Sie den FIPS-Modus auf 023 AL2](fips-mode.md), um den FIPS-Modus auf dem Host zu aktivieren.

1. Stellen Sie mithilfe von SSH oder eine Connect zu Ihrer AL2 023-Container-Host-Instance her. AWS Systems Manager

1. Der FIPS-Modus wird in einem AL2 023-Container automatisch aktiviert, wenn sich der AL2 023-Host im FIPS-Modus befindet und vom Container aus zugänglich `/proc/sys/crypto/fips_enabled` ist. Wenn der Inhalt von `/proc/sys/crypto/fips_enabled` ist, ist `0` FIPS nicht aktiviert, und ein Wert von `1` gibt an, dass der FIPS-Modus aktiviert ist.

   Sie können überprüfen, ob FIPS aktiviert ist, indem Sie den folgenden Befehl sowohl auf dem AL2 023-Host als auch auf dem Container ausführen:

   ```
   cat /proc/sys/crypto/fips_enabled
   ```

1. Als Nächstes aktivieren Sie die FIPS-Kryptorichtlinien im Container. Es gibt mehrere Möglichkeiten, dies zu erreichen, die in den folgenden Optionen beschrieben werden. Verwenden Sie die Option, die für Ihre Umgebung am besten geeignet ist.

   1. Aktivieren Sie die FIPS-Kryptorichtlinien manuell im Container mit dem folgenden Befehl: `update-crypto-policies`

      ```
      # Run these commands inside the container
      dnf install -y crypto-policies-scripts
      update-crypto-policies --set FIPS
      ```

   1. Erstellen Sie `bind` Mounts innerhalb des AL2 023-Containers (das `podman` funktioniert ähnlich wie in anderen Distributionen):

      ```
      # Run these commands inside the container
      mount --bind /usr/share/crypto-policies/back-ends/FIPS /etc/crypto-policies/back-ends
      echo "FIPS" > /usr/share/crypto-policies/default-fips-config
      mount --bind /usr/share/crypto-policies/default-fips-config /etc/crypto-policies/config
      ```

   1. Es ist auch möglich, einen Bind-Mount zu erstellen, sodass der AL2 023-Container den crypto-policies des AL2 023-Hosts entspricht. Das Folgende dient nur als Beispiel. Diese Konfiguration kann zu Problemen führen, wenn es inkompatible Unterschiede in den crypto-policies und Paketversionen zwischen dem Container und dem Host gibt:

      ```
      sudo docker pull amazonlinux:2023
      sudo docker run --mount type=bind,readonly,src=/etc/crypto-policies,dst=/etc/crypto-policies -it amazonlinux:2023
      ```

1. Nachdem Sie die obigen Schritte ausgeführt haben, können Sie mit den folgenden Befehlen erneut überprüfen, ob FIPS im Container aktiviert ist:

   ```
   $ cat /etc/crypto-policies/config
   FIPS
   
   $ cat /proc/sys/crypto/fips_enabled
   1
   ```

# Tauschen Sie OpenSSL FIPS-Anbieter auf 023 aus AL2
<a name="fips-openssl-swap-provider"></a>

In diesem Abschnitt wird erklärt, wie Sie auf 023 zwischen dem `latest` und dem `certified` OpenSSL FIPS-Anbieter wechseln können. AL2

Weitere Informationen über FIPS finden Sie unter:
+ [Federal Information Processing Standard (FIPS)](https://aws.amazon.com/compliance/fips/)
+ [Einhaltung FAQs: Bundesstandards für die Informationsverarbeitung](https://www.nist.gov/standardsgov/compliance-faqs-federal-information-processing-standards-fips)
+ [FedRAMP-Richtlinie für die Auswahl und Verwendung von kryptografischen Modulen](https://www.fedramp.gov/rev5/fips/)

**Wichtig**  
Auf AL2 Version 023.7 und höher ist der Standard-OpenSSL-FIPS-Anbieter das `openssl-fips-provider-latest` Paket, das regelmäßig Bugfix- und Sicherheitsupdates erhält.  
Die folgenden Anweisungen gelten nur für Kunden, die sich an das Paket anheften möchten. `openssl-fips-provider-certified` Diese Version des FIPS-Anbieters entspricht der Prüfsumme auf dem NIST-Zertifikat und verfügt möglicherweise nicht über die neuesten Updates.  
Weitere Informationen zu FIPS-zertifizierten Modulen und Paketversionen finden Sie in den [häufig gestellten Fragen zu AL2 023](https://aws.amazon.com/linux/amazon-linux-2023/faqs/).

**Voraussetzungen**
+ Eine bestehende EC2 Amazon-Instance AL2 023 (AL2023.7 oder höher) mit Internetzugang zum Herunterladen der erforderlichen Pakete. Weitere Informationen zum Starten einer AL2 EC2 023-Amazon-Instance finden Sie unter[AL2023 mit der Amazon EC2 EC2-Konsole starten](ec2.md#launch-from-ec2-console).
+ Sie müssen über SSH oder AWS Systems Manager eine Verbindung zu Ihrer EC2 Amazon-Instance herstellen. Weitere Informationen finden Sie unter [AL2023 Verbindung zu Instances herstellen](connecting-to-instances.md).
+ Folgen Sie den Anweisungen unter, um den FIPS-Modus auf AL2 023 zu aktivieren. [Aktivieren Sie den FIPS-Modus auf 023 AL2](fips-mode.md)

**Wechseln Sie zwischen und `openssl-fips-provider-latest` `openssl-fips-provider-certified`**

1. Verwenden Sie`dnf`, um den OpenSSL FIPS-Anbieter zu wechseln:

   ```
   sudo dnf -y swap openssl-fips-provider-latest openssl-fips-provider-certified
   ```

1. Vergewissern Sie sich, dass Sie den zertifizierten OpenSSL FIPS-Anbieter verwenden. Wenn sich AL2 023 im FIPS-Modus befindet, führen Sie den folgenden Befehl aus:

   ```
   openssl list -providers
   ```

   Die Ausgabe sollte folgendermaßen aussehen:

   ```
   Providers:
     base
       name: OpenSSL Base Provider
       version: 3.2.2
       status: active
     default
       name: OpenSSL Default Provider
       version: 3.2.2
       status: active
     fips
       name: Amazon Linux 2023 - OpenSSL FIPS Provider
       version: 3.0.8-d694bfa693b76001
       status: active
   ```

# AL2023 Kernelhärtung
<a name="kernel-hardening"></a>

 Der 6.1-Linux-Kernel AL2023 ist mit verschiedenen Hardening-Optionen und -Funktionen konfiguriert und gebaut. 

## Kernel-Hardening-Optionen (architekturunabhängig)
<a name="kernel-hardening-common"></a>


| `CONFIG`-Option | AL2023/6.1/aarch64 | AL2023/6.1/x86\$164 | AL2023/6.12/aarch64 | AL2023/6.12/x86\$164 | AL2023/6.18/aarch64 | AL2023/6.18/x86\$164 | 
| --- | --- | --- | --- | --- | --- | --- | 
|  [`CONFIG_ACPI_CUSTOM_METHOD`](#CONFIG_ACPI_CUSTOM_METHOD)  |  n  |  n  | – | – | – | – | 
|  [`CONFIG_BINFMT_MISC`](#CONFIG_BINFMT_MISC)  |  m  |  m  |  m  |  m  |  m  |  m  | 
|  [`CONFIG_BUG`](#CONFIG_BUG)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_BUG_ON_DATA_CORRUPTION`](#CONFIG_BUG_ON_DATA_CORRUPTION)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_CFI_CLANG`](#CONFIG_CFI_CLANG)  | – | – | – | – | – | – | 
|  [`CONFIG_CFI_PERMISSIVE`](#CONFIG_CFI_PERMISSIVE)  | – | – | – | – | – | – | 
|  [`CONFIG_COMPAT`](#CONFIG_COMPAT)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_COMPAT_BRK`](#CONFIG_COMPAT_BRK)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_COMPAT_VDSO`](#CONFIG_COMPAT_VDSO)  | – |  n  | – |  n  | – |  n  | 
|  [`CONFIG_DEBUG_CREDENTIALS`](#CONFIG_DEBUG_CREDENTIALS)  |  n  |  n  | – | – | – | – | 
|  [`CONFIG_DEBUG_LIST`](#CONFIG_DEBUG_LIST)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_DEBUG_NOTIFIERS`](#CONFIG_DEBUG_NOTIFIERS)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_DEBUG_SG`](#CONFIG_DEBUG_SG)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_DEBUG_VIRTUAL`](#CONFIG_DEBUG_VIRTUAL)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_DEBUG_WX`](#CONFIG_DEBUG_WX)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_DEFAULT_MMAP_MIN_ADDR`](#CONFIG_DEFAULT_MMAP_MIN_ADDR)  |  65536  |  65536  |  65536  |  65536  |  65536  |  65536  | 
|  [`CONFIG_DEVKMEM`](compare-with-al2-kernel.md#CONFIG_DEVKMEM)  | – | – | – | – | – | – | 
|  [`CONFIG_DEVMEM`](compare-with-al2-kernel.md#CONFIG_DEVMEM)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_EFI_DISABLE_PCI_DMA`](#CONFIG_EFI_DISABLE_PCI_DMA)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_FORTIFY_SOURCE`](compare-with-al2-kernel.md#CONFIG_FORTIFY_SOURCE)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_HARDENED_USERCOPY`](#CONFIG_HARDENED_USERCOPY)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_HARDENED_USERCOPY_FALLBACK`](#CONFIG_HARDENED_USERCOPY_FALLBACK)  | – | – | – | – | – | – | 
|  [`CONFIG_HARDENED_USERCOPY_PAGESPAN`](#CONFIG_HARDENED_USERCOPY_PAGESPAN)  | – | – | – | – | – | – | 
|  [`CONFIG_HIBERNATION`](#CONFIG_HIBERNATION)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_HW_RANDOM_TPM`](#CONFIG_HW_RANDOM_TPM)  | – | – | – | – | – | – | 
|  [`CONFIG_INET_DIAG`](#CONFIG_INET_DIAG)  |  m  |  m  |  m  |  m  |  m  |  m  | 
|  [`CONFIG_INIT_ON_ALLOC_DEFAULT_ON`](#CONFIG_INIT_ON_ALLOC_DEFAULT_ON)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_INIT_ON_FREE_DEFAULT_ON`](#CONFIG_INIT_ON_FREE_DEFAULT_ON)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_INIT_STACK_ALL_ZERO`](#CONFIG_INIT_STACK_ALL_ZERO)  | – | – | – | – | – | – | 
|  [`CONFIG_IOMMU_DEFAULT_DMA_STRICT`](#CONFIG_IOMMU_DEFAULT_DMA_STRICT)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_IOMMU_SUPPORT`](#CONFIG_IOMMU_SUPPORT)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_IO_STRICT_DEVMEM`](compare-with-al2-kernel.md#CONFIG_IO_STRICT_DEVMEM)  | – | – | – | – | – | – | 
|  [`CONFIG_KEXEC`](#CONFIG_KEXEC)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_KFENCE`](#CONFIG_KFENCE)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_LDISC_AUTOLOAD`](compare-with-al2-kernel.md#CONFIG_LDISC_AUTOLOAD)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_LEGACY_PTYS`](#CONFIG_LEGACY_PTYS)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY`](#CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_MODULES`](#CONFIG_MODULES)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_MODULE_SIG`](#CONFIG_MODULE_SIG)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_MODULE_SIG_ALL`](#CONFIG_MODULE_SIG_ALL)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_MODULE_SIG_FORCE`](#CONFIG_MODULE_SIG_FORCE)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_MODULE_SIG_HASH`](#CONFIG_MODULE_SIG_HASH)  |  sha512  |  sha512  |  sha512  |  sha512  |  sha512  |  sha512  | 
|  [`CONFIG_MODULE_SIG_KEY`](#CONFIG_MODULE_SIG_KEY)  |  certs/signing\$1key.pem  |  certs/signing\$1key.pem  |  certs/signing\$1key.pem  |  certs/signing\$1key.pem  |  certs/signing\$1key.pem  |  certs/signing\$1key.pem  | 
|  [`CONFIG_MODULE_SIG_SHA512`](#CONFIG_MODULE_SIG_SHA512)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_PAGE_POISONING`](#CONFIG_PAGE_POISONING)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_PAGE_POISONING_NO_SANITY`](#CONFIG_PAGE_POISONING_NO_SANITY)  | – | – | – | – | – | – | 
|  [`CONFIG_PAGE_POISONING_ZERO`](#CONFIG_PAGE_POISONING_ZERO)  | – | – | – | – | – | – | 
|  [`CONFIG_PANIC_ON_OOPS`](compare-with-al2-kernel.md#CONFIG_PANIC_ON_OOPS)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_PANIC_TIMEOUT`](#CONFIG_PANIC_TIMEOUT)  |  0  |  0  |  0  |  0  |  0  |  0  | 
|  [`CONFIG_PROC_KCORE`](#CONFIG_PROC_KCORE)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT`](#CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_RANDOM_TRUST_BOOTLOADER`](#CONFIG_RANDOM_TRUST_BOOTLOADER)  |  y  |  y  | – | – | – | – | 
|  [`CONFIG_RANDOM_TRUST_CPU`](#CONFIG_RANDOM_TRUST_CPU)  |  y  |  y  | – | – | – | – | 
|  [`CONFIG_REFCOUNT_FULL`](#CONFIG_REFCOUNT_FULL)  | – | – | – | – | – | – | 
|  [`CONFIG_SCHED_CORE`](#CONFIG_SCHED_CORE)  | – |  y  | – |  y  | – |  y  | 
|  [`CONFIG_SCHED_STACK_END_CHECK`](#CONFIG_SCHED_STACK_END_CHECK)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECCOMP`](#CONFIG_SECCOMP)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECCOMP_FILTER`](#CONFIG_SECCOMP_FILTER)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECURITY`](#CONFIG_SECURITY)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECURITY_DMESG_RESTRICT`](compare-with-al2-kernel.md#CONFIG_SECURITY_DMESG_RESTRICT)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECURITY_LANDLOCK`](#CONFIG_SECURITY_LANDLOCK)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECURITY_LOCKDOWN_LSM`](#CONFIG_SECURITY_LOCKDOWN_LSM)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECURITY_LOCKDOWN_LSM_EARLY`](#CONFIG_SECURITY_LOCKDOWN_LSM_EARLY)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECURITY_SELINUX_BOOTPARAM`](#CONFIG_SECURITY_SELINUX_BOOTPARAM)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECURITY_SELINUX_DEVELOP`](#CONFIG_SECURITY_SELINUX_DEVELOP)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECURITY_SELINUX_DISABLE`](compare-with-al2-kernel.md#CONFIG_SECURITY_SELINUX_DISABLE)  |  n  |  n  | – | – | – | – | 
|  [`CONFIG_SECURITY_WRITABLE_HOOKS`](#CONFIG_SECURITY_WRITABLE_HOOKS)  | – | – | – | – | – | – | 
|  [`CONFIG_SECURITY_YAMA`](#CONFIG_SECURITY_YAMA)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SHUFFLE_PAGE_ALLOCATOR`](#CONFIG_SHUFFLE_PAGE_ALLOCATOR)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SLAB_FREELIST_HARDENED`](#CONFIG_SLAB_FREELIST_HARDENED)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SLAB_FREELIST_RANDOM`](#CONFIG_SLAB_FREELIST_RANDOM)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SLUB_DEBUG`](#CONFIG_SLUB_DEBUG)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_STACKPROTECTOR`](#CONFIG_STACKPROTECTOR)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_STACKPROTECTOR_STRONG`](#CONFIG_STACKPROTECTOR_STRONG)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_STATIC_USERMODEHELPER`](#CONFIG_STATIC_USERMODEHELPER)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_STRICT_DEVMEM`](compare-with-al2-kernel.md#CONFIG_STRICT_DEVMEM)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_STRICT_KERNEL_RWX`](#CONFIG_STRICT_KERNEL_RWX)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_STRICT_MODULE_RWX`](#CONFIG_STRICT_MODULE_RWX)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SYN_COOKIES`](#CONFIG_SYN_COOKIES)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_VMAP_STACK`](#CONFIG_VMAP_STACK)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_WERROR`](#CONFIG_WERROR)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_ZERO_CALL_USED_REGS`](#CONFIG_ZERO_CALL_USED_REGS)  |  n  |  n  |  n  |  n  |  n  |  n  | 

### ACPI-Methoden zur Laufzeit zulassen (CONFIG\$1ACPI\$1CUSTOM\$1METHOD) inserted/replaced
<a name="CONFIG_ACPI_CUSTOM_METHOD"></a>

Diese Option ist in Amazon Linux deaktiviert, da sie `root`-Benutzern erlaubt, in beliebigen Kernelspeicher zu schreiben.

Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings).

### Verschiedene Binärformate (`binfmt_misc`)
<a name="CONFIG_BINFMT_MISC"></a>

 Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen, setzt diese Konfigurationsoption AL2023 jedoch nicht auf das, was KSPP empfiehlt](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). In AL2023 ist diese Funktion optional und wurde als Kernelmodul erstellt. 

### `BUG()`-Support
<a name="CONFIG_BUG"></a>

 Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### `BUG()` wenn der Kernel bei der Gültigkeitspprüfung der Kernel-Speicherstrukturen auf beschädigte Daten stößt
<a name="CONFIG_BUG_ON_DATA_CORRUPTION"></a>

 Einige Teile des Linux-Kernels prüfen die interne Konsistenz von Datenstrukturen und können `BUG()`, falls beschädigte Daten gefunden werden. 

 Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### `COMPAT_BRK`
<a name="CONFIG_COMPAT_BRK"></a>

 Wenn diese Option deaktiviert ist (dies ist die Kernelkonfiguration in Amazon Linux), wird die `randomize_va_space`-`sysctl`-Einstellung standardmäßig auf `2` gesetzt, wodurch zusätzlich eine Randomisierungen der `mmap`-Basis-, -Stack- und -VDSO-Seite aktiviert wird. 

 Der Kernel bietet diese Option, um Kompatibilität mit einigen alten `libc.so.5`-Binärdateien aus 1996 und früher zu gewährleisten. 

 Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### `COMPAT_VDSO`
<a name="CONFIG_COMPAT_VDSO"></a>

 Diese Konfigurationsoption ist relevant für `x86-64` und nicht `aarch64`. Wenn Sie diese Option auf `n` setzen, macht der Amazon Linux-Kernel kein virtuelles dynamisches Shared Object (VDSO) mit 32 Bit an einer vorhersehbaren Adresse sichtbar. Die jüngste `glibc`, von der bekannt ist, dass sie durch die Festlegung dieser Option auf `n` beschädigt wurde, ist `glibc` 2.3.3 aus dem Jahr 2004. 

 Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### `CONFIG_DEBUG`kontrolliertes Härten
<a name="CONFIG_DEBUG_KERNEL"></a>

 Die Konfigurationsoptionen des Linux-Kernels, von denen Gated by gesteuert wird, `CONFIG_DEBUG` sind normalerweise für die Verwendung in Kerneln konzipiert, die für Debugging-Probleme gebaut wurden, und Dinge wie Leistung haben keine Priorität. AL2023 aktiviert die `CONFIG_DEBUG_LIST` Härtungsoption. 

### Deaktivieren von DMA für PCI-Geräte im EFI-Stub vor der IOMMU-Konfigurierung
<a name="CONFIG_EFI_DISABLE_PCI_DMA"></a>

 Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), AL2023 setzt diese Konfigurationsoption jedoch nicht auf die von KSPP empfohlenen Einstellungen. 

### Hardening für das Kopieren von Speicher zwischen Kernel und Userspace
<a name="CONFIG_HARDENED_USERCOPY"></a>

 Wenn der Kernel Speicher in den oder aus dem Userspace kopieren muss, aktiviert diese Option einige Prüfungen, die vor einigen Arten von Heap-Overflow-Problemen schützen können. 

 Die `CONFIG_HARDENED_USERCOPY_FALLBACK`-Option war bereits in den Kerneln 4.16 bis 5.15 vorhanden, um Kernel-Entwicklern zu helfen, fehlende Allowlist-Einträge mithilfe von `WARN()` aufzufinden. Da ein 6.1-Kernel AL2023 ausgeliefert wird, ist diese Option nicht mehr relevant für. AL2023 

 Die `CONFIG_HARDENED_USERCOPY_PAGESPAN` Option existierte in Kerneln hauptsächlich als Debugging-Option für Entwickler und gilt nicht mehr für den 6.1-Kernel in. AL2023 

 Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### Hibernation-Unterstützung
<a name="CONFIG_HIBERNATION"></a>

 Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), AL2023 setzt diese Konfigurationsoption jedoch nicht auf das, was KSPP empfiehlt. Diese Option muss aktiviert sein, um [Hibernation der On-Demand Instance](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html) und [Hibernation für unterbrochene Spot Instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hibernate-spot-instances.html) zu unterstützen. 

### Generierung von Zufallszahlen
<a name="kernel-rng"></a>

 Der AL2023-Kernel ist so konfiguriert, dass sichergestellt ist, dass eine angemessene Entropie für die Verwendung in EC2 verfügbar ist. 

### `CONFIG_INET_DIAG`
<a name="CONFIG_INET_DIAG"></a>

 Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), AL2023 setzt diese Konfigurationsoption jedoch nicht auf das, was KSPP empfiehlt. In AL2023 ist diese Funktion optional und wurde als Kernelmodul erstellt. 

### Bei der Zuweisung und Freigabe wird der gesamte Kernel-Page- und Slab-Allocator-Speicher auf Null gesetzt
<a name="kernel-init-on-alloc-free"></a>

 Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), AL2023 setzt diese Konfigurationsoption jedoch nicht auf das, was KSPP empfiehlt. Diese Optionen sind AL2023 aufgrund der möglichen Leistungseinbußen bei der standardmäßigen Aktivierung dieser Funktion deaktiviert. Das `CONFIG_INIT_ON_ALLOC_DEFAULT_ON`-Verhalten kann durch Hinzufügen von `init_on_alloc=1` zur Kernel-Befehlszeile aktiviert werden, und das `CONFIG_INIT_ON_FREE_DEFAULT_ON`-Verhalten kann durch Hinzufügen von `init_on_free=1` aktiviert werden. 

### Alle Stack-Variablen als Null (`CONFIG_INIT_STACK_ALL_ZERO`) initialisieren
<a name="CONFIG_INIT_STACK_ALL_ZERO"></a>

 Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), legt diese Konfigurationsoption AL2023 jedoch nicht auf die von KSPP empfohlenen Einstellungen fest. Diese Option erfordert GCC 12 oder höher und ist im Lieferumfang von GCC 11 enthalten AL2023 . 

### Signieren des Kernel-Moduls
<a name="kernel-config-modules"></a>

 AL2023 signiert und validiert die Signaturen von Kernelmodulen. Die `CONFIG_MODULE_SIG_FORCE`-Option, nach der Module über eine gültige Signatur verfügen müssten, ist nicht aktiviert, um die Kompatibilität für Benutzer zu gewährleisten, die Module von Drittanbietern erstellen. Für Benutzer, die sicherstellen möchten, dass alle Kernelmodule signiert sind, kann [Lockdown Linux-Sicherheitsmodul (LSM)](#CONFIG_SECURITY_LOCKDOWN_LSM) so konfiguriert werden, dass eine Verifizierung erzwungen wird. 

### `kexec`
<a name="CONFIG_KEXEC"></a>

 Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), AL2023 setzt diese Konfigurationsoption jedoch nicht auf das, was KSPP empfiehlt. Diese Option ist aktiviert, sodass die `kdump`-Funktionalität genutzt werden kann. 

### `IOMMU`Support
<a name="CONFIG_IOMMU_SUPPORT"></a>

 AL2023 aktiviert IOMMU-Unterstützung. Die `CONFIG_IOMMU_DEFAULT_DMA_STRICT`-Option ist standardmäßig nicht aktiviert, aber diese Funktionalität kann durch eine Hinzufügung von `iommu.passthrough=0 iommu.strict=1` zur Kernel-Befehlszeile konfiguriert werden. 

### `kfence`
<a name="CONFIG_KFENCE"></a>

 Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), AL2023 setzt diese Konfigurationsoption jedoch nicht auf die von KSPP empfohlenen Einstellungen. 

### Legacy-`pty`-Unterstützung
<a name="CONFIG_LEGACY_PTYS"></a>

 AL2023 verwendet die moderne PTY Schnittstelle (). `devpts` 

 Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### Lockdown Linux-Sicherheitsmodul (LSM)
<a name="CONFIG_SECURITY_LOCKDOWN_LSM"></a>

 AL2023 erstellt das `lockdown` LSM, das den Kernel automatisch sperrt, wenn Secure Boot verwendet wird. 

 Die `CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY`-Option ist nicht aktiviert. Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), AL2023 setzt diese Konfigurationsoption jedoch nicht auf die von KSPP empfohlenen Einstellungen. Wenn Secure Boot nicht verwendet wird, kann das Lockdown-LSM aktiviert und nach Bedarf konfiguriert werden. 

### Seitenvergiftung
<a name="CONFIG_PAGE_POISONING"></a>

 Diese Option gehört zwar zu den empfohlenen Einstellungen des [Kernel Self Protection Project (KSPP), AL2023 setzt diese Konfigurationsoption jedoch nicht auf die von KSPP empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). In ähnlicher Weise ist diese Option im AL2023 Kernel aufgrund möglicher Auswirkungen auf die Leistung deaktiviert. [Bei der Zuweisung und Freigabe wird der gesamte Kernel-Page- und Slab-Allocator-Speicher auf Null gesetzt](#kernel-init-on-alloc-free) 

### Stack Protector
<a name="CONFIG_STACKPROTECTOR"></a>

 Der AL2023 Kernel wurde so gebaut, dass die Stack-Protector-Funktion mit der GCC Option aktiviert wurde. `-fstack-protector-strong` 

 Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### seccomp BPFAPI
<a name="CONFIG_SECCOMP"></a>

 Das seccomp-Hardening-Feature wird von Software wie `systemd` und Container-Runtimes verwendet, um Userspace-Anwendungen zu schützen. 

 Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### `panic()` timeout
<a name="CONFIG_PANIC_TIMEOUT"></a>

 Der AL2023 Kernel ist so konfiguriert, dass dieser Wert auf gesetzt ist`0`, was bedeutet, dass der Kernel nicht neu gestartet wird, wenn er in Panik gerät. Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), AL2023 setzt diese Konfigurationsoption jedoch nicht auf das, was KSPP empfiehlt. Dies kann über `sysctl` `/proc/sys/kernel/panic` oder über die Kernel-Befehlszeile konfiguriert werden. 

### Sicherheitsmodelle
<a name="CONFIG_SECURITY"></a>

 AL2023 ist SELinux standardmäßig im permissiven Modus aktiviert. Weitere Informationen finden Sie unter [SELinux Einstellmodi für AL2 023](selinux-modes.md). 

 Die `yama`- und [Lockdown Linux-Sicherheitsmodul (LSM)](#CONFIG_SECURITY_LOCKDOWN_LSM)-Module sind ebenfalls aktiviert. 

### `/proc/kcore`
<a name="CONFIG_PROC_KCORE"></a>

 Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), AL2023 setzt diese Konfigurationsoption jedoch nicht auf die von KSPP empfohlenen Einstellungen. 

### Randomisierung des Kernel-Stack-Offsets bei Eingabe von „syscall“
<a name="CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT"></a>

 Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), AL2023 setzt diese Konfigurationsoption jedoch nicht auf das, was KSPP empfiehlt. Dies kann durch eine Einstellung `randomize_kstack_offset=on` in der Kernel-Befehlszeile aktiviert werden. 

### Prüfungen zur Referenzzählung (`CONFIG_REFCOUNT_FULL`)
<a name="CONFIG_REFCOUNT_FULL"></a>

 Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), AL2023 setzt diese Konfigurationsoption jedoch nicht auf das, was KSPP empfiehlt. Diese Option ist derzeit aufgrund möglicher Auswirkungen auf die Leistung nicht aktiviert. 

### Scheduler-Kenntnisnahme der SMT-Cores (`CONFIG_SCHED_CORE`)
<a name="CONFIG_SCHED_CORE"></a>

 Der AL2023 Kernel ist mit gebaut`CONFIG_SCHED_CORE`, was die Verwendung von Userspace-Anwendungen ermöglicht. `prctl(PR_SCHED_CORE)` Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### Stack-Fehlerprüfung bei Aufrufen von `schedule()` (`CONFIG_SCHED_STACK_END_CHECK`)
<a name="CONFIG_SCHED_STACK_END_CHECK"></a>

 Der AL2023 Kernel wird mit `CONFIG_SCHED_STACK_END_CHECK` aktivierter Option erstellt. Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### Härtung der Speicherzuweisung
<a name="kernel-allocator-hardening"></a>

 Der AL2023 Kernel ermöglicht das Härten des Kernel-Speicherzuweisers mit den Optionen`CONFIG_SHUFFLE_PAGE_ALLOCATOR`, und`CONFIG_SLAB_FREELIST_HARDENED`. `CONFIG_SLAB_FREELIST_RANDOM` Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### SLUB Debugging-Support
<a name="CONFIG_SLUB_DEBUG"></a>

 Der AL2023 Kernel aktiviert, `CONFIG_SLUB_DEBUG` da diese Option optionale Debugging-Funktionen für den Allocator aktiviert, die in der Kernel-Befehlszeile aktiviert werden können. Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### CONFIG\$1STATIC\$1USERMODEHELPER
<a name="CONFIG_STATIC_USERMODEHELPER"></a>

 Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), AL2023 setzt diese Konfigurationsoption jedoch nicht auf das, was KSPP empfiehlt. Dies liegt daran, dass `CONFIG_STATIC_USERMODEHELPER` besonderen Support von der Distribution benötigt, der derzeit in Amazon Linux nicht verfügbar ist. 

### Schreibgeschützter Kerneltext und rodata (`CONFIG_STRICT_KERNEL_RWX` und `CONFIG_STRICT_MODULE_RWX`)
<a name="CONFIG_STRICT_KERNEL_RWX"></a>

 Der AL2023 Kernel ist so konfiguriert, dass er Text und Speicher des Kernels und des Kernelmoduls als schreibgeschützt und rodata Nicht-Textspeicher als nicht ausführbar markiert. Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### TCP Syncookie-Support (`CONFIG_SYN_COOKIES`)
<a name="CONFIG_SYN_COOKIES"></a>

 Der AL2023 Kernel ist mit Unterstützung für TCP-Syncookies gebaut. Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### Virtuell zugeordneter Stack mit Guard-Seiten (`CONFIG_VMAP_STACK`)
<a name="CONFIG_VMAP_STACK"></a>

 Der AL2023 Kernel ist mit gebaut`CONFIG_VMAP_STACK`, was virtuell zugeordnete Kernel-Stacks mit Schutzseiten ermöglicht. Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### Build mit Compiler-Warnungen als Fehler angezeigt (`CONFIG_WERROR`)
<a name="CONFIG_WERROR"></a>

 Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), AL2023 setzt diese Konfigurationsoption jedoch nicht auf das, was KSPP empfiehlt. 

### Nullstellung des Registers bei Funktionsbeendigung (`CONFIG_ZERO_CALL_USED_REGS`)
<a name="CONFIG_ZERO_CALL_USED_REGS"></a>

 Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), AL2023 setzt diese Konfigurationsoption jedoch nicht auf das, was KSPP empfiehlt. 

### Mindestadresse für Userspace-Zuweisungen
<a name="CONFIG_DEFAULT_MMAP_MIN_ADDR"></a>

 Diese Hardening-Option kann die Auswirkungen von Kernel-NULL-Pointer-Bugs reduzieren. Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### `clang`spezifische Härtungsoptionen
<a name="kernel-hardening-clang"></a>

 Der AL2023 Kernel ist mit und GCC nicht gebautclang, daher kann die `CONFIG_CFI_CLANG` Hardening-Option nicht aktiviert werden, weshalb sie auch `CONFIG_CFI_PERMISSIVE` nicht anwendbar ist. Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), AL2023 setzt diese Konfigurationsoption jedoch nicht auf die von KSPP empfohlenen Einstellungen. 

## Spezifische Kernel-Hardening-Optionen für x86-64
<a name="kernel-hardening-x86-64"></a>


| `CONFIG`-Option | AL2023/6.1/aarch64 | AL2023/6.1/x86\$164 | AL2023/6.12/aarch64 | AL2023/6.12/x86\$164 | AL2023/6.18/aarch64 | AL2023/6.18/x86\$164 | 
| --- | --- | --- | --- | --- | --- | --- | 
|  [`CONFIG_AMD_IOMMU`](#CONFIG_AMD_IOMMU)  | – |  y  | – |  y  | – |  y  | 
|  [`CONFIG_AMD_IOMMU_V2`](#CONFIG_AMD_IOMMU_V2)  | – |  y  | – | – | – | – | 
|  [`CONFIG_IA32_EMULATION`](#CONFIG_IA32_EMULATION)  | – |  y  | – |  y  | – |  y  | 
|  [`CONFIG_INTEL_IOMMU`](#CONFIG_INTEL_IOMMU)  | – |  y  | – |  y  | – |  y  | 
|  [`CONFIG_INTEL_IOMMU_DEFAULT_ON`](#CONFIG_INTEL_IOMMU_DEFAULT_ON)  | – |  n  | – |  n  | – |  n  | 
|  [`CONFIG_INTEL_IOMMU_SVM`](#CONFIG_INTEL_IOMMU_SVM)  | – |  n  | – |  n  | – |  n  | 
|  [`CONFIG_LEGACY_VSYSCALL_NONE`](#CONFIG_LEGACY_VSYSCALL_NONE)  | – |  n  | – |  n  | – |  n  | 
|  [`CONFIG_MODIFY_LDT_SYSCALL`](#CONFIG_MODIFY_LDT_SYSCALL)  | – |  n  | – |  n  | – |  n  | 
|  [`CONFIG_PAGE_TABLE_ISOLATION`](#CONFIG_PAGE_TABLE_ISOLATION)  | – |  y  | – | – | – | – | 
|  [`CONFIG_RANDOMIZE_MEMORY`](#CONFIG_RANDOMIZE_MEMORY)  | – |  y  | – |  y  | – |  y  | 
|  [`CONFIG_X86_64`](#CONFIG_X86_64)  | – |  y  | – |  y  | – |  y  | 
|  [`CONFIG_X86_MSR`](#CONFIG_X86_MSR)  | – |  y  | – |  y  | – |  y  | 
|  [`CONFIG_X86_VSYSCALL_EMULATION`](#CONFIG_X86_VSYSCALL_EMULATION)  | – |  y  | – |  y  | – |  y  | 
|  [`CONFIG_X86_X32`](#CONFIG_X86_X32)  | – | – | – | – | – | – | 
|  [`CONFIG_X86_X32_ABI`](#CONFIG_X86_X32_ABI)  | – |  n  | – |  n  | – |  n  | 

### x86-64-Unterstützung
<a name="CONFIG_X86_64"></a>

 Basis-Support für x86-64 umfasst die Unterstützung für Physical Address Extension (PAE) und No-Execute-Bits (NX). Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### Unterstützung für AMD und Intel IOMMU
<a name="kernel-x86-64-iommu"></a>

 Der AL2023 Kernel wird mit Unterstützung für AMD und Intel gebaut. IOMMUs Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

 Die `CONFIG_INTEL_IOMMU_DEFAULT_ON`-Option ist nicht gesetzt, kann aber durch Übergabe von `intel_iommu=on` an die Kernel-Befehlszeile aktiviert werden. Obwohl es sich bei dieser Option um eine der [empfohlenen Einstellungen des Kernel Self Protection Project (KSPP)](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings) handelt, AL2023 entspricht diese Konfigurationsoption nicht den Empfehlungen von KSPP. 

 Die `CONFIG_INTEL_IOMMU_SVM` Option ist derzeit in nicht aktiviert. AL2023 Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), AL2023 setzt diese Konfigurationsoption jedoch nicht auf die von KSPP empfohlenen Einstellungen. 

### Support für 32-Bit-Userspace
<a name="kernel-hardening-32bit-support"></a>

**Wichtig**  
 Support für 32-Bit-x86-Userspace ist veraltet und Unterstützung für die Ausführung von 32-Bit-Userspace-Binärdateien wird möglicherweise in einer zukünftigen Hauptversion von Amazon Linux entfernt. 

**Anmerkung**  
 Der Kernel enthält zwar AL2023 keine 32-Bit-Pakete mehr, unterstützt aber weiterhin den Betrieb von 32-Bit-Userspace. Weitere Informationen finden Sie unter [32-Bit x86-(i686)-Pakete](compare-with-al2.md#i686). 

 Um die Ausführung von 32-Bit-Userspace-Anwendungen zu unterstützen, aktiviert die `CONFIG_X86_VSYSCALL_EMULATION` Option AL2023 nicht und aktiviert die `CONFIG_IA32_EMULATION` Optionen, und. `CONFIG_COMPAT` `CONFIG_X86_VSYSCALL_EMULATION` Diese Option gehört zwar zu den empfohlenen Einstellungen des [Kernel Self Protection Project (KSPP), AL2023 setzt diese Konfigurationsoption jedoch nicht auf die von KSPP empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

 Die x32-native 32-Bit-ABI für 64-Bit-Prozessoren ist nicht aktiviert (`CONFIG_X86_X32` und `CONFIG_X86_X32_ABI`). Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### x86 Model Specific Register (MSR)-Support
<a name="CONFIG_X86_MSR"></a>

 Die `CONFIG_X86_MSR`-Option ist aktiviert, um Unterstützung für `turbostat` zuzulassen. Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), AL2023 setzt diese Konfigurationsoption jedoch nicht auf das, was KSPP empfiehlt. 

### `modify_ldt`-Syscall
<a name="CONFIG_MODIFY_LDT_SYSCALL"></a>

 AL2023 erlaubt Benutzerprogrammen nicht, die x86-Local Descriptor Table (LDT) mit dem Syscall zu ändern. `modify_ldt` Dieser Aufruf ist erforderlich, um 16-Bit-Code oder segmentierten Code auszuführen, und sein Fehlen kann dazu führen, dass Software wie `dosemu`, das Ausführen einiger Programme unter WINE und einige sehr alte Threading-Bibliotheken beschädigt werden könnte. Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### Entfernen der Kernelzuordnung im Benutzermodus
<a name="CONFIG_PAGE_TABLE_ISOLATION"></a>

 AL2023 konfiguriert den Kernel so, dass die meisten Kerneladressen nicht dem Benutzerbereich zugeordnet werden. Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### Randomisieren von Kernel-Speicherbereichen
<a name="CONFIG_RANDOMIZE_MEMORY"></a>

 AL2023 konfiguriert den Kernel so, dass er die virtuellen Basisadressen der Kernel-Speicherbereiche nach dem Zufallsprinzip sortiert. Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

## aarch64-spezifische Kernel-Hardening-Optionen
<a name="kernel-hardening-aarch64"></a>


| `CONFIG`-Option | AL2023/6.1/aarch64 | AL2023/6.1/x86\$164 | AL2023/6.12/aarch64 | AL2023/6.12/x86\$164 | AL2023/6.18/aarch64 | AL2023/6.18/x86\$164 | 
| --- | --- | --- | --- | --- | --- | --- | 
|  [`CONFIG_ARM64_BTI`](#CONFIG_ARM64_BTI)  |  y  | – |  y  | – |  y  | – | 
|  [`CONFIG_ARM64_BTI_KERNEL`](#CONFIG_ARM64_BTI_KERNEL)  | – | – | – | – | – | – | 
|  [`CONFIG_ARM64_PTR_AUTH`](#CONFIG_ARM64_PTR_AUTH)  |  y  | – |  y  | – |  y  | – | 
|  [`CONFIG_ARM64_PTR_AUTH_KERNEL`](#CONFIG_ARM64_PTR_AUTH_KERNEL)  |  y  | – |  y  | – |  y  | – | 
|  [`CONFIG_ARM64_SW_TTBR0_PAN`](#CONFIG_ARM64_SW_TTBR0_PAN)  |  y  | – |  y  | – |  y  | – | 
|  [`CONFIG_UNMAP_KERNEL_AT_EL0`](#CONFIG_UNMAP_KERNEL_AT_EL0)  |  y  | – |  y  | – |  y  | – | 

### Identifizierung des -Abzweigungsziels
<a name="CONFIG_ARM64_BTI"></a>

 Der AL2023 Kernel aktiviert die Unterstützung für Branch Target Identification (). `CONFIG_ARM64_BTI` Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

 Die `CONFIG_ARM64_BTI_KERNEL` Option ist nicht aktiviert, AL2023 da sie mit gebaut wurdeGCC, und die Unterstützung für das Erstellen des Kernels mit dieser Option ist [derzeit im Upstream-Kernel aufgrund eines [GCC−Fehlers](https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106671) deaktiviert](https://github.com/torvalds/linux/commit/c0a454b9044fdc99486853aa424e5b3be2107078). Diese Option gehört zwar zu den vom [Kernel Self Protection Project (KSPP) empfohlenen Einstellungen](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings), AL2023 setzt diese Konfigurationsoption jedoch nicht auf das, was KSPP empfiehlt. 

### Pointer-Authentifizierung (`CONFIG_ARM64_PTR_AUTH`)
<a name="CONFIG_ARM64_PTR_AUTH"></a>

 Der AL2023 Kernel unterstützt die Pointer Authentication-Erweiterung (Teil der ARMv8 3.3-Erweiterungen), mit deren Hilfe Return Oriented Programming (ROP) -Techniken (Return Oriented Programming) vermieden werden können. Die erforderliche Hardwareunterstützung für Pointer-Authentifizierung unter [Graviton](https://aws.amazon.com/ec2/graviton) wurde mit Graviton 3 eingeführt. 

 Die `CONFIG_ARM64_PTR_AUTH`-Option ist aktiviert und unterstützt die Pointer-Authentifizierung für den Userspace. Da die `CONFIG_ARM64_PTR_AUTH_KERNEL` Option ebenfalls aktiviert ist, kann der AL2023 Kernel den Schutz der Absenderadresse für sich selbst nutzen. 

 Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### Privilegierten Zugriff emulieren – Niemals `TTBR0_EL1`-Switching verwenden
<a name="CONFIG_ARM64_SW_TTBR0_PAN"></a>

 Diese Option verhindert direkten Kernel-Zugriff auf den Userspace-Speicher. `TTBR0_EL1` wird von den Benutzerzugriffsroutinen nur vorübergehend auf einen gültigen Wert gesetzt. 

 Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

### Entfernen der Kernel-Zuweisung bei Ausführung im Userspace
<a name="CONFIG_UNMAP_KERNEL_AT_EL0"></a>

 Der AL2023 Kernel ist so konfiguriert, dass er die Zuordnung des Kernels aufhebt, wenn er in userspace () `CONFIG_UNMAP_KERNEL_AT_EL0` ausgeführt wird. Diese Option ist eine der [empfohlenen Einstellungen des Kernel Self Protection Project](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings). 

# Anmeldung mit Repository-Metadaten AL2023
<a name="repo-metadata-signing"></a>

Ab der Veröffentlichung `2023.11.20260406` enthalten AL2023 Repositorys kryptografische Signaturen für Repository-Metadaten. Jeder `repomd.xml` Repository-Datei liegt eine separate GPG-Signaturdatei (`repomd.xml.asc`) bei, mit der Sie die Authentizität und Integrität der Repository-Metadaten überprüfen können, bevor Pakete heruntergeladen werden.

Diese Signierung erfolgt zusätzlich zur bestehenden RPM-Paketsignierung (`gpgcheck`), die einzelne Pakete verifiziert. Beim Signieren von Repository-Metadaten werden die Metadaten überprüft, die den Inhalt des Repositorys beschreiben, z. B. die Liste der verfügbaren Pakete und deren Prüfsummen.

## So funktioniert die Signatur von Repository-Metadaten
<a name="repo-metadata-signing-overview"></a>

Wenn AL2023 Repositorys veröffentlicht werden, werden die Repository-Metadaten (`repomd.xml`) mit einem AWS KMS-Schlüssel signiert. Die daraus resultierende separate Signatur (`repomd.xml.asc`) wird neben den Metadaten im Repository platziert.

Wenn Sie die Option `repo_gpgcheck` in Ihrer Repository-Konfiguration aktivieren, DNF wird die `repomd.xml.asc` Signatur automatisch heruntergeladen und anhand des öffentlichen GPG-Schlüssels überprüft, bevor die Repository-Metadaten verwendet werden. Wenn die Signaturüberprüfung fehlschlägt, werden die DNF Repository-Metadaten zurückgewiesen und es werden keine Paketoperationen von diesem Repository aus durchgeführt. Weitere Informationen zu `repo_gpgcheck` finden Sie in der [DNFKonfigurationsreferenz.](https://dnf.readthedocs.io/en/latest/conf_ref.html)

Die folgenden AL2023 Repositorys enthalten signierte Metadaten:
+ Kern-Repository () `amazonlinux`
+ Kernel-Livepatch-Repository () `kernel-livepatch`
+ NVIDIA-Repository () `amazonlinux-nvidia`
+ Zusätzliche Pakete für das Amazon Linux-Repository (`amazonlinux-spal`)

## Unterschied zwischen `gpgcheck` und `repo_gpgcheck`
<a name="repo-metadata-signing-gpgcheck-vs-repo-gpgcheck"></a>


| Einstellung | Was es verifiziert | Standard in AL2023 | 
| --- | --- | --- | 
| gpgcheck=1 | Überprüft vor der Installation die GPG-Signatur einzelner RPM-Pakete. | Aktiviert | 
| repo\$1gpgcheck=1 | Überprüft die GPG-Signatur der Repository-Metadaten (repomd.xml), bevor das Repository verwendet wird. | Deaktiviert (ab der 2023.12 vierteljährlichen Veröffentlichung standardmäßig aktiviert) | 

Wir empfehlen dringend, sowohl als auch `gpgcheck` zu aktivieren`repo_gpgcheck`. Dadurch wird sichergestellt, dass sowohl die Repository-Metadaten als auch die einzelnen Pakete vor der Verwendung überprüft werden.

## Überprüfung der Repository-Metadaten aktivieren
<a name="repo-metadata-signing-enable"></a>

Sie können die Überprüfung von Repository-Metadaten für einzelne Repositorys aktivieren, indem Sie deren Konfigurationsdateien aktualisieren.

**Wichtig**  
Ab der `2023.12` vierteljährlichen Version `repo_gpgcheck=1` wird diese Option standardmäßig in den AL2023 Repository-Konfigurationsdateien aktiviert.

### Für ein bestimmtes Repository aktivieren
<a name="repo-metadata-signing-enable-per-repo"></a>

Die AL2023 Repository-Konfigurationsdateien sind `repo_gpgcheck=0` standardmäßig `/etc/yum.repos.d/` festgelegt. Um die Überprüfung der Repository-Metadaten zu aktivieren, ändern Sie diesen Wert `1` in der Repository-Konfiguration auf. Um ihn beispielsweise für das Core-Repository zu aktivieren, gehen Sie wie folgt vor:

```
[amazonlinux]
name=Amazon Linux 2023 repository
...
gpgcheck=1
repo_gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023
```

## Überprüfen, ob das Signieren von Repository-Metadaten funktioniert
<a name="repo-metadata-signing-verify"></a>

Nach der Aktivierung können Sie überprüfen`repo_gpgcheck=1`, ob die Überprüfung der Metadaten funktioniert, indem Sie den DNF Cache leeren und die Metadaten aktualisieren:

```
[ec2-user ~]$ sudo dnf clean metadata
[ec2-user ~]$ sudo dnf makecache
```

Wenn die Metadatenüberprüfung erfolgreich ist, wird der GPG-Schlüssel DNF importiert (sofern er nicht bereits importiert wurde) und der Metadaten-Cache ohne Fehler erstellt. Die Ausgabe entspricht weitgehend der Folgenden:

```
Amazon Linux 2023 repository                    1.7 MB/s | 1.8 kB     00:00
Importing GPG key 0xD832C631:
 Userid     : "Amazon Linux <amazon-linux@amazon.com>"
 Fingerprint: B21C 50FA 44A9 9720 EAA7 2F7F E951 904A D832 C631
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023
Amazon Linux 2023 repository                      18 MB/s |  55 MB     00:03
Metadata cache created.
```

Wenn die Signaturüberprüfung fehlschlägt, DNF wird eine Fehlermeldung angezeigt, die darauf hinweist, dass die GPG-Signaturüberprüfung fehlgeschlagen ist und die Erstellung des Metadatencaches fehlschlägt.

## Öffentliche GPG-Schlüssel für Repositorien AL2023
<a name="repo-metadata-signing-gpg-keys"></a>

Die öffentlichen GPG-Schlüssel, die für die Überprüfung der Repository-Metadaten verwendet werden, werden von der entsprechenden Repository-Konfiguration auf installiert. RPMs `/etc/pki/rpm-gpg/` In der folgenden Tabelle sind die öffentlichen Schlüssel aufgeführt, die von den einzelnen Repositorien verwendet werden.


| Repository | Schlüssel zum Signieren von Paketen | Repodata-Signaturschlüssel | Verteilt in | 
| --- | --- | --- | --- | 
| Kern (amazonlinux) | RPM-GPG-KEY-amazon-linux-2023 | RPM-GPG-KEY-amazon-linux-2023 | system-release | 
| Kernel-Live-Patch () kernel-livepatch | RPM-GPG-KEY-amazon-linux-2023 | RPM-GPG-KEY-amazon-linux-2023 | system-release | 
| NVIDIA () amazonlinux-nvidia | RPM-GPG-KEY-NVIDIA-D42D0685 | RPM-GPG-KEY-amazon-linux-2023-nvidia | nvidia-release | 
| SPAL () amazonlinux-spal | RPM-GPG-KEY-amazonlinux-spal | RPM-GPG-KEY-amazonlinux-spal | spal-release | 

Diese Schlüssel werden automatisch installiert, wenn Sie das entsprechende RPM für die Repository-Konfiguration installieren.

# UEFI Secure Boot aktiviert AL2023
<a name="uefi-secure-boot"></a>

AL2023 unterstützt UEFI Secure Boot ab Version 2023.1. AL2023 muss mit Amazon-EC2-Instances verwendet werden, die sowohl UEFI als auch UEFI Secure Boot unterstützen. Weitere Informationen finden Sie unter [Anforderungen für den Start einer Amazon EC2 EC2-Instance im UEFI-Startmodus](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/launch-instance-boot-mode.html) im *Amazon EC2 EC2-Benutzerhandbuch*.

AL2023 Instances mit aktiviertem UEFI Secure Boot akzeptieren nur Code auf Kernelebene, einschließlich des Linux-Kernels sowie Module, die signiert sind, Amazon sodass Sie sicherstellen können, dass Ihre Instance nur Codes auf Kernelebene ausführt, die von signiert wurden. AWS

 *Weitere Informationen zu Amazon EC2 EC2-Instances und UEFI Secure Boot finden Sie unter [UEFI Secure Boot for Amazon Amazon EC2-Instances im Amazon EC2 EC2-Benutzerhandbuch](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/uefi-secure-boot.html).*

**Voraussetzungen**
+ Sie müssen ein AMI mit AL2023 Version 2023.1 oder höher verwenden.
+ Der Instance-Typ muss UEFI Secure Boot unterstützen. Weitere Informationen finden Sie unter [Anforderungen für den Start einer Amazon EC2 EC2-Instance im UEFI-Startmodus](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/launch-instance-boot-mode.html) im *Amazon EC2 EC2-Benutzerhandbuch*.

## Aktivieren Sie UEFI Secure Boot auf AL2023
<a name="enablement"></a>

Standardmäßig sind ein Bootloader und ein mit unseren Schlüsseln signierter Kernel AL2023 AMIs enthalten. Sie können UEFI Secure Boot aktivieren, indem Sie entweder bestehende Instanzen registrieren oder wenn UEFI Secure Boot bereits aktiviert ist, indem Sie ein Image aus einem Snapshot registrieren. AMIs UEFI Secure Boot ist standardmäßig nicht aktiviert. AL2023 AMIs

Der Startmodus von AL2023 AMIs ist auf eingestellt`uefi-preferred`, wodurch sichergestellt AMIs wird, dass die damit gestarteten Instanzen die UEFI-Firmware verwenden, sofern der Instanztyp UEFI unterstützt. Sollte der Instance-Typ UEFI nicht unterstützen, dann wird die Instance mit Legacy-BIOS gestartet. Wird eine Instance im Legacy-BIOS-Modus gestartet, so wird UEFI Secure Boot nicht durchgesetzt.

Weitere Informationen zu AMI-Startmodi auf Amazon EC2 EC2-Instances finden Sie unter [Instance-Startverhalten mit Amazon Amazon EC2-Startmodi](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html) im *Amazon EC2 EC2-Benutzerhandbuch*.

**Topics**
+ [Aktivieren Sie UEFI Secure Boot auf AL2023](#enablement)
+ [Registrierung einer vorhandenen Instance](#enrollment-existing-instance)
+ [Image aus einem Snapshot registrieren](#secure-boot-amis)
+ [Widerruf-Updates](#revocation-updates)
+ [So funktioniert UEFI Secure Boot auf AL2023](#shim-use)
+ [Eigene Schlüssel registrieren](#enrolling-own-keys)

## Registrierung einer vorhandenen Instance
<a name="enrollment-existing-instance"></a>

Wenn Sie eine vorhandene Instanz registrieren möchten, befüllen Sie die spezifischen UEFI-Firmware-Variablen mit einem Schlüsselsatz, die der Firmware erlaubt, beim nächsten Start den Bootloader zu verifizieren und dem Bootloader erlaubt, den Kernel zu verifizieren.

1. Amazon Linux bietet ein Tool zur Vereinfachung des Registrierungsprozesses. Mit dem folgenden Befehl stellen Sie der Instance den erforderlichen Satz von Schlüsseln und Zertifikaten bereit. 

   ```
   sudo amazon-linux-sb enroll
   ```

1. Führen Sie den folgenden Befehl aus, um die -Instance neu zu starten. UEFI Secure Boot wird nach dem Neustart der Instanz aktiviert. 

   ```
   sudo reboot
   ```

**Anmerkung**  
Amazon Linux unterstützt AMIs derzeit kein Nitro Trusted Platform Module (NitroTPM). Wenn Sie NitroTPM zusätzlich zu UEFI Secure Boot benötigen, helfen Ihnen die Informationen im folgenden Abschnitt weiter.

## Image aus einem Snapshot registrieren
<a name="secure-boot-amis"></a>

Wenn Sie mithilfe der Amazon-`register-image`-API ein AMI aus einem Snapshot eines Amazon EBS-Root-Volumes registrieren, können Sie das AMI mit einem binären Blob bereitstellen, der den Status des UEFI-Variablenspeichers enthält. Durch die AL2023 `UefiData` Bereitstellung von aktivieren Sie UEFI Secure Boot und müssen die Schritte im vorherigen Abschnitt nicht befolgen.

Weitere Informationen zum Erstellen und Verwenden eines binären Blobs finden [Sie unter Erstellen eines binären Blobs mit einem vorausgefüllten Variablenspeicher](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-ami-with-uefi-secure-boot.html#uefi-secure-boot-optionB) im *Amazon EC2 EC2-Benutzerhandbuch*.

AL2023 bietet einen vorkonfigurierten binären Blob, der direkt auf Amazon-EC2-Instances verwendet werden kann. Der binäre Blob befindet sich auf einer laufenden Instance in `/usr/share/amazon-linux-sb-keys/uefi.vars`. Dieser Blob wird durch das `amazon-linux-sb-keys` RPM-Paket bereitgestellt, das ab Version 2023.1 standardmäßig installiert AL2023 AMIs wird.

**Anmerkung**  
Um sicherzustellen, dass Sie die neueste Version von Keys and Revocations verwenden, verwenden Sie den Blob aus derselben Version, mit der Sie AL2023 das AMI erstellt haben.

Wir empfehlen, bei der Registrierung eines Images den `BootMode`-Parameter der [https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RegisterImage.html](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RegisterImage.html)-API auf `uefi` zu setzen. Das widerum erlaubt Ihnen, NitroTPM zu aktivieren, indem Sie den `TpmSupport`-Parameter auf `v2.0` setzen. Die Einstellung des Parameters `BootMode` auf `uefi` stellt außerdem sicher, dass UEFI Secure Boot aktiviert ist und nicht versehentlich deaktiviert werden kann, wenn zu einem Instance-Typ gewechselt wird, der UEFI nicht unterstützt.

*Weitere Informationen zu NitroTPM finden Sie unter [NitroTPM für Amazon Amazon EC2-Instances im Amazon EC2 EC2-Benutzerhandbuch](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitrotpm.html).*

## Widerruf-Updates
<a name="revocation-updates"></a>

Möglicherweise muss Amazon Linux eine neue Version des Bootloaders `grub2` oder des Linux-Kernels verteilen, die mit aktualisierten Schlüsseln signiert ist. In diesem Fall muss der alte Schlüssel möglicherweise widerrufen werden, um zu verhindern, dass ausnutzbare Bugs aus früheren Versionen des Bootloaders den UEFI-Secure-Boot-Verifizierungsprozess umgehen können.

Paketaktualisierungen der `kernel`- oder `grub2`-Pakete aktualisieren die Liste der Widerrufe immer automatisch im UEFI-Variablenspeicher der laufenden Instanz. Das bedeutet, dass wenn UEFI Secure Boot aktiviert ist, die alte Version eines Pakets nicht mehr ausgeführt werden kann, nachdem ein Sicherheits-Update für das Paket installiert wurde.

## So funktioniert UEFI Secure Boot auf AL2023
<a name="shim-use"></a>

Im Gegensatz zu anderen Linux-Distributionen bietet Amazon Linux keine zusätzliche Komponente (Shim), die als Bootloader der ersten Stufe fungiert. Ein Shim wird in der Regel mit Microsoft-Schlüsseln signiert. Bei Linux-Distributionen mit dem Shim lädt der Shim beispielsweise den `grub2`-Bootloader, der den eigenen Code des Shims verwendet, um den Linux-Kernel zu verifizieren. Außerdem verwaltet der Shim seinen eigenen Satz von Schlüsseln und Widerrufen in der MOK-Datenbank (Machine Owner Key), die sich im UEFI-Variablenspeicher befindet und mit dem `mokutil`-Tool gesteuert wird.

Amazon Linux stellt keinen Shim zur Verfügung. Da der AMI-Besitzer Kontrolle über die UEFI-Variablen hat, ist dieser Zwischenschritt nicht erforderlich und würde sich negativ auf die Start- und Boot-Zeiten auswirken. Wir haben uns dafür entschieden, standardmäßig keinen Herstellerschlüsseln zu vertrauen, um die Wahrscheinlichkeit zu verringern, dass unerwünschte Binärdateien ausgeführt werden könnten. Wie immer können Kunden natürlich eigene Binärdateien hinzufügen, wenn sie dies wünschen. 

Bei Amazon Linux lädt und verifiziert UEFI unseren `grub2`-Bootloader direkt. Der `grub2`-Bootloader wurde so geändert, dass er UEFI zur Verifizierung des Linux-Kernels nach dem Laden verwendet. Der Linux-Kernel wird also mit denselben Zertifikaten verifiziert, die in der normalen UEFI-`db`-Variable (autorisierte Schlüsseldatenbank) gespeichert sind, und anhand derselben `dbx`-Variable (Sperrdatenbank) wie der Bootloader und andere UEFI-Binärdateien getestet. Da wir unsere eigenen PK- und KEK-Schlüssel bereitstellen, die den Zugriff auf die DB-Datenbank und die DBX-Datenbank steuern, können wir signierte Updates und Widerrufe nach Bedarf ohne Zwischenhändler wie den Shim verteilen.

Weitere Informationen zu UEFI Secure Boot finden Sie unter [So funktioniert UEFI Secure Boot mit Amazon Amazon EC2-Instances im Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/how-uefi-secure-boot-works.html) *EC2-Benutzerhandbuch*.

## Eigene Schlüssel registrieren
<a name="enrolling-own-keys"></a>

Wie im vorherigen Abschnitt dokumentiert, benötigt Amazon Linux keinen `shim` für UEFI Secure Boot auf Amazon EC2. Wenn Sie die Dokumentation für andere Linux-Distributionen lesen, finden Sie möglicherweise eine Dokumentation zur Verwaltung der Machine Owner Key (MOK) -Datenbank`mokutil`, die nicht verfügbar ist. AL2023 Die `shim`- und MOK-Umgebungen umgehen einige Einschränkungen der Schlüsselregistrierung in der UEFI-Firmware, die nicht auf die Implementierung von UEFI Secure Boot durch Amazon EC2 zutreffen. Bei Amazon EC2 gibt es Mechanismen, um die Schlüssel im UEFI-Variablenspeicher ganz einfach direkt zu manipulieren.

Wenn Sie Ihre eigenen Schlüssel registrieren möchten, können Sie dies entweder tun, indem Sie den Variablenspeicher innerhalb einer vorhandenen Instanz manipulieren (siehe [Schlüssel aus der Instanz zum Variablenspeicher hinzufügen](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-ami-with-uefi-secure-boot.html#uefi-secure-boot-optionA)) oder indem Sie einen binären Blob erstellen, der vorgefüllt ist (siehe [Erstellen eines binären Blobs, der einen vorgefüllten Variablenspeicher enthält](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-ami-with-uefi-secure-boot.html#uefi-secure-boot-optionB)).