Überblick
Auf Red Hat Enterprise Linux (RHEL) 8 und Varianten, Oracle Linux 8 Red Hat Compatible Kernel (RHCK), Oracle Linux 7 und 8, Unbreakable Enterprise Kernel (UEK) 6 sowie Amazon Linux 2 auf einem 4.19 oder neueren Systemkernel kann der Cisco Secure Endpoint Linux Connector Dateiverschiebungen nicht überwachen oder Device Flow Correlation (Netzwerküberwachung) aktivieren, wenn die kernel-devel-Paket oder kernel-uek-devel-Paket auf Oracle Linux UEK fehlt für den aktuell laufenden Kernel. Der Connector löst in dieser Situation die Fehler-ID 11 "Erforderliches Paket zur Kernelentwicklung fehlt" aus. Für Debian und Ubuntu kann dieser Fehler ausgelöst werden, wenn das Paket linux-headers fehlt.
Ab RHEL 8, Oracle Linux 8 RHCK, Oracle Linux 7 und 8 UEK 6 und dem Amazon Linux 2 Kernel 4.19 oder höher verwendet der Connector eBPF-Module für die Echtzeit-Dateisystem- und Netzwerküberwachung. Die eBPF-Module ersetzen die Linux-Kernel-Module, die auf RHEL 6, RHEL 7, Oracle Linux 7 RHCK, Oracle Linux 7 UEK 5 und älter und Amazon Linux 2 Kernel 4.14 oder älter ausgeführt werden. Für Ubuntu 18.04 und höher sowie Debian 10 und höher sind eBPF-Module nativ.
Aus Gründen der größtmöglichen Kompatibilität kompiliert der Connector automatisch die vom Connector verwendeten eBPF-Module, bevor diese geladen und auf dem System ausgeführt werden. Diese Kompilierung erfordert, dass Kernel-Entwicklungsheader-Dateien installiert werden, die dem aktuell laufenden Kernel entsprechen. Der Connector versucht bei jedem Start des Connectors, die eBPF-Module zu kompilieren und zu laden
Gelegentlich kann dieser Fehler bei Oracle Linux auftreten, wenn UEK installiert ist, obwohl die Pakete kernel-devel auf dem Rechner vorhanden sind. Dies wird durch einen Fehler während des Installationsvorgangs verursacht, bei dem der Connector nicht in der Lage ist, SELinux so zu konfigurieren, dass er eBPF-Tests akzeptiert, die zur Überwachung der Aktivität auf dem Endpunkt verwendet werden.
Geltungsbereich
Der Fehler wird in der Regel nach der Installation eines neuen Secure Endpoint Linux Connectors oder nach der Aktualisierung des Systemkerns ausgelöst.
Betriebssysteme
- RHEL/CentOS/Rocky Linux/AlmaLinux 8
- Oracle Linux 8 RHCK
- Oracle Linux 7 und 8 UEK 5 und 6
- Ubuntu 18.04 und höher
- Debian 10 und höher
- Amazon Linux 2
Connector-Versionen
RHEL Linux
Das Paket kernel-devel installiert die benötigten Kernel-Entwicklungs-Header-Dateien im Verzeichnis /usr/src/kernels, die entsprechend ihrer Kernel-Version organisiert sind.
Ursachen
Das Paket kernel-devel, das für die Echtzeitüberwachung von Dateisystemen und Netzwerkaktivitäten erforderlich ist, fehlt.
Auflösung
Installieren Sie das Paket `kernel-devel`, das mit dem aktuell laufenden Kernel übereinstimmt.
Vorgehensweise
Das Paket 'kernel-devel' muss mit dem aktuell laufenden Kernel übereinstimmen. Um zu überprüfen, ob das aktuelle 'kernel-devel'-Paket installiert ist und/oder fehlt, führen Sie Folgendes aus:
rpm -qa | grep kernel*
Im Folgenden finden Sie eine Beispielausgabe, die das Paket 'kernel-devel' veranschaulicht, das mit dem aktuell laufenden Kernel übereinstimmt.
Um das kernel-devel-Paket zu installieren, das dem aktuell laufenden Kernel entspricht, führen Sie den folgenden Befehl aus.
dnf install -y kernel-devel-$(uname -r)
Der Anschluss sollte innerhalb einer Minute wiederhergestellt sein und den Fehler beheben. Wenn der Fehler nicht innerhalb einer Minute behoben wird, starten Sie den Steckverbinder manuell neu. Der Fehler sollte dann innerhalb einer Minute nach dem Neustart behoben werden.
HINWEIS: Wenn der obige Befehl mit dem Fehler "No match for argument" (Keine Übereinstimmung für Argument) fehlschlägt, ist es möglich, dass die aktuelle Kernel-Version nicht mehr unterstützt wird und der OS-Maintainer das Paket aus dem dnf-Repository entfernt hat. In diesem Fall kann das benötigte kernel-devel.rpm-Paket manuell aus den Betriebssystemarchiven des Herstellers heruntergeladen und dann manuell installiert werden, oder der Kernel kann auf eine unterstützte Version aktualisiert werden, und der obige Befehl wird erneut versucht.
Wenn beispielsweise CentOS verwendet und der Kernel nicht auf eine von der Distribution unterstützte Version aktualisiert werden kann, können alte kernel-devel.rpm-Pakete für CentOS manuell von http://vault.centos.org heruntergeladen werden. Der Name der herunterzuladenden Datei wird durch die Ausgabe des folgenden bash-Befehls angegeben.
echo kernel-devel-$(uname -r).rpm
Nach dem Herunterladen kann das kernel-devel-Paket installiert werden, indem der folgende bash-Befehl in dem Verzeichnis ausgeführt wird, in dem die heruntergeladene RPM-Datei gespeichert ist.
dnf install -y kernel-devel-$(uname -r).rpm
Oracle-Linux
Oracle Linux verteilt mit zwei verschiedenen Kernel-Alternativen, RHCK und UEK. Die Pakete kernel-devel und kernel-uek-devel installieren die benötigten Kernel-Entwicklungs-Header-Dateien im Verzeichnis /usr/src/kernels auf RHCK bzw. UEK. Die Kernel-Entwicklungsdateien sind in /usr/src/kernels entsprechend ihrer Kernel-Version organisiert.
Oracle Linux RHCK
Das Verfahren zum Identifizieren des fehlenden Kernelpakets und zum Lösen der Fehler-ID 11 auf Oracle Linux RHCK ist identisch mit dem von RHEL Linux. Weitere Informationen finden Sie im Abschnitt zu RHEL Linux weiter oben.
Oracle Linux UEK
Das Verfahren zum Identifizieren des fehlenden Kernelpakets und zum Lösen der Fehler-ID 11 auf Oracle Linux UEK ist ähnlich, aber nicht identisch mit dem von RHEL Linux. Weitere Informationen finden Sie im RHEL Linux Abschnitt oben, aber ersetzen Sie jede Instanz von "kernel-devel" durch "kernel-uek-devel". Um genau zu sein, ersetzen Sie kernel-devel-$(uname -r) mit kernel-uek-devel-$(uname -r)
für jeden relevanten Befehl.
HINWEIS: Wenn das benötigte Paket kernel-uek-devel .rpm nicht gefunden werden kann, wenn versucht wird, es aus dem dnf-Repository zu installieren, dann kann das Paket manuell heruntergeladen und aus dem Oracle-Archiv unter https://yum.oracle.com/ installiert werden.
Debian/Ubuntu Linux
Das Paket linux-headers installiert die benötigten Header-Dateien im Verzeichnis /usr/src, organisiert nach ihrer Kernel-Version.
Ursachen
Das linux-headers-Paket, das für die Überwachung des Dateisystems und der Netzwerkaktivitäten in Echtzeit benötigt wird, fehlt.
Sie können die im Verzeichnis /usr/src installierten Header bestätigen.
Auflösung
Das Paket linux-headers kann mit dem folgenden Befehl installiert werden:
sudo apt install linux-headers-$(uname -r)