Powiedzmy, że chcę śledzić moich root
użytkowników. Każdy z nich ma unikalny klucz prywatny, a jego klucze publiczne zostały zapisane /root/.ssh/authorized_keys
.
Biorąc pod uwagę, że każdy użytkownik loguje się przy użyciu swojego unikalnego klucza, jak mogę stwierdzić w sesji BASH, który klucz został użyty do uwierzytelnienia? Próbowałem spojrzeć na zmienne środowiskowe, kiedy się loguję, ale nie widzę niczego, co koreluje moją sesję z moim kluczem publicznym.
Odpowiedzi:
Możesz dodać nazwę użytkownika do klucza publicznego
~/.ssh/authorized_keys
na serwerze i wyeksportować go jako wartość środowiska:To ustawi zmienną środowiskową REALUSER, która będzie wtedy dostępna do użycia w bash. Działa to tylko wtedy, gdy
PermitUserEnvironment
jest ustawione na true wsshd_config
źródło
~/.ssh/authorized_keys
? Nigdy o tym nie wiedziałem.man ssh
pod hasłem znajdziesz więcej informacjiAUTHORIZED_KEYS FILE FORMAT
.man sshd
aby znaleźćAUTHORIZED_KEYS FILE FORMAT
sekcję.