Filtillatelser i Linux / Unix: Hvordan lese, skrive og endre?
Linux er en klone av UNIX, flerbrukeroperativsystemet som kan nås av mange brukere samtidig. Linux kan også brukes i stormaskiner og servere uten noen modifikasjoner. Men dette vekker sikkerhetsproblemer ettersom en uoppfordret eller ondartet bruker kan korrupte, endre eller fjerne viktige data. For effektiv sikkerhet deler Linux autorisasjonen inn i 2 nivåer.
- Eierskap
- Tillatelse
Konseptet med Linux-fil tillatelse og eierskap er avgjørende i Linux. Her vil vi forklare Linux-tillatelser og eierskap og vil diskutere dem begge. La oss starte med Eie.
Klikk her. hvis videoen ikke er tilgjengelig
Linux-fileierskap
Hver fil og katalog på ditt Unix/Linux-system er tildelt 3 typer eiere, gitt nedenfor.
Bruker
En bruker er eieren av filen. Som standard blir personen som opprettet en fil dens eier. Derfor kalles en bruker også noen ganger en eier.
Gruppe
En brukergruppe kan inneholde flere brukere. Alle brukere som tilhører en gruppe vil ha samme Linux-gruppetillatelser tilgang til filen. Anta at du har et prosjekt der flere personer krever tilgang til en fil. I stedet for manuelt å tildele tillatelser til hver bruker, kan du legge til alle brukere i en gruppe, og tildele gruppetillatelser til filen slik at bare disse gruppemedlemmene og ingen andre kan lese eller endre filene.
Annet
Enhver annen bruker som har tilgang til en fil. Denne personen har verken opprettet filen, eller han tilhører en brukergruppe som kan eie filen. I praksis betyr det alle andre. Derfor, når du angir tillatelsen for andre, blir det også referert til som angitte tillatelser for verden.
Nå oppstår det store spørsmålet hvordan Linux skille mellom disse tre brukertypene slik at en bruker 'A' ikke kan påvirke en fil som inneholder noen annen bruker-'B's vitale informasjon/data. Det er som om du ikke vil ha kollegaen din, som jobber med din Linux-datamaskin, for å se bildene dine. Det er her Tillatelser satt inn, og de definerer brukeratferd.
La oss forstå Tillatelsessystem på Linux.
Linux -filtillatelser
Hver fil og katalog i ditt UNIX/Linux-system har følgende 3 tillatelser definert for alle de 3 eierne som er diskutert ovenfor.
- Les: Denne tillatelsen gir deg autoritet til å åpne og lese en fil. Lesetillatelse på en katalog gir deg muligheten til å vise innholdet.
- Skrive: Skrivetillatelsen gir deg autoritet til å endre innholdet i en fil. Skrivetillatelsen på en katalog gir deg autoritet til å legge til, fjerne og gi nytt navn til filer som er lagret i katalogen. Tenk på et scenario der du må skrive tillatelse på filen, men ikke har skrivetillatelse på katalogen der filen er lagret. Du vil kunne endre filinnholdet. Men du vil ikke kunne endre navn på, flytte eller fjerne filen fra katalogen.
- Henrette: In Windows, har et kjørbart program vanligvis utvidelsen ".exe" og som du enkelt kan kjøre. I Unix/Linux kan du ikke kjøre et program med mindre utføringstillatelsen er satt. Hvis utføringstillatelsen ikke er angitt, kan du kanskje fortsatt se/endre programkoden (forutsatt at lese- og skrivetillatelser er angitt), men ikke kjøre den.
La oss se filtillatelser i Linux med eksempler:
ls – l på terminal gir
ls - l
Her har vi fremhevet '-rw-rw-r-'og denne merkelige koden er den som forteller oss om Unix-tillatelsene gitt til eieren, brukergruppen og verden.
Her, den første-' betyr at vi har valgt en file.p>
Ellers, hvis det var en katalog, d ville blitt vist.
Tegnene er ganske enkle å huske.
r = les tillatelse
w = skrive tillatelse
x = Kjør tillatelse
- = ingen tillatelse
La oss se på det på denne måten.
Den første delen av koden er 'rw-'. Dette antyder at eieren "Hjem" kan:
- Les filen
- Skriv eller rediger filen
- Han kan ikke kjøre filen siden execute-biten er satt til '-'.
Av design, mange Linux-distribusjoner som Fedora, CentOS, Ubuntu, etc. vil legge til brukere i en gruppe med samme gruppenavn som brukernavnet. Dermed blir en bruker 'tom' lagt til i en gruppe kalt 'tom'.
Den andre delen er 'rw-'. Det for brukergruppen 'Hjem' og gruppemedlemmer kan:
- Les filen
- Skriv eller rediger filen
Den tredje delen er for verden som betyr enhver bruker. Det står 'r-'. Dette betyr at brukeren bare kan:
- Les filen
Endre fil-/katalogtillatelser i Linux ved å bruke 'chmod'-kommandoen
Si at du ikke vil at kollegaen din skal se dine personlige bilder. Dette kan oppnås ved å endre filtillatelser.
Vi kan bruke 'chmod' kommando som står for 'change mode'. Ved å bruke kommandoen kan vi sette tillatelser (lese, skrive, kjøre) på en fil/katalog for eieren, gruppen og verden.
Syntaks:
chmod permissions filename
Det er 2 måter å bruke kommando -
- Absolutt modus
- Symbolsk modus
Absolutt (numerisk) modus i Linux
I denne modusen, fil tillatelser er ikke representert som tegn, men et tresifret oktalt tall.
Tabellen nedenfor gir tall for alle for tillatelsestyper.
Nr | Tillatelsestype | symbol |
---|---|---|
0 | Ingen tillatelse | - |
1 | Henrette | –X |
2 | Skriv | W- |
3 | Utfør + Skriv | -wx |
4 | Lese | r– |
5 | Les + Kjør | rx |
6 | Les +Skriv | rw- |
7 | Les + Skriv + Utfør | rwx |
La oss se kommandoen chmod permissions i aksjon.
I terminalvinduet ovenfor har vi endret tillatelsene til filen 'sample' til '764'.
'764' absolutt kode sier følgende:
- Eier kan lese, skrive og utføre
- Brukergruppen kan lese og skrive
- Verden kan bare lese
Dette vises som '-rwxrw-r–
Dette er hvordan du kan endre brukertillatelser i Linux på fil ved å tilordne et absolutt tall.
Symbolsk modus i Linux
I Absolutt-modus endrer du tillatelser for alle 3 eierne. I symbolsk modus kan du endre tillatelsene til en bestemt eier. Den bruker matematiske symboler for å endre Unix-filtillatelsene.
Operator | Tekniske beskrivelser |
---|---|
+ |
Legger til en tillatelse til en fil eller katalog |
- |
Fjerner tillatelsen |
= |
Angir tillatelsen og overstyrer tillatelsene som er angitt tidligere. |
De ulike eierne er representert som –
Brukerbetegnelser | |
---|---|
u |
bruker / eier |
g |
gruppe |
o |
Annet |
a |
alle |
Vi vil ikke bruke tillatelser i tall som 755, men tegn som rwx. La oss se nærmere på et eksempel
Endring av eierskap og gruppe i Linux
For å endre eierskapet til en fil/katalog kan du bruke følgende kommando:
chown user filename
Hvis du vil endre brukeren og gruppen for en fil eller katalog, bruk kommandoen
chown user:group filename
La oss se dette i aksjon
Hvis du bare vil endre gruppeeier, bruk kommandoen
chgrp group_name filename
'chgrp' står for endringsgruppe.
Tips
- Filen /etc/group inneholder alle gruppene som er definert i systemet
- Du kan bruke kommandoen "grupper" for å finne alle gruppene du er medlem av
- Du kan bruke kommandoen newgrp for å jobbe som medlem i en annen gruppe enn standardgruppen din
- Du kan ikke ha 2 grupper som eier den samme filen.
- Du har ikke nestede grupper i Linux. En gruppe kan ikke være undergruppe av en annen
- x- å kjøre en katalog betyr å ha lov til å "skrive inn" en katalog og få mulig tilgang til underkataloger
- Det er andre tillatelser du kan angi på filer og kataloger som vil bli dekket i en senere avansert opplæring
Sammendrag:
- Linux som et flerbrukersystem bruker tillatelser og eierskap for sikkerhet.
- Det er tre brukertyper på et Linux-system, nemlig. Bruker, gruppe og annet
- Linux deler filtillatelsene inn i lese, skrive og kjøre merket med r, w og x
- Tillatelsene på en fil kan endres med 'chmod'-kommandoen som kan deles videre inn i absolutt og symbolsk modus
- Kommandoen 'chown' kan endre eierskapet til en fil/katalog. Bruk følgende kommandoer: chown brukerfil eller chown bruker:gruppefil
- 'chgrp'-kommandoen kan endre gruppeeierskap chrgrp gruppe filnavn
- Hva betyr x – å kjøre en katalog? A: Å få lov til å "gå inn" i en katalog og få mulig tilgang til underkataloger.