Linux Benutzter nur auf das Home - Verzeichnis Zugriff geben (Root-Server)?

5 Antworten

Du willst wahrscheinlich den ssh/sftp Zugriff auf das '/home/username' Verzeichnis des Benutzers beschränken. Dort soll er Daten up und downloaden dürfen. Er soll ansonsten nur ein paar, für ihn notwendige Befehle nutzen können.

Für das Szenario kannst Du dich hier umgucken:

https://www.google.com/search?client=firefox-b-d&q=ssh+chroot

Woher ich das weiß:Berufserfahrung
Waldelb3  01.06.2021, 10:26

Aber warum? Das ist doch default für einen Nutzer ohne sudo.

0
DieterTonne  01.06.2021, 13:11
@Waldelb3

Nein, das ist nich default für einen User ohne sudo.

Ein Benutzer ohne sudo startet, wenn er sich einloggt sicherlich in seinem homeverzeichnis /home/username , kann aber locker, nur z.B. mit 'cat ../../etc/passwd' die Datei lesen. In einer chroot Umgebung wäre /home/username für den eingeloggten / - dahinter wäre aus seiner Sicht nichts.

Erstmal kann ein User ohne sudo auch erstmal alle Befehle ausführen die nicht irgendwo in sbin liegen - z.B. rauch udimentäre nmap Sachen (wenn man den denn auf einem Server installiert hätte). Desweiteren wird sowieso nicht überall sudo eingesetzt, auch dafür gibt es gute Gründe.

0

Also mit Serbern kenne ich mich nicht aus, aber bei meinem Debian Rechner ändere ich die Rechtevergabe mit chmod wie folgt:

Ordnerrechte anzeigen lassen

ls -l

# Eigentümer ändern von z.B. root:root auf benutzername

sudo chown -R benutzername:benutzername "/Verzeichnis/"

# -R Ändert Eigentümer und Gruppe auf benutzername rekursiv

# Datei/Verzeichnis Rechte ändern

sudo chmod -R 744 "/Verzeichnis"

" " bei Leerzeichen nutzen!

Erste Stelle = Besitzer

Zweite Stelle = Gruppe

Dritte Stelle = Andere

z.B. 744

7 = Lesen, Schreiben und Ausführen

6 = Lesen und Schreiben

5 = Lesen und Ausführen

4 = Nur Lesen

3 = Schreiben und Ausführen

2 = Nur Schreiben

1 = Nur Ausführen

0 = Keine

Woher ich das weiß:eigene Erfahrung

Dann darf der einfach kein sudo haben. Fertig.

Und wenn er auch nicht lesen und nicht betreten darf, musst du ihm dafür r und x wegnehmen.

Woher ich das weiß:Studium / Ausbildung – Informatik
Pasi39 
Fragesteller
 01.06.2021, 00:20

Er soll nur per sFTP Dateien bearbeiten, hochladen und löschen können. Die anderen Verzeichnisse sollen nicht veränderbar sein.

0
Waldelb3  01.06.2021, 00:46
@Pasi39

Also default ist, dass ein Nutzer nur in seinem Home-Verzeichnis Dinge ändern kann.

1

Das Stichwort wäre hier: chroot jail, das auf dem chroot() Syscall basiert. Allerdings gilt auch beim chroot, daß man einiges beachten muss, wenn der Nutzer wirklich eingekerkert werden soll.

Ferner kannst Du nach weiteren Möglichkeiten für Sandboxing schauen.

welchen Sinn soll das haben? Ein User soll doch auch Programme ausführen können, die nicht in seinem Home zu finden sind.

Woher ich das weiß:Berufserfahrung – openSuSE seit 1995