SELinux: Security context

Kontekst bezpieczeństwa

Kontekst bezpieczeństwa to prawdopodobnie najważniejsza funkcja SELinux. Pamiętajcie o LIDS i DG ds. Bezpieczeństwa. Kiedy identyfikowaliśmy tam podmioty i przedmioty, identyfikowaliśmy je na podstawie ścieżki do nich. To znaczy, jeśli były to pliki. Np. /usr/bin/mc. SELinux tego nie używa i to dobrze. Jest to jedna z jego cech jakościowych. Zamiast tego Linux implementuje coś, co nazywa się kontekstem bezpieczeństwa.

Pomyśl o kontekście bezpieczeństwa jako o zestawie pięciu właściwości, które są gdzieś przechowywane. Kiedy musisz powiedzieć, że chcesz taki a taki obiekt, w SELinux nie jest on identyfikowany na podstawie ścieżki, ale kontekstu. Pytanie brzmi: gdzie przechowywany jest ten kontekst? Znajduje się bezpośrednio w i-węźle pliku - w wewnętrznej strukturze danych pliku. Oznacza to, że każdy plik ma np. właściciela, więc przechowuje informacje, jaki jest kontekst bezpieczeństwa.

Ale wynika z tego, że nie można przechowywać SELinuksa na wszystkich systemach plików, jakie przychodzą na myśl, ponieważ muszą one być w stanie przechowywać rozszerzone atrybuty i-węzłów. Musisz użyć systemu plików, który może go przechowywać. ext2, ext3, ext4, xfs. Ale na przykład. RiserFS nie może domyślnie robić tych rzeczy.

Co zawiera kontekst bezpieczeństwa?

Kontekst bezpieczeństwa należy do wszystkich, którzy uczestniczą w polityce bezpieczeństwa, np.:

Oznaczanie cząstek

Jeśli integrujesz SELinux z istniejącymi systemami, postępujemy w następujący sposób. Kiedy uruchamiasz SELinux po raz pierwszy, musisz wykonać tak zwane oznaczanie, podczas którego zgodnie z pewnymi regułami kontekst bezpieczeństwa jest automatycznie przypisywany do każdego i-węzła w systemie plików, który został utworzony przed instalacją SELinux. Po uruchomieniu SELinux kontekst bezpieczeństwa zostanie przypisany zgodnie z ustawionymi przez Ciebie regułami.

Marián Knězek