Freigeben über


Center for Internet Security (CIS) – Azure Linux-Benchmark

Die Sicherheits-Betriebssystemkonfiguration, die auf das Azure Linux-Containerhost-für-AKS-Image angewendet wird, basiert auf der Azure Linux-Sicherheitsbaseline, die mit dem CIS-Benchmark übereinstimmt. Da es sich bei AKS um einen sicheren Dienst handelt, ist er mit den Standards SOC, ISO, PCI-DSS und HIPAA konform. Weitere Informationen zur Sicherheit des Azure Linux-Containerhosts finden Sie unter Sicherheitskonzepte für Cluster in AKS. Weitere Informationen zum CIS-Benchmark finden Sie unter CIS-Benchmarks (Center for Internet Security). Weitere Informationen zu den Azure-Sicherheitsgrundlinien für Linux finden Sie unter Linux-Sicherheitsbaseline.

Azure Linux 2.0

Dieses Azure Linux-Containerhost-Betriebssystem basiert auf dem Azure Linux 2.0-Image mit angewandten integrierten Sicherheitskonfigurationen.

Als Teil des sicherheitsoptimierten Betriebssystems:

  • AKS und Azure Linux bieten standardmäßig ein sicherheitsoptimiertes Hostbetriebssystem ohne Option zum Auswählen eines alternativen Betriebssystems.
  • Das sicherheitsoptimierte Host-Betriebssystem wird speziell für AKS erstellt und verwaltet und außerhalb der AKS-Plattform nicht unterstützt.
  • Um die Angriffsfläche zu verringern, wurden einige unnötige Kernelmodultreiber im Betriebssystem deaktiviert.

Empfehlungen

Die folgende Tabelle enthält vier Abschnitte:

  • CIS-ID: Die zugeordnete Regel-ID mit den einzelnen Basisregeln.
  • Empfehlungsbeschreibung: Eine Beschreibung der Empfehlung des CIS-Benchmarks.
  • Level: L1, oder Level 1, empfiehlt essenzielle, grundlegende Sicherheitsanforderungen, die auf jedem System konfiguriert werden können und zu geringer oder gar keiner Störung oder eingeschränkten Funktionalität des Diensts führen sollten.
  • Status:
    • Bestanden – Die Empfehlung wurde angewendet.
    • Nicht bestanden: Die Empfehlung wurde nicht angewendet.
    • Nicht zutreffend – Die Empfehlung bezieht sich auf Anforderungen an Manifestdateiberechtigungen, die für AKS nicht relevant sind.
    • Abhängig von der Umgebung: Die Empfehlung wird in der spezifischen Umgebung des Benutzers angewendet und nicht von AKS kontrolliert.
    • Äquivalentes Steuerelement: Die Empfehlung wurde auf eine andere, gleichwertige Weise implementiert.
  • Grund:
    • Potenzielle Auswirkungen auf den Vorgang: Die Empfehlung wurde nicht angewendet, weil sie negative Auswirkungen auf den Dienst hätte.
    • An anderer Stelle behandelt: Die Empfehlung wird von einem anderen Steuerelement in Azure Cloud Compute abgedeckt.

Im Folgenden werden die Ergebnisse der Cis Azure Linux 2.0 Benchmark v1.0-Empfehlungen basierend auf den CIS-Regeln aufgeführt:

