Linux Benutzer einschränken

Aus MyWiki
Version vom 17. Mai 2013, 17:28 Uhr von Rueling (Diskussion | Beiträge)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Quelle: http://blog.bodhizazen.net/linux/how-to-restrict-access-with-rbash/

Beim erstellen des Benutzer, dem Benutzer die "rbash" Shell und das Home-Verzeichnis erstellen lassen
useradd -s /bin/rbash -m sshrelay

cd ~sshrelay
rm -rf .bash_login .bashrc .profile .bash_profile .bash_logout
touch .bashrc
for i in .bash_login .bash_profile .bash_logout .profile; do echo ". .bashrc" > $i; done
echo "export PATH=/home/sshrelay/usr/bin" >> .bashrc
mkdir -p /home/sshrelay/usr/bin
chown -R root.sshrelay .bash* .profile /home/sshrelay
chmod 640 .bash* .profile
chmod -R 750 usr/bin

Bei mir hat das so nicht ganz funktioniert, da es der Benutzer nicht mehr in der Gruppe "sshrelay" war
(ich hatte den Benutzer in die Gruppe "nosu" gesteckt. (Diese Gruppe hatte ich vorher angelegt und in der "/etc/pam.d/su" Datei dieser Gruppe das "su" Recht entzogen))
Daher habe ich allen Dateien im User Verzeichnis das Lese Recht auch für "other" vergeben (also chmod 644 oder 754)

Damit sind keine Befehle mehr möglich. Die rbash verhindert, dass ich einen Befehl mit "/" angegeben kann und der PATH verweist auf das "usr/bin" Verzeichnis im Benutzerverzeichnis. D.h. alle Programm die der Benutzer braucht, könnten dahin verlinkt werden.