Install & config af SELinux på Debian Linux 7 (Wheezy)
|
14-12-2014, 04:42
(Denne besked var sidst ændret: 14-12-2014, 04:42 af iTick.)
|
|||
|
|||
Install & config af SELinux på Debian Linux 7 (Wheezy)
Citer:Selinux 4 access control forms: MCS er Multi Category System, og er en arveart af MLS, med lidt ekstra på. Denne guide viser hvordan TE sættes op, da det er det mest brugte. Citer:apt-get install selinux-basics # for check-selinux-installation og selinux-activateOBS: selinux-policy-default og policycoreutils kommer automatisk med, på grund af package dependencies, så der er ingen grund til at angive dem. Vi kan starte med at bekræfte at SELinux ikke kører: Citer:root@selinux:~# sestatus For at kontrollere, om SELinux er klar til at blive startet, udføres følgende: Citer:root@selinux:~# check-selinux-installation Der er nogle ting som skal ordnes, før vi kan aktivere SELinux: "FSCKFIX is not enabled" klares som følgende: I filen /etc/default/rcS skal vi have sat FSCKFIX til yes i stedet for no. Den er normalt bare en kommentar: Citer:... Ret den til følgende: Citer:... Så kontrollerer vi installationen igen: Citer:root@selinux:~# check-selinux-installation Det er de færreste programmer, som behøver blive ændret eller recompiled, for at køre i et SELinux miljø. Disse få, er dog ret vigtige. Nogle af de programmer som er "SELinux Aware" er: login, sshd, cron etc. Lad os se på følgende fejl: /etc/pam.d/login is not SELinux enabled Disse PAM moduler, bliver automatisk rettet, når man kører "selinux-activate". Det samme gælder opsætningen i grub. Når denne kommando gives, bliver filen "/.autorelabel" også dannet. Hvis denne fil findes, når en SELinux installation booter, vil der blive dannet Labels, og dette kan tage en del tid. Så lad os prøve at aktivere SELinux, og se om det går godt: Citer:root@selinux:~# selinux-activate Og efterfølgende, rebooter vi linux: Citer:root@selinux:~# reboot Dette kan tage lidt tid, så opstarten vil ikke være så hurtig som normalt. Når vi har bootet, kan vi kontrollere om SELinux er aktiveret: Citer:root@selinux:~# sestatus Og vi kan kontrollere om installationen er, som den skal være: Citer:root@selinux:~# check-selinux-installation Lige nu kører vi i Permissive Mode, hvilket betyder at vi stadig kan alt hvad vi kunne før, vi får dog nu, alarmer når vi gør noget vi ikke må. Faktisk lige som når man kører DAC (Discresionary Access Mode), som man gør uden SELinux. Permissive mode, er kun til at teste om alt virker. Dvs. om vi kan det vi skal kunne, så vi ikke ender med at lukke os selv ude. For at køre i MAC (Mandatory Access Control) mode, skal vi have sat SELinux i Enforcing mode i stedet for Permissive Mode. Inden vi gør det, kan det være en god idé at kigge i audit.log, som SELinux lægger sine log entries i. Citer:root@selinux:~# tail /var/log/audit/audit.log Her kan det ses, at exim4, forsøger at gøre nogle ting, som ikke ville være tilladt, hvis SELinux var i Enforcing mode. Man kan vælge at rette den policy, exim4 bruger, men exim4 skal alligevel ikke bruges, så denne fjernes med kommandoen rcconf: Citer:root@selinux:~# rcconf --off exim4 Og så stopper vi exim4 processen: Citer:root@selinux:~# service exim4 stop For en sikkerheds skyld, kan vi kontrollere at alt har fået labels: Citer:root@selinux:~# fixfiles relabel De fire "find: unknown predicate `-context'" er harmløse. Lad os sætte SELinux i Enforcing mode: Citer:root@selinux:~# setenforce enforcing Nu er SELinux kørende i Enforcing mode. Som man kan se i ovenstående, er vores Current mode Enforcing, men Mode from config file, er Permissive. Dette hjælper også med, ikke at få lukket sig selv ude, hvis man får lavet noget, for restriktivt. Det sker dog normalt ikke, når man kører i Targeted Enforcement (TE) mode, hvor brugere generelt set, stadig får lov at være brugere. Root er stadig root. For at gøre dette permanent, skal man rette /etc/selinux/config, så man kører enforcing, også efter en reboot: Citer:root@selinux:/etc/selinux# cat configSæt SELINUX til enforcing, SELINUX=enforcing i /etc/selinux/config For at være sikker på, ingen retter i denne, kan man sætte filen til at være immutable, så ikke engang root kan ændre eller slette filen: Citer:root@selinux:/etc/selinux# chattr +i /etc/selinux/config Done! God fornøjelse.
---
Writing a shellcode decoder stub in assembly is like talking gibberish in such a way that it is still perfectly intelligible. - iTick |
|||
14-12-2014, 10:52
(Denne besked var sidst ændret: 14-12-2014, 10:53 af Doctor Blue.)
|
|||
|
|||
RE: Install & config af SELinux på Debian Linux 7 (Wheezy)
Fed tekst du har fået lavet der. SELinux er ikke noget jeg er så latterligt bekendt med, men burde tjekke ud.
|
|||
14-12-2014, 14:06
|
|||
|
|||
RE: Install & config af SELinux på Debian Linux 7 (Wheezy)
Det er heldigvis ikke så slemt at rode med, som det var før i tiden. Det er blevet en hel del lettere.
Det er så nok også derfor, jeg har givet mig i kast med det. :)
---
Writing a shellcode decoder stub in assembly is like talking gibberish in such a way that it is still perfectly intelligible. - iTick |
|||
|
User(s) browsing this thread: 1 Gæst(er)