Ansible Ssh-Copy-Id

Ansible Ssh Copy Id



Ansible to bezpłatne narzędzie do automatyzacji typu open source, które upraszcza zarządzanie konfiguracją i wdrażaniem aplikacji na wielu komputerach.

Ansible używa języka deklaratywnego do opisu pożądanego stanu systemów i automatycznie obsługuje zadania potrzebne do osiągnięcia tego stanu.

Ansible używa protokołu SSH jako domyślnej metody połączenia z maszyną docelową. SSH zapewnia bezpieczny i szyfrowany kanał komunikacyjny pomiędzy węzłem kontrolnym Ansible a hostami docelowymi.







Zazwyczaj najpopularniejszą metodą konfigurowania uwierzytelniania opartego na kluczu SSH dla hosta docelowego jest polecenie ssh-copy-id. Polecenie kopiuje klucz publiczny węzła kontrolnego do pliku „authorized_keys” na hoście docelowym.



Jednak podczas konfigurowania systemu po raz pierwszy może być konieczne wykonanie tej czynności za pomocą narzędzia Ansible w podręczniku. I tu z pomocą przychodzi społeczność Ansible.



W społeczności Ansible mamy dostęp do roli ssh_id_copy, która pozwala nam autoryzować systemy do uwierzytelniania SSH bez hasła.





Ta rola zajmuje się konfiguracją kluczy SSH na komputerze zdalnym, co pozwala nam utworzyć plik inwentarza Ansible na komputerze zdalnym. Następnie możemy szybko wywołać dowolny podręcznik Ansible na zdalnej maszynie.

Rola Ansible Ssh_Copy_Id

Rola zawiera zmienne, które pozwalają Ansible skonfigurować klucze SSH na zdalnym hoście. Do takich zmiennych należą:



Nazwa hosta – Definiuje system zdalny, z którym można się połączyć (FQDN lub IP).

Nazwa użytkownika – Określa nazwę użytkownika, aby połączyć się z systemem zdalnym.

Hasło – Definiuje hasło nazwy użytkownika umożliwiające połączenie się z systemem zdalnym.

ssh_public_key – Definiuje bezwzględną ścieżkę do pliku klucza publicznego do skonfigurowania na zdalnym hoście.

Port – Definiuje port SSH.

Instalowanie roli Ssh_Copy_Id

OSTROŻNOŚĆ: Nie możemy zapewnić ważności i bezpieczeństwa ról i modułów kierowanych przez społeczność. Przeprowadź audyt i weryfikację działania roli/modułu przed użyciem go w środowisku produkcyjnym i na prawdziwych maszynach. Podczas pracy z krokami opisanymi w tym poście nie gwarantuje się żadnego bezpieczeństwa.

Jak wspomniano, ssh_copy_id to rola udostępniona przez społeczność, którą zapewnia Ryan. Link do repozytorium znajduje się w następujący sposób:

https://github.com/ryankwilliams/ansible-ssh-copy-id

Zanim będziemy mogli z niego skorzystać, musimy upewnić się, że jest zainstalowany, uruchamiając następujące polecenie:

$ galaktyka ansible zainstalować rywillia.ssh-copy-id

Przykładowe użycie

Po zainstalowaniu możemy używać roli w podręczniku, jak pokazano poniżej:

---
- nazwa
: skonfiguruj uwierzytelnianie ssh bez hasła na zdalnym komputerze
zastępy niebieskie
: Lokalny Gospodarz
stać się
: Tak
role
:
- rola
: ryankwilliams.ssh_copy_id
którego
:
nazwa hosta
: 172.168.112.23
nazwa użytkownika
: Ubuntu
hasło
: hasło
ssh_public_key
: /home/debian12/.ssh/id_rsa.pub
ssh_port
: 22

W poprzednim przykładowym podręczniku pokazano, jak używać roli do konfigurowania uwierzytelniania SSH bez hasła dla użytkownika zdefiniowanego na komputerze zdalnym.

Wniosek

W tym samouczku wprowadzającym dowiesz się, jak wykorzystać role i moduły udostępnione przez społeczność do skonfigurowania uwierzytelniania SSH bez hasła na zdalnych hostach przy użyciu podręcznika Ansible.