Home / LinuxUser / 2008 / 10 / Häppchenweise

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

War doch klar...
(233 Punkte bei 16 Stimmen)
Re: War doch klar...
(162 Punkte bei 6 Stimmen)
Re: Skype für 64-Bit-Prozessor u. Suse 12.1
(161 Punkte bei 4 Stimmen)
Kubuntu verliert Finanzierung
(130 Punkte bei 4 Stimmen)
Offen fürs Geschäft
(80 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Shopping
Topsuche
 
Yatego Deutschlands größte Shoppingmall. 10000 Shops,
3.5 Mio Artikel. Alle Bestseller, Servertechnik und Technik Themenwelten.

Notebooks und Netzwerkhardware bei Mercateo günstig kaufen.
Internet Telefonie mit VoIP Telefonen von Gigaset
Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.
Günstige Digitalkameras finden Sie im Preisvergleich.

Häppchenweise

Desktop-Sicherheit mit Sudo und Policykit

01.10.2008 Das neue Sicherheitsmodell Policykit ermöglicht unter Ubuntu Hardy Heron eine bessere Feinabstimmung sicherheitsrelevanter Aufgaben, als das bislang mit Sudo möglich war.

Bei Desktop-Systemen gestaltet sich eine lupenreine Trennung zwischen Systemverwalter und Anwender schon deshalb schwierig, weil letzterer am heimischen PC meist beide Hüte auf hat. Da immer mehr Anwendungen tief in die Systemkonfiguration eingreifen, ist ein administrativer Zugriff aufs System beinahe unabdingbar. So erfordert schon das Einbinden eines Laufwerks den privilegierten Zugriff auf bestimmte Funktionen. Auch andere Geräte, wie etwa DVB-T-Empfänger, Bluetooth oder WLAN erfordern sowohl beim Einrichten als auch beim Konfigurieren administrative Rechte. In diesen Fällen bieten Sudo und Policykit geeignete Möglichkeiten, dem Anwender die notwendigen Legitimationen zu erteilen, ohne das System durch eskalierende Berechtigungen zu gefährden.

Sudo

Der konsequente Einsatz von Sudo sorgt unter Ubuntu dafür, dass der Anwender nur dann privilegierte Rechte in Anspruch nimmt, wenn er sie auch benötigt. Ubuntu richtet zwar das obligatorische Root-Konto ein, allerdings ohne ein Passwort dafür zu setzen. Trotzdem schränkt dieser Umstand den Anwender bei der Administration des Systems kaum ein, da er nur in seltenen Fällen eine vollständige Root-Umgebung benötigt.

Sämtliche Aufgaben, die einen privilegierten Zugriff erfordern, erledigt der Anwender mit dem vorangestellten Kommando sudo. Um grafische Programme mit administrativen Rechten zu laden, dient unter Gnome das Hilfsprogramm gksu und unter KDE kdesu. Möchten Sie Anwendungen mit privilegierten Rechten per Mausklick ausführen, setzen Sie diese Hilfsprogramme auch in Schnellstartverknüpfungen und Desktop-Links ein. So lädt der Aufruf gksu gedit nach Eingabe des Benutzerpassworts den Editor Gedit mit privilegierten Rechten.

Beim Aufruf schlägt Sudo in der Konfiguration /etc/sudoer nach, welcher Benutzer welche Ausführberechtigungen besitzt. Diese Datei darf nur mit mit dem Programm Visudo bearbeitet werden. Die wichtigsten Einträge in der Grundeinstellung sind:

root    ALL=(ALL) ALL
%admin  ALL=(ALL) ALL

Sie erlauben dem Benutzer root und den Mitgliedern der Gruppe admin das Ausführen jedes Befehls auf dem System. Warum der Aufwand, wenn der Benutzer in der Gruppe admin ohnehin alles darf?

Auch wenn der Benutzer damit alle Kompetenzen besitzt, ist der Unterschied zwischen root und sudo sicherheitstechnisch gewaltig. So protokolliert Sudo sämtliche Aktionen in der Datei /var/log/auth.log. Programme, die im Benutzerkontext starten, sind entsprechend nicht in der Lage, unbemerkt Veränderungen am System vornehmen. Des weiteren erfordert jede Sudo-Sitzung die Eingabe des Passworts. Um nicht die ganze Macht zu übertragen, erlaubt Sudo darüber hinaus das feinere Einstellen der Berechtigungen. Folgender Eintrag in die Datei /var/log/auth.log legitimiert beispielsweise den Benutzer fred lediglich dazu, die Datei /var/log/auth.log mit dem Programm Less zu lesen:

fred    ALL=/usr/bin/less /var/log/auth.log

Der jeweiligen Anwendung spricht Sudo dabei vollständig das Vertrauen aus. Durch die Einschränkung auf bestimmte Parameter könnte man die Funktionen des Programms, wie zum Beispiel mit vim -R, auf das Lesen einschränken. Um den Zugriff auf Funktionen komplexerer Anwendungen und Funktionen zu delegieren, eignet sich Sudo allerdings nicht: Hier kommt Policykit ins Spiel.

Policykit

Das Sicherheitssystem Policykit wurde erstmals in Ubuntu 8.04 eingeführt und erlaubt die Feinabstimmung der Benutzerrechte für bestimmte Systemkonfigurationen und Programme. Es handelt sich dabei um eine XML-Skript-Sammlung, die Sie im Pfad /usr/share/Policykit/policy finden. Jedem Aktionspfad der GUI ist eine entsprechende XML-Datei zugeordnet, beispielsweise org.freedesktop.hal.storage.policy.

Die Laufzeitbibliothek Libpolkit bildet das Rückgrat des Policykit, mit deren Hilfe es die Autorisierung prüft und erteilt. Versucht zum Beispiel eine Anwendung ein Laufwerk zu mounten, wird die Anfrage an den Hardware Abstraction Layer (HAL) weitergeleitet (Abbildung 1, Punkt 1), der die Autorisierung über Libpolkit abwickelt (Punkt 2). Dabei kann die Antwort nicht nur "Ja" oder "Nein" lauten, sondern auch "Ja, falls sich die Anwendung authentisieren kann" (3). Ist eine Authentisierung notwendig, kommt der Authentisierungsagent (4) ins Spiel. Er fragt das Kennwort ab und gibt das Ergebnis einer erfolgreichen Authentisierung an die Autorisierungsdatenbank weiter (5). Bei der erneuten Autorisierungsprüfung (6) findet Libpolkit dann den Authentisierungsnachweis und gibt den Zugriff frei (7).

Abbildung 1: Die schematische Darstellung zeigt das Zusammenspiel der verschiedenen Komponenten bei der Rechtevergabe und Authentisierung mit Policykit.

Policykit unterscheidet zwei Bereiche: Die Benutzerumgebung und den Systemkontext. Der Systemkontext umfasst sämtliche Funktionen, die erweiterte Berechtigungen erfordern. Dazu zählen die Konfiguration das System sowie für Hardware- und Netzwerkkomponenten. Die Benutzerumgebung enthält Anwendungen, die auf die Systemkomponenten zugreifen. Der System-Message-Bus zeichnet als Vermittler für den Informationsaustausch zwischen den beiden Welten verantwortlich. Damit proprietäre Protokolle diese Kontrolle nicht unterwandern, stellt HAL ein einheitliches Protokoll zur Verfügung. So ist das Einbinden von Hardware wesentlich einfacher, da die Anwendungen sich auf eine einheitliche Schnittstelle konzentrieren.

Policykit verwaltet derzeit 45 Aktionen. Das relativ abstrakte Konzept beschreibt eine Aktion als das, was ein Subjekt (Anwender, Prozess) mit einem Objekt (Gerät, Konfiguration) tun darf. Im Gegensatz zu Sudo, das die Ausführung sämtlicher sämtlicher Programme kontrollieren kann, ist das Policykit auf die Integration in die jeweilige Anwendungen angewiesen. Eine ausführliche Anleitung finden Sie im Policykit-Handbuch [1]. So klappt zum Beispiel beim gnome-clockapplet die Umstellung der Zeitzone, doch die Änderung der Systemzeit funktioniert noch nicht, obwohl die Einstellungen im Policykit das vermuten lassen. Zumindest sind einige wichtige Funktionsaufrufe im Policykit vorbereitet und zur Verwendung vorgesehen

Insgesamt ist das noch nicht der große Rundumschlag, in der Praxis bietet die vorhandene Integration jedoch schon eine gewisse Hilfe: Mit der Kontrolle des Powermanagements, der Datenträger, und einigen Multimediageräten deckten die Entwickler zumindest die häufigsten Problemfälle ab.

Einem Freund empfehlen    Druckansicht Bookmark and Share
Kommentare

1441 Hits
Wertung: 69 Punkte (1 Stimme)

Schlecht Gut

Infos zum Autor


Infos zur Publikation

Infos zur Publikation

LinuxUser 03/2012

Aktuelle Ausgabe kaufen:

Heft bestellen Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,50 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 56,10) können Sie im LNM-Shop bestellen.

