Upload
elan
View
39
Download
0
Embed Size (px)
DESCRIPTION
INNEHÅLL Hantering av användarkonton och användargrupper Användning av Sudo för delgering av programkörningsrättigheter. OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 6 – Vecka 48 2010. Användarhantering. Varje person som använder ett Linux-system har ett eget användarkonto - PowerPoint PPT Presentation
Citation preview
OPERATIVSYSTEM OCH PRAKTISK LINUX
Föreläsning 6 – Vecka 48 2010
INNEHÅLLHantering av användarkonton och användargrupperAnvändning av Sudo för delgering av programkörningsrättigheter
Användarhantering
Varje person som använder ett Linux-system har ett eget användarkonto
eller kort sagt en egen ”användare”
En användare i ett datorsystem är egentligen bara ett sätt att gruppera och
fördela ägandeskap och rättigheter till datorns resurser (såsom program
och filer)
Användarkontona ger bl.a. möjlighet åt användare att skydda sina filer
Det finns dock en användare som kan göra allting, nämligen root
(systemadministratorn)
Användarkonton
Alla användare har två unika identifierare Användarnamn Användarnummer
Användaren root har t.ex. alltid användarnumret 0
Användarinformation: /etc/passwd
Användarinformation sparas i en fil som heter /etc/passwd och har 7 fält:
Exempel på en rad i passwd-filen:
karlssoj:x:1000:1000:jonnyburk,,,:/home/karlssoj:/bin/bash
De intressantaste fälten i /etc/paswd förutom användarnamnet är
lösenordet och grupphanteringen
Om lösenordsfältet i /etc/passwd innehåller endast ett tecken, t.ex. ’x’ eller
’!’ betyder det att lösenordet för användaren finns i en skugglösenordsfil.
Denna fil heter oftast /etc/shadow
Användarnamn Lösenord Användarnr. Gruppnr. personinfo hemkatalog Startprogram
Användarinformation: /etc/passwd
Mera förklaringar på lösenordsfältet:
Tecken Betydelse
x Lösenordet finns i /etc/passwd
! Lösenordet finns i /etc/passwd
* Det går inte att logga in
Fältet tomt Operativsystemet kräver inget lösenord vid inloggning
Gruppinformation: /etc/group
Det händer ofta att en flera användarkonton behöver dela på t.ex. samma
filer
Därför används i Linuxsystem inte enbart användarkonton utan man delar
också in användare i olika grupper av användare
Grupperna hanteras i filen /etc/gruop som består av fyra kolumner:
En rad i filen /etc/group kan se t.ex. ut så här:
kompisar:x:1006:Pelle,Lisa
Gruppnamn Ev. lösenord Gruppnummer Användare, som, tillhör, gruppen
Lösenordsfilen: /etc/shadow
Orsaken till att man inte sparar lösenorden i samma fil som /etc/passwd är
att man vill undvika att vanliga användare skall kunna se andra användares
lösenord (/etc/passwd är läsbar för alla användare)
Lösenord som sparas i /etc/shadow är krypterade
Exempel på hur en rad i /etc/shadow kan se ut:
karlssoj:!!:13732:0:99999:7:::
Lösenorden i /etc/shadow är krypterade m.h.a. en hash-algoritm
Lösenord som har krypterats med en hashalgoritm är omöjliga att
dekryptera eftersom flera olika lösnord kan krypteras till samma
lösenordsträng
Kryptering av lösenord (i /etc/shadow)
Ett simpelt exempel på hash-kryptering är att alla bokstäver/tecken i ett
lösenord byts ut mot siffror som motsvarar deras placering i alfabetet
Andreas => Hash-kryptering => 1-14-4-18-5-1-19
Om det ”hashade” lösenordet skrivs ihop får vi: 1144185119
Nu är det helt omöjligt att veta vilket ord eller vilken sekvens av bokstäver
som hash-koden representerar!
Lösenordskrypteringen i Linux är inte riktigt så här enkel men principen är
den samma
Kommando för att skapa konto: adduser
För att lägga till en användare och göra inställningar för en användare kan
man använda programmet adduser från kommandotolken:
adduser användarnamn
I Ubuntu startar ovannämnda kommando upp en meny som tillåter
användaren att ställa in olika inställningar för den ny användaren, bl.a.
hemkatalog, kommando tolk, lösenord m.m.
Alla inställningar man gör med adduser-kommandot sparas automatiskt i
/etc/passwd och /etc/shadow
Endast root kan skapa nya, eller ta bort användare
Kommandon för användar- och grupphantering
Kommando Betydelse
adduser Skapa ett användarkonto
groupadd Skapa en användargrupp
groupdel Radera en användargrupp
usermod Modifiera inställningar för ett användarkonto
userdel Ta bort ett användarkonto
passwd Ändra lösenordet för ett användarkonto. Endast root kan byta lösenord på alla konton. En vanlig användare kan endast byta lösenord för sitt eget konto
Sudo
Är ett program som tillåter ”vanliga” användare att utföra operationer som
normalt endast tillåts av en systemadministrator (root). Används m.a.o för
att delegera programkörningsrättigheter åt vanliga användare.
De kommandon som en användare får utföra med sudo definieras i filen:
/etc/sudoers
/etc/sudoers kan editeras antingen direkt eller m.h.a programmet visudo
Fördelen med att använda visudo är att den förhindrar att flera användare
samtidigt editerar /etc/sudoers samt att den kontrollerar de direktiv som
matas in i filen
Sudo: /etc/sudoers
Grundsyntax:
Användarnamn arbetsstation=(användare som kör kommandot) kommando(n)
Exempel – tillåta användare esko att stänga av datorn
esko ALL=(root) /sbin/shutdown
Om man vill att esko inte skall behöva ge sitt lösenord vid anändning av
sudo kan man sätta till NOPASSWD optionen:
esko ALL=(root) NOPASSWD: /sbin/shutdown
Sudo: /etc/sudoers
Man vill ge esko rätt att köra alla kommandon (på samma sätt som
huvudanvändaren har ”by default”):
esko ALL=(root) ALL
Man kan på samma sätt ge fulla rättigheter åt en användargrupp:
%larare ALL=(root) ALL
Man kan också om man vill gruppera sudo-användare genom att använda
alias:
User_Alias GURUT = esko, petteri, kameli
GURUT ALL=(root) ALL
Sudo: val av lösenord
Sudo frågar vanligen efter lösenordet för den användare som utför ett
kommando
Det går också att ställa in sudo så att det alltid frågar efter en viss
användares lösenord (vanligen root) genom att sätta till följande rad:
Defaults rootpw
i kombination med följande rad:
ALL ALL=(ALL) ALL