Neuen Benutzer zusätzlich zu "root" anlegen?

matt69

Member
Nov 12, 2023
69
11
8
Hallo,

bei Linux soll man ja nie mit "root" arbeiten.
In PVE gibt es per Default aber nur "root".

Sollte hier nicht auch ein neuer Benutzer erstellt werden?
Wie soll der User erstellt werden?

Bei Linux erstelle ich den User so:
Code:
adduser otto
usermod -aG sudo otto

VG
matt69
 
Du kannst dir natürlich zusätzliche User anlegen, aber bestimmte Konfigurationen und Tätigkeiten sind root vorbehalten.
Das ist auch bei anderen Hypervisoren so, wie z.B. ESXi oder Xen.
 
Für arbeiten in der GUI lege ich einen PVE User an, der keine Rechte auf CLI hat und aktiviere MFA.
Wenn du root absichern willst habe ich auch auf einem Host den User root auf CLI mit MFA ausgestattet.
Dazu einfach den google-autheticator installieren und konfigurieren.
Funktioniert mit jeder TOTP App, nicht nur mit der von Google.
 
  • Like
Reactions: matt69
bei Linux soll man ja nie mit "root" arbeiten.
In PVE gibt es per Default aber nur "root".
Dein Hypervisor sollte aber auch nicht im Internet stehen und nicht vertrauenswürdige Personen sollten auch keinen Zugriff auf diesen bekommen. Insofern sehe ich das hier auch nicht weiter dramatisch. Vielmehr solltest du dir für die GUI verschiedene User anlegen, denn hier brauchst root in der Regel so gut wie gar nicht. Ich glaube es betrifft nur das wipen und erstellen von Disks / OSDs, die Konsole und Power Funktionen.

Du solltest root aber zumindest nicht deaktivieren oder einschränken, sehr wohl kannst du natürlich zusätzliche Benutzer auf dem System anlegen oder eben einfach nur in der GUI.
 
Ich habe bei Kunden auch mehrere USER auf CLI angelegt, für Updates und so. Das root Passwort liegt im Safe und das benutzt keiner, außer ein Notfall tritt ein.
 
  • Like
Reactions: matt69
Für arbeiten in der GUI lege ich einen PVE User an, der keine Rechte auf CLI hat
Könnte der PVE User dann trotzdem noch Updates über die GUI ausführen?

Ich habe bei Kunden auch mehrere USER auf CLI angelegt, für Updates und so.
Ist das Anlegen so korrekt?
Code:
adduser otto
usermod -aG sudo otto
U.a. für Updates auf CLI wollte die diesen User verwenden.
 
  • Like
Reactions: matt69
Ich kenne deinen Use-Case nicht, aber deiner Aussagen nach hört es sich so an, als ob du einen Kunden hast, der Updates installieren will. Wäre ich für das System verantwortlich, würde ich das nicht wollen. Bei allen Systemen die ich Managen soll, würde ich dem Kunden weitmöglichst keinen Zugriff geben und auch die Übernahme eines Systems würde ich vertraglich so gestalten, dass ich für keinerlei Probleme in diesem System hafte oder es neu aufgezogen wird.

Aus meiner Sicht macht das einfach nur Probleme, wenn Systeme nicht nach meinem Standard aufgebaut oder entsprechende Arbeiten dokumentiert sind, ich aber dafür verantwortlich bin.
 
Ich kenne deinen Use-Case nicht, aber deiner Aussagen nach hört es sich so an, als ob du einen Kunden hast, der Updates installieren will.
Es gibt keinen Kunden, es ist mein System.

Der Grund meiner Frage ist, wie oben erwähnt:
Es heisst immer, bei Linux soll man nie mit "root" arbeiten.
Deshalb meine Frage, ob man auch bei Proxmox einen zusätzlichen User für CLI anlegen sollte.

Aus meiner Sicht macht das einfach nur Probleme, wenn Systeme nicht nach meinem Standard aufgebaut oder entsprechende Arbeiten dokumentiert sind, ich aber dafür verantwortlich bin.
Dann erzähl doch mal bitte, wie Du das User-Handling in PVE machst?
Oben schreibst Du, dass Du für die GUI einen User ohne Admin-Rechte anlegst.
Was machst Du bei CLI?

GUI - Neuer User ohne Admin-Rechte
CLI - ...?
 
Last edited:
Es gibt keinen Kunden, es ist mein System.
Okay, das hier:
U.a. für Updates auf CLI wollte die diesen User verwenden.
hörte sich so an, als ob es noch zusätzliche Anwender gibt. Daher mein Einwand.
Was machst Du bei CLI?
Dein Hypervisor sollte aber auch nicht im Internet stehen und nicht vertrauenswürdige Personen sollten auch keinen Zugriff auf diesen bekommen.
Die GUI ist per LDAP angebunden und auf die CLI kommen nur vertrauenswürdige Personen, das sind derzeit mein Geschäftspartner und ich. Die Upgrades der Kerninfrastruktur sehe ich als Chefsache an und behalte daher die Hoheit darüber (inkl. der nötigen Notfallbereitschaft).

