SELinux

SELinux på Ubuntu-veiledning

SELinux på Ubuntu-veiledning

Introduksjon

SELinux er en obligatorisk tilgangskontrollmodul (MAC) som ligger i kjernnivået til Linux-systemer. Det er en felles utvikling av Redhat og NSA som ble utgitt rundt 1998 og fortsatt vedlikeholdes av et entusiastisk samfunn. Som standard bruker Ubuntu AppArmor og ikke SeLinux, som er lik ytelsesmessig, men ganske populær når det gjelder enkelhet. Imidlertid er SeLinux kjent for å være ganske sikker på grunn av involvering fra et statlig byrå. SELinux er et program med åpen kildekode som beskytter verten ved å isolere hver applikasjon og begrense aktivitetene. Som standard er prosesser blokkert fra å utføre aktiviteter med mindre den eksplisitte tillatelsen er gitt. Modulen gir innfødt to globale styringsregler: Tillatelse og håndheving som henholdsvis logger hver brutt regel, og nekter tilgang til en bestemt forespørsel sendt fra en prosess. Denne opplæringen viser hvordan du enkelt bruker den på Ubuntu.

Hvordan installere og aktivere

SeLinux er et veldig vanskelig program å installere, for hvis det ikke er riktig konfigurert før den første omstarten, vil det gjøre hele operativsystemet uoppstartbart, noe som betyr at alt utover den opprinnelige oppstartsskjermen vil være praktisk talt utilgjengelig på vanlig måte.

Som tidligere nevnt 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 Aktiver SeLinux.

sudo / etc / init.d / apparmor stopp apt-get update && upgrade -yuf apt-get install selinux nano / etc / selinux / config 'set SELINUX to permissive, SELINUXTYPE to default' reboot 

Denne filkonfigurasjonen kan åpnes med hvilken som helst teksteditor for å gjøre endringer. Årsaken til å tilordne tillatende regel til SETLINUX er å gjøre operativsystemet tilgjengelig mens SeLinux er aktivert. Det anbefales på det sterkeste å bruke det tillatelige alternativet, da det er problemfritt, men det logger brutt regler satt i SeLinux.

Tilgjengelige alternativer

SELinux er en kompleks og omfattende modul; derav inneholder den mange funksjoner og alternativer. Når det er sagt, kan det hende at de fleste av disse alternativene ikke er nyttige for alle på grunn av deres 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 status:  Statusen til SELinux kan kontrolleres direkte gjennom terminalvinduet, som viser grunnleggende informasjon, for eksempel om SeLinux er aktivert, SELinux-rotkatalog, lastet policynavn, gjeldende modus osv.  Etter å ha startet systemet på nytt etter installasjon av SeLinux, bruk følgende kommando som rotbruker med sudo-kommando. Hvis det står at SeLinux er aktivert i statusdelen, betyr det at den er i gang i bakgrunnen.

[e-postbeskyttet]: / home / dondilanga # sestatus

Endre det globale tillatelsesnivået: Det globale tillatelsesnivået angir hvordan SELinux oppfører seg når den 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 som er mildt overfor brukeren ettersom det gir tilgang, men logger eventuelle brudd på reglene i loggfilen.

nano / etc / selinux / config 'sett SELINUX til tillatende eller håndhevende, SELINUXTYPE til standard' 

Sjekk loggfilen: Loggfilen som angir brudd på reglene ved hver forespørsel.  Dette fører bare logger hvis SeLinux er aktivert.

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

Aktiver og deaktiver politikk og hvilken beskyttelse de tilbyr: Dette er et av de viktigste alternativene i SeLinux, da det gjør det mulig å aktivere og deaktivere policyer. SeLinux har et stort antall forhåndsbygde policyer som avgjør om den angitte forespørselen er tillatt eller ikke. Noen av eksemplene på dette er allow_ftpd_full_access som bestemmer muligheten til FTP-tjenesten til å logge på lokale brukere og lese skrive alle filene på systemet, allow_ssh_keysign som gjør at nøkler kan brukes når de logger på SSH, allow_user_mysql_connect som lar brukerne koble til mysql , httpd_can_sendmail som bestemmer HTTP-tjenestens evne til å sende en e-post osv ... I det følgende kodeeksemplet installerer den policycoreutils-python-utils som faktisk hjelper til å liste ut hver policy på en beskrivende måte. Neste viser den alle tilgjengelige policyer for terminal , endelig lærer det hvordan du setter en policy på eller av, allow_ftpd_full_access er policynavnet som vist i terminalen returnert av semanage,

apt-get install policycoreutils-python-utils semanage boolean -l setsebool -P allow_ftpd_full_access ON 

Avanserte instillinger

De avanserte alternativene er alternativer som hjelper til med å utvide funksjonene i SELInux. Det er enormt mange kombinasjoner der ute på grunn av den omfattende naturen til SeLinux, så denne artikkelen lister opp noen av de fremtredende og nyttige blant dem.

Rollebasert tilgangskontroll (RBAC): RBAC tillater administratorer å bytte til en rollebasert måte å begrense tillatelsen til applikasjoner. Hva det betyr er at en bruker av en bestemt brukergruppe har lov til å utføre eller utføre bestemte forhåndsdefinerte handlinger. Så lenge brukeren er en del av rollen, er det greit. Dette er det samme som å bytte til root 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å koble eksternt til serveren via SSH med rollen aktivert ved oppstart.

ssh / [e-postbeskyttet]

La en tjeneste lytte til en ikke-standard port: Dette er ganske nyttig for å tilpasse en tjeneste, for eksempel når en FTP-port endres til en ikke-standard for å unngå uautorisert tilgang, må SELinux informeres tilsvarende for å tillate slike porter å passere gjennom og fungere som vanlig. Følgende eksempel lar FTP-porten lytte til 992-porten. Likeledes enhver tjeneste returnert av semanage port -l kan byttes ut.  Noen av de populære havnene 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 den er aktivert og installert. I utgangspunktet er det to måter å deaktivere den 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, blir tilstanden startet på nytt. På den annen side stenger den permanente deaktivering av SeLinux den helt og utsetter den for trusler der ute; Derfor er det et klokt valg å gjenopprette Ubuntus standard AppArmor i det minste for sikkerheten til systemet.

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

setenforce 0 

For å deaktivere permanent redigering / etc / selinux / config og sett SELINUX til deaktivert.

Beste spill å spille med håndsporing
Oculus Quest introduserte nylig den gode ideen om håndsporing uten kontrollere. Med et stadig økende antall spill og aktiviteter som utfører støtte en...
Hvordan vise OSD-overlegg i fullskjerm Linux-apper og spill
Å spille fullskjermspill eller bruke apper i distraksjonsfri fullskjermmodus kan avskrekke deg fra relevant systeminformasjon som er synlig i et panel...
Topp 5 spillfangstkort
Vi har alle sett og elsket streaming av spill på YouTube. PewDiePie, Jakesepticye og Markiplier er bare noen av de beste spillerne som har tjent milli...