Hjemmeside » hvordan » Hvorfor bør du ikke logge inn på ditt Linux-system som root

    Hvorfor bør du ikke logge inn på ditt Linux-system som root

    På Linux, er Root-brukeren tilsvarer Administrator-brukeren på Windows. Men mens Windows lenge har hatt en kultur av gjennomsnittlige brukere som logger inn som administrator, bør du ikke logge på som root på Linux.

    Microsoft prøvde å forbedre Windows-sikkerhetspraksis med UAC - du bør ikke logge på som root på Linux av samme grunn du burde ikke deaktivere UAC på Windows.

    Hvorfor bruker Ubuntu Sudo

    Avskrekking av brukere fra å kjøre som root er en av grunnene til at Ubuntu bruker sudo i stedet for su. Som standard er root-passordet låst på Ubuntu, så gjennomsnittlige brukere kan ikke logge på som root uten å gå ut av deres måte å gjenaktivere rotkontoen.

    På andre Linux-distribusjoner har det historisk vært mulig å logge på som rot fra det grafiske innloggingsskjermbildet, og få en rotstasjon, selv om mange applikasjoner kan klage (og til og med nekte å kjøre som rot, som VLC gjør). Brukere som kommer fra Windows bestemte seg noen ganger for å logge på som root, akkurat som de brukte administratorkontoen på Windows XP.

    Med sudo kjører du en bestemt kommando (prefixed av sudo) som får root privilegier. Med su, vil du bruke su-kommandoen til å få et rotskall, hvor du vil kjøre kommandoen du vil bruke før (forhåpentligvis) forlate rotskallet. Sudo hjelper til med å håndheve beste praksis, bare kjører kommandoer som må kjøres som root (for eksempel programvareinstallasjonskommandoer) uten å forlate deg på et rotskjell der du kan være logget inn eller kjøre andre programmer som rot.

    Begrense skaden

    Når du logger på som din egen brukerkonto, er programmer som du kjører, begrenset fra å skrive til resten av systemet - de kan bare skrive til hjemmemappen. Du kan ikke endre systemfiler uten å få root-tillatelser. Dette bidrar til å holde datamaskinen trygg. Hvis for eksempel Firefox-nettleseren hadde et sikkerhetshull, og du kjørte det som root, kunne en skadelig nettside skrive til alle filer på systemet, lese filer i andre brukerkontos hjemmemapper og erstatte systemkommandoer med kompromittert seg. I kontrast, hvis du er logget inn som en begrenset brukerkonto, ville den ondsinnede nettsiden ikke kunne gjøre noen av disse tingene - det ville bare kunne forårsake skade i hjemmemappen din. Selv om dette fortsatt kan forårsake problemer, er det mye bedre enn å ha hele systemet kompromittert.

    Dette bidrar også til å beskytte deg mot ondsinnede eller rettferdige buggy-applikasjoner. Hvis du for eksempel kjører et program som bestemmer deg for å slette alle filer, har det tilgang til (kanskje det inneholder en ekle feil), vil applikasjonen tørke ut din hjemmemappe. Dette er dårlig, men hvis du har sikkerhetskopier (som du burde!), Er det ganske enkelt å gjenopprette filene i hjemmemappen. Men hvis programmet hadde root-tilgang, kan det slette hver enkelt fil på harddisken din, noe som krever full installasjon.

    Finkornet Tillatelser

    Mens eldre Linux-distribusjoner kjørte hele systemadministrasjonsprogrammene som root, bruker moderne Linux-stasjonære systemer PolicyKit til enda mer finkornet kontroll av tillatelsene en applikasjon mottar.

    For eksempel kan et program for programvareadministrasjon kun gis tillatelse til å installere programvare på systemet ditt via PolicyKit. Programmets grensesnitt vil kjøre med de begrensede brukerkontoens tillatelser, bare den delen av programmet som installerte programvaren ville motta forhøyede tillatelser - og den delen av programmet ville bare kunne installere programvare.

    Programmet vil ikke ha full roten tilgang til hele systemet, noe som kan beskytte deg hvis et sikkerhetshull er funnet i applikasjonen. PolicyKit tillater også at begrensede brukerkontoer gjør noen systemadministrasjonsendringer uten å få full roten tilgang, noe som gjør det enklere å kjøre som en begrenset brukerkonto med mindre problemer.


    Linux lar deg logge inn på et grafisk skrivebord som root - akkurat som det vil tillate deg å slette hver enkelt fil på harddisken mens systemet kjører eller skrive tilfeldig støy direkte til harddisken din, utrydde filsystemet ditt - men det er ikke Det er ikke bra. Selv om du vet hva du gjør, er systemet ikke designet for å bli kjørt som root - du omgår mye av sikkerhetsarkitekturen som gjør Linux så trygg.