Ist es in Ordnung, den Root-Benutzer als normalen Benutzer zu verwenden?

94

Ich habe den Root-Benutzer auf meinem Mac aktiviert, damit ich mich anmelden und Finder usw. ausführen kann. Da ich die faule Person bin, die ich bin, habe ich einfach alles von meinem Home-Verzeichnis an übertragen /var/root. Da ich mir nicht sicher bin, kann ich alles zurückschieben. Ist es technisch in Ordnung, dies wie ein normaler Benutzer zu verwenden? (Ich bin der einzige, der auf meinen Computer zugreifen kann.)

智障 的 人
quelle
6
Gute Frage mit "el Capitan" ohne Wurzel um die Ecke.
CousinCocaine
4
Was bedeutet konkret (Zugriff auf meinen Computer)? Sie stellen wahrscheinlich eine Verbindung zum Internet her. Sie geben nicht an, welche Software Sie Zugriff auf den Computer gewähren. Wie sieht 'OK' für dich aus? Ein dickes Lob für einige gute allgemeine Antworten. Wahrscheinlich ist es besser, die detailliertere Frage (falls vorhanden) als Folgefrage zu stellen.
bmike
6
Sie können ein Root-Konto als normaler Benutzer verwenden, sofern Sie die Antwort auf die Frage "Ist es in Ordnung, den Root-Benutzer als normalen Benutzer zu verwenden?" Kennen. Sobald Sie die Antwort kennen, werden Sie nicht. ;-)
Dakshinamurthy Karra
Möglicherweise möchten Sie den Unterschied zwischen root, admin und normalem Benutzer hinzufügen. Ich glaube, Admin ist die Standardeinstellung.
Steve Moser
6
"Ich bin der einzige, der auf meinen Computer zugreifen kann" <- Lol
Tim

Antworten:

352

Wenn Sie Ihren Computer die ganze Zeit als root angemeldet haben, tragen Sie immer alle Ihre Schlüssel, Ihren Reisepass, 5.000 USD in bar, das Stück Papier mit all Ihren Passwörtern und das einzige Foto von Flopsy, dem entzückenden Kaninchen, bei sich der Tod hat dein siebenjähriges Herz gebrochen. Oh, und eine Kettensäge.

Das heißt, es ist von Zeit zu Zeit sehr praktisch, denn Sie können tun, was Sie wollen, wann immer Sie wollen, ohne nach Hause gehen zu müssen, um etwas zu besorgen oder mit Ihrem Bankdirektor zu sprechen. Aber es birgt auch ein hohes Risiko, dass Sie Dinge verlieren, gestohlen werden (denken Sie nicht, dass die Kettensäge Ihnen helfen wird: Sie sind auf der Straße, bevor Sie bemerken, dass Ihre Brieftasche weg ist) und Dinge tun, die Sie später wirklich bereuen (Impulskäufe) betrunken nach Vegas fliegen), gefährliche Abkürzungen nehmen (Kettensägen durch den Zaun des Löwengeheges, weil das der schnellste Weg zu den Pandas ist) und überreagieren (Kettensägen des Autos Ihres Nachbarn, weil sein Hund zu viel bellt). Und wenn du darüber nachdenkst, gehst du meistens nur ins Büro, gehst einkaufen und triffst dich mit deinen Freunden. Du machst nicht Ich brauche all das Zeug nicht die ganze Zeit bei dir, nur um es bequem zu brauchen, was? Einmal im Monat? Wöchentlich?

Nein, es ist nicht in Ordnung, das Root-Konto immer zu verwenden. Es gibt Ihnen eine winzige Menge an Komfort, bringt Sie aber in große Gefahr. Es besteht die Gefahr, dass dumme Fehler katastrophale Folgen haben ("Hey, warum rm -rf *dauert die Ausführung so lange? **** Ich bin dabei /!"). Es besteht die Gefahr, dass Sie sich an die Vorstellung gewöhnen, dass alle Dateien gleich sind, und dass Sie überall im Verzeichnisbaum mit dem herumspielen können, was Sie wollen. Es besteht die Gefahr, dass jeder Hack auf Ihr Konto sofort ein Hack auf das gesamte System ist. Daher ist jetzt jede einzelne Software auf Ihrem Computer sicherheitskritisch. Und selbst wenn Sie denken, dass es Ihnen egal ist, ob Ihr Computer gehackt wird (schließlich ist dieses Foto von Flopsy ein echtes Stück Glanzpapier, kein kurzlebiges JPEG), ich Sorgen Sie sich darum, dass Ihr Computer gehackt wird, denn dann ist es das Botnetz, das den DDOS-Angriff gegen jeden Internetdienst auslöst, auf den ich heute nicht zugreifen kann.

