# Sicherheit: NonRootLogin SSH

## trickykannix

Hallo Zusammen,

Der Nutzer wurde hiernach (Threat - In diesem Forum: NonRootLogin SSH) der Gruppe wheel zugeordnet.

nach der schweren Geburt des NonRootLogin per ssh, frage ich mich wie es um weitere Sicherheitsmodifikationen bestellt ist.

Was der User dürfen darf(Rechtezuweisung):

---------------------------------------------------

Wie erteilt man dem Nutzer !ausschließlich! das Recht 

1)sich in die shell einzuloggen und

2)sich als su anmelden zu dürfen.

D.h. der Nutzer soll nichts lesen oder schreiben können, auch nicht in andere Verzeichnisse wechseln, diese ansehen dürfen(cat, vi, ls, usw.) oder sonstiges(er soll einfach nur "da" sein, wie ein Baum :) )

-->kann es sein dass es "chmod 000 bzw. chmod u-rwx,g-rwx,o-rwx" ist?

NUR der su Befehl soll ausgeführt werden dürfen.

--------------------------------------------------

Der Nutzer wurde folgendermaßen erstellt:

useradd -m -G wheel -s /bin/bash user

passwd user

Fragen... über Fragen:

Kann man bedenkenlos den Nutzer dieser Gruppe wheel zuorden oder bestehen irgendwelche "versteckten" Risiken?

Wäre es vielleicht besser dem Nutzer eine eigene "wheel"-Gruppe für den Zugang zu erstellen/zuzuordnen?-> Wäre das ein Stück mehr Sicherheit, ein Stück weniger oder einfach irrelevant?

Gibt es eine "bessere" Lösung als die oben benannte Möglichkeit bezüglich der speziellen Wünsche zu erstellen?

Hatte es bereits so probiert:

--------------------------------------

usseradd user -p pw

mkdir /home/userdir

mkdir /home/userdir/.ssh

chown -R user /home/userdir

groupadd usergroup

usermod -G user usergroup (wäre usermod -U geeigneter?)

--------------------------------------

- hat aber so nicht funktioniert, kann es sein dass da noch was mit chmod gemacht werden müsste?

Im Falle den user tatsächlich nur auf diesem Weg "useradd -m -G wheel -s /bin/bash user" erstellen zu können;

kann der cgi-bin Ordner unter /home/user bedenkenlos gelöscht werden wenn der Zugriff über http, https, ftp, usw. ports unerwünscht ist? Bzw. was kann gelöscht werden? Bis auf .ssh alles, oder?

Es ist ausschliesslich der ssh Zugang mit diesem user wünschenswert(als Baum:)).

Mir fällt grad auf wievele Fragen das sind... tschuldigung. Wäre schön hierauf Antworten erhalte.

MfG

dennis

----------

## cryptosteve

 *trickykannix wrote:*   

> Kann man bedenkenlos den Nutzer dieser Gruppe wheel zuorden oder bestehen irgendwelche "versteckten" Risiken?

 

Es gibt keine versteckten Risiken. Systemkritische Dateien solltest Du vorher rechtzeitig für normale User unlesbar gemacht haben (derer gibt es nicht ganz so viele). Homeverzeichnisse kannst Du mit chmod 0700 für alle, ausser den User selbst sperren. Aber spätestens, wenn ein User zu root wechseln kann, ist das alles hinfällig. 

Ansonsten dürfte es für User ziemlich langweilig sein, normale Konfigurationsdateien in /etc/ zu lesen. Bitte nenne doch mal Deine genaue Befürchtung oder Deine genaue Absicht, vielleicht kann Dir dann besser geholfen werden.

Vielleicht auch interessant: http://www.gentoo.de/doc/de/security/security-handbook.xml?part=1&chap=11

----------

## trickykannix

Ich möchte einfach nur den ssh Zugriff für Hacker erschweren. Sollte tatsächlich mal jemand unberechtigter Weise Zugriff erlangen soll es ihm so schwer wie "mir" möglich gemacht werden um weiter Einsicht ins Sytem und in die Ordner der anderen Nutzer mit diesem Nutzer zu erhalten.

Welches wären denn bsw. diese etwas "sensibleren" Dateien?

MfG

dennis

----------

## STiGMaTa_ch

 *Quote:*   

> Wie erteilt man dem Nutzer !ausschließlich! das Recht 
> 
> 1)sich in die shell einzuloggen und
> 
> 2)sich als su anmelden zu dürfen.
> ...

 

Naja, da gibt es eigentlich nur zwei Möglichkeiten das zu tun.

1.) Du verwendest RBAC (Role Based Access Control). Unter Linux wären da die Stichworte wie SELinux und grsecurity zu nennen.

2.) Du lässt ssh in einer chroot Umgebung laufen und hast sonst keine weiteren Befehle drinn (ausser vielleicht ein ssh um aus der chroot raus ins "echte" System zu gelangen.

Lieber Gruss

STiGMaTa

----------

## trickykannix

 *STiGMaTa_ch wrote:*   

> 
> 
> 1.) Du verwendest RBAC (Role Based Access Control). Unter Linux wären da die Stichworte wie SELinux und grsecurity zu nennen.
> 
> 2.) Du lässt ssh in einer chroot Umgebung laufen und hast sonst keine weiteren Befehle drinn (ausser vielleicht ein ssh um aus der chroot raus ins "echte" System zu gelangen.

 

Danke für die "Mühe" der Links. Da ich an den Anfängen stehe fällt mir das schwer einzuschätzen was für mich besser ist. Welche der beiden Varianten wird die generell sicherere bzw. die empfehelenswertere Lösung sein?

Habe mir gerade nochmal chmod angeschaut:

und zwar soll sich der Nutzer, wie oben Beschriben,

1.in "/" einoggen können,

2.in KEIN anderes Verzeichnis wechseln, sich andere Ordner odeer Dateien(vi, cat, etc.) anschauen(ls, sonst.) oder gar irgendwas bearbeiten dürfen

2.NUR der su Befehl soll ausgeführt werden dürfen

Wäre hier,

chmod 0400 user /home/userdir

richtig?

Mir ist klar dass damit erstmal nur Schreiben und Lesen ausgegrenzt würde. Wenn ich das richtig verstanden habe sollten in diesem Fall sämtliche Befehle von dem Nutzer ausgeführt werden. Bitte, Bitte um Korrektur wenn falsch - hätte gerne Feedback.

Wie verbietet man dem Nutzer die Ausführung spezieller Befehle?

----------

