Jednym ze sposobów poprawy bezpieczeństwa systemu Linux jest dodanie dodatkowej warstwy bezpieczeństwa za pomocą Selinux. W przypadku Linux wzmocnionego bezpieczeństwem (SELINUX) aplikacje w systemach Linux są odizolowane od siebie, chroniąc system hosta. Domyślnie Ubuntu używa Apparmor, Obowiązkowy system kontroli dostępu, który poprawia bezpieczeństwo, ale możesz użyć Selinux, aby osiągnąć to samo.
Selinux jest korzystny, a w przypadku naruszenia bezpieczeństwa systemu zapobiega rozprzestrzenianiu się naruszenia w celu ochrony systemu. Ponadto narzędzie chroni serwery internetowe w zależności od ustawionego trybu dla Selinux. Ten przewodnik zawiera praktyczny samouczek na temat wyłączenia Apparmor, zainstalowania SELINUX, włączenia różnych trybów i wyłączenia Selinux.
Pierwsze kroki z Selinux
Zauważ, że zanim przejdziesz do Selinux, istnieje ryzyko, że może go używać, zwłaszcza że może on uczynić system bezużytecznym. Więc użyj go tylko wtedy, gdy musisz i w takiej odpowiedniej sprawie. Poza tym zawsze bezpieczniej jest wyłączyć Apparmor przed zainstalowaniem Selinux.
Aby wyłączyć Apparmor, uruchom następujące polecenie:
1 | $ sudo systemCtl Stop Apparmor |
Po zatrzymaniu Apparmor uruchom ponownie system.
Jak zainstalować Selinux na Ubuntu
Po wyłączeniu lub usunięciu Apparmor otwórz terminal i uruchom następujące polecenie, aby zainstalować Selinux.
1 2 3 | Aktualizacja $ sudo apt |
Gdy instalacja się powiedzie, musisz aktywować narzędzie. Możesz to zrobić za pomocą następującego polecenia:
1 | $ sudo selinux-activate |
Włączanie trybów SELINUX na Ubuntu
Istnieją trzy różne tryby, których można użyć z Selinux. Pierwszy jest wyłączony, co robi to samo, co jego nazwa. Wyłącza się za pomocą usługi Selinux. Po aktywowaniu Selinux możesz go ustawić dopuszczalne lub egzekwujące tryby. W trybie dopuszczalnym wykonywane jest tylko monitorowanie interakcji. Jeśli jednak chcesz filtrować i monitorować interakcję, użyj trybu egzekwowania.
Zacznijmy od ustawienia trybu egzekwowania. Użyj następującego polecenia:
1 | $ sudo selinux-config-enforcing |
Alternatywnie możesz użyć polecenia setenforce, aby ustawić tryb egzekwowania. Polecenie tego jest następujące:
1 | $ setenforce 1 |
Po ustawieniu trybu musisz ponownie uruchomić swój system, aby mógł wejść.
1 | $ reboot |
Zauważ, że proces oddzielenia rozpoczyna się podczas ponownego uruchomienia. System ponownie uruchamia się po zakończeniu. Podczas rozdzielenia należy zwrócić uwagę na wiadomość ostrzegawczą, jak na poniższym obrazku:
Po udanym ponownym uruchomieniu możesz uruchomić następujące polecenie, aby sprawdzić status Selinux. Powinno być ustawione na egzekwowanie.
1 | $ sestatus |
Tryb egzekwowania to domyślny zestaw przez SELINUX. W tym stanie większość, jeśli nie wszystkie żądania zostaną zablokowane. Rozwiązaniem jest wybranie trybu dopuszczalnego, który rejestruje wszystkie naruszone reguły. Możesz sprawdzić plik dziennika, aby uzyskać szczegółowe informacje.
Aby ustawić tryb dopuszczalny, użyj następującego polecenia:
1 | $ setenforce 0 |
Śmiało i sprawdź tryb za pomocą polecenie setStatus lub użyj getenforce Komenda:
1 2 3 4 5 | $ setStatus |
Dzięki getenforce zobaczysz tylko nazwę bieżącego trybu, ale setStatus pokazuje więcej szczegółów na temat trybu aktualnie ustawionego.
Zauważ, że musisz ponownie uruchomić system, aby przełączać się między dwoma trybami. Poza tym możesz wyświetlić tryby zestawu z /etc/sysconfig/selinux.
Jak zauważyliśmy, tryb dopuszczalny jest bardziej elastyczny i niekoniecznie zablokuje wszystkie żądania. Zamiast tego przechowuje plik dziennika, gdy reguły zostaną naruszone. Aby uzyskać dostęp do pliku dziennika, możesz użyć następującego polecenia:
1 | $ grep selinux/var/log/audyt/audyt.dziennik |
Aby ustawić tryb dopuszczalny, użyj następującego polecenia:
1 | $ sudo setenforce 0 |
Jak wyłączyć Selinux
Widzieliśmy, jak włączyć i ustawić różne tryby Selinux. Ale co powiesz na wyłączenie tego? Najlepszą opcją jest stałe wyłączenie go z plików konfiguracyjnych. W tym celu otwórz plik za pomocą edytora takiego jak Nano. Następnie zmień tryb z egzekwowania na niepełnosprawne, jak pokazano w następującym poleceniu:
1 | $ sudo nano/etc/selinux/config |
Po otwarciu poszukaj SELINUX = Egzekwowanie linii i zmień ją na SELINUX = wyłączony.
Wniosek
Apparmor to dodatkowa warstwa bezpieczeństwa w Ubuntu i innych systemach Linux. Jeśli jednak wolisz korzystać z Selinux, omówiliśmy sposób instalowania, włączenia i korzystania z jego różnych trybów. Przed zainstalowaniem SELINUX upewnij się, że wyłączysz Apparmor i uruchom ponownie system. Podejdź również do ostrożności podczas korzystania z Selinux, aby uniknąć zepsucia systemu.