Spisie treści
SELinux to jest moduł bezpieczeństwa jądra linux, to znaczy Linux o podwyższonym poziomie bezpieczeństwa lub Linux z rozszerzonymi zabezpieczeniami.Ten moduł bezpieczeństwa Linux, który zapewnia różne polityki bezpieczeństwa, w tym kontrolę dostępu, może być zastosowany do systemów uniksopodobnych, takich jak Linux i BSD.
Jest aktywowany w CentOS aw większości nowoczesnych dystrybucji jest ogólnie włączony na serwerach.
Zobaczymy go nie jako aplikację komputerową, ale jako system bezpieczeństwa na serwerze, to, co robi Selinux, to sprawdzanie przez cały czas, czy plik, do którego próbujesz uzyskać dostęp, jest prawidłowy i ma pozwolenie na użycie przez aplikację, która tego chce to działa.
Oprócz kontrolowania plików kontroluje również porty. Przypadek kontrolny jest taki, że jeśli próbujemy uruchomić serwer FTP, musimy najpierw nadać mu odpowiednie uprawnienia, aby serwer mógł nasłuchiwać na porcie, w przeciwnym razie nie zadziała, zwykle taka konfiguracja jest wykonywana podczas instalacji.
Zakładamy, że jest już zainstalowany i zamierzamy go skonfigurować
SELinux ma własną bazę danych użytkowników, która jest powiązana z normalną bazą danych użytkowników systemu Linux. Tożsamości są używane zarówno w podmiotach, jak i przedmiotach. Zdefiniowanych jest tylko kilku użytkowników SELinux: (można wyświetlić poleceniem 'semanage user -l'):
Informator / etc / selinux jest główną lokalizacją wszystkich plików strategii, a także głównego pliku konfiguracyjnego.
Narzędzia i programy SELinux
Zobaczmy, jakie programy narzędziowe są najczęściej używane przez selinux
/ usr / bin / setenforce: modyfikuje sposób działania selinux w czasie rzeczywistym. podczas wykonywania polecenia setenforce 1 selinux jest przełączany w tryb podatkowy, co oznacza, że reguły bezpieczeństwa będą aktywne. jeśli uruchomimy setenforce 0, selinux przechodzi w tryb zezwalający.
aby wyłączyć selinux, musisz skonfigurować parametr w / etc / sysconfig / selinux lub przekazać parametr
selinux = 0 do jądra lub jeśli chcemy to z rozruchu systemu operacyjnego dodajemy polecenie do pliku /etc/grub.conf.
/ usr / bin / sestatus -v- Uzyskaj pełny status systemu z uruchomionym selinux. Poniższy przykład pokazuje fragment danych wyjściowych status
# sestatus SELinux status: włączony SELinuxfs mount: / selinux Aktualny tryb: wymuszanie Tryb z pliku konfiguracyjnego: wymuszanie Wersja polityki: 21 Polityka z pliku konfiguracyjnego: ukierunkowana
Selinux ma interfejs graficzny, ale ponieważ można nim zarządzać zdalnie za pomocą ssh, wyjaśniamy polecenia.
Ważnym poleceniem jest getsebool, które pozwala wyświetlić listę polityk zdefiniowanych w SELinux i określić, które reguły są aktywne, a które nieaktywne. Z terminala piszemy następujące polecenie
getsebool -a | tekst grep
Tekstem może być np. usługa lub program, który chcemy
getsebool -a | grep ftp
Na przykład z tego polecenia możemy uzyskać status ftp
allow_ftpd_anon_write -> wł. // Zezwól na dostęp anonimowym użytkownikom przez ftp na serwerze allow_ftpd_full_access -> wł. // Zezwól na odczyt i zapis plików ftp_home_dir -> wł. // Zezwól użytkownikowi na dostęp do ich katalogów domowych
Musimy znać każdą usługę na naszym serwerze, aby móc zweryfikować, jaka jest każda reguła kontrolowana przez Selinux i jak jest skonfigurowana.