audit2why(1)

Från Wiki.linux.se -Linux wikipedia på Svenska.
Hoppa till navigering Hoppa till sök

audit2allow

audit2allow genererar SELinux-policyregler av typen allow eller dontaudit från loggar över nekade operationer.

audit2why översätter SELinux-granskningsmeddelanden till en beskrivning av varför åtkomsten nekades (motsvarar audit2allow -w).

Namn

audit2allow — generera SELinux-policyregler av typen allow/dontaudit från loggar över nekade operationer

audit2why — översätt SELinux-granskningsmeddelanden till en beskrivning av varför åtkomst nekades

Synopsis

audit2allow [alternativ]

Alternativ

-a, --all
Läs indata från gransknings- och meddelandeloggar; står i konflikt med -i.
-b, --boot
Läs indata från granskningsmeddelanden sedan senaste uppstart; står i konflikt med -i.
-d, --dmesg
Läs indata från utdata från /bin/dmesg. Observera att alla granskningsmeddelanden inte är tillgängliga via dmesg när auditd körs; använd i stället ausearch -m avc | audit2allow eller -a.
-D, --dontaudit
Generera dontaudit-regler (standard: allow).
-e, --explain
Förklara genererad utdata fullständigt.
-h, --help
Skriv ut ett kort hjälpmeddelande.
-i <infil>, --input <infil>
Läs indata från <infil>.
--interface-info=<interface_info_fil>
Läs gränssnittsinformation från <interface_info_fil>.
-l, --lastreload
Läs bara indata efter senaste omladdning av policy.
-m <modulnamn>, --module <modulnamn>
Generera modul-/require-utdata för <modulnamn>.
-M <modulnamn>
Generera laddningsbart modulpaket; står i konflikt med -o.
-C
Generera CIL-utdata; står i konflikt med -M.
-p <policyfil>, --policy <policyfil>
Policyfil att använda för analys.
--perm-map <perm_map_fil>
Läs behörighetskarta från <perm_map_fil>.
-o <utfil>, --output <utfil>
Lägg till utdata i <utfil>.
-r, --requires
Generera require-syntax för laddningsbara moduler.
-N, --noreference
Generera inte referenspolicy, utan traditionella allow-regler. Detta är standardbeteendet.
-R, --reference
Generera referenspolicy med installerade makron. Försöker matcha nekanden mot gränssnitt och kan vara inexakt.
-t <typ_regex>, --type=<typ_regex>
Bearbeta endast meddelanden vars typ matchar detta reguljära uttryck.
-x, --xperms
Generera regler för utökade rättigheter i åtkomstvektor.
-w, --why
Översätt SELinux-granskningsmeddelanden till en beskrivning av varför åtkomst nekades.
-v, --verbose
Slå på utförlig utdata.

Beskrivning

Detta verktyg skannar loggar efter meddelanden som loggats när systemet nekade behörighet för operationer och genererar ett utdrag av policyregler som, om de laddades in i policyn, skulle kunna ha tillåtit dessa operationer att lyckas.

Verktyget genererar dock endast allow-regler för Type Enforcement (TE). Vissa behörighetsnekanden kan kräva andra typer av policyändringar, till exempel att lägga till ett attribut i en typdeklaration för att uppfylla en befintlig begränsning, lägga till en role allow-regel eller ändra en begränsning. Verktyget audit2why kan användas för att diagnostisera orsaken när den är oklar.

Försiktighet måste iakttas när man agerar på verktygets utdata för att säkerställa att de tillåtna operationerna inte innebär ett säkerhetshot. Ofta är det bättre att definiera nya domäner och/eller typer, eller göra andra strukturella ändringar, för att snävt tillåta en optimal uppsättning operationer i stället för att blint genomföra de ibland breda ändringar som verktyget rekommenderar.

Vissa behörighetsnekanden är inte fatala för programmet. I sådana fall kan det vara bättre att helt enkelt undertrycka loggning av nekandet via en dontaudit-regel i stället för en allow-regel.

Exempel