Tipp der Woche

Duden Korrektor unter 64-Bit
Duden Korrektor unter 64-Bit
Tim Schürmann, 06.02.2012 10:36, 0 Kommentare

Der Duden Korrektor bietet eine äußerst nützliche Rechtschreib- und Grammatikkorrektur für LibreOffice und bringt in der aktuellen Version 8 e...

Aktuelle Fragen

Ubuntu 11.10 Compiz 3D Cube flackern
Moritz Obenauer, 12.02.2012 12:25, 0 Antworten
Hallo! Ich habe Ubuntu 11.10 mit Unity und den Compiz 3D Cube ein gerichtet. Er funktioniert...
Suse 12.1 Bootvorgang bleibt seit Update stehen
Wimpy *, 12.02.2012 09:22, 2 Antworten
Seit Update auf Kernel 3.1.9-1.4-desktop i686 bleibt der Bootvorgang stehen. Es erscheint der gr...
N24 Stick (Huawei E173) und Ubuntu 11.04
Patrick Obenauer, 11.02.2012 11:54, 1 Antworten
Hallo zusammen! Ich benutze einen alten Laptop, der mit Ubuntu 11.04 flott und problemlos läuft....
Wie kann man beim Einsatz von Compiz die Fenster-Dekoration einstellen?
GoaSkin , 10.02.2012 20:12, 0 Antworten
Hallo, ich nutze Linux Mint mit dem Gnome-Derivat Mate. Da die Distribution Compiz nicht autom...
rndc reload zone - failed bad zone
Ludwig jun. B., 06.02.2012 16:08, 2 Antworten
Schönen guten Tag, ich habe folgendes Problem. Immer wenn ich folgendes Kommando ausführen bek...