Root ist dein Spiderman-Kostüm. Es gibt dir große Kraft, erfordert aber große Verantwortung. Es ist immer im Schrank, wenn Sie es brauchen, damit Sie es nicht die ganze Zeit tragen müssen.

David Richerby
quelle
54
Dies war nicht nur ein unterhaltsames und gut geschriebenes Stück, es
klingt
17
Ich komme immer wieder darauf zurück. Dies ist ein echter Ratschlag mit der größten Menge an Humor, die Sie in etwas stecken können und der es trotzdem ernst meint.
Montag,
19
@ 9000 Das ist seit mindestens XP nicht mehr der Fall.
David Richerby
28
Ist Flopsys Tod und die Kettensäge verwandt?
Sirex
29
"Root ist dein Spiderman Kostüm". Ich sterbe hier.
GeminiDomino
23

Sie können, aber es ist ein großes Sicherheits- und Stabilitätsrisiko. Auf diese Weise erhält jede Anwendung vollen Zugriff auf Ihren Computer. Sie können nicht wissen, was sie mit diesem Zugang tun. Es ist unnötig und wirklich unsicher.

Weitere Hintergrundinformationen hierzu finden Sie unter

William T Froggard
quelle
Ich habe die Kommentare entfernt, da sie der Antwort nicht wirklich hinzugefügt wurden. Können Sie die Diskussion im Chat fortsetzen?
Nohillside
Danke für die Änderungen. Hoffentlich behebt dies einige Unklarheiten in Bezug auf meinen Beitrag.
William T Froggard
17

Ehrlich gesagt bin ich damit einverstanden, dass die Verwendung des rootBenutzers als Standard viele Risiken birgt. Aber lassen Sie mich kurz darauf eingehen und einige der Argumente ein wenig kritisieren

  • Gegen Anwendungen verteidigen : Das Berechtigungssystem von * nix ist (bei weitem) nicht stark genug, um beliebige Programme ausführen zu können. Ein bösartiges Programm auf * nix ist in der Lage, genug bösartige Dinge (wie den Diebstahl Ihrer Bankdaten) ohne Root-Berechtigungen auszuführen. Für eine Nicht- rootAnwendung ist es etwas schwieriger als für eine rootAnwendung (z. B. müssen Sie, anstatt ein Root-Zertifikat direkt zu installieren und die Verbindung zur Bank zu unterbrechen, stattdessen mit dem Browser herumspielen, aber hey, das ist tatsächlich ziemlich machbar und Sie mussten das wahrscheinlich trotzdem tun, um sicherzustellen, dass der Benutzer nichts bemerkt.)
  • Abwehr von Benutzerfehlern (z. B. Ausführen eines falschen Befehls und Löschen aller Systemdateien) : Absolut wahr, aber obwohl ein Nichtbenutzer rootdas System speichert, gehen normalerweise alle wichtigen Dateien bereits verloren (da die Dateien im Besitz des Benutzers weitaus mehr sind) wahrscheinlich einzigartig sein).
  • Schutz vor ausnutzbaren Fehlern in Anwendungen, die Sie ausführen: Dies ist jetzt eher der Fall. ZB wenn Sie einen Webserver betreiben, auf dem viele Anwendungen nach außen offen sind und somit leicht ausnutzbare Fehler gefunden werden können. Dies gilt natürlich auch dann, wenn Sie sich hinter einem Router und einer Firewall befinden, obwohl das Ausmaß der Gefahr weitaus geringer ist. Es stellt sich jedoch erneut die Frage, inwieweit das Berechtigungssystem ein privates System realistisch verteidigen kann. Ohne rootBerechtigungen kann weiterhin auf alle privaten Dateien zugegriffen werden, und das Abfangen von Netzwerkdaten ist ebenfalls möglich ... die beiden wichtigsten Dinge, die Sie sich als Angreifer eines privaten Systems wünschen können.
    • (Jetzt hat Apple zusätzlich zum Standard-Dateiberechtigungssystem * nix ein Anwendungs-Sandbox-System eingeführt. Soweit ich weiß, ist eines auch dann noch voll funktionsfähig, wenn es als root angemeldet ist. Wenn dies jedoch nicht der Fall wäre, wäre es das.) ein totaler Deal Breaker.)

