Chciałbym wiedzieć, jakie są najlepsze podejścia do śledzenia działań administratora w środowisku Linux.
W szczególności szukam tych funkcji:
- A) Rejestrowanie naciśnięć klawiszy na bezpiecznym serwerze syslog
- B) Możliwość odtworzenia sesji powłoki (coś w rodzaju skryptu)
- C) Idealnie byłoby to obejście niemożliwe (lub dość trudne) bez fizycznego dostępu do serwera.
Pomyśl o tym z perspektywy bezpieczeństwa / audytu, w środowisku, w którym różni administratorzy (lub nawet osoby trzecie) muszą mieć możliwość wykonywania uprzywilejowanych operacji na serwerze.
Każdy administrator miałby swoje własne konto nominalne, a każda sesja interaktywna powinna być w pełni zalogowana, z możliwością odtworzenia go w razie potrzeby (na przykład, jeśli ktoś użył mc do usunięcia lub zmiany krytycznych plików, nie wystarczy wiedzieć, że ta osoba wydała polecenie mc; musi istnieć sposób, aby zobaczyć dokładnie, co zrobiono po uruchomieniu mc).
Dodatkowe uwagi :
- Jak zauważył womble, najlepszą opcją może być nie logowanie ludzi z uprawnieniami administratora do dokonywania zmian na serwerach, ale zamiast tego poprzez system zarządzania konfiguracją. Załóżmy więc , że nie mamy takiego systemu i musimy przyznać dostęp na poziomie administratora różnym osobom na tym samym serwerze .
- Nie jestem zainteresowany tym, by robić to w ukryciu: każda osoba logująca się do serwera z uprawnieniami roota byłaby w pełni świadoma, że sesja zostanie nagrana (w taki sam sposób, na przykład, że operatorzy call center wiedzą, że ich rozmowy są nagrywane)
- Nikt nie używałby ogólnego konta administratora („root”)
- Jestem świadomy ttyrpld i wydaje się, że robi to, czego szukam. Ale zanim przejdę w ten sposób, chciałbym wiedzieć, czy można to rozwiązać za pomocą niezmodyfikowanego jądra. Chcę wiedzieć, czy istnieją jakieś narzędzia dla Debiana (lub ogólnie Linuksa), które pozwalają na pełną kontrolę kont superużytkowników bez łatania powłoki lub jądra.