semanage Generator poleceń
Wygenerować polecenia semanage do zarządzania mapowaniami polityki SELinux (fcontext, login, user, port, boolean)
Pierwsze kroki z semanage
## Co to jest semanage?
`semanage` zarządza mapowaniami polityki SELinux — etykietami, które informują jądro, co proces, plik, port lub użytkownik logujący się ma *prawo* robić. Nie zmienia samego trybu egzekwowania/permisywnego (to jest `setenforce`); zamiast tego konfiguruje trwałe mapowania używane przez politykę SELinux.
## Jak używać
1. **Wybierz obiekt**: `fcontext` (etykiety plików), `login` (mapowanie użytkownika Linux → użytkownika SELinux), `user`, `port` lub `boolean`. 2. **Wybierz akcję**: `add` (`-a`), `modify` (`-m`), `delete` (`-d`) lub `list` (`-l`). 3. **Ustal typ SELinux** (`-t`) oraz **wartość** (regular expression ścieżki, port, użytkownik itp.). 4. **Zastosuj kontekst pliku**: W przypadku zmian `fcontext`, uruchom następnie `restorecon`, aby istniejące pliki zostały ponownie oznaczone. 5. **Skopiuj i uruchom**: Dodaj na początku `sudo`.
Obiekty, działania i opcje
### `fcontext` Mapowania kontekstu pliku Powiąż regułę regex dla ścieżki z typem SELinux. Po dodaniu lub zmianie wykonaj `restorecon -Rv /path`, aby przemarkwować istniejące pliki: `semanage fcontext -a -t httpd_sys_content_t '/web(/.*)?'`.
### `login` Mapowanie użytkownika Linux → użytkownika SELinux Przypisz nazwę użytkownika w Linux (lub `__default__`) do użytkownika SELinux, np. `semanage login -a -s user_u john`.
### `user` Użytkownicy SELinux Stwórz lub zmień użytkowników SELinux oraz role, które mogą pełnić.
### `port` Mapowania portu → typu Oznacz port sieciowy, aby usługa w trybie confined mogła się do niego przyłączyć: `semanage port -a -t http_port_t -p tcp 8080`.
### `boolean` Logiki boolowskie polityki Włącz lub wyłącz określoną logikę boolowską, aby zmienić zachowanie polityki (`semanage boolean -m --on httpd_can_network_connect`).
### Działania `-a` / `-m` / `-d` / `-l` Dodaj nowe mapowanie, zmień istniejące, usuń je lub wylistuj obecne mapowania.
▶Co to jest kontekst SELinux i dlaczego jest ważny?
▶Dodałem regułę fcontext, ale httpd nadal nie może odczytać plików — dlaczego?
▶Jak mogę umożliwić usłudze odsłuchiwanie na niestandardowym porcie?
Jeśli ten tool był dla ciebie przydatny, pomyśl o tym, aby kupić mi kawę.
Kup mi kawę.