'su' als normaler User nicht möglich - trotz 'wheel'-Gruppeneintrag

worker

Active Member
Hallo Community,

ich hab ne FreeBSD 11.3 - Kiste im Internet hängen und komme bei folgendem Problem - trotz $suchmaschinens - nicht weiter ...

Es ist eine frische Installation wo ich einen normalen User angelegt und diesen in die Gruppe "wheel" gepackt habe.

Auf meiner Kiste - hier zuhause, wo FreeBSD 12 läuft - konnte ich mich mit 'su' ganz easy als root-user 'anmelden'.

Die Anmeldung per SSH auf die Internetkiste geht einwandfrei, jedoch wenn ich mich dann per 'su' als root identifizieren möchte, kommt nur die Meldung "su: Sorry".
Ich habe festgestellt, dass ich aber als root angemeldet werde, wenn ich das Passwort vom root-user benutze ... das ist krass!
Wie kann das sein? Was läuft hier falsch?

Übrigens kann ich auch nicht [testweise] weder das suid, noch das guid auf die Datei 'su' (als root) setzen. Es kommt nur die Meldung "Operation not permitted".

Wäre nett, wenn mir hier jemand weiterhelfen könnte - danke.
Grüsse
worker
 
Hi Yamagi,

id-Ausgabe (als root):
Code:
uid=0(root) gid=0(wheel) groups=0(wheel),5(operator)

id-Ausgabe (als 'worker'):
Code:
uid=1003(worker) gid=1003(worker) groups=1003(worker)

Hmm, warum ist der normale User nicht ebenfalls in der Gruppe 'wheel' ?

$ cat /etc/group | grep wheel
Code:
wheel:*:0:root,worker
*KopfKratz* ...
 
Zuletzt bearbeitet:
Hi !

Zitat : Die Anmeldung per SSH auf die Internetkiste geht einwandfrei ....


Wie hast du dich denn vorher angemeldet , wenn der PC irgendwo im
Netz ist ???

Wahrscheinlich mit :

Prompt: ssh user@ip

Versuch einfach mal :

Prompt: ssh root@ip

Gruss
 
Hi !
Zitat : Die Anmeldung per SSH auf die Internetkiste geht einwandfrei ....
Wie hast du dich denn vorher angemeldet , wenn der PC irgendwo im
Netz ist ???

Wahrscheinlich mit :
Prompt: ssh user@ip

Versuch einfach mal :
Prompt: ssh root@ip
Gruss

Mit dem Satz "Die Anmeldung per SSH auf die Internetkiste geht einwandfrei .... " wollte ich lediglich klar machen, dass ich mich per SSH ganz normal anmelden kann - sowohl als root, wie auch als normaler user.
Lediglich nach der Anmeldung, als normaler user, kann ich nicht per 'su' zu root wechseln.
 
... jetzt ist mir noch eingefallen, dass mein '/home'-Verzeichnis ein SymLink auf einen anderen Ort verweist. Könnte es sein, dass das das Problem ist?

Nachtrag: Scheint nicht das Problem zu sein...

Und noch ein Nachtrag zu Post #3:
Nach einem Reboot & id-Ausgabe (als 'worker'):
Code:
uid=1003(worker) gid=1003(worker) groups=1003(worker),0(wheel)

'su' funktioniert dennoch nicht...

Also ich will ja nicht meckern, aber ..... :D
 
Hi Worker,

was mich verwirrt:

Ich habe festgestellt, dass ich aber als root angemeldet werde, wenn ich das Passwort vom root-user benutze ... das ist krass!
Wie kann das sein? Was läuft hier falsch?

Das ist doch das erwartete Verhalten von su. Wenn zum einem User per su wechseln möchtest, benötigst Du sein Passwort, wenn Du nicht root bist.

Übrigens kann ich auch nicht [testweise] weder das suid, noch das guid auf die Datei 'su' (als root) setzen. Es kommt nur die Meldung "Operation not permitted".
Wenn das setuid-Bit nicht gesetzt ist, wirst Du per su zu keinem anderen Benutzer wechseln können, wenn Du nicht root bist.
 
Das ist doch das erwartete Verhalten von su. Wenn zum einem User per su wechseln möchtest, benötigst Du sein Passwort, wenn Du nicht root bist.
Im Ernst??
Dann ist das nur bei sudo so, dass man sein eigenes Passwort angeben muss, um zum root zu wechseln?
Und wenn ja, was ist der Sinn dieses Verhaltens?

Ich könnte schwören, dass es auf meiner FreeBSD 12 - Testkiste anders ist/war...

Wenn das setuid-Bit nicht gesetzt ist, wirst Du per su zu keinem anderen Benutzer wechseln können, wenn Du nicht root bist.
Ja.
Das Bit ist ja gesetzt. Nur wunderts mich, dass ich es als user root nicht [testweise] ändern/löschen kann und beim 'gid' kann ich es als root nicht setzen.
 
Ich habe festgestellt, dass ich aber als root angemeldet werde, wenn ich das Passwort vom root-user benutze ... das ist krass!
Wie kann das sein? Was läuft hier falsch?
Das hatte ich offenbar falsch verstanden und wollte das nur noch der Vollständigkeit halber nun erwähnen: das Verhalten von ssh kann an dieser Stelle in der /etc/ssh/sshd_config festgelegt werden und steht wohl per default so, dass kein direktes login als root über ssh funktioniert (zumindest bei all meinen Rechnern, aber es könnte sein, dass ich das auch mal manuell so gestellt habe). Es geht also bei mir nicht ssh root@ip und ich muss immer ssh user@ ip und anschließend mit su zu root werden. Man kann aber in der sshd_config auch ein anderes Verhalten festlegen. Die Variable dazu heißt PermitRootLogin und Werte sind yes oder no.
 
