Vraag Wat is er mis met altijd root zijn?


Ik heb het gevoel dat dit een domme vraag is, maar dit is iets dat ik me al een tijdje heb afgevraagd.

Ik heb een VPS en dit is mijn eerste grote Linux-onderneming. Ik ben de enige persoon die er toegang toe heeft. Mijn vraag is, wat is er mis met alleen in te loggen als root in tegenstelling tot het maken van een account en het geven van sudo toegang? Als een sudoer alles kan doen wat root kan, wat is dan het verschil? Als een hacker mijn wachtwoord kon kraken met mijn standaard, niet-root account, dan zou hij ook sudo-commando's kunnen uitvoeren, dus hoe maakt een hacker die mijn root-account kraakt meer of minder uit?


81
2017-08-24 14:23


oorsprong


Ik zou ook willen opmerken dat als je niet bekend bent met de "Unix Way", dit geen domme vraag is. Je zou een bonus moeten krijgen voor het denken om de vraag in de eerste plaats te stellen als een nieuwe Linux-beheerder. - Bart Silverstrim
En ik zou graag enkele van de antwoorden willen becommentariëren. Vooral degenen die zeggen "je kunt verknoeien dingen als root". Ik denk niet dat dat het punt is ... "rm -rf /" doet hetzelfde als "sudo rm -rf /". Het punt is dat dingen als "sudo rm" niet werken, maar "sudo startMyApp op lage poort" werkt. - Zlatko
wat is er mis met nooit te zijn? - ostendali


antwoorden:


Als je bent ingelogd als root, kun je makkelijk directories wissen of iets doen dat achteraf echt dom is op het systeem met een vingerbeweging, terwijl je als gebruiker normaal een paar extra mentale cycli moet doen in wat je doet zijn aan het typen voordat je iets doet dat gevaarlijk is.

Ook elk programma dat u als root uitvoert als rootprivileges, wat betekent dat als iemand of iets u ertoe aanzet om te draaien / compileren / bladeren door een website die gevaarlijk is en uw systeem wil beschadigen, zoals een trojan of andere malware, het volledige toegang heeft tot uw systeem en kan doen wat het wil, inclusief toegang tot TCP-poorten onder 1024 (zodat uw systeem zonder uw medeweten een remailer kan worden).

Eigenlijk vraagt ​​u om problemen die zich voordoen doordat u zich aanmeldt omdat uzelf dit kunt voorkomen. Ik heb veel mensen gekend die blij waren dat ze dat vangnet hadden in een moment van onvoorzichtigheid.

EDIT: Er is ook het probleem dat root de meest bekende is, dus een gemakkelijk doelwit, voor scripts en hacks. Systemen die het account uitschakelen en in plaats daarvan gebruikers dwingen om sudo te gebruiken, betekent dat elke poging om root van ssh of een lokale exploit naar het account te kraken, hun hoofd tegen een muur slaat. Ze zouden een wachtwoord moeten raden / kraken en gebruikersnaam. Het is tot op zekere hoogte een zekere zekerheid door obscuriteit, maar het is moeilijk te beweren dat het de meeste scriptkiddie-aanvallen niet in de weg staat.


71
2017-08-24 14:30



+1 - Het gebruik van "sudo" maakt het uitvoeren van programma's als root en openlijke handeling. Het is niet een kwestie van 'stoppen met hackers', het is een kwestie van je de gewoonte geven om als een niet-bevoorrechte gebruiker te werken en het oproepen van rootprivileges tot een bedoelde, openlijke handeling te maken. - Evan Anderson
Ik begin me af te vragen of Evan echt een AI is. - Bart Silverstrim
Sudo voegt ook een audit trail toe. Zoals wie, wat, en wanneer wordt vastgelegd als het wordt uitgevoerd als sudo. Welk logbestand kan variëren met distro, maar RedHat-distros hebben de neiging om / var / log / secure te gebruiken en Ubuntu gebruikt /var/log/auth.log... Ik weet niet zeker of dit waar is voor alle op Debian gebaseerde distributies. - 3dinfluence
+1 - het gaat niet alleen om rechten om dingen te maken of dingen te doen, het gaat ook over het recht om te vernietigen. Het aanmelden als root (of het equivalent daarvan op een ander besturingssysteem) is als rondlopen met een pistool terwijl de beveiliging is uitgeschakeld. Je zou die trigger misschien nooit met opzet willen aanraken, maar zou je jezelf willen vertrouwen om het toch allemaal te doen? - Maximus Minimus
mh: / ik trekt zijn cowboyhoed aan, haalt de veiligheid van zijn pistool af, opent een biertje, mompelt in een laag gemompel iets over viooltjes en meldt zich dan als root aan. - Kyle Brandt♦


