Selinux am Ubuntu -Tutorial

Selinux am Ubuntu -Tutorial

Einführung

Selinux ist ein MAC -Modul (Oblicatory Access Control), das sich in der Kernel -Ebene von Linux -Systemen befindet. Es ist eine gemeinsame Entwicklung von Redhat und NSA, die um 1998 veröffentlicht wurden und immer noch von einer begeisterten Gemeinschaft unterhalten werden. Standardmäßig verwendet Ubuntu Apparmor und nicht Selinux, was in Bezug auf die Leistung, aber in Bezug auf die Einfachheit eher beliebt ist. Es ist jedoch bekannt, dass Selinux aufgrund der Beteiligung einer Regierungsbehörde ziemlich sicher ist. Selinux ist eine Open -Source -Anwendung, die den Host schützt, indem er jede Anwendung isoliert und deren Aktivitäten einschränkt. Standardmäßig werden Prozesse von Aktivitäten blockiert, es sei denn, die ausdrückliche Genehmigung wird erteilt. Das Modul enthält nativ zwei Regeln für globale Level -Management -Verwaltungsregeln: zulässige und durchzusetzen, welche jeweils eine gegen die Regel verstoßen und verweigert den Zugriff auf eine bestimmte Anfrage, die von einem Prozess gesendet wurde. Dieses Tutorial zeigt, wie man es mühelos auf Ubuntu verwendet.

So installieren und aktivieren

Selinux ist eine sehr schwierige Anwendung, da sie vor dem ersten Neustart nicht ordnungsgemäß konfiguriert ist, das gesamte Betriebssystem unbootbar macht, was bedeutet, dass alles, was über den anfänglichen Bootsbildschirm hinausgeht.

Wie bereits erwähnt, verfügt Ubuntu bereits über ein ausgeklügeltes obligatorisches Zugriffskontrollsystem, das als Apparmor bezeichnet wird. Daher muss es vor der Installation von SELinux deaktiviert werden, um Konflikte zu vermeiden. Verwenden Sie die folgenden Anweisungen, um Apparmor zu deaktivieren und Selinux zu aktivieren.

sudo /etc /init.D/Apparmor Stopp
APT -Get Update && Upgrade -yuf
APT-GET SELinux installieren
Nano/etc/selinux/config
'Selinux auf zulässige, selinuxType auf standardmäßig "festlegen"
Neustart

Diese Dateikonfiguration kann mit jedem Texteditor geöffnet werden, um Änderungen vorzunehmen. Der Grund für die Zuweisung einer zulässigen Regel an SetLinux besteht darin, das Betriebssystem zugänglich zu machen, während Selinux aktiviert wird. Es wird dringend empfohlen, die zulässige Option zu verwenden, da sie problemlos kostenlos ist.

Verfügbare Optionen

Selinux ist ein komplexes und umfassendes Modul; Daher enthält es viele Funktionen und Optionen. Davon abgesehen sind die meisten dieser Optionen aufgrund ihrer exotischen Natur möglicherweise nicht für jeden nützlich. Die folgenden Optionen sind einige der grundlegenden und nützlichen Optionen in diesem Modul. Sie sind mehr als genug, um Selinux zum Laufen zu bringen.

Überprüfen Sie den Status: Der Status von SELinux kann direkt über das Terminalfenster überprüft werden, das die grundlegenden Informationen wie die Aktivierung von Selinux, das Selinux -Root -Verzeichnis, den geladenen Richtliniennamen, den aktuellen Modus usw. zeigt. Verwenden Sie nach dem Neustart des Systems nach der Installation von SELinux den folgenden Befehl als Root -Benutzer mit Sudo -Befehl. Wenn es in dem Statusabschnitt Selinux aktiviert ist, bedeutet dies, dass es im Hintergrund in Betrieb ist.

root@ubuntu:/home/dondilanga# sestatus

Ändern Sie die globale Berechtigungsstufe: Die globale Genehmigungsstufe besagt, wie sich Selinux verhält, wenn sie auf eine Regel stolpert. Standardmäßig setzt sich Selinux auf die Durchsetzung der Durchsetzung, die alle Anfragen effektiv blockiert, kann jedoch auf zulässige Weise geändert werden, was dem Benutzer gegenüber dem Zugriff zulässt, aber protokolliert alle verletzten Regeln in seiner Protokolldatei.

Nano/etc/selinux/config
'Selinux auf zulässige oder erzwungene SelinuxType auf standardmäßige "SelinuxType setzen"

