Hallo Linuxer,
ich habe folgendes Problem:
ich möchte einem entfernten User eine Einwahl über ssh2 auf meinem firewall-server ermöglichen, damit er einen tunnel auf meinen mailserver aufbauen kann. Er soll nur den tunnel aufbauen können, auf dem fw-rechner sollte er natürlich nix machen dürfen. Ich habe per default shon die rbash eingestellt. Das dumme is nur man kann aus dieser rbash unter suse 9.0 einfach durch eingabe von "bash" ausbrechen, wie kann ich das verhindern bzw wie kann ich dem user so gut wie alles verbieten?!
mfg
andreas
rbash oder wie sperre ich einen Benutzer in seine shell ein
Hi,
nur die rbash als Login-Shell zu setzen bringt nichts. Du musst außerdem die .bash_profile anpassen! Beispielsweise kannst Du dort die Variable PATH so setzen, dass sie nur noch auf sein eigenes ~/bin-Verzeichnis zeigt, wo das eine Skript drinne liegt, dass der User aufrufen darf. Schau mal in die man-Page zu bash in die Sektion "RESTRICTED SHELL". Da wird zuerst beschrieben, was der User alles nicht mehr darf. Dann folgt:
Jochen
nur die rbash als Login-Shell zu setzen bringt nichts. Du musst außerdem die .bash_profile anpassen! Beispielsweise kannst Du dort die Variable PATH so setzen, dass sie nur noch auf sein eigenes ~/bin-Verzeichnis zeigt, wo das eine Skript drinne liegt, dass der User aufrufen darf. Schau mal in die man-Page zu bash in die Sektion "RESTRICTED SHELL". Da wird zuerst beschrieben, was der User alles nicht mehr darf. Dann folgt:
Zu gut deutsch: In der Datei .bash_profile kannst Du noch die PATH-Variabel verändern, der User aber später nicht mehr. Daher darf die .bash_profile für den User aber auch nur lesbar, aber nicht änderbar sein! Und wenn dein User dann ein Skript für eine definierte Aktion startet, setzen die Restriktionen für die Shell, die das Skript ausführt; aus. Was bedeutet, dass Du auch dieses Skript absichern solltest: IFS und PATH explizit setzen, ggf. statt PATH nur absolute Pfadnamen verwenden, keine Argumente vom Aufrufenden entgegen nehmen und wenn, dann nur nach paranoioden Sicherheitschecks verwenden usw.These restrictions are enforced after any startup files are read.
When a command that is found to be a shell script is executed (see
COMMAND EXECUTION above), rbash turns off any restrictions in the
shell spawned to execute the script.
Jochen
Die grösste Lüge der EDV? "Mal eben..."
Wie wäre ist denn mit den Restrictionsmöglichkeiten des SSHD via authorized_keys-File.
Hier ein Beispiel:
http://sws.dett.de/knowledgebase/tech/msg00026.html
Hope that helps.
Cheers
Michael
Hier ein Beispiel:
http://sws.dett.de/knowledgebase/tech/msg00026.html
Hope that helps.
Cheers
Michael
Hallo,
wenn ich mich nicht richtig irre, dann heißt das doch das die authorisation über ein zertifikat läuft. Das dumme daran is nur, das ich für diesen einen user kein zertifikat verwenden kann, da es bei größeren entfernungen (z.B. Japan-Deutschland) probleme mit der Zertifikats-Authorisation gibt. (oder bin ich schwer von begriff?!)
mfg
andreas
wenn ich mich nicht richtig irre, dann heißt das doch das die authorisation über ein zertifikat läuft. Das dumme daran is nur, das ich für diesen einen user kein zertifikat verwenden kann, da es bei größeren entfernungen (z.B. Japan-Deutschland) probleme mit der Zertifikats-Authorisation gibt. (oder bin ich schwer von begriff?!)
mfg
andreas