Użytkownik powinien wygenerować pary kluczy.
Użytkownik zachowuje prywatną połowę - nigdy nie powinieneś jej widzieć. Jeśli posiadasz czyjś klucz prywatny w formie, w której możesz go odczytać / użyć, źle robisz bezpieczeństwo.
Część publiczna jest udostępniana (za pomocą dowolnego mechanizmu: formularza internetowego, wiadomości e-mail, opcji „daj mi to na płycie CD”), która ma być scentralizowana w dowolny sposób. Niektóre miejsca przechowują klucze publiczne w LDAP. Inni wypychają authorized_keys
pliki za pomocą systemu wdrażania.
W moim środowisku użytkownicy, którzy potrzebują dostępu do powłoki, dają mi swoje klucze publiczne. Te klucze są dodawane do naszego systemu LDAP i sshd
konsultują się z kluczami publicznymi wymienionymi dla każdego użytkownika w celu ich uwierzytelnienia, za pomocą łatki klucza publicznego LDAP .
Gdy ktoś musi dodać dodatkowy klucz lub odwołać istniejący klucz, informuje administratora, a my się nim zajmujemy. W końcu, kiedy skalujemy, wdrożę system, który pozwala ludziom obracać swoimi kluczami publicznymi.
Każda z naszych witryn ma parę serwerów LDAP, zsynchronizowanych z naszym serwerem głównym za pomocą replikacji LDAP, dzięki czemu dane są spójne (i dostępne) w każdej lokalizacji.
Wszystko, co opisałem, można zrobić za pomocą oprogramowania typu open source. Istnieją również produkty komercyjne, które robią to samo.
Musisz dokładniej zbadać dostępne opcje i zdecydować, które najlepiej pasują do Twojego środowiska. Jeśli masz dalsze (bardziej szczegółowe) pytania, prawdopodobnie możemy być bardziej pomocni.