Überprüfen Sie die Protokolldatei: Die Protokolldatei, in der die verletzten Regeln von jeder Anfrage angegeben sind. Dies hält nur Protokolle, wenn Selinux aktiviert ist.

Grep Selinux/var/log/audit/audit.Protokoll

Aktivieren und deaktivieren Sie Richtlinien und welche Schutzmaßnahmen sie anbieten: Dies ist eine der wichtigsten Optionen in Selinux, da sie Richtlinien aktivieren und deaktivieren können. Selinux hat eine große Anzahl vorgebauter Richtlinien, die feststellen, ob die angegebene Anforderung zulässig ist oder nicht. Einige der Beispiele hierfür sind degal_ftpd_full_access, die die Fähigkeit des FTP -Dienstes ermittelt, sich bei lokalen Benutzern anzumelden und alle Dateien auf dem System zu lesen, degit_ssh_keysign, mit denen Schlüssel verwendet werden kann, wenn sie sich bei SSH anmelden können. , httpd_can_sendmail, die die Fähigkeit des HTTP-Dienstes ermittelt, eine E-Mail usw. zu senden. Im folgenden Code-Beispiel wird die Richtlinien für die Richtlinie installiert Schließlich lehrt es, wie eine Richtlinie ein- oder ausgeschaltet wird. Das Zulassungs_ftpd_full_Access ist der politische Name, wie in dem von Semanage zurückgegebenen Terminal gezeigt,

APT-GET INSTALT POLICECOREUTILS-PYTHON-UTILS
Semanage Boolean -l
setsbool -p degly_ftpd_full_access on

Erweiterte Optionen

Die erweiterten Optionen sind Optionen, die dazu beitragen, die Funktionen in Selinux zu erweitern. Aufgrund der umfassenden Natur von Selinux gibt es eine enorme Menge an Kombinationen, daher listet dieser Artikel einige der herausragenden und nützlichen unter ihnen auf.

Rollenbasierte Zugriffskontrolle (RBAC): RBAC ermöglicht es Administratoren, auf eine rollenbasierte Art und Weise umzusteigen, um die Erlaubnis von Anwendungen einzuschränken. Was es bedeutet, ist ein Benutzer einer bestimmten Benutzergruppe darf bestimmte vordefinierte Aktionen ausführen oder ausführen. Solange der Benutzer Teil der Rolle ist, ist es in Ordnung. Dies ist dasselbe wie das Umschalten auf Root bei der Installation von Anwendungen unter Linux mit administrativen Rechten.

Semanage Login -a -s 'Myrole' -r 'S0 -S0: C0.C1023 '

Benutzer können ihre Rolle mit dem folgenden Befehl wechseln.

sudo -r new_role_r -i

Benutzer können sich auch über SSH auch aus der Ferne eine Verbindung zum Server herstellen, mit der beim Start aktivierten Rolle.

ssh /[email protected]

Erlauben Sie einem Dienst, einen nicht standardmäßigen Hafen anzuhören: Dies ist sehr nützlich, um einen Dienst anzupassen, beispielsweise wenn ein FTP-Port in einen nicht standardmäßigen Anschluss geändert wird, um nicht autorisierte Zugriffe zu vermeiden, muss Selinux entsprechend informiert werden. Das folgende Beispiel ermöglicht es dem FTP -Port, 992 Port anzuhören. Ebenso jeder Dienst, der von zurückgegeben wurde von Semanage Port -l kann ersetzt werden. Einige der beliebten Ports sind http_port_t, pop_port_t, ssh_port_t.

Semanage Port -a -t
Semanage Port -a -t ftp_port_t -p tcp 992

Wie man deaktiviert

Das Deaktivieren von Selinux ist einfacher, da es aktiviert und installiert ist. Grundsätzlich gibt es zwei Möglichkeiten, es zu deaktivieren. Entweder vorübergehend oder dauerhaft. Durch Deaktivieren von Selinux Temporary deaktiviert es eine Weile bis zum nächsten Start, und sobald der Computer wieder eingeschaltet wird, wird der Status neu gestartet. Andererseits schließt die dauerhafte Deaktivierung von Selinux die Drohungen dort draußen vollständig aus. Daher ist es eine klug.

Der folgende Befehl am Terminal schaltet ihn vorübergehend aus:

SetEnforce 0

Dauerhaft deaktiviert bearbeiten /etc/selinux/config und setzen Sie Selinux auf deaktiviert.