Neuen Benutzer ohne Rechte anlgen.

Alles rund um sicherheitsrelevante Fragen und Probleme.
Antworten
Benutzeravatar
Icon3
Beiträge: 18
Registriert: 04.07.2013 09:30:51
Wohnort: Hannover

Neuen Benutzer ohne Rechte anlgen.

Beitrag von Icon3 » 10.07.2013 18:06:46

Hallo Debian-Com.

Ich habe vor kurzem einen SSH Server aufgesetzt und dieser ist nun auch erreichbar.
Ich möchte zwecks der Sicherheit einen neuen Benutzer anlegen der, der einzige sein soll der sich per SSH einlogen kann.

Dieser soll keine rechte besitzten irgenendetwas zu tun ausser sich umzumelden per su oder sudo -i .
Wie könnte ich das realisieren ?

LG Icon3
Ich erkunde das Neuland!

syssi
Beiträge: 2951
Registriert: 24.12.2010 16:50:59
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Rheinland

Re: Neuen Benutzer ohne Rechte anlgen.

Beitrag von syssi » 10.07.2013 18:15:36

Normalerweise gibt man einem Benutzer eine Bash. In dieser ist viele Moeglich... es gibt aber auch Shells, dessen Funktionsumfang man ueber eine Konfigurationsdatei bestimmen kann. Moeglicherweise ist eine solche Shell ( Debianlshell, Debianrush ) ein Weg fuer dich. Dein Vorhaben klingt wohlgemerkt ziemlich seltsam. :-)

Benutzeravatar
Icon3
Beiträge: 18
Registriert: 04.07.2013 09:30:51
Wohnort: Hannover

Re: Neuen Benutzer ohne Rechte anlgen.

Beitrag von Icon3 » 10.07.2013 18:20:13

Es geht mir darum:

ich möchte nur diesem Benutzer ich hab ihn "enterplug" genannt, erlauben sich per ssh auf meine maschine zu schalten.
Er soll nur das Kommando "su x" benutzen können um sich nur als ich authenifizieren zu können und dann erst als root.

Gehe ich richtig in der Annahme das ich für solch einen Benutzer Befehle wie "ls" oder "cd /" nicht sperren kann das würde nämlich alles darunter fallen.
Ich erkunde das Neuland!

syssi
Beiträge: 2951
Registriert: 24.12.2010 16:50:59
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Rheinland

Re: Neuen Benutzer ohne Rechte anlgen.

Beitrag von syssi » 10.07.2013 18:43:46

Ich wiederhole einfach nochmal, was ich bereits geschrieben habe: Die *Bash* (Default-Shell auf vielen System) kann viele viele Befehle. Darunter auch "ls", "cd" uvm. Die oben genannten Shells kann man in der Befehlsvielfalt beschraenken. Folglich erlaubst du nur, dass der Befehl "su" eingegeben werden darf. Dann konfigurierst du fuer den Benutzer "enterplug" die Default-Shell mit dem limitierten Befehlsumfang und du hast erreicht, was du gerne moechtest.

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: Neuen Benutzer ohne Rechte anlgen.

Beitrag von Cae » 10.07.2013 18:45:28

Und wohlgemerkt sperrst du dich damit aus, zumindest von remote.

Gruss Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

Benutzeravatar
Icon3
Beiträge: 18
Registriert: 04.07.2013 09:30:51
Wohnort: Hannover

Re: Neuen Benutzer ohne Rechte anlgen.

Beitrag von Icon3 » 10.07.2013 18:50:48

Aye, ich werd mich in das Thema mal gründlich einlesen vielen dank fürs erste :)
Ich erkunde das Neuland!

wanne
Moderator
Beiträge: 7438
Registriert: 24.05.2010 12:39:42

Re: Neuen Benutzer ohne Rechte anlgen.

Beitrag von wanne » 10.07.2013 19:00:49

Wenn ich mich richtig erinnere kann man auch die bash so konfigurieren, dass nur Befehle tun, auf die bestimmte regex passen. (Das hatten die bei uns an der UNI.)
Weiß aber nciht wie das gieng
rot: Moderator wanne spricht, default: User wanne spricht.

uname
Beiträge: 12036
Registriert: 03.06.2008 09:33:02

Re: Neuen Benutzer ohne Rechte anlgen.

Beitrag von uname » 10.07.2013 23:06:33

Zwei Ideen:

1.) Restricted Shell:
/usr/local/bin/shell

Code: Alles auswählen

#!/bin/bash
/bin/su <deine-kennung>

Code: Alles auswählen

chmod 755 /usr/local/bin/shell
/etc/passwd:

Code: Alles auswählen

enterplug:x:1002:1002::/tmp:/usr/local/bin/shell
(UID und GID anpassen)

2.) SSH authorized_keys:
Du kannst SSH-Public-Keys
/home/enterplug/.ssh/authorized_keys:

Code: Alles auswählen

command="su <deine-kennung>" ssh-rsa AAA....
nutzen. Mit dem jeweiligen Key darf dann nur der genannte Befehl eingesetzt werden.

Persönlich gefällt mir die erste Lösung besser. Die zweite Lösung nutze ich für Clients welche einerseits einen SSH-Remote-Tunnel aufbauen sollen und gleichzeitig nur /bin/false bekommen sollen. Leider habe ich auf dem betroffenen System nur ein Benutzer mit /bin/bash, so dass ich das entsprechend so abfangen muss und es nicht in /etc/passwd setzen kann. Das ist aber alles ein anderes Thema ;-)

Antworten