Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.
Dieser Artikel erfordert mehr Erfahrung im Umgang mit Linux und ist daher nur für fortgeschrittene Benutzer gedacht.
Dieser Artikel beschreibt anhand eines einfachen Beispiels mit AppArmor wie man einen Benutzer mit Loginrechten auf wenige explizit definierte Systemaufrufe beschränken kann. Die hier vorgestellte Methodik steht keineswegs alleine. Als Alternativen sei an dieser Stelle auf die Verwendung von SELinux, Smack und eingeschränkte Shells verwiesen.
Zunächst wird durch einen Hardlink eine neue Zugriffsmöglichkeit geschaffen. Voraussetzung dafür ist lediglich, dass sich der Link auf der selben Partition wie die ursprüngliche Shell befindet. Sofern möglich bietet sich /usr/local/bin als Zielpfad an.
sudo ln /bin/bash /usr/local/bin/sicherheitsBash
Die neue Shell wird anschließend in /etc/shells eingetragen und damit zur zugelassenen Loginshell.
Der Benutzer, dessen Rechte extrem eingeschränkt werden sollen, wird angelegt und ihm wird die neue Shell als Loginshell zugewiesen.
sudo adduser --shell /usr/local/bin/sicherheitsBash eingeschraenkt
Mittels visudo werden "eingeschraenkt" die Tätigkeiten ermöglicht, zu denen er in der Lage sein soll. In diesem Beispiel das Neuladen der Konfiguration des Apache Webservers.
eingeschraenkt ALL = NOPASSWD: /etc/init.d/apache2 reload
Nun wird das AppArmor-Profil angelegt: /etc/apparmor.d/usr.local.bin.sicherheitsBash
/usr/local/bin/sicherheitsBash { /usr/bin/sudo pxr, }
Hat man noch kein Profil für sudo, so kann zu Testzwecken "uxr" verwendet werden. Davon ist produktiv natürlich abzuraten.
Soll der neue Zugang für einen Menschen aus Fleisch und Blut und nicht für ein Skript dienen, so sollten nun noch einige Verschönerungsarbeiten durchgeführt werden. Meldungen wie
/etc/profile: Permission denied
sorgen nicht unbedingt für eine schöne Arbeitsumgebung. Mangels Autovervollständigung und History bietet es sich darüber hinaus an, sinnvolle Aliase oder Funktionen, je nach Shell, zu definieren.
Diese Revision wurde am 23. Februar 2013 13:34 von aasche erstellt.