Als je niet toestaat dat een idioot als root inlogt op je server, voer dan niet altijd zelf als root uit. Tenzij je hart kunt toedienen, zegt u nooit een idioot geweest. Nee echt? Weet je het zeker? :)

Voordeel: vermindert de mogelijkheid dat u root bent en een idioot tegelijk.


29
2017-08-24 14:41



+1 - "Voordeel: vermindert de mogelijkheid dat u tegelijkertijd wortel en een idioot bent." Ik ben er helemaal weg van. - Evan Anderson
+1 voor de filosofie van Scott Adams dat iedereen een idioot is. :) Ja, dat betekent jij en ik ook. - Ernie
Absoluut - dit is een van mijn belangrijkste vragen in sollicitatiegesprekken - wanneer heb je het voor het laatst verknald? Iedereen heeft, je hoeft alleen maar de discussies hier te lezen over "meest leuke sysadmin fubar" of wat dan ook. Als iemand niet toegeeft dat hij minstens één keer in zijn leven een stomme fout heeft gemaakt, zijn er waarschijnlijk een paar redenen waarom je niet met hem wilt werken. - Tom Newton


De belangrijkste reden is fouten. Als je altijd root bent, kan een simpele typfout het systeem echt verpesten. Als u alleen als root inlogt of sudo gebruikt om dingen te doen die dit vereisen, minimaliseert u het risico van het maken van een gevaarlijke fout.


9
2017-08-24 14:31





Wanneer je root bent, word je lui over permissies, omdat je altijd toegang hebt tot alles, het maakt je niet uit wanneer dingen 777 of 644 zijn of zoiets. Dus als je ooit iemand anders op je systeem laat weten dat je geen toegang tot alles wilt hebben, wordt het opeens een echte ontbering om de machine veilig te maken voor gebruik door andere mensen.


9
2017-08-24 14:38



Dit wordt 'wortelrot' genoemd. - kmarsh
Ik hou van die term, "wortelrot". Sterker nog, als root de hele tijd draait, kan * nix machines worden omgezet in freaky Windows 95-achtige machines zonder schijn van beveiliging voor meerdere gebruikers. (Ik herinner me een SCO-machine, jaren geleden, waarbij elke gebruiker van de gedeelde boekhoudapp als root werd uitgevoerd, omdat "het de toestemmingsproblemen deed verdwijnen".> Zucht <) - Evan Anderson
Ik herinner me dat ik zo'n uitleg kreeg - ze hadden een mailinglist-tool die als root werkte, samen met sendmail. Mijn antwoord was: "De toestemmingsvraagstukken gingen ook weg voor de hackers." - duffbeer703


Er zijn een paar belangrijke principes achter die niet als wortel registreren: 1) Root-wachtwoord wordt tijdens het inloggen nooit over het netwerk verzonden 2) Geen manier om te vertellen wie iets heeft gedaan als meerdere gebruikers inloggen als hetzelfde account (root of andere). 3) Per ongeluk iets 'stom' doen


7
2017-08-24 14:31





Het is meer voor bescherming tegen jezelf, zodat je een tweede kans hebt om de hogere machtscommando's die je probeert uit te voeren, analoog aan UAC in Windows, te bekijken. Het is vrij gemakkelijk om per ongeluk zoiets te doen rm -rf / terwijl ingelogd als root.

Daarnaast heb je traceerbaarheid. Dit is geen groot probleem in uw situatie waarin u de enige (theoretisch) uitgevende opdrachten bent, maar de mogelijkheid om te loggen en terug te traceren naar een persoon is een belangrijk onderdeel van vele vormen van analyse.


3
2017-08-24 14:30



Traceerbaarheid is cruciaal in systemen waarin meer dan één persoon als systeembeheerder werkt. Het is niet alleen wenselijk dat het wordt opgelegd door regelgevende regimes. - APC
Ik deed dit op vrijdag. in plaats van "/ dump / folder /" te verwijderen heb ik map / verwijderd. Een stinkende backslash deed me denken aan waarom we niet als root inloggen. - oneodd1


Het verschil is voornamelijk:
dat je per ongeluk niets slechts kunt doen.
die "slechte" code kan het systeem niet overnemen.
Opmerking: kwaadaardige code betekent niet noodzakelijk dat iemand al toegang heeft tot het systeem.


2
2017-08-24 14:30



Ik heb gemerkt dat kwaadaardige code tegenwoordig meestal spam-bots betekent, die als elke gebruiker kunnen worden uitgevoerd. - Ernie
Als je denkt aan een virus (iets probeert te vernietigen) of een rootkit, dan is het voor de malware een stuk ingewikkelder als je geen root bent. - StampedeXV