Vraag & Antwoord

OS Linux

su of su -

6 antwoorden
  • Wat is het verschil tussen su en su -? Ik zie beide weleens verschijnen en su - wordt soms aangeraden. man su zegt dat met su - een tweede shell word gestart, wordt dit zonder de - dan niet gedaan? Groeten Corné
  • Dit is wat de documentatie er over zegt: [quote:168839a4a3] Make the shell a login shell. This means the following. Unset all environment variables except `TERM', `HOME', and `SHELL' (which are set as described above), and `USER' and `LOGNAME' (which are set, even for the super-user, as described above), and set `PATH' to a compiled-in default value. Change to USER's home directory. Prepend `-' to the shell's name, intended to make it read its login startup file(s).[/quote:168839a4a3] Mijn conclusie is dat su - veiliger is dan gewoon su, omdat bij su- er inderdaad een nieuwe shell wordt gebruikt. Bij gewoon su wordt met de huidige shell doorgewerkt, incl de zoekpaden. Dat kan een beveiligingsrisico met zich meebrengen, bijv. als het pad van de gebruiker verwijst naar een map met pseudo-programma's die, als ze als root worden uitgevoerd, toegang krijgen tot het hele systeem. (bijv een pseudoprogramma voor ls, dat in een personlijke map van de gebruiker staat. Als die eerder in het zoekpad staat, dan gebruikt de shell dit pseudoprogramma. De gebruiker kan dit vervolgens misbruiken om root-rechten te krijgen etc...) Max
  • Wat ik er altijd van begrepen heb is dat je met su gewoon verder gaat als superuser in je eigen environment, en met su - krijg je de hele environt van de root ter beschikking. Het verschil in veiligheid is volgens mij maar heel minimaal, omdat je in allebei de gevallen toch al de superuserrechten hebt. (en waarom dan moeilijk doen als het makkelijk kan)
  • Voordeel is dus dat je met su - ook je directorypaden van root tot je beschikking hebt (die staan immers in de env. variables). Dus hoef je niet steeds je /sbin enz. op te geven. Ik zie eigenlijk geen reden om su te gebruiken.
  • su zonder - is handig voor een enkel commando, bijv: su -c 'make install' Dan blijft hij in de directory waar je ook bent, maar je wordt even root om make install te kunnen doen. als je [b:8b474e86ee]su -[/b:8b474e86ee] gebruikt kom je als root ook in de homedirectory van root (/root) terecht.
  • [quote:4f98105350="AndorabLe"]Wat ik er altijd van begrepen heb is dat je met su gewoon verder gaat als superuser in je eigen environment, en met su - krijg je de hele environt van de root ter beschikking. Het verschil in veiligheid is volgens mij maar heel minimaal, omdat je in allebei de gevallen toch al de superuserrechten hebt. (en waarom dan moeilijk doen als het makkelijk kan)[/quote:4f98105350] Als je in je uppie een systeem tot je beschikking hebt is er idd vrijwel geen verschil qua veiligheid. Maar als je systeembheerder bent in een groot bedrijf, dan maakt het wel degelijk wat uit, de environment van de user waarin je su intypt kan nmlk je beveiliging compromiteren. Max

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.