Unprivviligierte Shell erstellen?

Alles was in keine andere Systemkategorie passt
inchez
Posts: 65
Joined: 2007-10-01 20:17
 

Unprivviligierte Shell erstellen?

Post by inchez »

Guten morgen,

ich würde gerne einigen Freunden Zugang zu einem SSH Tunnel gewähren.

Allerdings möchte ich nicht das sie in irgendeiner Art u. Weise im System rumfriemeln.

Daher würde ich gerne eine unprivviligiere Shell erstellen damit sie sich wohl in den SSH Server einloggen können, aber keine Befehle ausführen dürfen.

Wie löse ich das am besten?

Gruß
dotme
Posts: 150
Joined: 2004-12-15 16:48
 

Re: Unprivviligierte Shell erstellen?

Post by dotme »

Für ein automatisiertes Backup durch einen SSH-Tunnel verwende ich eine Kombination aus SSH-Schlüssel und forced command. In meinem Fall wird immer "sleep" aufgerufen. Auf der Manpage von sshd sind im Abschnitt "AUTHORIZED_KEYS FILE FORMAT" alle Optionen von "authorized_keys" beschrieben. U.a. kannst Du da auch festlegen welche Tunnel erlaubt sind.
inchez
Posts: 65
Joined: 2007-10-01 20:17
 

Re: Unprivviligierte Shell erstellen?

Post by inchez »

Tut mir leid für meine Planlosigkeit, aber das verstehe ich nicht ganz...

Also im Prinzip suche ich eine Möglichkeit Usern SSH Zugriff zu geben ohne das sie irgendetwqas sehen, machen oder ausführen können.

Wäre recht dringend.

Vielen Dank für die Anstrengungen mit mir^^

Gruß
inchez
Posts: 65
Joined: 2007-10-01 20:17
 

Re: Unprivviligierte Shell erstellen?

Post by inchez »

Ja, daran habe ich auch gedacht.

Aber es gibt einige Gründe wieso es nicht geht, der Hauptgrund ist das die "Maschine" von der wir hier reden leider eine virtuelle ist und ich da einige Probleme mit dem kernel habe.

Was wäre denn die einfachste Methode um einen absolut unprivviligierten User zu erstellen?

Gruß
Roger Wilco
Posts: 5923
Joined: 2004-05-23 12:53
 

Re: Unprivviligierte Shell erstellen?

Post by Roger Wilco »

IncheZ wrote:Was wäre denn die einfachste Methode um einen absolut unprivviligierten User zu erstellen?
Gib dem Benutzer einfach keine interaktive Login-Shell.

Kleines Beispiel aus einem Ubuntu Linux:

Code: Select all

# sudo /usr/sbin/useradd -c "Dummy User" -s /usr/sbin/nologin dummy
# id dummy
uid=2101(dummy) gid=2101(dummy) Gruppen=2101(dummy)
# ssh dummy@localhost
dummy@localhost's password:
This account is currently not available.
# ssh -N -L[...] dummy@localhost
<-- Hier bleibt die Verbindung so lange offen, bis Strg+C gedrückt bzw. allgemein der ssh-Client beendet wird. -->
^C
Der Pfad zu nologin kann sich je nach Distribution unterscheiden. Unter Gentoo Linux wäre es z. B. /sbin/nologin. Unter Windows würde man plink.exe (Teil der PuTTY-Distribution) zum Aufbau des SSH-Tunnels benutzen. Bei richtigen Betriebsystemen[tm] ist in der Regel OpenSSH erhältlich.

Details findest du in den entsprechenden Manpages.