Preferowany sposób tworzenia chroot podczas chrootowania podzbioru użytkowników podczas logowania za pomocą SSH?

2

Używając libpam-chroot można dość łatwo chrootować podzbiór użytkowników na podstawie nazwy użytkownika, gdy użytkownik loguje się za pomocą SSH.

Jaki jest dobry sposób na utworzenie tej konfiguracji chroot i libpam-chroot. Jednym z moich celów jest to, że użytkownicy chrootowani są znani tylko w środowisku chroot (bez haseł ani w ogóle nie będą przechowywane poza chroot). W mojej poprzedniej konfiguracji musiałem ręcznie aktualizować hasła użytkowników między /etc/shadowa /var/my_chroot/etc/shadow. czy to możliwe?

A może istnieje zupełnie inny sposób na osiągnięcie tego rodzaju podsystemu bez potrzeby posiadania zupełnie innego (wirtualnego) komputera (nie mam do zaoferowania żadnego dodatkowego sprzętu i mam tylko 1 interfejs sieciowy)? Czy w końcu wirtualizacja jest prawidłową odpowiedzią?

Joni
źródło

Odpowiedzi:

2

Upewnij się, że masz UsePAM yesw /etc/ssh/sshd_config, i skonfigurować moduł PAM, który odczytuje z bazy danych użytkownika z miejsca wewnątrz chroot. Nie ma łatwego sposobu, aby pam_unixodczytać różne pliki passwdi shadowpliki, ale możesz pam_ldapzamiast tego użyć i uruchomić serwer LDAP wewnątrz chroot (lub nawet lepiej, poza chroot, przechowując jego dane gdzieś pod /var).

To, czy użyć wirtualizacji, zależy od tego, czego oczekujesz od chrootowania. Nie zapewnia większego bezpieczeństwa przeciwko użytkownikowi z dostępem do powłoki. Na przykład lokalny otwór główny zapewnia pełny dostęp do całej maszyny; lokalni użytkownicy mogą węszyć poza chrootem, zaglądając do środka /proc; porty sieciowe używane wewnątrz chroot nie są dostępne na zewnątrz; ...

Gilles
źródło