Labb 7: Linux rättigheter

I denna laboration kommer du att lära dig att skapa och hantera användare och grupper i Linux samt förstå och ändra rättigheter och ägarskap i filsystemet. Att behärska dessa grundläggande systemadministrationsfärdigheter är avgörande för att säkerställa säkerheten och effektiviteten i ett Linux-system. Vi kommer att använda Ubuntu inom WSL 2 (eller WSL 1 om WSL 2 inte är tillgängligt) för att utföra dessa uppgifter.

SUDO

För att kunna genomföra vissa administrativa uppgifter i Linux krävs ofta behörighet för att använda olika administrators verktyg. SUDO ger användaren tillfälliga behörigheter (root-rättigheter) för specifika kommandon.

När du använder sudo kommer du att behöva ange användarens lösenord. Om användaren har behörighet att använda sudo, kommer lösenordet att accepteras och kommandot med sudo utföras. Om användaren däremot saknar sudo-behörighet, kommer åtkomsten att nekas. Ett sätt att fixa detta är att lägga användaren till sudo-gruppen. Följ dessa steg för att göra detta via PowerShell:

  1. Öppna PowerShell och exekvera följande kommando:
    • ubuntu2404 config –default-user root
    • Detta konfigurerar Ubuntu att starta som root-användare.
  2. Stäng Ubuntu-appen och starta om den. Du kommer nu att vara inloggad som root.
  3. Ge sudo-behörighet till användaren genom att köra följande kommandon (byt ut användarnamn med namnet på den aktuella användaren):
    • passwd användarnamn
      • passwd användarnamn låter dig ställa in ett lösenord för användaren.
    •  usermod -aG sudo användarnamn
      • usermod -aG sudo användarnamn lägger till användaren i sudo-gruppen, vilket ger sudo-rättigheter.
  4. När du har gett användaren sudo-behörighet kan du ändra tillbaka inloggningen så att Ubuntu startar med användarkontot istället för root. Kör följande kommando i PowerShell:
    • ubuntu2404 config –default-user användarnamn
  5. Starta Ubuntu igen och logga in som användaren. Kör ett testkommando som kräver sudo för att bekräfta att användaren nu har behörighet.

Del 1: Skapa och Hantera Användare och Grupper

Steg 1: Skapa en ny användare

Öppna terminalen i din Ubuntu-distribution.
Skapa en ny användare (student1, lösenord: ingang1), ange Student Uno som fullständigt namn, arbetsrum D037 och mobilnummer 070 1111 007.

Följ instruktionerna (förutsätter att användaren har sudo-behörighet) för att ställa in ett lösenord och fylla i användaruppgifter.

maximus@linus:~$ sudo adduser student1

[sudo] password for maximus:
info: Adding user `student1' ...
info: Selecting UID/GID from range 1000 to 59999 ...
info: Adding new group `student1' (1003) ...
info: Adding new user `student1' (1003) with group `student1 (1003)' ...
info: Creating home directory `/home/student1' ...
info: Copying files from `/etc/skel' ...
New password:
Retype new password:
passwd: password updated successfully
Changing the user information for student1
Enter the new value, or press ENTER for the default
        Full Name []: Student Uno
        Room Number []: D037
        Work Phone []: 070 1111 007
        Home Phone []:
        Other []:
Is the information correct? [Y/n] y
info: Adding new user `student1' to supplemental / extra groups `users' ...
info: Adding user `student1' to group `users' ...
maximus@linus:~$

Steg 2: Skapa en ny grupp

Skapa en ny grupp med följande kommando (byt ut studenter mot det gruppnamn du vill använda):