Bitte meinen Kommentar (#12) und das dazugehörigen Zitat nochmals lesen :)
Das hab ich schon verstanden ;) ... habe mich aber wohl falsch ausgequetscht ...
Was ich meinte war/ist, dass es doch sonst immer - aus gutem Grund - heisst, sein Passwort (und vor allem das des Administrators [demfall root]) niemals weitergeben. Also meine Frage bezieht sich wohl auf die Philosophie dahinter :) ... drum ergibt das für mich keinen Sinn.
Klar, wenn ich ein PHP-Script über den Benutzer www ausführen muss, dann ist das ja was anderes - da gibt es auch kein Passwort einzugeben. Aber beim root, oder einem anderen realen User ...??
 
Dann ist das nur bei sudo so, dass man sein eigenes Passwort angeben muss, um zum root zu wechseln?
sudo mag ich deswegen schon gar nicht. Du wirst damit nicht zu root, du setzt als Nutzer einen Befehl mit root-Privilegien ab. Danach bist du immer noch user und musst für den nächsten Befehl wieder sudo aufrufen.
Es ist der einzige Fall und daher eine große Ausnahme, wo man nicht das Passwort für root kennen muss, wenn man etwas mit Root-Rechten ausführen möchte.
Wie @marcel schon sagte, bei su brauchst du immer das Passwort des Users, zu dem du werden willst. su user1 fragt also PWD von user1 und su user2 fragt PWD von user2 und so weiter. Wird kein user genannt, nimmt su root und dann braucht man das PWD von root.
 
Das hatte ich offenbar falsch verstanden und wollte das nur noch der Vollständigkeit halber nun erwähnen: das Verhalten von ssh kann an dieser Stelle in der /etc/ssh/sshd_config festgelegt werden und steht wohl per default so, dass kein direktes login als root über ssh funktioniert (zumindest bei all meinen Rechnern, aber es könnte sein, dass ich das auch mal manuell so gestellt habe). Es geht also bei mir nicht ssh root@ip und ich muss immer ssh user@ ip und anschließend mit su zu root werden. Man kann aber in der sshd_config auch ein anderes Verhalten festlegen. Die Variable dazu heißt PermitRootLogin und Werte sind yes oder no.
Den direkten Root-Login werde ich dann abschalten, wenn ich sicher bin, dass ich mich als normaler User auch als root anmelden kann. Hab ich schon immer so gehandhabt - und dann SSH nur noch per KEY ;)
 
Was ich meinte war/ist, dass es doch sonst immer - aus gutem Grund - heisst, sein Passwort (und vor allem das des Administrators [demfall root]) niemals weitergeben.
du gibst es ja nicht weiter.
Im Gegenteil: bei der Konstruktion mit sudo genügt ein PWD, das des berechtigten Users. Bei su musst du schon mal erfolgreich als berechtigter User eingeloggt sein und brauchst dann nochmal das PWD von root.
 
sudo mag ich deswegen schon gar nicht. Du wirst damit nicht zu root, du setzt als Nutzer einen Befehl mit root-Privilegien ab. Danach bist du immer noch user und musst für den nächsten Befehl wieder sudo aufrufen.
Es ist der einzige Fall und daher eine große Ausnahme, wo man nicht das Passwort für root kennen muss, wenn man etwas mit Root-Rechten ausführen möchte.
Wie @marcel schon sagte, bei su brauchst du immer das Passwort des Users, zu dem du werden willst. su user1 fragt also PWD von user1 und su user2 fragt PWD von user2 und so weiter. Wird kein user genannt, nimmt su root und dann braucht man das PWD von root.
Nun per 'sudo su' wirst zum root und musst das eigene Passwort nur einmal eingeben. Ich finde das eine super elegante möglichkeit, um das root-Passwort nicht weitergeben zu müssen.
 
du gibst es ja nicht weiter.
Im Gegenteil: bei der Konstruktion mit sudo genügt ein PWD, das des berechtigten Users. Bei su musst du schon mal erfolgreich als berechtigter User eingeloggt sein und brauchst dann nochmal das PWD von root.
Natürlich gebe ich das Passwort an den normalen User weiter, der es nutzen will (wegen 'su' in dem Fall) ... oder hab ich da jetzt was falsch verstanden?
Es geht ja nicht nur um 'su', sondern wenn ich das Passwort von root hab, kann ich ja in seinem Kramszeugs wühlen (/root).
 
Jedenfalls danke @marcel für die Aufklärung :)
Ich sag jetzt nicht, wie lange ich schon bei Linux bin, um den Unterschied zwischen su und sudo eigentlich kennen zu sollen/müssen :D ...
 
Völligste Verwirrung. ;)

sorry, aber ich finde das Konzept von 'su' demfall merkwürdig
um den Unterschied zwischen su und sudo eigentlich kennen zu sollen/müssen
Och naja...kommt doch immer drauf an, mit was man sich tagtäglich mehr beschäftigt.

Ich wiederhole das nochmal:

Das normale Verhalten beim sshd ist doch, dass root sich nicht direkt anmelden kann und das ist gut so.
'su' können nur User benutzen, die in der Gruppe 'wheel' sind.
-> Wenn dieser User das Passwort von 'root' nicht kennt, nützt es ihm nichts.
Somit meldet man sich selber von außen erst als Normaluser an und wird dann per 'su' root. (weil man eben das PW kennt und eben zwei Passwörter eingeben muss, um ans Gedärm zu kommen). :D
 
Zurück
Oben