AppArmor: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
===Koostaja:=== | |||
Kersti Lang A22<br /> | |||
=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''' ("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. | ||
Line 14: | Line 17: | ||
'''AppArmor'i hetkestaatus vaatamine:''' | '''AppArmor'i hetkestaatus vaatamine:''' | ||
sudo apparmor_status | sudo apparmor_status | ||
<br /> | |||
'''Profiili asetamine 'kaebuse seisundisse':''' | '''Profiili asetamine 'kaebuse seisundisse':''' | ||
sudo aa-complain /path/to/bin | sudo aa-complain /path/to/bin | ||
<br /> | |||
Näiteks: | Näiteks: | ||
sudo aa-complain /bin/ping | sudo aa-complain /bin/ping | ||
<br /> | |||
'''Kõikide profiilide asetamine 'kaebuse seisundisse':''' | '''Kõikide profiilide asetamine 'kaebuse seisundisse':''' | ||
sudo aa-complain /etc/apparmor.d/* | sudo aa-complain /etc/apparmor.d/* | ||
<br /> | |||
'''Profiili asetamine 'jõustumisseisundisse':''' | '''Profiili asetamine 'jõustumisseisundisse':''' | ||
sudo aa-enforce /path/to/bin | sudo aa-enforce /path/to/bin | ||
<br /> | |||
Näiteks: | Näiteks: | ||
sudo aa-enforce /bin/ping | sudo aa-enforce /bin/ping | ||
<br /> | |||
'''Kõikide profiilide asetamine 'jõustumisseisundisse':''' | '''Kõikide profiilide asetamine 'jõustumisseisundisse':''' | ||
sudo aa-enforce /etc/apparmor.d/* | sudo aa-enforce /etc/apparmor.d/* | ||
<br /> | |||
'''Kõikide profiilide väljaarvatud ühe asetamine 'jõustumisseisundisse':''' | '''Kõikide profiilide väljaarvatud ühe asetamine 'jõustumisseisundisse':''' | ||
GLOBIGNORE="*profile.name" | GLOBIGNORE="*profile.name" | ||
sudo aa-enforce /etc/apparmor.d/* | sudo aa-enforce /etc/apparmor.d/* | ||
<br /> | |||
Näiteks: | Näiteks: | ||
GLOBIGNORE="*bin.ping" | GLOBIGNORE="*bin.ping" | ||
sudo aa-enforce /etc/apparmor.d/* | sudo aa-enforce /etc/apparmor.d/* | ||
<br /> | |||
'''AppArmor'i raamistiku keelamine:'''<br /> | '''AppArmor'i raamistiku keelamine:'''<br /> | ||
Süsteemis ei tohiks AppArmorit täielikult keelata. Kui tekib vajadus AppArmor eemaldada, siis: | Süsteemis ei tohiks AppArmorit täielikult keelata. Kui tekib vajadus AppArmor eemaldada, siis: | ||
sudo invoke-rc.d apparmor kill | sudo invoke-rc.d apparmor kill | ||
sudo update-rc.d -f apparmor remove | sudo update-rc.d -f apparmor remove | ||
<br /> | |||
'''Ubuntu 8.04-s ning hilisemates verissonides:''' | '''Ubuntu 8.04-s ning hilisemates verissonides:''' | ||
sudo invoke-rc.d apparmor stop | sudo invoke-rc.d apparmor stop | ||
sudo update-rc.d -f apparmor remove | sudo update-rc.d -f apparmor remove | ||
<br /> | |||
Kasutades ''kill'' käsku Ubuntu 8.10 ning hilisemates verisoonides, saame vastava veateate: | Kasutades ''kill'' käsku Ubuntu 8.10 ning hilisemates verisoonides, saame vastava veateate: | ||
Killing AppArmor module - failed, AppArmor is builtin: Failed. | Killing AppArmor module - failed, AppArmor is builtin: Failed. | ||
<br /> | |||
'''AppArmor raamistiku lubamine:''' | '''AppArmor raamistiku lubamine:''' | ||
sudo invoke-rc.d apparmor start | sudo invoke-rc.d apparmor start | ||
sudo update-rc.d apparmor start 37 S . | sudo update-rc.d apparmor start 37 S . | ||
<br /> | |||
'''Kõikide profiilide uuesndamine:''' | '''Kõikide profiilide uuesndamine:''' | ||
sudo invoke-rc.d apparmor reload | sudo invoke-rc.d apparmor reload | ||
<br /> | |||
'''Ühe profiili uuendamine:''' | '''Ühe profiili uuendamine:''' | ||
sudo apparmor_parser -r /etc/apparmor.d/profile.name | sudo apparmor_parser -r /etc/apparmor.d/profile.name | ||
<br /> | |||
Näiteks: | Näiteks: | ||
sudo apparmor_parser -r /etc/apparmor.d/bin.ping | sudo apparmor_parser -r /etc/apparmor.d/bin.ping | ||
<br /> | |||
'''Ühe programmi keelamine:''' | '''Ühe programmi keelamine:''' | ||
sudo ln -s /etc/apparmor.d/profile.name /etc/apparmor.d/disable/ | sudo ln -s /etc/apparmor.d/profile.name /etc/apparmor.d/disable/ | ||
sudo apparmor_parser -R /etc/apparmor.d/profile.name | sudo apparmor_parser -R /etc/apparmor.d/profile.name | ||
<br /> | |||
Näiteks: | Näiteks: | ||
sudo ln -s /etc/apparmor.d/bin.ping /etc/apparmor.d/disable/ | sudo ln -s /etc/apparmor.d/bin.ping /etc/apparmor.d/disable/ | ||
sudo apparmor_parser -R /etc/apparmor.d/bin.ping | sudo apparmor_parser -R /etc/apparmor.d/bin.ping | ||
<br /> | |||
'''Ühe programmi lubamine:'''<br /> | '''Ühe programmi lubamine:'''<br /> | ||
sudo rm /etc/apparmor.d/disable/profile.name | sudo rm /etc/apparmor.d/disable/profile.name | ||
sudo apparmor_parser -r /etc/apparmor.d/profile.name | sudo apparmor_parser -r /etc/apparmor.d/profile.name | ||
<br /> | |||
Näiteks: | Näiteks: | ||
sudo rm /etc/apparmor.d/disable/bin.ping | sudo rm /etc/apparmor.d/disable/bin.ping | ||
sudo apparmor_parser -r /etc/apparmor.d/bin.ping | sudo apparmor_parser -r /etc/apparmor.d/bin.ping | ||
<br /> | |||
'''Firefoxi lubamine AppArmoris:''' <br /> | '''Firefoxi lubamine AppArmoris:''' <br /> | ||
Kuna Firefox on vaimisi, keelatud, siis selle lubamiseks: | Kuna Firefox on vaimisi, keelatud, siis selle lubamiseks: | ||
sudo aa-enforce /etc/apparmor.d/usr.bin.firefox-3.5 | sudo aa-enforce /etc/apparmor.d/usr.bin.firefox-3.5 | ||
<br /><br /> | |||
==Uue profiili loomine== | ==Uue profiili loomine== | ||
<br /> | |||
'''Uue profiili tekitamine:''' | '''Uue profiili tekitamine:''' | ||
sudo aa-genprof executable | sudo aa-genprof executable | ||
<br /> | |||
Näiteks: | Näiteks: | ||
sudo aa-genprof slapd | sudo aa-genprof slapd | ||
<br /> | |||
=Kasutatud kirjandus= | =Kasutatud kirjandus= | ||
http://www.linux-magazine.com/Issues/2006/69/PROTECTIVE-ARMOR <br /> | http://www.linux-magazine.com/Issues/2006/69/PROTECTIVE-ARMOR <br /> |
Revision as of 13:54, 8 January 2012
Koostaja:
Kersti Lang A22
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
Koostaja:
Kersti Lang A22