Rechtevergabe für USer

Antworten
Nachricht
Autor
AnMa
Beiträge: 1
Registriert: 22. Nov 2010 16:43

Rechtevergabe für USer

#1 Beitrag von AnMa » 22. Nov 2010 16:51

Hallo zusammen,

ich kämpf mich schon eine Weikle durch die Rechtevergabe von Usern und Gruppen, bin aber auf ein Problem gestoßen, zu dem ich irgendwie nirgendwo einen brauchbaren Tipp finde.

Problem:
Ich habe einen neuen _User angelegt und ihm ein _home-Verzeichnis zugeordnet. Das funktioniert soweit auch.
Wenn ich mich mit diesem Benutzer über SSH auf den Server verbinde, lande ich im vorgegebenenn _home-Verzeichnis (/home/user/) aber ich kann trotzdem in alle andere Verzeichnisse wechseln. Also mit cd.. bin ich in /home/ und von dort aus könne ich weiter in alle anderen Verzeichnisse.

Frage:
Wie kann ich es bewerkstelligen, dass dieser _user sich ausschließlich innerhalb seines eigenen _home-Verzeichnis bewegen kann?

Lieben Gruß
Anna

Benutzeravatar
Janka
Beiträge: 3581
Registriert: 11. Feb 2006 19:10

#2 Beitrag von Janka » 22. Nov 2010 20:37

Das ist kompliziert, weil der Benutzer auch Leserechte auf /bin, /usr/lib usw. braucht, um mit dem SSH-Zugang überhaupt was sinnvolles anfangen zu können. Muss es ein Shell-Zugang sein oder reicht nicht auch SFTP?

Eine ziemlich sichere Methode so etwas zu implementieren ist ein chroot-Käfig. Das ist ein kompletter Verzeichnisbaum inklusive des /home-Verzeichnisses, nur für diesen Benutzer. Die erlaubten Programme in /bin, /usr/bin und die nötigen Libraries in /lib und /usr/lib werden per Hardlink aus dem ursprünglichen Baum geholt. Das Homeverzeichnis in dem Käfig enthält nur das Unterverzeichnis dieses einen Benutzers.

Die ssh unterstützt diese Konfigurationsart auch direkt. Eine Anleitung findest du hier: http://openbsd.maroufi.net/sshchroot.shtml Die muss für Linux noch leicht angepasst werden. Eine so simples Howto zu der Problematik für Linux hab ich leider nicht gefunden.

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

susmi

Q&D

#3 Beitrag von susmi » 23. Nov 2010 10:14

Quick & Dirty, wenn auch nicht zu 100% sicher:

Mache

- in der /etc/passwd aus /bin/bash ein /bin/rbash
- lege mit root-Rechten im User-Home ein Ordner bin an und kopiere die Programme, welcher er ausführen darf, dort hinein.
- überschreibe als root seine PATH-Varibale, z.B. in der .bashrc, dass er nur die das angelegte bin-Verzeichnis als Suchpfad hat.

Gruß
sumsi

Benutzeravatar
Janka
Beiträge: 3581
Registriert: 11. Feb 2006 19:10

#4 Beitrag von Janka » 23. Nov 2010 13:33

Die rbash wollte ich auch zuerst vorschlagen, allerdings ist das Ding für praktische Zwecke wenig geeignet

* "cd" ist komplett abgeschaltet, man kann also das Arbeitsverzeichnis gar nicht wechseln, auch nicht in Unterverzeichnisse.
* Es ist problemlos möglich, überall absolute Pfade anzugeben.

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

sumsi

scponly

#5 Beitrag von sumsi » 25. Nov 2010 10:01

Eine Lösung, welche aber ohne Shell daherkommt - also welche nur für den sicheren Dateitransfer ausgelegt wurde ist SCPonly.

Z.B.
http://www.picxl.de/scponly-chroot

Vielleicht genügt es?

sumsi

Antworten