Selinux på Ubuntu Tutorial

Selinux på Ubuntu Tutorial

Introduksjon

Selinux er en obligatorisk tilgangskontroll (MAC) -modul som er bosatt i kjernenivået til Linux -systemer. Det er en felles utvikling av Redhat og NSA utgitt rundt 1998 og fortsatt opprettholdes av et entusiastsamfunn. Som standard bruker Ubuntu Apparmor og ikke Selinux, noe som er lik når det gjelder ytelse, men heller populær når det gjelder enkelhet. Imidlertid er Selinux kjent for å være ganske sikker på grunn av involvering av et statlig byrå. Selinux er en open source -applikasjon som beskytter verten ved å isolere hver applikasjon og begrense aktivitetene. Som standard blokkeres prosesser fra å gjøre noen aktiviteter med mindre den eksplisitte tillatelsen er gitt. Modulen gir Nativt to styringsregler for globalt nivå: tillatende og håndheving som henholdsvis logger hver krenket regel, og nekter tilgang til en bestemt forespørsel sendt fra en prosess. Denne opplæringen viser hvordan du bruker den på Ubuntu med letthet.

Hvordan installere og aktivere

Selinux er en veldig vanskelig applikasjon å installere, for hvis den ikke er riktig konfigurert før den første omstarten, vil det gjøre hele operativsystemet uoppholdbart, noe som betyr at noe utover den første oppstartsskjermen vil være praktisk talt utilgjengelig på normale måter.

Også som nevnt tidligere, har Ubuntu allerede et sofistikert obligatorisk tilgangskontrollsystem på høyt nivå kjent som Apparmor, og derfor må det deaktiveres før du installerer Selinux for å unngå konflikter. Bruk følgende instruksjoner for å deaktivere apparmor og aktivere Selinux.

sudo /etc /init.d/apparmor stopp
apt -get update && oppgradering -yuf
APT-Få installer Selinux
Nano/etc/selinux/config
'Sett Selinux til tillatt, selinuxtype til standard'
Start på nytt

Denne filkonfigurasjonen kan åpnes med hvilken som helst tekstredigerer for å gjøre endringer. Årsaken til å tildele tillatende regel til SetLinux er å gjøre operativsystemet tilgjengelig mens Selinux er aktivert. Det anbefales på det sterkeste å bruke det tillatte alternativet som det er problemfritt, men det logger krenket regler satt i Selinux.

Tilgjengelige alternativer

Selinux er en kompleks og en omfattende modul; Derfor inneholder den mange funksjoner og alternativer. Når det er sagt, er de fleste av disse alternativene ikke nyttige for alle på grunn av sin eksotiske natur. Følgende alternativer er noen av de grunnleggende og nyttige alternativene i denne modulen. De er mer enn nok til å få Selinux i gang.

Sjekk statusen: Status for Selinux kan sjekkes direkte gjennom terminalvinduet, som viser den grunnleggende informasjonen som om Selinux er aktivert, Selinux Root Directory, Loaded Policy Name, Current Mode osv. Etter å ha startet på nytt systemet etter å ha installert Selinux, bruker du følgende kommando som root -bruker med sudo -kommando. Hvis det sier at Selinux er aktivert i statusdelen, betyr det at den er i gang i bakgrunnen.

root@ubuntu:/home/dondilanga# sestatus

Endre det globale tillatelsesnivået: Det globale tillatelsesnivået sier hvordan Selinux oppfører seg når det snubler over en regel. Som standard setter Selinux seg til å håndheve som effektivt blokkerer alle forespørsler, men det kan endres til tillatende, noe.

Nano/etc/selinux/config
'Sett Selinux til å tillate eller håndheve, selinuxtype til standard'

Sjekk loggfilen: Loggfilen som sier de krenkede reglene ved hver forespørsel. Dette holder bare logger hvis Selinux er aktivert.

grep selinux/var/log/revisjon/revisjon.Logg

Aktiver og deaktiver retningslinjer og hvilke beskyttelser de tilbyr: Dette er et av de viktigste alternativene i Selinux, ettersom det gjør det mulig å aktivere og deaktivere retningslinjer. Selinux har et stort antall forhåndsbygde retningslinjer som bestemmer om den spesifiserte forespørselen er tillatt eller ikke. Noe av eksemplet på dette er tillatt_ftpd_full_access som bestemmer muligheten til FTP -tjenesten til å logge inn til lokale brukere og lese Skriv alle filer på systemet, tillat_sssh_keySign som lar nøkler brukes når du logger deg på SSH, tillater_user_mysql_connect som lar brukerne koble til minSQLL , httpd_can_sendmail som bestemmer muligheten til http-tjenesten til å sende en e-post osv. I det følgende kodeeksemplet installerer den PolicyCoreutils-Python-UTILS som faktisk hjelper til med å liste opp hver policy på en beskrivende måte, neste gang lister den ut alle tilgjengelige retningslinjer for terminal , Endelig lærer den hvordan man kan sette en policy av eller på, er Allow_ftpd_full_access policyenavnet som vist i terminalen som er returnert av Semanage,

APT-Få install PolicyCoreUtils-Python-UTILS
Semanage Boolean -l
setsebool -p tillatelse_ftpd_full_access på

Avanserte alternativer

De avanserte alternativene er alternativer som hjelper til med å utvide funksjonalitetene i Selinux. Det er en enorm mengde kombinasjoner der ute på grunn av Selinuxs omfattende karakter, så denne artikkelen viser noen av de fremtredende og nyttige blant dem.

Rollebasert tilgangskontroll (RBAC): RBAC lar administratorer bytte til en rollebasert måte å begrense tillatelse fra søknader. Hva det betyr er en bruker av en bestemt brukergruppe har lov til å utføre eller utføre visse forhåndsdefinerte handlinger. Så lenge brukeren er en del av rollen er det greit. Dette er det samme som å bytte til rot når du installerer applikasjoner på Linux med administrative rettigheter.

semanage pålogging -a -s 'Myrole' -R 'S0 -S0: C0.C1023 '

Brukere kan bytte rolle med følgende kommando.

sudo -r new_role_r -i

Brukere kan også eksternt koble seg til serveren via SSH med rollen som er aktivert ved oppstarten.

ssh /[email protected]

La en tjeneste lytte til en ikke-standardport: Dette er ganske nyttig i å tilpasse en tjeneste, for eksempel når en FTP-port blir endret til en ikke-standard for å unngå uautoriserte tilganger, må Selinux informeres deretter for å la slike porter passere og fungere som vanlig. Følgende eksempel lar FTP -porten lytte til 992 -port. På samme måte som enhver tjeneste som returneres av semanage port -l kan byttes ut. Noen av de populære portene er http_port_t, pop_port_t, ssh_port_t.

semanage port -a -t
semanage port -a -t ftp_port_t -p tcp 992

Hvordan deaktivere

Deaktivering av Selinux er enklere ettersom det er aktivert og installert. I utgangspunktet er det to måter å deaktivere det på. Enten midlertidig eller permanent. Deaktivering av Selinux midlertidig gjør at den deaktiveres en stund til neste oppstart, og så snart datamaskinen er slått på igjen, er staten startet på nytt. På den annen side slår den permanente deaktiveringen av Selinux den fullstendig og utsetter den for trusler der ute; Derfor er det et klokt valg å gjenopprette Ubuntus standard apparmor i det minste for sikkerhets skyld.

Følgende kommando på terminalen slår den av midlertidig:

setenforce 0

For å redigere permanent /etc/selinux/config og sett Selinux til deaktivert.