Muszę skonfigurować sesje ssh między dwoma serwerami i nie chcę, aby skrypt wypełniał nazwę użytkownika i hasło za każdym razem.
Jednak nie mogę się dowiedzieć, skąd serwer SSH korzysta z konfiguracji.
bash-2.05# ssh -V
Sun_SSH_1.1, SSH protocols 1.5/2.0, OpenSSL 0x0090700f
Mam plik z plikami certyfikatów w / etc / ssh / i ~ / .ssh /. Mogę znaleźć tylko jeden plik konfiguracyjny dla SSH i znajduje się on w / etc / ssh / ssh_config, ale nie zawiera danych (wszystko jest zakomentowane).
Czy ktoś wie, jak mogę dowiedzieć się, gdzie jest przechowywany certyfikat lub w jaki sposób mogę go wyeksportować, aby przenieść go na inny serwer? Miałem nadzieję, że pliki konfiguracyjne dadzą mi odpowiedź, ale nie zapewniają żadnej pomocy.
źródło
Musisz znaleźć klucz publiczny ssh dla użytkownika, który będzie użytkownikiem logowania dla skryptu.
Na przykład, jeśli mam serwer A i serwer B, zrobiłbym następujące.
następnie zrób coś podobnego na ServerB
Następnie na serwerze A wciśnij klucz publiczny użytkownika scriptrunner serwera B do
/home/scriptrunner/.ssh/authorized_keys
i postępuj odwrotnie na serwerze B (używając użytkownika scriptrunner serwera A w kluczach autoryzowanych
/home/scriptrunner/.ssh/authorized_keys
na serwerze B)Następnie powinieneś być w stanie zrobić
ssh scriptrunner@serverA
z serwera B za pomocą klucza i odwrotnie.Możesz także użyć
ssh-copy-id
do wykonania klucza autoryzowanego_klucza.źródło
Aby ustanowić połączenie ssh z uwierzytelnianiem klucza publicznego, użytkownik inicjujący połączenie musi mieć parę kluczy publiczny / prywatny. W wielu dystrybucjach linuksowych klucze te nie są generowane domyślnie i muszą zostać wygenerowane przez samego użytkownika (lub przez administratora w ich imieniu).
Jeśli jesteś zalogowany jako odpowiedni użytkownik, przejdź do katalogu domowego i uruchom
Zaakceptuj wszystkie wartości domyślne, a nowa para kluczy zostanie utworzona w plikach ~ / .ssh / id_rsa i ~ / .ssh / id_rsa.pub. Teraz skopiuj klucz publiczny i wklej go do pliku ~ / .ssh / Author_keys konta użytkownika docelowego na komputerze docelowym. Następnie włącz uwierzytelnianie za pomocą klucza publicznego na komputerze docelowym (w / etc / ssh / sshd_config) i powinieneś już iść.
UWAGA : istnieje wiele możliwych pułapek w tym procesie, gdy robisz to po raz pierwszy. Wszystkie uprawnienia muszą być poprawne, a pliki muszą znajdować się we właściwych miejscach. Prawdopodobnie najlepiej jest postępować zgodnie z instrukcją podobną do tej .
źródło