Zum Inhalt springen

Linux/SELinux/GUI: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(30 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
= SELinux GUI =
'''SELinux/GUI''' – [[Grafische Benutzeroberfläche]] für [[SELinux]]


Fedora and some other Linux operating system shipped with SELinux Administration GUI, Policy Generation Tool (polgengui)and SELinux Troubleshooter which provides user a better interface to handle SELinux.
== SELinux-GUI ==
; Wekzeuge
* SELinux-Verwaltung
* Richtlinienerstellung (polgengui)
* Fehlerbehebungstool


If SELinux is not installed on Linux system then it can be installed from command prompt
Wenn SELinux nicht auf dem Linux-System installiert ist, kann es über die Befehlszeile installiert werden
yum install selinux-policy-devel
yum install setools-devel
yum install setools-gui


$ yum install selinux-policy-devel$ yum install setools-devel$ yum install setools-gui'''Opening SELinux Management GUI Tool in Fedora'''Open the system menu – > Administration -> SELinux Management
; Öffnen des SELinux-Verwaltungs-GUI-Tools in Fedora
Öffnen Sie das Systemmenü – > Verwaltung -> SELinux-Verwaltung


[[Image:SELinuxGUI01.png|top]]
[[Image:SELinuxGUI01.png|mini|400px]]


'''SELinux’s system-config interface'''From ''Status'' tab, you can check/change mode of SELinux
; Die System-Config-Oberfläche von SELinux
Über die Registerkarte „Status“ können Sie den Modus von SELinux überprüfen/ändern


[[Image:SELinuxGUI02.png|top]]
[[Image:SELinuxGUI02.png|mini|400px]]


To view the policies set on the individual files and processes, click the '''File Labeling''' link. To view the policies for the port assignments for the subsystems, click the '''Network Port''' link
Um die für einzelne Dateien und Prozesse festgelegten Richtlinien anzuzeigen, klicken Sie auf den Link „'''File Labeling'''.  
* Um die Richtlinien für die Portzuweisungen der Subsysteme anzuzeigen, klicken Sie auf den Link „'''Network Port'''


[[Image:SELinuxGUI03.png|top]]
[[Image:SELinuxGUI03.png|mini|400px]]


To check user mapping with MCS/MLS range click the User Mapping link
Um die Benutzerzuordnung mit dem MCS/MLS-Bereich zu überprüfen, klicken Sie auf den Link „User Mapping“


[[Image:SELinuxGUI04.png|top]]
[[Image:SELinuxGUI04.png|mini|400px]]


To find out the roles  of each user we can check SELinux User link
Um die Rollen der einzelnen Benutzer zu ermitteln, können wir den Link „SELinux User“ überprüfen


[[Image:SELinuxGUI05.png|top]]
[[Image:SELinuxGUI05.png|mini|400px]]


To check the version of the Certificate System SELinux policy installed, click the '''Policy Module''' link.
Um die Version der installierten SELinux-Richtlinie des Zertifikatssystems zu überprüfen, klicken Sie auf den Link „'''Policy Module'''.


[[Image:SELinuxGUI06.png|top]]
[[Image:SELinuxGUI06.png|mini|400px]]


'''SELinux Management Tool'''
== Verwaltung ==
[[Image:SELinuxGUI07.png|mini|400px| top|alt=„SELinux-Systemkonfigurationsschnittstelle“]]
; SELinux-Verwaltungstool
Das SELinux-Verwaltungstool ermöglicht es dem Benutzer, verschiedene Aktivitäten im Zusammenhang mit der Verwaltung von SELinux durchzuführen.
* Es reduziert den Arbeitsaufwand für den Benutzer, und wenn Sie es verwenden, müssen Sie sich nicht alle Befehle merken, die für die Handhabung von SELinux erforderlich sind.
Um die SELinux-Verwaltungs-GUI zu öffnen, führen wir die folgenden Schritte aus:
* 'System-Menü – > Verwaltung -> SELinux-VerwaltungSELinux-Systemkonfigurationsschnittstelle


SELinux Management tool allows user to perform different activities related to management of SELinux. It reduces user’s work and if you use this you don’t need to remember all the commands required to handle SELinux. To open SELinux Management GUI we follow given steps:''System menu – > Administration -> SELinux ManagementSELinux’s system-config interface''<div style="margin-left:0cm;margin-right:0cm;">[[Image:SELinuxGUI07.png|top|alt="SELinux’s system-config interface"]]</div>
== Konfigurationsschnittstelle ==


<div style="margin-left:0cm;margin-right:0cm;">SELinux’s system-config interface</div>'''SELinux Policy Generation Tool'''This tool provides simplest way to generate policies on some Linux system. This tool generates four files Type Enforcement File (*.te file): This file contains all the code required to confine intended application File Context File (*.fc file): This file contains the mapping between files and file context. Interface File ( *.if file): This file contains information of all the interfaces that other domain might want to use to communicate with our domain and the file types created by our application Shell Script (*.sh file) :This file is used to compile, install and fix the labeling on the test systemTo open SELinux Policy Generation Tool follow steps given below:
== Richtlinien ==
; SELinux-Tool zur Richtlinienerstellung
Dieses Tool bietet die einfachste Möglichkeit, Richtlinien auf einem Linux-System zu erstellen.  


''Application -> System Tools -> SELinux Policy Generation Tool''
Dieses Tool generiert vier Dateien
* Typ-Durchsetzungsdatei (*.te-Datei): Diese Datei enthält den gesamten Code, der erforderlich ist, um die beabsichtigte Anwendung einzuschränken
* Dateikontexdatei (*.fc-Datei): Diese Datei enthält die Zuordnung zwischen Dateien und Dateikontexten.
* Schnittstellendatei (*.if-Datei): Diese Datei enthält Informationen zu allen Schnittstellen, die andere Domänen möglicherweise zur Kommunikation mit unserer Domäne nutzen möchten, sowie zu den von unserer Anwendung erstellten Dateitypen
* Shell-Skript (*.sh-Datei): Diese Datei dient zum Kompilieren, Installieren und Korrigieren der Labeling-Einstellungen auf dem Testsystem. Um das SELinux Policy Generation Tool zu öffnen, befolgen Sie die folgenden Schritte:


This opens a wizard that creates policy in eight steps:
; Anwendung -> Systemwerkzeuge -> SELinux Policy Generation Tool
Dadurch wird ein Assistent geöffnet, der in acht Schritten eine Richtlinie erstellt:


[[Image:SELinuxGUI08.png|top]]
[[Image:SELinuxGUI08.png|mini|400px]]


To begin building policy module follow the given procedure
Um mit der Erstellung des Richtlinienmoduls zu beginnen, befolgen Sie die angegebene Vorgehensweise


i. Select type of the application/user role to be confined: This screen asks user to identify the type of application. This allows us to setup all the policy to correctly transition from domain.
i.&nbsp;Wählen Sie den Typ der einzuschränkenden Anwendung/Benutzerrolle aus: Auf diesem Bildschirm werden Sie aufgefordert, den Anwendungstyp anzugeben.  
* Dies ermöglicht es uns, die gesamte Richtlinie so einzurichten, dass der korrekte Übergang aus der Domäne erfolgt.


[[Image:SELinuxGUI09.png|top]]
[[Image:SELinuxGUI09.png|mini|400px]]


ii. Enter name of application or user role to be confined: This screen prompts for a name for given application and the path to the executable used to start it. The tool will use this information to create two SELinux types, Arpit_t and Arpit_exec_t. The running process domain will use type and file context on the disk will use Arpit_exec_t.
ii.&nbsp;Geben Sie den Namen der einzuschränkenden Anwendung oder Benutzerrolle ein: Dieser Bildschirm fordert Sie auf, einen Namen für die betreffende Anwendung sowie den Pfad zur ausführbaren Datei anzugeben, mit der sie gestartet wird.  
* Das Tool verwendet diese Informationen, um zwei SELinux-Typen zu erstellen: Arpit_t und Arpit_exec_t.
* Die Domäne des laufenden Prozesses verwendet den Typ Arpit_t, während der Dateikontext auf der Festplatte Arpit_exec_t verwendet.


[[Image:SELinuxGUI010.png|top]]
[[Image:SELinuxGUI010.png|mini|400px]]


iii. Enter network ports that application/user role listens to: This screen allows us to enter a space separated list of network ports that the application will bind/listen on for incoming connection.
iii.&nbsp;Geben Sie die Netzwerkports ein, auf denen die Anwendung/Benutzerrolle lauscht:
* Auf diesem Bildschirm können wir eine durch Leerzeichen getrennte Liste von Netzwerkports eingeben, an denen die Anwendung für eingehende Verbindungen bindet und auf die sie lauscht.


[[Image:SELinuxGUI11.png|top]]
[[Image:SELinuxGUI11.png|mini|400px]]


iv. Enter network ports that application/user role connects to: This screen allows us to specify TCP and UDP ports that the confined application needs to connect to.
iv.&nbsp;Geben Sie die Netzwerkports ein, mit denen die Anwendung/Benutzerrolle eine Verbindung herstellt
* Auf diesem Bildschirm können wir die TCP- und UDP-Ports angeben, mit denen die eingeschränkte Anwendung eine Verbindung herstellen muss.


[[Image:SELinuxGUI12.png|top]]
[[Image:SELinuxGUI12.png|mini|400px]]


v. Select common application traits: This screen allows us to specify some common traits that application exhibit. Checking given boxes will add policy to user’s application to perform the selected functions. We can leave them blank also if we are not sure about application whether we need them or not.
v.&nbsp;Wählen Sie allgemeine Anwendungsmerkmale aus
* Auf diesem Bildschirm können wir einige allgemeine Merkmale angeben, die die Anwendung aufweist.  
* Durch Aktivieren der entsprechenden Kontrollkästchen wird der Anwendung des Benutzers eine Richtlinie hinzugefügt, um die ausgewählten Funktionen auszuführen.  
* Wir können diese Felder auch leer lassen, wenn wir uns nicht sicher sind, ob die Anwendung sie benötigt oder nicht.


[[Image:SELinuxGUI13.png|top]]
[[Image:SELinuxGUI13.png|mini|400px]]


vi. Select file/directories that the application manages: This screen looks at the paths that we enter and uses them to establish the name of the type to use.
vi.&nbsp;Dateien/Verzeichnisse auswählen, die die Anwendung verwaltet
*Dieser Bildschirm prüft die eingegebenen Pfade und verwendet sie, um den Namen des zu verwendenden Typs festzulegen.


[[Image:SELinuxGUI14.png|top]]
[[Image:SELinuxGUI14.png|mini|400px]]


vii. Select Booleans that the application uses: This screen allows us to add/delete Boolean values for This field we can leave blank also
vii.&nbsp;Wählen Sie die Booleschen Werte aus, die die Anwendung verwendet
*Auf diesem Bildschirm können wir Boolesche Werte hinzufügen oder löschen. Dieses Feld können wir auch leer lassen


[[Image:SELinuxGUI15.png|top]]
[[Image:SELinuxGUI15.png|mini|400px]]


viii. Select directory to generate policy in: This screen asks user where to put the tool’s output. It will default to the current working directory, but often it is better off putting our policy files in a separate directory.
viii.&nbsp;Wählen Sie das Verzeichnis aus, in dem die Richtlinie generiert werden soll:
* Auf diesem Bildschirm werden Sie gefragt, wo die Ausgabe des Tools gespeichert werden soll.
* Standardmäßig ist das aktuelle Arbeitsverzeichnis eingestellt, doch oft ist es besser, unsere Richtlinien-Dateien in einem separaten Verzeichnis abzulegen.


[[Image:SELinuxGUI16.png|top]]
[[Image:SELinuxGUI16.png|mini|400px]]


Now that we have the policy files, it’s time to apply them to the current policy. We can use a terminal window, log in as root, and execute the shell script generated by SELinux Policy Generation Tool.The shell script compiles the module that we just created, and then loads it into the kernel.
Nun, da wir die Richtlinien-Dateien haben, ist es an der Zeit, sie auf die aktuelle Richtlinie anzuwenden.  
* Wir können ein Terminalfenster verwenden, uns als root anmelden und das vom SELinux Policy Generation Tool generierte Shell-Skript ausführen. Das Shell-Skript kompiliert das soeben erstellte Modul und lädt es anschließend in den Kernel.


== SELinux Troubleshooter ==
== Fehlerbehebung ==
; SELinux-Fehlerbehebung
Früher oder später kann es vorkommen, dass SELinux den Zugriff auf etwas verweigert und wir das Problem beheben müssen.


Sooner or later we may run into situations where SELinux denies access to something and we need to troubleshoot the issue. There are a number of fundamental reasons why SELinux may deny access to a file, process or resource:
Es gibt eine Reihe grundlegender Gründe, warum SELinux den Zugriff auf eine Datei, einen Prozess oder eine Ressource verweigern kann:
* Eine falsch gekennzeichnete Datei.
* Ein Prozess, der unter dem falschen SELinux-Sicherheitskontext läuft.
* Ein Fehler in der Richtlinie.
* Eine Anwendung benötigt Zugriff auf eine Datei, die beim Verfassen der Richtlinie nicht vorgesehen war, und löst einen Fehler aus. In der Befehlszeile ist es schwierig zu verstehen, was eine Fehlermeldung bedeutet.
* Dieses Tool überwacht die Audit-Protokolldateien auf AVC-Meldungen.
* Wenn eine AVC-Meldung eintrifft, durchsucht das Tool die SELinux-Plugin-Datenbank nach einer Übereinstimmung und sendet dann eine Meldung mit einer Beschreibung und einem Lösungsvorschlag an den Benutzer.


• A mislabeled file.• A process running under the wrong SELinux security context.• A bug in policy. An application requires access to a file that wasn’t anticipated when the policy was written and generates an error.On the command line it’s difficult to understand what an error message says. This tool watches the audit log files for AVC messages. When an AVC messages arrives the tool runs through the SELinux plugins database looking for a match and then sends a message to the user with a description, and a suggested fix.
Um den SELinux-Troubleshooter zu öffnen, führen Sie die folgenden Schritte aus
 
Anwendungen -> Systemwerkzeuge -> SELinux-Troubleshooter
To open SELinux Troubleshooter follow steps given below:
 
Application -> System Tools -> SELinux Troubleshooter
 
[[Image:SELinuxGUI17.png|top]]


[[Image:SELinuxGUI17.png|mini|400px]]


== Links ==
== Links ==
# [https://pandeyarpit.wordpress.com/selinux-an-introduction/selinux-gui-overview/ https://pandeyarpit.wordpress.com/selinux-an-introduction/selinux-gui-overview/]
# [https://pandeyarpit.wordpress.com/selinux-an-introduction/selinux-gui-overview/ https://pandeyarpit.wordpress.com/selinux-an-introduction/selinux-gui-overview/]


 
[[Kategorie:Linux/SELinux/Tools]]
 
 
[[Kategorie:SELinux]]

Aktuelle Version vom 28. März 2026, 12:46 Uhr

SELinux/GUIGrafische Benutzeroberfläche für SELinux

SELinux-GUI

Wekzeuge
  • SELinux-Verwaltung
  • Richtlinienerstellung (polgengui)
  • Fehlerbehebungstool

Wenn SELinux nicht auf dem Linux-System installiert ist, kann es über die Befehlszeile installiert werden

yum install selinux-policy-devel
yum install setools-devel
yum install setools-gui
Öffnen des SELinux-Verwaltungs-GUI-Tools in Fedora

Öffnen Sie das Systemmenü – > Verwaltung -> SELinux-Verwaltung

Die System-Config-Oberfläche von SELinux

Über die Registerkarte „Status“ können Sie den Modus von SELinux überprüfen/ändern

Um die für einzelne Dateien und Prozesse festgelegten Richtlinien anzuzeigen, klicken Sie auf den Link „File Labeling“.

  • Um die Richtlinien für die Portzuweisungen der Subsysteme anzuzeigen, klicken Sie auf den Link „Network Port

Um die Benutzerzuordnung mit dem MCS/MLS-Bereich zu überprüfen, klicken Sie auf den Link „User Mapping“

Um die Rollen der einzelnen Benutzer zu ermitteln, können wir den Link „SELinux User“ überprüfen

Um die Version der installierten SELinux-Richtlinie des Zertifikatssystems zu überprüfen, klicken Sie auf den Link „Policy Module“.

Verwaltung

„SELinux-Systemkonfigurationsschnittstelle“
SELinux-Verwaltungstool

Das SELinux-Verwaltungstool ermöglicht es dem Benutzer, verschiedene Aktivitäten im Zusammenhang mit der Verwaltung von SELinux durchzuführen.

  • Es reduziert den Arbeitsaufwand für den Benutzer, und wenn Sie es verwenden, müssen Sie sich nicht alle Befehle merken, die für die Handhabung von SELinux erforderlich sind.

Um die SELinux-Verwaltungs-GUI zu öffnen, führen wir die folgenden Schritte aus:

  • 'System-Menü – > Verwaltung -> SELinux-VerwaltungSELinux-Systemkonfigurationsschnittstelle

Konfigurationsschnittstelle

Richtlinien

SELinux-Tool zur Richtlinienerstellung

Dieses Tool bietet die einfachste Möglichkeit, Richtlinien auf einem Linux-System zu erstellen.

Dieses Tool generiert vier Dateien

  • Typ-Durchsetzungsdatei (*.te-Datei): Diese Datei enthält den gesamten Code, der erforderlich ist, um die beabsichtigte Anwendung einzuschränken
  • Dateikontexdatei (*.fc-Datei): Diese Datei enthält die Zuordnung zwischen Dateien und Dateikontexten.
  • Schnittstellendatei (*.if-Datei): Diese Datei enthält Informationen zu allen Schnittstellen, die andere Domänen möglicherweise zur Kommunikation mit unserer Domäne nutzen möchten, sowie zu den von unserer Anwendung erstellten Dateitypen
  • Shell-Skript (*.sh-Datei): Diese Datei dient zum Kompilieren, Installieren und Korrigieren der Labeling-Einstellungen auf dem Testsystem. Um das SELinux Policy Generation Tool zu öffnen, befolgen Sie die folgenden Schritte:
Anwendung -> Systemwerkzeuge -> SELinux Policy Generation Tool

Dadurch wird ein Assistent geöffnet, der in acht Schritten eine Richtlinie erstellt:

Um mit der Erstellung des Richtlinienmoduls zu beginnen, befolgen Sie die angegebene Vorgehensweise

i. Wählen Sie den Typ der einzuschränkenden Anwendung/Benutzerrolle aus: Auf diesem Bildschirm werden Sie aufgefordert, den Anwendungstyp anzugeben.

  • Dies ermöglicht es uns, die gesamte Richtlinie so einzurichten, dass der korrekte Übergang aus der Domäne erfolgt.

ii. Geben Sie den Namen der einzuschränkenden Anwendung oder Benutzerrolle ein: Dieser Bildschirm fordert Sie auf, einen Namen für die betreffende Anwendung sowie den Pfad zur ausführbaren Datei anzugeben, mit der sie gestartet wird.

  • Das Tool verwendet diese Informationen, um zwei SELinux-Typen zu erstellen: Arpit_t und Arpit_exec_t.
  • Die Domäne des laufenden Prozesses verwendet den Typ Arpit_t, während der Dateikontext auf der Festplatte Arpit_exec_t verwendet.
Datei:SELinuxGUI010.png

iii. Geben Sie die Netzwerkports ein, auf denen die Anwendung/Benutzerrolle lauscht:

  • Auf diesem Bildschirm können wir eine durch Leerzeichen getrennte Liste von Netzwerkports eingeben, an denen die Anwendung für eingehende Verbindungen bindet und auf die sie lauscht.

iv. Geben Sie die Netzwerkports ein, mit denen die Anwendung/Benutzerrolle eine Verbindung herstellt

  • Auf diesem Bildschirm können wir die TCP- und UDP-Ports angeben, mit denen die eingeschränkte Anwendung eine Verbindung herstellen muss.

v. Wählen Sie allgemeine Anwendungsmerkmale aus

  • Auf diesem Bildschirm können wir einige allgemeine Merkmale angeben, die die Anwendung aufweist.
  • Durch Aktivieren der entsprechenden Kontrollkästchen wird der Anwendung des Benutzers eine Richtlinie hinzugefügt, um die ausgewählten Funktionen auszuführen.
  • Wir können diese Felder auch leer lassen, wenn wir uns nicht sicher sind, ob die Anwendung sie benötigt oder nicht.

vi. Dateien/Verzeichnisse auswählen, die die Anwendung verwaltet

  • Dieser Bildschirm prüft die eingegebenen Pfade und verwendet sie, um den Namen des zu verwendenden Typs festzulegen.

vii. Wählen Sie die Booleschen Werte aus, die die Anwendung verwendet

  • Auf diesem Bildschirm können wir Boolesche Werte hinzufügen oder löschen. Dieses Feld können wir auch leer lassen

viii. Wählen Sie das Verzeichnis aus, in dem die Richtlinie generiert werden soll:

  • Auf diesem Bildschirm werden Sie gefragt, wo die Ausgabe des Tools gespeichert werden soll.
  • Standardmäßig ist das aktuelle Arbeitsverzeichnis eingestellt, doch oft ist es besser, unsere Richtlinien-Dateien in einem separaten Verzeichnis abzulegen.

Nun, da wir die Richtlinien-Dateien haben, ist es an der Zeit, sie auf die aktuelle Richtlinie anzuwenden.

  • Wir können ein Terminalfenster verwenden, uns als root anmelden und das vom SELinux Policy Generation Tool generierte Shell-Skript ausführen. Das Shell-Skript kompiliert das soeben erstellte Modul und lädt es anschließend in den Kernel.

Fehlerbehebung

SELinux-Fehlerbehebung

Früher oder später kann es vorkommen, dass SELinux den Zugriff auf etwas verweigert und wir das Problem beheben müssen.

Es gibt eine Reihe grundlegender Gründe, warum SELinux den Zugriff auf eine Datei, einen Prozess oder eine Ressource verweigern kann:

  • Eine falsch gekennzeichnete Datei.
  • Ein Prozess, der unter dem falschen SELinux-Sicherheitskontext läuft.
  • Ein Fehler in der Richtlinie.
  • Eine Anwendung benötigt Zugriff auf eine Datei, die beim Verfassen der Richtlinie nicht vorgesehen war, und löst einen Fehler aus. In der Befehlszeile ist es schwierig zu verstehen, was eine Fehlermeldung bedeutet.
  • Dieses Tool überwacht die Audit-Protokolldateien auf AVC-Meldungen.
  • Wenn eine AVC-Meldung eintrifft, durchsucht das Tool die SELinux-Plugin-Datenbank nach einer Übereinstimmung und sendet dann eine Meldung mit einer Beschreibung und einem Lösungsvorschlag an den Benutzer.

Um den SELinux-Troubleshooter zu öffnen, führen Sie die folgenden Schritte aus

Anwendungen -> Systemwerkzeuge -> SELinux-Troubleshooter
  1. https://pandeyarpit.wordpress.com/selinux-an-introduction/selinux-gui-overview/