OBS: Dessa exempel gäller system som använder paketet audit. Om du inte använder audit-paketet finns AVC-meddelandena i /var/log/messages. Ersätt då /var/log/audit/audit.log med /var/log/messages i exemplen.

Använda audit2allow för att generera modulpolicy

$ cat /var/log/audit/audit.log | audit2allow -m local > local.te
$ cat local.te
module local 1.0;

require {
        class file {  getattr open read };

        type myapp_t;
        type etc_t;
};

allow myapp_t etc_t:file { getattr open read };
<granska local.te och anpassa efter behov>

Använda audit2allow för att generera modulpolicy med referenspolicy

$ cat /var/log/audit/audit.log | audit2allow -R -m local > local.te
$ cat local.te
policy_module(local, 1.0)

gen_require(`
        type myapp_t;
        type etc_t;
')

files_read_etc_files(myapp_t)
<granska local.te och anpassa efter behov>

Bygga modulpolicy med Makefile

# SELinux tillhandahåller en policyutvecklingsmiljö under
# /usr/share/selinux/devel inklusive alla medföljande
# gränssnitts-filer.
# Du kan skapa en te-fil och kompilera den genom att köra

$ make -f /usr/share/selinux/devel/Makefile local.pp

# Detta make-kommando kompilerar en local.te-fil i aktuell
# katalog. Om du inte angav en "pp"-fil kompilerar make-filen
# alla "te"-filer i aktuell katalog. När du har kompilerat din
# te-fil till en "pp"-fil måste du installera den med kommandot
# semodule.

$ semodule -i local.pp

Bygga modulpolicy manuellt

# Kompilera modulen
$ checkmodule -M -m -o local.mod local.te

# Skapa paketet
$ semodule_package -o local.pp -m local.mod

# Ladda modulen i kärnan
$ semodule -i local.pp

Använda audit2allow för att generera och bygga modulpolicy

$ cat /var/log/audit/audit.log | audit2allow -M local
Generating type enforcement file: local.te

Compiling policy: checkmodule -M -m -o local.mod local.te
Building package: semodule_package -o local.pp -m local.mod

******************** IMPORTANT ***********************

In order to load this newly created policy package into the kernel,
you are required to execute

semodule -i local.pp

Använda audit2allow för att generera monolitisk policy (icke-modul)

$ cd /etc/selinux/$SELINUXTYPE/src/policy
$ cat /var/log/audit/audit.log | audit2allow >> domains/misc/local.te
$ cat domains/misc/local.te
allow cupsd_config_t unconfined_t:fifo_file { getattr ioctl };
<granska domains/misc/local.te och anpassa efter behov>
$ make load

Författare

Denna manualsida skrevs av Manoj Srivastava <srivasta@debian.org> för Debian GNU/Linux-systemet. Den uppdaterades av Dan Walsh <dwalsh@redhat.com>.

Verktyget audit2allow innehåller bidrag från flera personer, inklusive Justin R. Smith, Yuichi Nakamura och Dan Walsh.

Källinformation

Denna sida är en del av projektet selinux (Security-Enhanced Linux användarrumsbibliotek och verktyg). Information om projektet finns på:

https://github.com/SELinuxProject/selinux/wiki

Om du vill rapportera ett fel i denna manualsida, se:

https://github.com/SELinuxProject/selinux/wiki/Contributing

Denna sida hämtades från projektets Git-arkiv:

https://github.com/SELinuxProject/selinux

den 2026-01-16. Vid den tidpunkten var datumet för den senaste commit som hittades i arkivet 2026-01-10.

Om du upptäcker renderingsproblem i denna HTML-version av sidan, eller anser att det finns en bättre eller mer uppdaterad källa för sidan, eller har rättelser eller förbättringar till informationen i denna källinformation (som inte är en del av originalmanualsidan), skicka e-post till: man-pages@man7.org

Sidslut

Orginalhemsidan på Engelska https://man7.org/linux/man-pages/man1/audit2allow.1.html Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på https://www.linux.se/kontaka-linux-se/

Tack till PC Service som har sponsrat Linux.se med webbhotell.