AppArmor, zaščitni modul jedra Linuxa, lahko omeji dostop do sistema z nameščeno programsko opremo s posebnimi profili aplikacij. AppArmor je opredeljen kot obvezen nadzor dostopa ali sistem MAC. Nekateri profili so nameščeni v času namestitve paketa, AppArmor pa vsebuje nekaj dodatnih profilov iz paketov apparmor-profile. Paket AppArmor je privzeto nameščen v Ubuntuju in vsi privzeti profili se naložijo ob zagonu sistema. Profili vsebujejo seznam pravil nadzora dostopa, ki so shranjena v itd / apparmor.d /.
Vsako nameščeno aplikacijo lahko zaščitite tudi z ustvarjanjem profila AppArmor za to aplikacijo. Profili AppArmor so lahko v enem od dveh načinov: način pritožbe ali način izvrševanja. Sistem ne uveljavlja nobenih pravil in kršitve profila se v dnevnikih sprejmejo v načinu pritožbe. Ta način je bolje preizkusiti in razviti kateri koli nov profil. Pravila sistem uveljavlja v prisilnem načinu in če pride do kršitve za kateri koli profil aplikacije, za to aplikacijo ne bo dovoljena nobena operacija, dnevnik poročil pa bo ustvarjen v syslogu ali auditd. Do sistema slog lahko dostopate z lokacije, / var / log / syslog
. Kako lahko preverite obstoječe profile sistema AppArmor v vašem sistemu, spremenite način profila in ustvarite nov profil, je prikazano v tem članku.
Preverite obstoječe profile AppArmor
apparmor_status ukaz se uporablja za ogled naloženega seznama profilov AppArmor s statusom. Zaženite ukaz s korenskim dovoljenjem.
$ sudo apparmor_status
Seznam profilov je mogoče spreminjati glede na operacijski sistem in nameščene pakete. Naslednji izhod se bo pojavil v Ubuntu 17.10. Prikazano je, da je 23 profilov naloženih kot profili AppArmor in so vsi privzeto nastavljeni kot prisilni način. Tu so 3 procesi, dhclient, cups-browsed in cupsd, definirani s profili s prisilnim načinom, v načinu pritožbe pa ni postopka. Način izvajanja lahko spremenite za kateri koli definiran profil.
Spremeni način profila
Način profila v katerem koli postopku lahko spremenite iz pritožbe na prisiljen ali obratno. Namestiti morate apparmor-utils paket za to operacijo. Zaženite naslednji ukaz in pritisnite 'Y'ko prosi za dovoljenje za namestitev.
$ sudo apt-get namestite apparmor-utils
Obstaja profil z imenom dhclient ki je nastavljen kot prisilni način. Zaženite naslednji ukaz, da spremenite način v način pritožbe.
$ sudo aa-pritožba / sbin / dhclient
Če znova preverite stanje profilov AppArmor, boste videli, da se način izvajanja dhclienta spremeni v način pritožbe.
Z naslednjim ukazom lahko znova spremenite način v prisilni način.
$ sudo aa-force / sbin / dhclient
Pot za nastavitev načina izvajanja za vse profile AppArmore je / etc / apparmor.d / *.
Zaženite naslednji ukaz, da nastavite način izvajanja vseh profilov v načinu pritožbe:
$ sudo aa-pritožba / etc / apparmor.d / *Zaženite naslednji ukaz, da nastavite način izvajanja vseh profilov v prisilnem načinu:
$ sudo aa-force / etc / apparmor.d / *Ustvari nov profil
Vsi nameščeni programi privzeto ne ustvarjajo profilov AppArmore. Da bo sistem bolj varen, boste morda morali za katero koli aplikacijo ustvariti profil AppArmore. Če želite ustvariti nov profil, morate poiskati tiste programe, ki niso povezani z nobenim profilom, vendar potrebujejo varnost. app-unconfined ukaz se uporablja za preverjanje seznama. Glede na izhodne podatke prvi štirje procesi niso povezani z nobenim profilom, zadnji trije procesi pa so privzeto omejeni s tremi profili s prisilnim načinom.
$ sudo aa-unconfined
Recimo, da želite ustvariti profil za postopek NetworkManager, ki ni omejen. Teči aa-genprof ukaz za ustvarjanje profila. Vnesite 'F', da končate postopek ustvarjanja profila. Vsak nov profil je privzeto ustvarjen v prisilnem načinu. Ta ukaz bo ustvaril prazen profil.
$ sudo aa-genprof NetworkManager
Za noben nov profil ni določeno nobeno pravilo, vsebino novega profila pa lahko spremenite tako, da uredite naslednjo datoteko, da nastavite omejitev za program.
$ sudo mačka / etc / apparmor.d / usr.sbin.NetworkManager
Znova naložite vse profile
Po nastavitvi ali spremembi katerega koli profila morate profil znova naložiti. Zaženite naslednji ukaz, da znova naložite vse obstoječe profile AppArmor.
$ sudo systemctl ponovno naloži aplikacijo.storitevTrenutno naložene profile lahko preverite z naslednjim ukazom. V izhodu boste videli vnos za novo ustvarjeni profil programa NetworkManager.
$ sudo cat / sys / jedro / varnost / apparmor / profili
AppArmor je torej koristen program za zaščito vašega sistema z nastavitvijo potrebnih omejitev za pomembne programe.