maximus@linus:~$ sudo addgroup studenter
info: Selecting GID from range 1000 to 59999 ...
info: Adding group `studenter' (GID 1004) ...

Lägg till användaren student1 i gruppen studenter:

maximus@linus:~$ sudo usermod -aG studenter student1

Verifiera att student1 har skapats genom följande metoder:

  • cat /etc/passwd
  • grep
maximus@linus:~$ cat /etc/passwd

root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
  - - - - output ommited - - - -
ubuntu:x:1000:1001:Ubuntu:/home/ubuntu:/bin/bash
maximus:x:1002:1002:,,,:/home/maximus:/bin/bash
student1:x:1003:1003:Student Uno,D037,070 1111 007,:/home/student1:/bin/bash

maximus@linus:~$ grep student1 /etc/passwd
student1:x:1003:1003:Student Uno,D037,070 1111 007,:/home/student1:/bin/bash
maximus@linus:~$

Verifiera att gruppen studenter har skapats genom följande metoder:

  • cat /etc/group
  • grep
maximus@linus:~$ cat /etc/group
root:x:0:
daemon:x:1:
bin:x:2:
- - - - - -output ommited - - - - -
ubuntu:x:1001:
maximus:x:1002:
student1:x:1003:
studenter:x:1004:student1

maximus@linus:~$ grep studenter /etc/group
studenter:x:1004:student1
maximus@linus:~$

Del 2: Hantera Fil rättigheter och Ägarskap

Steg 1: Skapa en fil och ändra ägarskap

Logga in som student1 (eller använd sudo för att skapa en fil med rätt ägarskap):

maximus@linus:~$ sudo -u student1 touch /home/student1/sekret_fil.txt
[sudo] password for maximus:
maximus@linus:~$ ls -l /home/student1/sekret_fil.txt
ls: cannot access '/home/student1/sekret_fil.txt': Permission denied
maximus@linus:~$ sudo -u student1 ls -l /home/student1/sekret_fil.txt
-rw-rw-r-- 1 student1 student1 0 Aug  7 12:55 /home/student1/sekret_fil.txt
maximus@linus:~$

Kontrollera filens ägarskap. Observera att åtkomst nekas till användare maximus, men sudo -u student1 fungerar.

maximus@linus:~$ ls -l /home/student1/sekret_fil.txt 
ls: cannot access '/home/student1/sekret_fil.txt': Permission denied

maximus@linus:~$ sudo -u student1 ls -l /home/student1/sekret_fil.txt 
-rw-rw-r-- 1 student1 student1 0 Aug 7 12:55 /home/student1/sekret_fil.txt

maximus@linus:~$

Steg 2: Ändra ägarskap med chown

Ändra ägarskapet för filen till root:

maximus@linus:~$ sudo chown root:root /home/student1/sekret_fil.txt 

Verifiera att ägarskapet har ändrats:

maximus@linus:~$ ls -l /homestudent1/sekret_fil.txt 
ls: cannot access '/homestudent1/sekret_fil.txt': No such file or directory 

maximus@linus:~$ sudo -u student1 ls -l /home/student1/sekret_fil.txt 
-rw-rw-r-- 1 root root 0 Aug 7 12:55 /home/student1/sekret_fil.txt 

maximus@linus:~$

Steg 3: Ändra filrättigheter med chmod

Ge filen läs- och skriv behörighet för ägaren och ingen behörighet för andra:

maximus@linus:~$ sudo chmod 600 /home/student1/sekret_fil.txt

Kontrollera filens rättigheter:

maximus@linus:~$ sudo -u student1 ls -l /home/student1/sekret_fil.txt

-r------- 1  roo  root 0 Aug 7 12:55 /home/student1/sekret_fil.txt

Del 3: Avancerad Hantering av Rättigheter

Steg 1: Skapa en delad katalog

Skapa en ny katalog som ska delas mellan användarna i gruppen studenter:

maximus@linus:~$ sudo mkdir /home/studenter_delad

Verifiera att katalogen har skapats:

maximus@linus:~$ ls - l
ls: cannot access '-': No such file or directory
ls: cannot access 'l': No such file or directory
maximus@linus:~$ pwd
/home/maximus
maximus@linus:~$ cd /home
maximus@linus:/home$ ls
maximus  student1  studenter_delad  ubuntu
maximus@linus:/home$ ls -l
total 16
drwxr-x--- 5 maximus  maximus  4096 Aug  7 12:25 maximus
drwxr-x--- 2 student1 student1 4096 Aug  7 12:55 student1
drwxr-xr-x 2 root     root     4096 Aug  7 13:24 studenter_delad
drwxr-x--- 3 ubuntu   ubuntu   4096 Aug  6 13:45 ubuntu

Ändra gruppen för katalogen till studenter:

maximus@linus:/home$ sudo chown :studenter /home/studenter_delad 

maximus@linus:/home$ ls -l
total 16
drwxr-x--- 5 maximus  maximus   4096 Aug  7 12:25 maximus
drwxr-x--- 2 student1 student1  4096 Aug  7 12:55 student1
drwxr-xr-x 2 root     studenter 4096 Aug  7 13:24 studenter_delad
drwxr-x--- 3 ubuntu   ubuntu    4096 Aug  6 13:45 ubuntu

Steg 2: Ställ in grupp behörigheter

Ge fullständiga rättigheter till gruppen studenter:

maximus@linus:/home$ sudo chmod 770 /home/studenter_delad

Kontrollera katalogens rättigheter:

maximus@linus:/home$ ls -ld /home/studenter_delad drwxrwx--- 2 root studenter 4096 Aug 7 13:24 /home/studenter_delad

maximus@linus:/home$

Avslutning

Du har nu lärt dig att skapa och hantera användare och grupper i Linux, samt att ändra rättigheter på filer och ägarskap.