In jedem Fall halte ich es nicht für so schrecklich, wie einige andere behaupten. Wohlgemerkt, ich sage auch nicht, dass es eine gute Idee ist, aber ich denke, dass die Leute den Nutzen des * nix-Dateisystem-Berechtigungsmodells für den Schutz von Ihnen überschätzen. Ja, es ist unglaublich nützlich für bestimmte Dinge (z. B. Mehrbenutzersysteme, komplexe Mehranwendungsserver, die den Systembetrieb aufrechterhalten, egal was passiert (ausgeführt, aber nicht unbedingt verwendbar), und wichtige Dateien wegsperren (obwohl Sie besser dran sind, diese zu verschlüsseln) ...), etc.), aber es ist kein magischer Schutz, der verhindert, dass böse Dinge passieren.

In den Kommentaren habe ich eine Analogie gefunden, die zur Beschreibung der Situation völlig ausreichend erscheint. Auf Niederländisch haben wir ein Wort für den kleinen Schrank, in dem Sie alle Zähler und den Schalter für die Hauptwasserversorgung usw. finden. Als rootBenutzerkonto zu arbeiten, ist wie das Schloss von diesem kleinen Schrank zu entfernen. Ironische Tatsache: Die meisten Leute haben überhaupt keine Sperren. Nun, genau wie bei derrootbenutzer das heißt nicht, dass es nicht sinnvoll ist, es in bestimmten fällen wegzusperren, zum beispiel in büros oder anderen halböffentlichen gebäuden, es ist oft wegzusperren, aber in normalen häusern ist es viel wichtiger, ein starkes schloss an der haustür zu haben ( keine zufälligen Dinge installieren, keine Firewall usw.) und alle wichtigen Dinge in einem Safe verwahren (Backups erstellen, Sachen verschlüsseln usw.). Wird ein zusätzliches Schloss in diesem Schrank wehtun? Nein, also ist es vielleicht eine gute Idee, sie für alle Fälle einzurichten, aber höchstwahrscheinlich wird sie ziemlich nutzlos sein.

Laufen als rootBenutzer ist nichts anderes , als alle Schlösser Ihres Hauses mitzunehmen und all das Zeug im Safe immer bei sich zu haben, wie es von David Richerby behauptet wird. Ihr Reisepass (Identität) ist in keiner Weise durch das * nix-Dateisystem geschützt, Ihr Geld (Bankkonto) ist in keiner Weise durch das * nix-Dateisystem geschützt, Ihre wichtigen Passwörter sind wahrscheinlich nicht durch das * nix-Dateisystem geschützt (falls Sie verwenden Safari, diese sind jedoch möglicherweise teilweise durch das * nix-Dateisystem-Berechtigungsmodell geschützt, jedoch ohneroot Sie können Safari immer noch eine unsichtbare Erweiterung hinzufügen und das Kennwort beim nächsten Mal abfangen.) Ihre Fotos sind definitiv nicht durch das * nix-Dateisystem geschützt, und wenn Sie das Terminal verwenden, haben Sie bereits eine Kettensäge in der Hand herum mit dir (nach Punkt 2 oben).

David Mulder
quelle
2
Wenn Sie eine Antwort abgelehnt haben, weisen Sie bitte darauf hin, was in meiner Analyse falsch wäre. Ich bin mir vollkommen bewusst, dass meine Antwort etwas unorthodox ist, aber ich würde erwarten, dass die IKT progressiv genug sind, damit die Antworten nach ihrem Inhalt beurteilt werden und nicht danach, wie gut sie zu den traditionellen Dogmen passen.
David Mulder
3
Dies verdient mehr Stimmen. Die einzigen Dinge, die mir auf meinem Computer wirklich am Herzen liegen, sind Dateien, die meinem (nicht root) Benutzer gehören. Sie repräsentieren meine Fotos, meine Musik, Videos meiner Töchter. Der Rest kann einfach neu installiert werden!
Isak Savo
6
Diese Logik ist im Grunde die gleiche wie zu sagen, weil entfernte Garagentoröffner eine ziemlich schwache Soße sind. Es wäre wirklich keine große Sache, wenn niemand ihre Garagentore schließen würde. Die Prämisse ist wahr, aber der Rat ist falsch. Effektive Sicherheit besteht aus vielen kleinen Teilen, die zusammenarbeiten. Wie jeder in einer Nachbarschaft, der dort Garagen geschlossen hält. Es macht die Nachbarschaft für alle sicherer.
Caleb
2
@Caleb Es gibt einen großen Unterschied zwischen dem Besitz eines Hauses in einer Nachbarschaft und dem Einladen von Personen. Und bis jemand Ihr Haus betritt, kann ihn auf Standard * nix-Systemen nur wenig aufhalten. Folgendes beschreibe ich in dieser Antwort: Sobald jemand in Ihr System eingebrochen ist , helfen die * nix-Dateisystemberechtigungen nicht weiter, da sie nicht die Dinge schützen, die Sie auf einem privaten System für wichtig halten. Das einzige, was es ist (Forts.)
David Mulder
3
Ohne root ist das sicher nicht zu verhindern. Aber das ist eine subtil andere Aussage; so ähnlich wie ich sagte "Angriff", nicht "Kompromiss". Mit root können Sie im Netzwerk noch viel mehr tun. Wenn Ihr Zombie-Rechner an einer einfachen ICMP-Flut teilnimmt, benötigen Sie beispielsweise Raw-Socket-Zugriff, um diesen ICMP-Verkehr zu generieren (weshalb Ping suid root ist). Gleiches gilt für einige andere nützliche böswillige Paketänderungen.
Dannysauer
14

