So listen Sie alle SELinux-Kontexte auf

Wir können auf die Sicherheitskontrollen zugreifen, die Security Enhanced Linux (SE), ein Linux-Kernel-Sicherheitsmodul, im Linux-Betriebssystem unterstützen kann. Es könnte von SELinux-Funktionen verwendet werden, um den Prozessen, die in den Systemobjekten ausgeführt werden, und den in Verzeichnissen vorhandenen Dateien Sicherheitskontexte zu geben.

So listen Sie die SELinux-Kontexte auf

Jeder Vorgang und jedes Objekt ist auf eine Weise gekennzeichnet, die die Metadaten zum Bedrohungsschutz darstellt, mit denen SELinux auf dem System ausgeführt wird. In diesem Artikel werden wir uns die verschiedenen Techniken ansehen, um jeden SELinux-Kontext auf unserem Linux-Betriebssystem aufzulisten. Wir besprechen die Möglichkeiten und Befehle zur Verwendung der Auflistung der Elemente für das gesamte System sowie die Befehlszeilentools und Auswahlmöglichkeiten, die von der grafischen Benutzeroberfläche getroffen werden.

Durch das Verständnis des vorhandenen SELinux-Kontext-Setups können wir die SELinux-Probleme lösen und die SELinux-Kontexte bestimmter Ressourcen problemlos ändern, was von einigen Benutzern zum Auflisten der SELinux-Kontexte genutzt wird. Mit den in diesem Artikel beschriebenen Techniken können wir schnell und einfach alle SELinux-Kontexte auf einem Linux-System auflisten. Mithilfe dieser Informationen können wir die Sicherheit unseres Betriebssystems steuern. Die „Semanage“-Methode wird verwendet, wenn wir alle Kontexte der SELinux-Prozesse und -Dokumente auf einmal anzeigen möchten.

Unter Linux gibt die SELinux-Sicherheitsrichtlinie eindeutig die Identität jedes Benutzers an, der Zugriff auf eine bestimmte Datei oder einen bestimmten Prozess zu haben scheint. Linux-Benutzer sprechen daher stets ihre eigene Identität an.

Werfen wir einen Blick auf die Funktionsweise von Befehlen, die zum Auflisten des Kontexts verwendet werden. Dazu müssen wir das Linux-Terminal öffnen und dann das Flag „-Z“ zusammen mit dem Befehl „ls“ hinzufügen. Der Befehl „ls“ wird verwendet, um beliebige Daten aufzulisten. Es funktioniert, indem es den Verzeichnisinhalt zusammen mit dem SELinux-Kontext für jedes Element anzeigt. Der Befehl wird wie folgt gegeben:

Linux@linux:~$ ls -Z

Nachdem wir den Befehl ausgeführt haben, drücken wir die Eingabetaste. Es zeigt die folgende Ausgabe als einfache Auflistung des Kontexts an, der im aktuellen Verzeichnis verwendet wird:

Linux@linux:~$ ? data.txt ? Desktop? Downloads ? filebash.sh ? mh.txt

Wir können auch jedes andere Verzeichnis auswählen, indem wir dessen Pfad als Argument mit dem vorherigen Befehl zusammen mit dem Schrägstrich „/“ und „etc“ wie folgt übergeben:

Linux@linux:~$ ls -Z /etc

Nach Abschluss des Befehls werden alle laufenden Prozesse des Verzeichnisses als sequentielle Liste mit dem Kontext der Datei angezeigt.

Linux@linux:~$ ? acpi ? lsb-Veröffentlichung
? adduser.conf ? ltrace.conf
? alsa ? Maschinen ID
? Alternativen? Magie
? Anacrontab ? magic.mine
? apg.conf ? Mailcap
? apm ? mailcap.order
? apparmor ? manpath.config
? apparmor.d ? mime.types
? aufteilen? mke2fs.conf
? appstream.conf ? ModemManager
? passend? modprobe.d
? Avahi? Module
? bash.bashrc ? module-load.d
? bash_completion ? mtab
? bash_completion.d ? mtools.conf
? bindresvport.blacklist ? MySQL
? binfmt.d ? nanorc
? Bluetooth ? Netzplan
? belapi.key ? Netzwerk

Der Befehl „ls -Z“ kann auch zur schnellen Überprüfung der SELinux-Kontexte von Dateien und Verzeichnissen in jedem laufenden aktuellen Verzeichnis verwendet werden. Es ist besonders praktisch, die SELinux-Probleme zu diagnostizieren, um die Erkennung von Dateien mit unerwarteten Kontexten zu vereinfachen. Die erweiterte Liste der laufenden Sicherheit bewegt sich weiter und wird zusammen mit dem Prozess weiter angezeigt, der einige Bash-Prozesse, Bluetooth, Netzwerk, Apport, Legal umfasst, und einige weitere davon werden im Folgenden bereitgestellt:

Linux@linux:~$ ? init.d ? System
? initramfs-tools ? terminfo
? Eingaberc ? thermisch
? insserve.conf.d ? Donnervogel
? iproute2 ? Zeitzone
? Ausgabe ? tmpfiles.d
? Issue.net ? Ubuntu-Vorteil
? Kernel? ucf.conf
? Kernel-img.conf ? udev
? Kerneloops.conf ? udisks 2
? ldap ? ufw
? ld.so.conf ? Update Manager
? ld.so.conf.d ? update-motd.d
? legal? Update-Notifier
? libao.conf ? Upower
? libaudit.conf ? usb_modeswitch.d

