AppArmor

From ICO wiki
Revision as of 05:25, 8 January 2012 by Klang (talk | contribs)
Jump to navigationJump to search

AppArmor

AppArmor ("Application Armor") on GNU General Public litsentsi all väljastatud Linuxi tuuma turvalisuse moodul. AppArmor võimaldab süsteemi administraatoril liita iga programm turvalisuse profiiliga, mis piirab programmi võimalusi. See täiendab traditsioonilist Unix'i valikulise pääsupoliitika ('Discretionary Access Control') moodulit andes sellele juurde kohustuslik pääsukontrolli ('Mandatory Access Control'). See lisati juurde Linuxi tuumale alates 2.6.36 versioonist. Alates 2009 aastast teeb AppArmori arendajatega koostööd Canonical Ltd'ga. AppArmor'it soovitatakse SELinux'i alternatiiviks, mida kriitikud väidavad olevat raske arministraatoril üles seada ja töökorras hoida. AppArmor pooldajad väidavad, et see on vähem keerukas ja keskmisel kasutajal on seda kergem õppida kui SELinux'it. Samuti väidetakse, et AppArmor nõuab sujuvalt töötamiseks vähem seadistamist. AppArmor

AppArmor Linux'is

Esimesena esines AppArmor kasutajale Ubuntu 7.04-s. Vaikimisi programmiks sai see alates Ubuntu 7.10-st. Ubuntus on AppArmori piiramine rakendusepõhine, kusjuures on võimalikud profiilid erinevate programmiosade jaoks. Iga uue väljalaskega, üha enam profiile väljastatakse vaikimisi.

Kui antud profiil ei ole saadavad antud rakendusele, on kasutajal võimalik luua uus profiil ja lisada see /etc/apparmor.d kataloogi. Kui profiil ei ole defineeritud konkreetses programmi osas, siis see programmi osa ei ole piiratud.

Kasutamine

Käsitlus

AppArmor'i hetkestaatus vaatamine:

sudo apparmor_status

Profiili asetamine 'kaebuse seisundisse':

sudo aa-complain /path/to/bin

Näiteks:

sudo aa-complain /bin/ping

Kõikide profiilide asetamine 'kaebuse seisundisse':

sudo aa-complain /etc/apparmor.d/*

Profiili asetamine 'jõustumisseisundisse':

sudo aa-enforce /path/to/bin

Näiteks:

sudo aa-enforce /bin/ping

Kõikide profiilide asetamine 'jõustumisseisundisse':

sudo aa-enforce /etc/apparmor.d/*

Kõikide profiilide väljaarvatud ühe asetamine 'jõustumisseisundisse':

GLOBIGNORE="*profile.name"
sudo aa-enforce /etc/apparmor.d/*

Näiteks:

GLOBIGNORE="*bin.ping"
sudo aa-enforce /etc/apparmor.d/*

AppArmor'i raamistiku keelamine:
Süsteemis ei tohiks AppArmorit täielikult keelata. Kui tekib vajadus AppArmor eemaldada, siis:

sudo invoke-rc.d apparmor kill
sudo update-rc.d -f apparmor remove

Ubuntu 8.04-s ning hilisemates verissonides:

sudo invoke-rc.d apparmor stop
sudo update-rc.d -f apparmor remove

Kasutades kill käsku Ubuntu 8.10 ning hilisemates verisoonides, saame vastava veateate:

Killing AppArmor module - failed, AppArmor is builtin: Failed.

AppArmor raamistiku lubamine:

sudo invoke-rc.d apparmor start
sudo update-rc.d apparmor start 37 S .

Kõikide profiilide uuesndamine:

sudo invoke-rc.d apparmor reload

Ühe profiili uuendamine:

sudo apparmor_parser -r /etc/apparmor.d/profile.name

Näiteks:

sudo apparmor_parser -r /etc/apparmor.d/bin.ping

Ühe programmi keelamine:

sudo ln -s /etc/apparmor.d/profile.name /etc/apparmor.d/disable/
sudo apparmor_parser -R /etc/apparmor.d/profile.name

Näiteks:

sudo ln -s /etc/apparmor.d/bin.ping /etc/apparmor.d/disable/
sudo apparmor_parser -R /etc/apparmor.d/bin.ping

Ühe programmi lubamine:

sudo rm /etc/apparmor.d/disable/profile.name
sudo apparmor_parser -r /etc/apparmor.d/profile.name

Näiteks:

sudo rm /etc/apparmor.d/disable/bin.ping
sudo apparmor_parser -r /etc/apparmor.d/bin.ping

Firefoxi lubamine AppArmoris:
Kuna Firefox on vaimisi, keelatud, siis selle lubamiseks:

sudo aa-enforce /etc/apparmor.d/usr.bin.firefox-3.5

Uue profiili loomine

Uue profiili tekitamine:

sudo aa-genprof executable

Näiteks:

sudo aa-genprof slapd

Kasutatud kirjandus

http://www.linux-magazine.com/Issues/2006/69/PROTECTIVE-ARMOR
http://www.linuxplanet.com/linuxplanet/reports/7203/1/
https://help.ubuntu.com/community/AppArmor
https://wiki.ubuntu.com/AppArmor