ubuntuusers.de

Keybased Authetication und Sudo Rechte

Status: Gelöst | Ubuntu-Version: Server 22.04 (Jammy Jellyfish)
Antworten |

n.baensch

Avatar von n.baensch

Anmeldungsdatum:
7. Januar 2013

Beiträge: 19

Hallo zusammen, ich plane zurzeit mein Homelab mit Ansible zu automatisieren. Ich habe dazu in meinen Maschinen einen user angelegt, "serveradmin" natürlich mit einem Random Kennwort. Dann habe ich die Keybased Authentication eingerichtet. So weit so gut, sobald ich nun aber etwas installieren möchte über Ansible oder ich configs ändern will brauche ich sudo.

Was mich zu meiner Frage führt:

sollte ich in der Sudoers die Option NOPASSWD nutzen oder lieber überall das selbe Kennwort für den user nutzen?

Ich finde beides sehr heikel und wie ich es auch drehe und wende sehe ich keinen Vorteil einer Lösung. mir fällt aber auch nicht ein wie ich es sinnvoller lösen könnte.

gruß

n.baensch

kB Team-Icon

Supporter, Wikiteam
Avatar von kB

Anmeldungsdatum:
4. Oktober 2007

Beiträge: 9521

Wohnort: Münster

n.baensch schrieb:

[…] user angelegt, "serveradmin"

Wieso?

natürlich mit einem Random Kennwort.

Wieso?

Dann habe ich die Keybased Authentication eingerichtet.

Was auch immer Du damit konkret meinst, es klingt jedenfalls richtig.

So weit so gut, sobald ich nun aber etwas installieren möchte über Ansible oder ich configs ändern will brauche ich sudo.

Wieso?

[…] sollte ich in der Sudoers die Option NOPASSWD nutzen

Auf gar keinen Fall!

[…] wie ich es sinnvoller lösen könnte.

Warum nicht direkt als root anmelden? Natürlich nicht per Passwort, sondern über ein kryptografisches Zertifikat.

n.baensch

(Themenstarter)
Avatar von n.baensch

Anmeldungsdatum:
7. Januar 2013

Beiträge: 19

kB schrieb:

n.baensch schrieb:

[…] user angelegt, "serveradmin"

Wieso?

um eine gemeinsame Basis zu haben. Den Root User über ssh anmelden zu lassen finde ich befremdlich. Habe auch nur mal gelesen das man es nicht tun sollte.

natürlich mit einem Random Kennwort.

Wieso?

Weil alle Administrativen User bei mir ein generiertes Kennwort bekommen. Um nicht den Fall zu schaffen das wenn ein Kennwort geleaked wurde alle Server Angreifbar sind.

So weit so gut, sobald ich nun aber etwas installieren möchte über Ansible oder ich configs ändern will brauche ich sudo.

Wieso?

Weil zb UFW admin Rechte verlangt um rules zu setzen. Auch z.b. das starten und stoppen von Diensten braucht administrative rechte.

[…] sollte ich in der Sudoers die Option NOPASSWD nutzen

Auf gar keinen Fall!

[…] wie ich es sinnvoller lösen könnte.

Warum nicht direkt als root anmelden? Natürlich nicht per Passwort, sondern über ein kryptografisches Zertifikat.

Wie gesagt "Key-based Authentication" ist bereits eingerichtet. Ich nutze gerne andere accounts als zb root um angriffe um einen weiteren (wenn auch minimalen) Punkt komplexer zu machen. Root darf sich auf meinen Systemen eben nicht mehr per SSH anmelden. Es geht mir aber auch genau darum zu erfahren ob ich vielleicht hier einem irrglauben unterliege.

kB Team-Icon

Supporter, Wikiteam
Avatar von kB

Anmeldungsdatum:
4. Oktober 2007

Beiträge: 9521

Wohnort: Münster

n.baensch schrieb:

[…] Ich nutze gerne andere accounts als zb root um angriffe um einen weiteren (wenn auch minimalen) Punkt komplexer zu machen.

Wenn Du Dein System über einen anderen Benutzer verwalten möchtest, musst Du diesem anderen Benutzer die universellen Rechte wie root geben. Damit ist aus Sicht der Systemsicherheit nichts gewonnen. Zwar muss nun ein Angreifer erst einmal den anderen Benutzernamen erraten, aber nun gibt es im System zwei Allmächtige, welche ein Angreifer missbrauchen kann.

Der von Dir angestrebte zweifelhafte Schutz durch „Sicherheit durch Obskurität“ kann auch einfach durch Umbenennen von root auf einen von Dir geheim gehaltenen Namen Namen erreicht werden.

Root darf sich auf meinen Systemen eben nicht mehr per SSH anmelden.

Das ist normalerweise eine gute Idee, wenn auf dem System keine Fernwartung erforderlich ist oder diese Fernwartung über den Sudo-Mechanismus durch einen anderen Benutzer geleistet werden kann. In den Fällen, wenn dieser Mechanismus zu umständlich ist, spricht aber nichts gegen eine gut abgesicherte Anmeldung als root per ssh. „Gut abgesichert“ bedeutet:

  • eben keine Authentifizierung per Passwort, sondern nur über kryptografische Zertifikate

  • niemals per WLAN

  • ggf. Einschränkung auf bestimmte Gegenstellen (z.B. nur LAN, nicht Internet)

  • ggf. Einschränkung der zulässigen Anmeldezeiten

  • Brute-Force-Angriffe erschweren durch Begrenzung der Rate für Anmeldeversuche

sebix Team-Icon

Moderator, Webteam

Anmeldungsdatum:
14. April 2009

Beiträge: 5547

n.baensch schrieb:

sollte ich in der Sudoers die Option NOPASSWD nutzen oder lieber überall das selbe Kennwort für den user nutzen?

Entweder NOPASSWD und den Login fuer den User via SSH nur mit PubKeyAuthentication erlauben, oder ansible mit -K (--ask-become-pass) starten und das sudo Passwort bei jeden Durchlauf einngeben.

Antworten |