Jetzt verwenden wir den Befehl „stat“, mit dem umfangreiche Informationen zur Datei und zum SELinux-Kontext angezeigt werden können. Dies kann durch Drucken der Metadatendatei und der Eigenschaften einschließlich Zeitstempel und Größe erfolgen. Wir wenden den Befehl „stat“ auf die Textdatei mit dem Namen „file.txt“ an, die im Desktop-Verzeichnis vorhanden ist, um ihren SElinux-Kontext anzuzeigen. Das Folgende ist der Befehl für die Datei „file.txt“ im Desktop-Verzeichnis:

Linux@linux:~/Desktop$ stat file.txt

Wenn wir mit dem vorherigen Befehl auf dem Terminal fortfahren, zeigt es den Dateikontext zusammen mit dem Namen, der Größe und dem Gerät auf dem Ausgabedisplay an, wie wir in der folgenden Textform sehen können:

Linux@linux:~$ Datei: file.txt
Größe: 83 Blöcke: 8 I0 Block: 4096 reguläre Datei
Gerät: 805h/2053 Incode: 657033 Links: 1
Zugriff: (0664/-rw-rw-r- -) Uid: ( 1002/ Linux) Gid: ( 1002/ Linux)
Zugriff: 24.12.2022 14:16:25.060381731 +0500
Ändern: 24.12.2022 14:16:14.224258986 +0500
Änderung: 24.12.2022 14:16:14.272259527 +0500

Jetzt implementieren wir den Befehl „find“, der auch für den SELinux-Kontext verwendet werden kann, um nach Dateien und Verzeichnissen zu suchen, die den angegebenen Kriterien Name, Größe und Berechtigungen entsprechen. Dieser Befehl hat drei wichtige Rollen, darunter „Pfad“, „Option“ und „Ausdruck“. „Pfad“ definiert, wo wir die Dateien durchsuchen möchten. „Optionen“ hingegen ändert das Verhalten des Befehls. Und „expression“ durchsucht die Kriterien für den SELinux-Kontext. Lassen Sie uns nun den Befehl „find“ auf dem Linux-Betriebssystem ausführen. Wir fügen den folgenden Befehl auf dem Terminal hinzu:

Linux@linux:~/Desktop$ find /etc

Dieser Befehl findet alle Dateien, die im Verzeichnis „etc“ vorhanden sind, und zeigt sie dann an, da wir keinen spezifischen Parameter dafür erwähnt haben. Anschließend zeigt dieser Befehl die folgende Ausgabe auf dem Terminalbildschirm von Linux mit den vorhandenen Dateien und Prozessen an und zeigt sie in Form einer Liste an.

/usw
/etc/rpc
/etc/nsswitch.conf
/etc/subgid
/etc/alternatives
/etc/alternatives/my.cnf
/etc/alternatives/x-window-manager.1.gz
/etc/alternatives/iptables-save
/etc/alternatives/x-session-manager.1.gz
/etc/alternatives/pasteurize
/etc/alternatives/ebtables
/etc/alternatives/pinentry
/etc/alternatives/ex
/etc/alternatives/gstreamer-codec-install
/etc/alternatives/netcat.1.gz
/etc/alternatives/write
/etc/alternatives/awk.1.gz
/etc/alternatives/gnome-www-browser
/etc/alternatives/editor
/etc/alternatives/lzma.1.gz
/etc/alternatives/view.ja.1.gz
/etc/alternatives/nawk

Jetzt gibt es eine weitere Erweiterung für den Befehl „find“, um gemeinsam mit dem Benutzer zu suchen, um die Liste des SELinux-Kontexts zu erhalten. Der Befehl bleibt derselbe wie der vorherige, bezieht den Benutzer jedoch mit dem Befehl „find“ ein und nicht mit „etc“ mit einem Schrägstrich. Für alle Dateien, die dem Benutzer unseres „Linux“-Systems gehören, verwenden wir den folgenden Befehl:

Linux@linux:~$ find -user linux

Wenn wir nach Abschluss dieses Befehls die Eingabetaste drücken, wird die Liste aller Prozesse und Dateien auf dem Terminal angezeigt, das unter diesem „Linux“-Benutzerbetriebssystem funktioniert, wie in der folgenden Ausgabeanzeige dargestellt:

Linux@linux:~$ .
./.gnupg
./.gnup/trustdb.gpg
./.gnup/private-keys-v1.d
./.gnupg/pubring.kbx
./.config
./.config/gnome-initial-setup-done
./.config/user-dirs.dirs
./.config/enchant
./.config/enchant/en_US.exc
./.config/enchant/en_US.dic
./.config/user-dirs.locale
./.config/goa-1.0
./.config/update-notifier
./.config/dconf
./.config/dconf/user
./.config/pulse
./.config/pulse/8a79842bae5e4368a17907e5ab8524dd-default-source

Abschluss

Wir haben das Verfahren oder Konzept der Verwendung der grundlegenden Linux-Befehle zum Auflisten des SELinux-Kontexts besprochen. Zu diesem Zweck haben wir den Befehl „ls -Z“ für die Datei- und Verzeichnisliste verwendet. Wir haben den Befehl „stat“ für die zweite Art von Auflistungsbefehlen verwendet, um das Dateisystem und die Dateien, die in den Arbeitsordnern vorhanden waren, sowie deren Größe und Berechtigungen zu ermitteln. Der letzte Befehl, den wir verwendet haben, ist „find“. Es dient dazu, die Dateien zu suchen und zu finden, die für die jeweilige Erkrankung erforderlich sind.

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen