Besorgnis über die Anmeldung als root überbewertet?


16

Für persönliches Linux auf meinen persönlichen Notebooks habe ich meine Umgebung normalerweise so eingestellt, dass sie sich selbst unter X oder niedrigeren Runlevels als root anmeldet. Ich habe festgestellt, dass mein Workflow sehr angenehm und schnell ist, ohne dass ich mühsam tippen suoder sudonach einem Schlüsselbund oder einer Auth gefragt werden muss.

Bisher hatte ich noch nie ein Problem damit. Warum machen die meisten Leute so was? Ist die Sorge überbewertet? Dies setzt natürlich voraus, dass der Benutzer weiß, was er tut, und sich nicht wirklich um Systemzuverlässigkeit und Sicherheitsprobleme kümmert.


4
Warum als root ausführen? Wenn Sie wirklich einfach nicht tippen möchten, sudowürde ich vorschlagen /etc/sudoers, einige Befehle als nopasswd (nicht alle) zu bearbeiten und hinzuzufügen. Fügen Sie dann in Ihrer ~/.bashrc(oder Alias-Datei) aliases hinzu sudo command. Dies ist wahrscheinlich immer noch keine gute Idee, wird aber den Schaden begrenzen, den Sie anrichten oder anrichten können.
Xenoterracide

11
Das Maß an Feindseligkeit in diesem Thread ist ein wenig besorgniserregend; Es ist eine berechtigte Frage. Ja, es ist eine schlechte Idee, die ganze Zeit als root zu laufen, aber es ist nicht nötig, sich darüber hinwegzusetzen
Michael Mrozek

5
@Mrozek: Einverstanden. Nun, ich würde niemals einem System, über das ich die Kontrolle hatte, das OP-Root-Passwort geben, aber es kann sehr lehrreich sein, sein System durch Eingabe der falschen Zeichen zu verwerfen. Vielleicht lernt das OP-Schreiben "Bisher habe ich noch nie Probleme damit gehabt" etwas Nützliches, wie die Tatsache, dass Dinge zum ersten Mal passieren können.
David Thornley

2
Ich denke, das fasst zusammen, warum nicht: unix.stackexchange.com/questions/502/…
Alex B

3
Analogie zum Auto: Es ist, als würde man ohne Sicherheitsgurt fahren. Möglich, aber möglicherweise tödlich.
25.08.10

Antworten:


33

Aus den gleichen Gründen sollte jeder Daemon minimale Rechte haben. Apache kann als root ausgeführt werden. Es ist darauf ausgelegt, eine Aufgabe zu erfüllen, und es kann doch nichts Schlimmes passieren?

Aber nehmen wir an, Apache ist nicht fehlerfrei. Von Zeit zu Zeit werden Fehler entdeckt. Manchmal kann es sich sogar um eine beliebige Codeausführung oder ähnliches handeln. Jetzt, wo Apache als root ausgeführt wird, kann es auf alles zugreifen - zum Beispiel kann es ein Rootkit in den Kernel laden und sich selbst verstecken.

Andererseits ist das Schreiben eines Rootkits auf Benutzerebene sehr schwierig. Es muss verschiedene Programme (wie ps) überschreiben /home, was aufgrund des zusätzlichen Speicherplatzes Verdacht erregen kann. Es könnte sein, dass es die genaue Konfiguration nicht kennt und vergisst, sich zB gnome-system-monitordeshalb auszusetzen. Es muss Abdeckung bash, tcshund jede Schale Sie passieren zu verwenden (sich selbst zu starten). Es müsste mit verschiedenen Konfigurationen funktionieren, anstatt einfach eine Reihe von Rückrufen zu überschreiben.

Bedenken Sie, dass vor nicht allzu langer Zeit eine willkürliche Codeausführung in ... Adobe Reader entdeckt wurde.

Ein anderer Grund sind Benutzerfehler. Es ist besser, gewarnt zu werden, bevor die gesamte Festplatte mit einem Befehl gelöscht wird.

Der dritte Grund ist unterschiedliche Muscheln. Die Root-Shell sollte für den /Fall installiert werden, dass eine Rettung des Systems durchgeführt werden muss. Benutzer-Shells können auf installiert werden /usr(z. B. kann der Benutzer zsh verwenden).

Der vierte Grund ist, dass verschiedene Programme nicht als root funktionieren. Sie wissen genau, dass dies nicht der Fall ist, daher müssten Sie das System patchen.

Der fünfte Grund ist, dass man /rootsich nicht auf einer separaten Partition /homebefinden sollte, solange man kann (und sollte). Mit /homeseparatem hilft aus verschiedenen Gründen.

AUCH : WARUM NICHT ALS NORMALER BENUTZER VERWENDEN? Sie müssen häufiger keine Root-Rechte haben als dies der Fall ist. Es sind sehr geringe Kosten für die Sicherheit.


