neuen User anlegen: login per ssh, beschränkt wie 'ftpuser'

teletux

Neuer User
Mitglied seit
12 Mrz 2007
Beiträge
124
Punkte für Reaktionen
0
Punkte
16
Hallo,
ich will auf meiner 7170 einen neuen User "gast" einrichten, der soll sich von außen (Internet) per ssh anmelden (und ein revers-Porforwarding zu Fernwartungszwecken z.B. -R *:3333:localhost:22 machen dürfen). Der User soll also root-Rechte haben, sonst könnte er nicht ein reverses PFW machen. Aber ich will dass dieser "gast" zumindest in einem Verzeichnis eingesperrt wie der "ftpuser" in /var/media/ftp und nicht überall hin wechseln kann. Geht das irgendwie? Habe schon rumprobiert, aber das AVM-Linux ist ja sehr speziell und abgespeckt. Probiert habe ich:

Code:
echo "gast:x:1001:2:Gast User    :/var/media/ftp:/bin/sh" >> /var/tmp/passwd
echo "gast:IOBvrwgNbPp/df:12339:0:99999:7:::">>/var/tmp/shadow
echo "gast:x:2" >> /var/tmp/group

# cat passwd
root:x:0:0:root:/:/bin/sh
ftpuser:any:1000:0:ftp user:/var/media/ftp:/bin/sh
gast:x:1001:2:Gast User    :/var/media/ftp:/bin/sh

# cat shadow
root:XBvMZNBCaf/XM:12332:0:99999:7:::
gast:IOBvrwgNbPp/df:12339:0:99999:7:::

# cat group
root:x:0:
gast:x:2

... nur kann ich mich mit ssh [email protected] nicht einloggen, ich fliege umgehend wieder raus: "Connection closed by 192.168.0.11". Klar eigentlich, es fehlen User "Gast" ja auch die dropbear_rsa_host_key's! Aber wo diese für den User "gast" ablegen? - Die von root liegen ja schon wild und ungeordnet in /var/tmp/. Ist /var/tmp/ das home-Verzeichnis von root? - Wo ist das Home-Verzeichnis von "gast" wo dieser seine Dateien ablegt?

Ich kann "gast" mit ID:group 0:0 wie root in passwd anlegen, in shadow ein anderes Passwort geben. Das habe ich schon probiert, geht, reicht auch zur Not, die Leute die dieses revers-Portforwarding machen sind mir wohl gesonnen und kennen sich mit Linux gar nicht aus. Aber mit 0:0 kann dieser User gast in jedes beliebige Verzeichnis wechseln und mit root-Rechten eben auch alles mögliche anstellen ...

Gehts besser?

Gruss
Eckard
 
Zuletzt bearbeitet:
hallo

ich glaube, du verwechselst da etwas: ssh benutzt unix/linux-user. wenn man einem user root rechte gibt, kann er alles machen und somit auch ins jede verzeichnis wechseln. wenn du nur home-verzeichnis änderst, kann er immernoch nach oben!

was du brauchst, ist eher so etwas wie einen zweiten ssh-server, der zwar root-rechte gibt, aber nicht das danze struktur sehen kann. die wäre z.b. mit chroot möglich. z.b. ins debian. dann einnen ssh-server in einer chroot umgebung starten, in der root nicht alles anch oben sehen kann.....

lange rede, kurzer sinn: wäre es villeicht einfacher, ein cgi-skript für web-gui zu erstellen, oder php-skript in verbindung mit apache oder httpd? mit cgi/php kannst du einen beliebigen (auch beliebig eingeschränkten) code auf der box ausführen lassen ("system()"-aufruf bie php z.b.)

gruß
 
Da ist noch viel mehr verwechselt.
Host-Keys sind Host-Keys und nicht Benutzer-Keys.
Man braucht keine Benutzer-Keys, um sich anzumelden, aber es ist komfortabler.
Wo ist das Home-Verzeischnis von root bzw. gast? Genau dort, wo man festlegt, daß es sein soll.
Chroot ist übrigens generell nicht geeignet, ein Root-Programm einzusperren.
Und root-Rechnte braucht man nur für Ports bis 1024.

Das Beispiel oben sieht nicht nach Freetz aus, aber bei Freetz wird der Login für User außer root deaktiviert. Diesen Patch kann man aber auch entfernen.

Den Titel kann man übrigens ändern mit Ändern/Erweitert.
 
Man braucht keine Benutzer-Keys, um sich anzumelden
Hast recht ... Aber warum werde ich bei einem ssh [email protected] sofort herausgeworfen mit: Connection closed by 192.168.0.11 ?
Forsche ich auf Seiten der FB so kommt die Anwort:

Code:
# /var/tmp/dropbear -E -p 22 -r /var/tmp/dropbear_rsa_host_key -d /var/tmp/dropbear_dss_host_key
# [755] Mar 17 22:18:08 Running in background
[756] Mar 17 22:18:33 Child connection from 192.168.0.53:38872
[756] Mar 17 22:18:34 non-root login rejected
[756] Mar 17 22:18:35 exit before auth (user 'gast', 2 fails): Max auth tries reached - user 'gast' from 192.168.0.53:38872
Mit -E habe ich den dropbear im verbose-Modus gestartet: "non-root login rejected". dropbear ist also so konfiguriert, dass er keinen anderen als root rein läßt. Wo ist nun aber die config von dropbear um dropbear zu konfigurieren? Ich finde nur hier in diesem Forum und mit google nur Hinweise, dass die config fest einkompiliert ist. Ist das richtig?

Den Titel kann man übrigens ändern mit Ändern/Erweitert.
Danke, fehlenden Buchstaben habe ich eingefügt. ;-)
 
Ich habe schon oben geschrieben, daß der dropbear von Freetz fest so eingestellt ist, daß nur root sich anmelden kann. Wenn Du das nicht willst, mußt Du einen dropbear ohne diesen Patch erstellen.
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.