Główna » jak » Jak utworzyć profile AppArmor, aby zablokować programy w systemie Ubuntu

    Jak utworzyć profile AppArmor, aby zablokować programy w systemie Ubuntu

    AppArmor blokuje programy w systemie Ubuntu, umożliwiając im tylko uprawnienia, których wymagają w normalnym użyciu - szczególnie przydatne w przypadku oprogramowania serwerowego, które może zostać naruszone. AppArmor zawiera proste narzędzia, których możesz użyć do blokowania innych aplikacji.

    AppArmor jest domyślnie dołączony do Ubuntu i niektórych innych dystrybucji Linuksa. Ubuntu dostarcza AppArmor z kilkoma profilami, ale możesz także tworzyć własne profile AppArmor. Narzędzia AppArmor mogą monitorować wykonanie programu i pomóc w utworzeniu profilu.

    Zanim utworzysz własny profil dla aplikacji, możesz sprawdzić pakiet profili aplikacji w repozytoriach Ubuntu, aby zobaczyć, czy profil aplikacji, którą chcesz ograniczyć, już istnieje.

    Utwórz i uruchom plan testów

    Będziesz musiał uruchomić program, gdy AppArmor go ogląda i przejrzy wszystkie jego normalne funkcje. Zasadniczo powinieneś używać programu tak, jak w normalnym użyciu: uruchom program, zatrzymaj go, przeładuj i używaj wszystkich jego funkcji. Powinieneś zaprojektować plan testów, który przejdzie przez funkcje, które program musi wykonać.

    Przed uruchomieniem planu testów uruchom terminal i uruchom następujące polecenia, aby zainstalować i uruchomić program aa-genprof:

    sudo apt-get install apparmor-utils

    sudo aa-genprof / path / to / binary

    Pozostaw program aa-genprof uruchomiony w terminalu, uruchom program i wykonaj plan testów, który zaprojektowałeś powyżej. Im bardziej kompleksowy jest twój plan testów, tym mniej problemów napotkasz później.

    Po zakończeniu wykonywania planu testów wróć do terminala i naciśnij S klawisz, aby zeskanować dziennik systemu dla zdarzeń AppArmor.

    Dla każdego zdarzenia zostaniesz poproszony o wybranie akcji. Na przykład, poniżej widzimy, że / usr / bin / man, który wyprofilowaliśmy, wykonał / usr / bin / tbl. Możemy wybrać, czy / usr / bin / tbl powinien dziedziczyć ustawienia bezpieczeństwa / usr / bin / man, czy powinien działać z własnym profilem AppArmor, czy powinien działać w trybie unconfined.

    W przypadku niektórych innych akcji zobaczysz różne monity - tutaj zezwalamy na dostęp do / dev / tty, urządzenia reprezentującego terminal

    Po zakończeniu procesu pojawi się monit o zapisanie nowego profilu AppArmor.

    Włączanie trybu skargi i poprawianie profilu

    Po utworzeniu profilu umieść go w "trybie reklamacji", gdzie AppArmor nie ogranicza działań, które może podjąć, ale rejestruje wszelkie ograniczenia, które w przeciwnym razie wystąpiłyby:

    sudo aa-complain / path / to / binary

    Korzystaj z programu normalnie przez pewien czas. Po użyciu go normalnie w trybie reklamowania, uruchom następujące polecenie, aby przeskanować logi systemowe w poszukiwaniu błędów i zaktualizować profil:

    sudo aa-logprof

    Korzystanie z trybu egzekwowania w celu zablokowania aplikacji

    Po zakończeniu dostosowywania profilu AppArmor włącz "tryb egzekwowania", aby zablokować aplikację:

    sudo aa-enforce / path / to / binary

    Możesz chcieć uruchomić sudo aa-logprof polecenie w przyszłości, aby ulepszyć swój profil.


    Profile AppArmor są plikami tekstowymi, więc możesz je otworzyć w edytorze tekstowym i ręcznie dostosować. Jednak powyższe narzędzia prowadzą użytkownika przez proces.