AppArmor
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 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