PDA

View Full Version : Korte uitleg: "root worden" in de praktijk



hcvv
16-May-2013, 11:31
"root worden" in de praktijk

En nu de praktijk.

Het volgende is ook te vinden op SDB:Login as root - openSUSE (http://en.opensuse.org/SDB%3ALogin_as_root) .

Gebruik root nooit voor normaal werk, maar alleen als dat nodig is voor je systeembeheer.
Voor de meesten is dat logisch, maar je zult er van staan te kijken hoeveel mensen denken dat ze onfeilbaar zijn. Zo komen dan met allerlei smoezen waarbij ze uitleggen dat ze goed beschermd zijn tegen anderen. Maar ze vergeten dat ze zich tegen hun eigen fouten moeten beschermen. Met die mensen moet je nooit in discussie gaan. Zoals ze zelf zeggen, het is hun systeem en ze moeten toch zeker zelf weten wat ze er mee doen. En dat is zo rotfl!

Maak dus bij installatie altijd een gewone gebruiker aan. En geef die niet hetzelfde password als root (dat is een onveilige verstekaktie van openSUSE). Uiteraard gebruik je verschillende users voor verschillende gebruikers (personen) op je systeem, maar het kan geen kwaad om voor bepaalde zaken aparte gebruikers aan te maken. Als je bijvoorbeeld bestuurslid van een vereniging bent, doe dat dan allemaal onder een aparte gebruiker. Op zijn minst ben je blij als je bij de overdracht aan een opvolger alles bij elkaar blijkt te hebben staan.

Stuur nooit het root password (en eigenlijk geen enkel password) over een onbeveiligde verbinding (telnet, rsh, rlogin), maar gebruik altijd minstens SSH als je remote inlogt.

Log nooit direct in als root. Al helemaal niet over het net (zelfs niet met SSH). Log eerst in als een andere gebruiker. dit is niet alleen tegen afkijken en sniffen, maar ook voor jezelf om het "root worden" op zich al een waarschuwing te laten zijn: "Nu wordt het extra opletten".

Log nooit in the GUI in als root. Ook niet omdat iets niet wil werken als gewone gebruiker. Maak dan eventueel even een andere gebruiker om the proberen of het in de bestaande omgeving zit.

In the GUI zijn genoeg mogelijkheden om programma's waarvoor dat nodig is als root te draaien. Bijvoorbeeld YaST, het vraagt zelf om het root password. In een KDE menu vindt je mogelijkheden als Konsole (root) en Bestandsbeheerder in systeem modulus. Een andere applicatie? Gebruik kdesu in KDE en gnomesu in Gnome. Al deze manieren hebben als bijkomend voordeel dat de bijbehorende windows (eigenaar van het window is een root proces) op je desktop geopend mogen worden. Je denkt misschien dat dat normaal is, maar het is het niet. Jij bepaalt wie op jouw desktop windows mag openen.

Voorbeeld op KDE: commando uitvoeren een doe daarmee:

kdesu kwrite /etc/fstab

Voor de CLI kun je natuurlijk vanaf een GUI uit het hoofdmenu (bij KDE) Konsole (root) gebruiken. Als je al in de CLI bent ingelogd als gewone gebruiker (bijvoor beeld op de echte console) gebruik dan

su -
of

su -l
(het eerste is een kortere uitvoering van het tweede).
Deze - (of -l) is belangrijk! Het geeft je een login shell van root. Met bijbehorend PATH en andere variablen. Het beruik van het PATH van de oorspronkelijke user kan (veiligheids)problemen opleveren
Voor een enkel commando gebruik je:

su -l -c 'fdisk -l'

Het kan zijn dat je bent aangewezen op het gebruik van de echte console (of dat je dat prefereert op een bepaald moment). Tijdens een gewone systeem sessie bereik je die met Ctrl-Alt-F1 (er zijn er ook op F2 - F6). Maar meestal wordt je ertoe gedwongen als je GUI niet werkt. Probeer ook hier eerst als een gewone gebruiker in te loggen en dan su - te gebruiken. Goede gewoontes moet je automatische gewoontes laten worden. Kan dat niet (bijvoorbeeld omdat je /home partitie er niet is), log dan direct in als root. Er is weinig kans dat dat 'gesnift' wordt.

Wees altijd extra voorzichtig als je root bent, kleine tikfouten kunnen fataal zijn. Laatst was er iemand die als root alles in iemands home directory van eigenaar en groep wilde veranderen. Hij wilde doen:

chown -R user:groep /home/oudeuser
maar hij tikte:

chmod -R user:groep / home/oudeuser
en dus werden alle systeem bestanden vanaf / van eigenaar veranderd, iets dat eigenlijk niet meer te herstellen is.
Wat had hij beter kunnen doen? Ten eerste maak van de directory waar je wil werken je "working directory":

cd /home/oudeuser
chown -R user:groep ./
Als je in die cd een tikfout maakt valt dat waarschijnlijk op in je prompt.
Gebruik de "name expansion" functie van de shell. Tik de eerste paar tekens van een directory en gebruik de Tab toets. Als de naam dan niet wordt aangevuld trekt dat onmiddelijk je aandacht.

Gebruik in gevallen waar je iets op bepaalde bestanden wilt doen en daarbij bijv. met patterns werkt eerst een onschuldig commando als echo:

echo [Ii][0-9]*.html
Dit geeft een lijst van de bestanden die het aangaat. Geen rare dingen? Dan het commando terugroepen door "pijltje omhoog" en de echo vervangen door rm. Gevolg, geen tikfouten in de moeilijke contructie:

rm [Ii][0-9]*.html

Veel van deze dingen zijn natuurlijk ook aan te bevelen bij gewone users in de CLI.