Bei Managed Infrastrukturen ist das wieder etwas anders geregelt, dort bekommt in der Regel der Kunde einen eingeschränkten GUI User, sofern der Kunde VMs selbst managed, hat er darauf vollen root-Zugriff und macht was er will, liegt die Verantwortung bei uns, bekommt er in der Regel keinen SSH Zugriff. Sollte das irgendwie nötig sind, dann finden sich Lösungen, was z. B. auch eine Toolbox oder ein spezieller Share sein kann. Wir haben hier alle SSH Keys auf den Systemen liegen und es gibt mind. einen Service Account für die GUI oder wenn möglich gibt es eine Servicedomäne. Hängt eben auch immer von den Gegebenheiten ab, was sich wie umsetzen lässt.

Wir machen keine Unterstützung für vor Ort Infrastrukturen, die Übernahme bestehender Systeme ist wie erwähnt auch nur mit Haftungsausschluss drin oder wird von uns neu aufgesetzt. In Bereich von Managed geben wir also nichts aus der Hand und vertrauen nur auf unsere eigenen Fähigkeiten und betreiben dafür eben auch eigene Hardware. Damit haben wir schon einige Probleme ausgeschlagen und vermeiden diese einfach.

Unabhängig von all dem ist es aber auch so, dass ich ein apt update oder apt dist-upgrade auch niemals über die GUI ausführe, dazu gehe ich immer via SSH auf die Systeme. Bei manchen Updates ist auch mal die GUI nicht verfügbar, was dann zu Problemen führen könnte. Die SSH Verbindung ist in der Regel immer da, sollte es da absehbar sein, dass es auch dort Probleme gibt wird es per iDRAC durchgeführt.
 
@sb-jw
Du lieferst viele Infos, wie Du Managed Infrastrukturen regelst.

Aber wie arbeitest Du auf CLI?
Mit root?
Oder...?
 
@sb-jw
Du lieferst viele Infos, wie Du Managed Infrastrukturen regelst.

Aber wie arbeitest Du auf CLI?
Mit root?
Oder...?
Ich betreue als Freiberufler nur Kundensysteme und die gehören dem Kunden und bei den größeren Kunden ist ja auch genügend Know How da.
Auf CLI arbeite ich im Standardsetup mit root, bei den größeren Kunden, mit vielen Admins, hat jeder seinen eigenen Account und muss die Updates dann als sudo ausführen.
Oft sichern wir root aber auch mit MFA ab. Wenn man weiß was man tut , ist das arbeiten mit root kein Problem. Auf einem Linux Client oder Application Server solltst du nicht als root arbeiten.
 
  • Like
Reactions: matt69
Auf CLI arbeite ich im Standardsetup mit root, bei den größeren Kunden, mit vielen Admins, hat jeder seinen eigenen Account und muss die Updates dann als sudo ausführen.
Letztlich genau so wie von @Falk R. beschrieben. Häufiger aber ohne sudo und eigenen Benutzer, es lässt sich ja im /var/log/auth.log nachvollziehen, welcher Key sich wann eingeloggt hat [0]. Natürlich kann man noch sudoreplay verwenden, aber letztlich wenn jeder zu root werden kann, kann er diese potenziell auch entfernen. Das wiederum kann man nur mit einer externen Loggininstanz wie z. B. Graylog verhindern, aber auch nur, wenn das System wirklich Auditsicher ist. Aber auch hier wieder die Grenze, ja ich kann dann auch das Logging abschalten, was der Angreifer aber nicht mehr verhindern kann, der Zugriff wurde ja bereits protokolliert.
Für manche Dinge nutze ich aber auch Ansible, da wird logge ich mich dann auch in der Regel als root ein und habe agent forwarding aktiviert, damit ich auf die dahinterliegenden Systeme komme. Damit muss ich mir auch keine größeren Gedanken mehr um die Eingabe und Validierung der Befehle machen.

Letztlich also immer alles eine Frage, wie weit man es treiben muss oder will. Es gibt natürlich regulatorische Anforderungen, diese muss ich einhalten und umsetzen um Konform zu sein. Aber nicht alle sind oder wollen nach ISO 27001 oder BSI IT-Grundschutz zertifiziert werden.

Wie @Falk R. ja auch ausgeführt hat, wenn man weiß was man tut, ist alles tutti. Es gibt so ein paar Basics an die man sich halten sollte wie z.B. nicht direkt Copy & Pasten, inbesondere wenn es von einer nicht vertrauenswürdigen Seite ist. Auch sollte man sich die Befehle vorher ansehen und wissen, was diese tun. Kein Agent Forwarding aktivieren, wenn man auf Systeme geht.

[0] https://www.baeldung.com/linux/active-ssh-keys#3-evaluating-last-usage-information-from-logs
 
  • Like
Reactions: matt69

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!