3
Die Tatsache, dass Root ddalles mit jedem Block-Gerät im System machen kann, kombiniert mit der Tatsache, dass Root eine Menge absichtlicher und unbeabsichtigter Eingriffe in Kernel- und System-Sachen in / dev und / proc durchführen kann genug, um jeden davon zu überzeugen, nicht als root zu laufen, es sei denn, dies wird benötigt.
LawrenceC

29

Sie können auch nackt Motorrad fahren, und es kann nichts passieren. Aber ich wette, du würdest dich besser fühlen, wenn du das Motorrad kaputt gemacht hättest ...


7
vielleicht, aber denken Sie an das Gefühl, Sie würden den Rest der Zeit bekommen!
Sirex

12

Abgesehen von dem offensichtlichen Sicherheitsaspekt ist klar, dass Sie Ihr System nie durch falsche Eingabe eines Befehls in der Shell oder eines Lapsus abgesprengt haben. Wenn es passiert, werden Sie verstehen, warum die Leute darüber ausflippen. Und dann wirst du entsetzt weinen und auch feststellen, dass es eine sehr lehrreiche Erfahrung war, aber du bekommst dein System trotzdem nicht zurück.

Ein Gedanke: Wenn Sie während der normalen Verwendung Ihres Systems nach dem Root-Passwort gefragt werden (dh keine Pakete oder andere Systemverwaltungsaufgaben installieren), machen Sie es falsch .


+1, um mich an ein paar alte Erfahrungen zu erinnern. Oder sollte das -1 sein, um sie wieder aufzurufen?
David Thornley

5
Ich habe nie verstanden, warum die Leute glauben, dass die Verwendung von sudo das falsche Eingeben von Befehlen verhindert. Das letzte System, das ich vor ein paar Jahren abgespritzt habe, war ein sudo rm -rf / dir / job.
Sirex

4

Nein, es ist nicht überbewertet. In der Praxis wird es am wenigsten geschätzt. :-)

Mein kleines Team bei der Arbeit teilt sich zum Beispiel einen RHEL-Computer für die Entwicklungsarbeit: Erstellen von Inhalten, Testen usw. Jeder verwendet einzelne Benutzerkonten, aber wir teilen auch das Root-Passwort, da dies von Zeit zu Zeit für schnelle Sysadmin-Aufgaben benötigt wird. Dies hat auch dazu geführt, dass wir es geschafft haben, das Betriebssystem in seiner kurzen Lebensdauer einige Male zu entlasten. Jemand, der eine bestimmte Version von libc erstellt hat, hat die System-libc durch einen Dummkopf entferntrmAufruf. In einem anderen merkwürdigen Fall fehlte die Partitionstabelle. (Ok, das hatte nichts mit Privilegien zu tun.) Der Rest des Teams ist gesperrt, bis der Bruch behoben ist. Eine Lösung besteht darin, jemanden als Freiwilligen zu haben, der die Sysadmin-Aufgaben übernimmt. Bis jetzt haben wir uns nicht allzu sehr darum gekümmert, dass die Leute ihre Lektionen lernen können: Wir alle brauchen einige Zahnspuren an unseren hinteren Enden, und dies sind relativ billige Zahnspuren.

Die wirklich Neugierigen möchten vielleicht dem Grundsatz des geringsten Privilegs folgen und Ken Thompsons Artikel "Reflections On Trusting Trust" lesen . ("Die Moral ist offensichtlich. Sie können Code nicht vertrauen, den Sie nicht vollständig selbst erstellt haben.")


3

Einen Kommentar auf eine andere Antwort aufgreifen

Bei Linux geht es jedoch um Freiheit, einschließlich der Freiheit, Ihre eigenen Daten zu zerstören, sowie um Privatsphäre und Sicherheit

sudoLinux bietet diese Freiheit, auch wenn es Menschen dazu zwingt . Das ganze Sicherheitsargument, das Sie meiden möchten, dient dazu, Sie vor Dingen zu schützen, nicht wahr?

Betrachten Sie es als einen Sicherheitsgurt. Die Verwendung dauert eine Sekunde. Könnte dein Leben vor anderen Idioten retten (so wie dir selbst).

Wenn Sie Ihr Passwort nicht ständig eingeben möchten, sudoedit /etc/sudoersaber weiterhin als root arbeiten, werden Sie wahrscheinlich eines Tages etwas ausführen, das Ihr System und alle Ihre Daten zerstört.

Wenn Sie froh sind zu wissen, dass sogar etwas so Beschissenes wie Flash Ihren Computer neu formatieren könnte, kümmert es niemanden, was Sie tun. Als root ausführen.


2
Nicht nur bösartige Programme,
sondern auch fehlerhafte

2

Warum nicht Damn Vulnerable Linux als Ihr Hauptsystem ausführen , während Sie gerade dabei sind? Wenn Sie die Systemsicherheit ignorieren, können Sie auch alles ignorieren ...


Technisch gesehen kann ein Computer mit Root als
Hauptbenutzer

3
@Maciej der einzige sichere Computer ist ausgesteckt, am Grund eines Sees in Beton eingehüllt.
Xenoterracide

Mitnick wies darauf hin, dass jemand es außerhalb des Sees holen, Beton zerbrechen und einstecken kann (oh, er sagte nur, dass jemand einen nicht eingesteckten Computer mit Hilfe von Soziotechniken einstecken kann, aber das Prinzip ist dasselbe). Ich habe versucht, technisch und theoretisch vorsichtig zu sein - auch schlechtes Schloss ist besser als kein Schloss. Zum Beispiel halte ich mein aktuelles System für sicher genug, obwohl es kein SELinux gibt;)
Maciej Piechotka

@Marciej gut Sicherheit dreht sich alles um Kosten / Risiko-Analyse. Sie legen nie mehr Sicherheit um etwas als das, was etwas wert ist.
Xenoterracide

1
@Marciej und wenn es nichts wert ist, dann macht es keinen Sinn, Sicherheit einzurichten. An diesem Punkt spielt keine Sicherheitslücke eine Rolle.
Xenoterracide

1

Sie sprechen von einem Betriebssystem, bei dem unzählige Menschen zusammenarbeiten. Wenn Sie nur stabile Software verwenden, sind Sie möglicherweise eine Zeit lang sicher.

Wie bereits erwähnt, werden Sie überrascht sein, wie klein eine Sache Ihre gesamte HD-Kapazität sein kann. In meinem ersten Jahr habe ich viel versucht, root zu verwenden, weil es in den Tagen von Fedora-Core 3 nicht so viele ausgefallene Möglichkeiten gab, Ihr System vom Benutzer aus zu verwalten.

Zu der Zeit habe ich eine kleine xorg-Bearbeitung ohne Backup gemacht, weil ich nicht dachte, dass es wehtun würde. Desktop weg. Dann versuchte ich es manuell zu beheben, konnte aber nicht genau herausfinden, was ich getan hatte. Später dachte ich, dass ich vielleicht meine Treiber und meinen Desktop neu installieren könnte, aber versehentlich mein Ethernet getrennt habe, da es auch nvidia war.

Beim ersten Ausführen von Arch habe ich Warnungen zum Erstellen eines Benutzers ignoriert und eine Weile als Administrator ausgeführt. Ich habe ein Paket von AUR installiert, das ich brauchte, und nach dem Neustart war meine gesamte Installation fehlgeschlagen.

Da ich in Root war, wurde die Behebung dieser Probleme viel schlimmer, als sie sein mussten.

Sie könnten daraus schließen, dass ich einfach inkompetent war. Aber wie schon andere erwähnt haben ... "sudo" zu tippen ist ein kleiner Preis für ein beruhigendes Gefühl.

EDIT: Oh ... und bestimmte Programme, wie WINE, sollen ausdrücklich nicht in einer Root-Umgebung laufen. http://wiki.winehq.org/FAQ#head-96bebfa287b4288974de0df23351f278b0d41014


1

Sicherheitsgründe - Ein Dämon oder eine Skript-Sicherheitslücke, die auf Linux abzielt, würde die Sysadmin-Macht über Ihr System haben.

Das Ausführen als einfacher Benutzer UND das Verwenden von sudo unterscheidet sich in Bezug auf die Sicherheit erheblich. Mein Firefox wird als mein Benutzer ausgeführt, sodass alle Firefox-Sicherheitslücken nur mein Konto betreffen. Nichts anderes.


0

Ich stimme Maciej in Bezug auf die Sorge um die Sicherheit und die Kontrolle über bestimmte Befugnisse zu. Da Sie der Eigentümer Ihres Systems sind, können Sie diese Funktion auch deaktivieren, wenn Sie möchten;) Sie haben die Wahl.


-4

Ich kann keine großen Probleme beim Anmelden als root für eine normale Sitzung feststellen, solange Sie nichts Dummes tun.

Ich mache es nicht persönlich, weil ich gelegentlich etwas Dummes mache. Ich habe nie bemerkt, dass etwas Dummes, das ich getan habe, möglicherweise ein großes Problem war, aber ich bin nicht arrogant genug zu glauben, dass ich niemals etwas wirklich Dummes tun würde .


8
bedeutet die Verwendung eines Webbrowsers etwas Dummes?
Xenoterracide

4
@xenoterracide: Wenn du als root eingeloggt bist, würde ich sagen, dass es etwas Dummes ist.
David Thornley

2
@ David Ich weiß, dass;) das ist ein bisschen der Punkt
Xenoterracide
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.