Um 1990 arbeitete ich mit einem Typen namens Tom an einem Projekt. Wir verwendeten einen SUN-Server unter SunOS (ein Unix-Derivat, Vorgänger von Solaris). Dies war in den Tagen vor CD-Laufwerken und Flash-Laufwerken der Fall. Wenn Sie also das Betriebssystem auf Ihrer Festplatte durcheinander gebracht haben, gab es keine Möglichkeit zur Wiederherstellung.

Tom hat sich regelmäßig als root angemeldet. Ich sagte ihm, das sei eine schlechte Idee, aber er hörte nicht zu. Eines Tages hörte ich ihn "Uh-oh" sagen. Er hatte vorgehabt, so etwas einzugeben:

mv something* .

Leider hat er den letzten Punkt weggelassen, sodass die Shell alle Datei- und Verzeichnisnamen erweiterte, die diesem Muster entsprachen. Dann verwendete der Befehl mv alles, was als endgültiger Name in der Liste endete, als Zielverzeichnis und verschob alles andere in dieses Verzeichnis. Außerdem befand er sich derzeit leider im Stammverzeichnis, sodass im Grunde das gesamte Dateisystem in eines seiner Unterverzeichnisse verschoben wurde.

Ich benutzte den Pfeil nach oben, um den vorherigen Befehl zurückzuholen und zu sehen, was passiert war. Das erste, was ich dann sagte, war: "Nicht abmelden! Oder Sie werden sich nie wieder anmelden können."

Kein Problem, oder? Wir könnten einfach alles zurückbringen. Wir konnten, außer dass der Befehl mv nicht zu den integrierten Befehlen der Shell gehörte. Stattdessen handelte es sich um ein ausführbares Programm, das in einer der verschobenen Dateien gespeichert war. Zum Glück war ls ein integrierter Befehl. Nachdem ich also mit ls überprüft hatte, wohin die Befehle verschoben wurden, konnte ich den Befehl mv finden, ihn mit seinem vollständigen Pfadnamen aufrufen und die Dinge wieder dahin bringen, wo sie eigentlich sein sollten .

Und dann sagte ich zu ihm: "Tom, aus diesem Grund ist es eine schlechte Idee, sich routinemäßig als root anzumelden."

Mike Ciaraldi
quelle
10

Im Allgemeinen möchten Sie das Eigentum an Ihren persönlichen Dateien vom Rootbenutzer getrennt halten. Aus diesem Grund erstellen Sie ein Konto für sich als Administrator. Unter OS X wird der Zugriff auf Root-Ebene mit dem sudoBefehl aus der Terminal-Anwendung akzeptiert . Wenn Sie beispielsweise die Partitionierung Ihres internen Laufwerks anzeigen möchten, lautet der Befehl

gpt -r show /dev/disk0

Wenn dies eingegeben wird, wird die folgende Fehlermeldung angezeigt.

gpt show: unable to open device '/dev/disk0': Permission denied

Um den Befehl zu verwenden, müssen Sie sudowie unten gezeigt verwenden.

sudo gpt -r show /dev/disk0

Wenn Sie der Root-Benutzer werden möchten, um die Eingabe zu vermeiden sudo, können Sie einfach eingeben sudo sh. Mit dem exitBefehl können Sie den Root-Benutzer beenden.

Wenn Sie eine Anwendung als Root-Benutzer ausführen möchten, können Sie die Terminal-Anwendung verwenden. Wenn Sie beispielsweise den Finder als Root-Benutzer starten möchten, geben Sie den folgenden Befehl ein.

sudo /System/Library/CoreServices/Finder.app/Contents/MacOS/Finder &