CIS-ID Empfehlungsbeschreibung Status `Reason`
1.1.4 Automatisches Einbinden deaktivieren Pass
1.1.1.1 Sicherstellen, dass die Einbindung von cramfs-Dateisystemen deaktiviert ist Pass
1.1.2.1 Sicherstellen, dass /tmp eine separate Partition ist Pass
1.1.2.2 Sicherstellen, dass die Option „nodev“ für die Partition „/tmp“ festgelegt ist Pass
1.1.2.3 Sicherstellen, dass die Option „nosuid“ für die Partition „/tmp“ festgelegt ist Pass
1.1.8.1 Sicherstellen, dass die Option „noexec“ für die Partition „/dev/shm“ festgelegt ist Pass
1.1.8.2 Sicherstellen, dass die Option „nosuid“ für die Partition „/dev/shm“ festgelegt ist Pass
1.2.1 Sicherstellen, dass DNF gpgcheck global aktiviert ist Pass
1.2.2 Sicherstellen, dass TDNF gpgcheck global aktiviert ist Pass
1.5.1 Sicherstellen, dass der Kernabbildspeicher deaktiviert ist Pass
1.5.2 Sicherstellen, dass Kernabbild-Rückverfolgungen deaktiviert sind Pass
1.5.3 Stellen Sie sicher, dass die Funktion zur zufälligen Anordnung von Adressräumen (ASLR) aktiviert ist Pass
1.7.1 Sicherstellen, dass das Warnbanner für lokale Anmeldung richtig konfiguriert ist Pass
1.7.2 Sicherstellen, dass das Warnbanner für Remoteanmeldung richtig konfiguriert ist Pass
1.7.3 Sicherstellen, dass Berechtigungen für „/etc/motd“ konfiguriert sind Pass
1.7.4 Sicherstellen, dass Berechtigungen für „/etc/issue“ konfiguriert sind Pass
1.7.5 Sicherstellen, dass Berechtigungen für „/etc/issue.net“ konfiguriert sind Pass
2.1.1 Sicherstellen, dass die Zeitsynchronisierung verwendet wird Pass
2.1.2 Sicherstellen, dass chrony konfiguriert ist Pass
2.2.1 Sicherstellen, dass xinetd nicht installiert ist Erfolgreich
2.2.2 Sicherstellen, dass xorg-x11-server-common nicht installiert ist Erfolgreich
2.2.3 Sicherstellen, dass avahi nicht installiert ist Erfolgreich
2.2.4 Sicherstellen, dass kein Druckserver installiert ist Erfolgreich
2.2.5 Sicherstellen, dass kein DHCP-Server installiert ist Erfolgreich
2.2.6 Sicherstellen, dass kein DNS-Server installiert ist Erfolgreich
2.2.7 Sicherstellen, dass kein FTP-Client installiert ist Erfolgreich
2.2.8 Sicherstellen, dass kein FTP-Server installiert ist Erfolgreich
2.2.9 Sicherstellen, dass kein TFTP-Server installiert ist Erfolgreich
2.2.10 Sicherstellen, dass kein Webserver installiert ist Erfolgreich
2.2.11 Sicherstellen, dass keine IMAP- und POP3-Server installiert sind Erfolgreich
2.2.12 Sicherstellen, dass Samba nicht installiert ist Erfolgreich
2.2.13 Sicherstellen, dass kein HTTP-Proxyserver installiert ist Erfolgreich
2.2.14 Sicherstellen, dass net-snmp nicht installiert ist oder der snmpd-Dienst nicht aktiviert ist. Erfolgreich
2.2.15 Sicherstellen, dass kein NIS-Server installiert ist Erfolgreich
2.2.16 Sicherstellen, dass der Telnet-Server nicht installiert ist Erfolgreich
2.2.17 Stellen Sie sicher, dass der E-Mail-Übertragungsagent für den reinen lokalen Modus konfiguriert ist Pass
2.2.18 Sicherstellen, dass nfs-utils nicht installiert ist oder der nfs-server-Dienst maskiert ist Erfolgreich
2.2.19 Sicherstellen, dass rsync-daemon nicht installiert ist oder der rsyncd-Dienst maskiert ist Erfolgreich
2.3.1 Sicherstellen, dass kein NIS-Client installiert ist Erfolgreich
2.3.2 Sicherstellen, dass kein rsh-Client installiert ist Erfolgreich
2.3.3 Sicherstellen, dass kein talk-Client installiert ist Erfolgreich
2.3.4 Sicherstellen, dass kein telnet-Client installiert ist Erfolgreich
2.3.5 Sicherstellen, dass kein LDAP-Client installiert ist Erfolgreich
2.3.6 Sicherstellen, dass kein TFTP-Client installiert ist Erfolgreich
3.1.1 Sicherstellen, dass IPv6 aktiviert ist Pass
3.2.1 Sicherstellen, dass das Senden von Paketumleitungen deaktiviert ist Pass
3.3.1 Sicherstellen, dass geroutete Quellpakete nicht akzeptiert werden Pass
3.3.2 Sicherstellen, dass ICMP-Umleitungen nicht akzeptiert werden Pass
3.3.3 Sicherstellen, dass sichere ICMP-Umleitungen nicht akzeptiert werden Pass
3.3.4 Sicherstellen, dass verdächtige Pakete protokolliert werden Pass
3.3.5 Sicherstellen, dass Broadcast-ICMP-Anforderungen ignoriert werden Pass
3.3.6 Sicherstellen, dass gefälschte ICMP-Antworten ignoriert werden Pass
3.3.7 Sicherstellen, dass die Umkehrpfadfilterung aktiviert ist Pass
3.3.8 Sicherstellen, dass „TCP SYN“-Cookies aktiviert sind Pass
3.3.9 Sicherstellen, dass IPv6-Routerankündigungen nicht akzeptiert werden Erfolgreich
3.4.3.1.1 Sicherstellen, dass das iptables-Paket installiert ist Pass
3.4.3.1.2 Sicherstellen, dass nftables nicht mit iptables installiert ist Erfolgreich
3.4.3.1.3 Sicherstellen, dass die Firewall entweder nicht installiert oder mit iptables maskiert ist Pass
4,2 Sicherstellen, dass logrotate konfiguriert ist Pass
4.2.2 Sicherstellen, dass für alle Protokolldateien der entsprechende Zugriff konfiguriert ist Erfolgreich
4.2.1.1 Sicherstellen, dass rsyslog installiert ist Pass
4.2.1.2 Sicherstellen, dass der ryslog-Dienst aktiviert ist Pass
4.2.1.3 Sicherstellen, dass rsyslog-Standarddateiberechtigungen konfiguriert sind Pass
4.2.1.4 Sicherstellen, dass die Protokollierung konfiguriert ist Pass
4.2.1.5 Sicherstellen, dass rsyslog nicht für den Empfang von Protokollen von einem Remoteclient konfiguriert ist Erfolgreich
5.1.1 Sicherstellen, dass der cron-Daemon aktiviert ist Pass
5.1.2 Sicherstellen, dass Berechtigungen für „/etc/crontab“ konfiguriert sind Pass
5.1.3 Sicherstellen, dass Berechtigungen für „/etc/cron.hourly“ konfiguriert sind Pass
5.1.4 Sicherstellen, dass Berechtigungen für „/etc/cron.daily“ konfiguriert sind Pass
5.1.5 Sicherstellen, dass Berechtigungen für „/etc/cron.weekly“ konfiguriert sind Pass
5.1.6 Sicherstellen, dass Berechtigungen für „/etc/cron.monthly“ konfiguriert sind Pass
5.1.7 Sicherstellen, dass Berechtigungen für „/etc/cron.d“ konfiguriert sind Pass
5.1.8 Sicherstellen, dass „cron“ auf autorisierte Benutzer beschränkt ist Pass
5.1.9 Sicherstellen, dass „a“ auf autorisierte Benutzer beschränkt ist Pass
5.2.1 Sicherstellen, dass Berechtigungen für /etc/ssh/sshd_config konfiguriert sind Pass
5.2.2 Sicherstellen, dass Berechtigungen für Dateien mit privaten SSH-Hostschlüsseln konfiguriert sind Pass
5.2.3 Sicherstellen, dass Berechtigungen für Dateien mit öffentlichen SSH-Hostschlüsseln konfiguriert sind Pass
5.2.4 Sicherstellen, dass der SSH-Zugriff eingeschränkt ist Pass
5.2.5 Sicherstellen, dass „SSH LogLevel“ angemessen ist Pass
5.2.6 Sicherstellen, dass SSH-PAM aktiviert ist Pass
5.2.7 Sicherstellen, dass Root-Anmeldung für SSH deaktiviert ist Pass
5.2.8 Sicherstellen, dass „SSH HostbasedAuthentication“ deaktiviert ist Pass
5.2.9 Sicherstellen, dass „SSH PermitEmptyPasswords“ deaktiviert ist Pass
5.2.10 Sicherstellen, dass „PermitUserEnvironment“ für SSH deaktiviert ist Pass
5.2.11 Sicherstellen, dass „SSH IgnoreRhosts“ aktiviert ist Pass
5.2.12 Sicherstellen, dass nur starke Verschlüsselungsverfahren verwendet werden Pass
5.2.13 Sicherstellen, dass nur genehmigte MAC-Algorithmen verwendet werden Pass
5.2.14 Sicherstellen, dass nur starke Schlüssel-Exchange-Algorithmen verwendet werden Pass
5.2.15 Sicherstellen, dass das Warnbanner für SSH konfiguriert ist Pass
5.2.16 Sicherstellen, dass „MaxAuthTries“ für SSH auf höchstens 4 festgelegt ist Pass
5.2.17 Sicherstellen, dass SSH MaxStartups konfiguriert ist Pass
5.2.18 Sicherstellen, dass „LoginGraceTime“ für SSH auf höchstens eine Minute festgelegt ist Pass
5.2.19 Sicherstellen, dass „SSH MaxSessions“ auf höchstens 10 festgelegt ist Pass
5.2.20 Sicherstellen, dass das Timeoutintervall für Leerlauf für SSH konfiguriert ist Pass
5.3.1 Sicherstellen, dass sudo installiert ist Pass
5.3.2 Sicherstellen, dass die erneute Authentifizierung für die Rechteausweitung nicht global deaktiviert ist Erfolgreich
5.3.3 Sicherstellen, dass das sudo-Authentifizierungstimeout ordnungsgemäß konfiguriert ist Pass
5.4.1 Sicherstellen, dass Anforderungen für die Kennworterstellung konfiguriert sind Pass
5.4.2 Sicherstellen, dass Sperrung für Versuche mit falschem Kennwort konfiguriert ist Pass
5.4.3 Ensure password hashing algorithm is SHA-512 (Sicherstellen, dass der Kennworthashalgorithmus SHA-512 lautet) Pass
5.4.4 Sicherstellen, dass die Wiederverwendung von Kennwörtern beschränkt ist Pass
5.5.2 Sicherstellen, dass Systemkonten sicher sind Pass
5.5.3 Ensure default group for the root account is GID 0 (Sicherstellen, dass die Standardgruppe für das Root-Konto GID 0 lautet) Pass
5.5.4 Sicherstellen, dass der Befehl „umask“ für Standardbenutzer 027 oder stärker einschränkend ist Pass
5.5.1.1 Sicherstellen, dass der Kennwortablauf höchstens 365 Tage beträgt Pass
5.5.1.2 Sicherstellen, dass die Anzahl der Tage zwischen Kennwortänderungen konfiguriert ist Erfolgreich
5.5.1.3 Sicherstellen, dass die Warntage für den Ablauf des Kennworts 7 oder mehr Tage betragen Erfolgreich
5.5.1.4 Sicherstellen, dass die Sperre für inaktive Kennwörter höchstens 30 Tage beträgt Pass
5.5.1.5 Ensure all users last password change date is in the past (Sicherstellen, dass das Datum der letzten Kennwortänderung für alle Benutzer in der Vergangenheit liegt) Pass
6.1.1 Sicherstellen, dass die Berechtigungen für „/etc/passwd“ konfiguriert sind Pass
6.1.2 Sicherstellen, dass die Berechtigungen für „/etc/passwd-“ konfiguriert sind Pass
6.1.3 Sicherstellen, dass die Berechtigungen für „/etc/group“ konfiguriert sind Pass
6.1.4 Sicherstellen, dass die Berechtigungen für „/etc/group-“ konfiguriert sind Pass
6.1.5 Sicherstellen, dass die Berechtigungen für „/etc/shadow“ konfiguriert sind Pass
6.1.6 Sicherstellen, dass die Berechtigungen für „/etc/shadow-“ konfiguriert sind Pass
6.1.7 Sicherstellen, dass die Berechtigungen für „/etc/gshadow“ konfiguriert sind Pass
6.1.8 Sicherstellen, dass die Berechtigungen für „/etc/gshadow-“ konfiguriert sind Pass
6.1.9 Sicherstellen, dass keine Dateien ohne Besitzer oder ungruppierten Dateien oder Verzeichnisse vorhanden sind Pass
6.1.10 Sicherstellen, dass generell beschreibbare Dateien und Verzeichnisse geschützt sind Pass
6.2.1 Sicherstellen, dass Kennwortfelder nicht leer sind Erfolgreich
6.2.2 Ensure all groups in /etc/passwd exist in /etc/group (Sicherstellen, dass alle Gruppen in „/etc/passwd“ in „/etc/group“ vorhanden sind) Pass
6.2.3 Ensure no duplicate UIDs exist (Sicherstellen, dass keine doppelten UIDs vorhanden sind) Pass
6.2.4 Ensure no duplicate GIDs exist (Sicherstellen, dass keine doppelten GIDs vorhanden sind) Pass
6.2.5 Ensure no duplicate user names exist (Sicherstellen, dass keine doppelten Benutzernamen vorhanden sind) Pass
6.2.6 Sicherstellen, dass keine doppelten Benutzernamen vorhanden sind Pass
6.2.7 Sicherstellen der StammPFADintegrität Pass
6.2.8 Ensure root is the only UID 0 account (Sicherstellen, dass „root“ das einzige Konto mit UID 0 ist) Pass
6.2.9 Ensure all users' home directories exist (Sicherstellen, dass die Basisverzeichnisse aller Benutzer vorhanden sind) Pass
6.2.10 Sicherstellen, dass die Benutzer*innen Besitzer*innen ihrer Basisverzeichnisse sind Pass
6.2.11 Sicherstellen, dass die Berechtigungen für die Homeverzeichnisse der Benutzer 750 oder restriktiver sind Pass
6.2.12 Sicherstellen, dass DOT-Dateien von Benutzern nicht group-writable oder world-writable sind Erfolgreich
6.2.13 Sicherstellen, dass auf die .netrc-Dateien der Benutzer nicht durch die Gruppe oder generell zugegriffen werden kann Erfolgreich
6.2.14 Ensure no users have .forward files (Sicherstellen, dass keine Benutzer über FORWARD-Dateien verfügen) Pass
6.2.15 Ensure no users have .netrc files (Sicherstellen, dass keine Benutzer über NETRC-Dateien verfügen) Pass
6.2.16 Ensure no users have .rhosts files (Sicherstellen, dass keine Benutzer über RHOSTS-Dateien verfügen) Pass

Nächste Schritte

Weitere Informationen zur Azure Linux-Containerhost-Sicherheit finden Sie in den folgenden Artikeln: