audit2allow(1)
audit2allow(1)
NAMN
audit2allow – generera SELinux-policyregler av typen allow/dontaudit från loggar över nekade operationer
audit2why – översätter SELinux-granskningsmeddelanden till en beskrivning av varför åtkomsten nekades, audit2allow -w
SYNOPSIS
audit2allow [alternativ]
ALTERNATIV
- -a | --all
- Läs indata från gransknings- och meddelandeloggen, i konflikt med -i
- -b | --boot
- Läs indata från granskningsmeddelanden sedan senaste uppstart, 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 användningsmeddelande
- -i <infil> | --input <infil>
- Läs indata från <infil>
- --interface-info=<interface_info_file>
- Läs gränssnittsinformation från <interface_info_file>
- -l | --lastreload
- Läs indata endast efter senaste policyomladdning
- -m <modulnamn> | --module <modulnamn>
- Generera modul-/require-utdata <modulnamn>
- -M <modulnamn>
- Generera laddningsbart modulpaket, i konflikt med -o
- -C
- Generera CIL-utdata, i konflikt med -M
- -p <policyfil> | --policy <policyfil>
- Policyfil att använda för analys
- --perm-map <perm_map_file>
- Läs rättighetskarta från <perm_map_file>
- -o <utfil> | --output <utfil>
- Lägg till utdata i <utfil>
- -r | --requires
- Generera require-syntax för laddningsbara moduler
- -N | --noreference
- Generera inte reference policy, traditionella allow-regler. Detta är standardbeteendet.
- -R | --reference
- Generera reference policy med installerade makron. Detta försöker matcha nekanden mot gränssnitt och kan vara inexakt.
- -t <typ_regex> | --type=<typ_regex>
- Bearbeta endast meddelanden med en typ som matchar detta reguljära uttryck
- -x | --xperms
- Generera accessvektorregler för utökade rättigheter
- -w | --why
- Översätter SELinux-granskningsmeddelanden till en beskrivning av varför åtkomsten nekades
- -v | --verbose
- Slå på utförlig utdata
BESKRIVNING
Detta verktyg skannar loggarna efter meddelanden som loggats när systemet nekade tillstånd för operationer, och genererar ett utdrag av policyregler som, om de laddades in i policyn, skulle kunna ha gjort att dessa operationer tilläts lyckas. Verktyget genererar dock endast Type Enforcement-regler av typen TE allow. Vissa nekanden av rättigheter kan kräva andra slags policyändringar, till exempel att lägga till ett attribut till en typdeklaration för att uppfylla en befintlig begränsning, lägga till en role allow-regel eller ändra en begränsning. Verktyget audit2why(8) kan användas för att diagnostisera orsaken när den är oklar.
Försiktighet måste iakttas när man agerar på utdata från detta verktyg 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 mängd operationer att lyckas, i stället för att blint genomföra de ibland breda ändringar som detta verktyg rekommenderar. Vissa nekanden av rättigheter ä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 är för system som använder audit-paketet. Om du inte använder audit-paketet kommer AVC-meddelandena att finnas i /var/log/messages. Ersätt /var/log/messages med /var/log/audit/audit.log 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 reference policy
$ 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änssnittsfiler. # 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 kommer att kompilera en local.te-fil i # aktuell katalog. Om du inte angav en "pp"-fil kommer make-filen # att kompilera 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 in 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, ej 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 har bidrag från flera personer, bland andra Justin R. Smith, Yuichi Nakamura och Dan Walsh.
KOLOFON
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 har en felrapport för denna manualsida, se ⟨https://github.com/SELinuxProject/selinux/wiki/Contributing⟩. Denna sida hämtades från projektets uppströms Git-arkiv ⟨https://github.com/SELinuxProject/selinux⟩ den 2026-01-16. Vid den tidpunkten var datumet för den senaste incheckningen som hittades i arkivet 2026-01-10. Om du upptäcker renderingsproblem i denna HTML-version av sidan, eller om du anser att det finns en bättre eller mer uppdaterad källa för sidan, eller om du har rättelser eller förbättringar av informationen i denna KOLOFON, som inte är en del av den ursprungliga manualsidan, 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.