Um zu vermeiden, dass zwei Finder-Anwendungen gleichzeitig geöffnet sind, sollten Sie Ihre Finder-Anwendung in der Regel zuerst beenden. Dies kann mit dem folgenden Terminalbefehl erfolgen.

osascript -e 'tell application "Finder" to quit'

Ein Wort der Vorsicht: Das Voranstellen eines Befehls mit sudoist nicht dasselbe wie das Werden des Root-Benutzers. Zum Beispiel die Befehle

sudo echo $USER
sudo echo $SUDO_USER

führen zu der gleichen Ausgabe wie die unten gezeigten Befehle.

echo $USER
echo $SUDO_USER

Wenn Sie der Root-Benutzer (der Superuser) werden, führen dieselben Befehle zu einer anderen Ausgabe. Dies kann durch Eingabe der folgenden Befehle überprüft werden.

sudo sh
echo $USER
echo $SUDO_USER
sudo echo $USER
sudo echo $SUDO_USER
exit
David Anderson
quelle
4

Für den Fall, dass die anderen Gründe nicht gut genug waren ... Vergiss nicht, dass du Homebrew nicht als Root verwenden kannst (was eigentlich ein großer Schmerz ist). Bei anderen Programmen können Sie sie auch nicht als Root verwenden oder es treten dabei häufig ohne ersichtlichen Grund Berechtigungsprobleme auf, da die Programmierer davon ausgehen, dass sie nicht als Root ausgeführt werden. Ich denke Steam ist einer von ihnen.

Es ist auch schön, wenn alle System- und Benutzer-Informationen aus verschiedenen Gründen getrennt sind.

Ich weiß nicht, ob es sich um ein so schlechtes Sicherheitsproblem handelt. Ich persönlich mache mir mehr Sorgen um Probleme mit der Organisation und den Berechtigungen als um alles andere.

sudo
quelle
4

Nur ein paar Beispiele, warum es nicht in Ordnung ist, immer wie folgt zu arbeiten root:

  • Root-Benutzer können Dateien problemlos an Orten ablegen, die sich nur schwer finden lassen.
  • Der Root-Benutzer hat unformatierten Zugriff auf Schnittstellen und kann eine Schnittstelle in den Promiscuous- oder Monitor-Modus versetzen und den gesamten Netzwerkverkehr protokollieren.
  • Der Root-Benutzer hat unformatierten Zugriff auf Geräteknoten und kann eine Festplatte beschädigen, was die Wiederherstellung von Dateien erheblich erschwert, als dies bei einem einfachen 'rm' auf Benutzerebene der Fall ist. Der Root-Benutzer kann möglicherweise auch die Startsektoren eines Laufwerks ändern, sodass die Malware auch nach einer Neuinstallation des Betriebssystems erhalten bleibt.

Ich könnte weitermachen. Der Punkt ist, dass es gute Gründe gibt, nicht als root zu laufen. Ich bin nicht anderer Meinung, dass sich für die meisten Menschen die meisten persönlichen Daten sowieso in ihrem Home-Verzeichnis befinden, aber wenn sie als Root ausgeführt werden, sind diese Daten und das gesamte System einem höheren Risiko ausgesetzt. Der Rat, nicht als root zu laufen, ist nicht falsch. Wenn eine Person die Auswirkungen der Ausführung als Root nicht versteht, sollte sie dies definitiv nicht tun. Etwas anderes vorzuschlagen ist unverantwortlich.

körperlich
quelle
1

Es sei denn, Sie verwenden Backtrack / Kali für eine bestimmte Aufgabe: NEIN. Behandeln Sie den Superuser wie eine geladene Waffe: Wenn Sie sie sofort benötigen und verwenden möchten: OK. Wenn Sie Ihr Problem jedoch auf andere Weise lösen können (z. B. "sudo"), tun Sie dies.

SamWN
quelle
0

NEIN! Dies wird Ihr System in sehr kurzer Zeit einbrechen lassen. Stattdessen suoder sudonach Bedarf in root. Wenn Sie absolut positiv ausgeführt werden müssen root, melden Sie sich mindestens zu einem beliebigen Zeitpunkt ab, wenn Sie den Computer nicht verwenden. Wenn Ihr System Mehrbenutzer-fähig ist, aber keine Benutzer konfiguriert sind, empfehle ich Ihnen, einen privilegierten Benutzer zu erstellen (dh einen, der nach Bedarf sudo/ suin root kann ). SO SCHNELL WIE MÖGLICH !!!

Tucker Twomey CodeZypher
quelle