Ansible Ssh-Copy-Id

Ansible Ssh Copy Id



Ansible és una eina d'automatització gratuïta i de codi obert que simplifica la gestió de la configuració i el desplegament d'aplicacions en diverses màquines.

Ansible utilitza el llenguatge declaratiu per descriure l'estat desitjat dels sistemes i gestiona automàticament les tasques necessàries per aconseguir aquest estat.

Ansible utilitza SSH com a mètode de connexió predeterminat per connectar-se a una màquina de destinació. SSH proporciona un canal de comunicació segur i xifrat entre el node de control Ansible i els amfitrions de destinació.







Normalment, el mètode més comú per configurar l'autenticació basada en clau SSH per a l'amfitrió de destinació és l'ordre ssh-copy-id. L'ordre copia la clau pública del node de control al fitxer 'authorized_keys' de l'amfitrió de destinació.



Tanmateix, quan configureu un sistema per primera vegada, és possible que necessiteu que Ansible ho faci en un llibre de jocs. Aquí és on la comunitat Ansible ve al rescat.



A la comunitat Ansible, tenim accés al rol ssh_id_copy que ens permet autoritzar els sistemes per a l'autenticació SSH sense contrasenya.





Aquesta funció gestiona la configuració de les claus SSH a la màquina remota, cosa que ens permet crear un fitxer d'inventari Ansible amb la màquina remota. Aleshores podem trucar ràpidament a qualsevol llibre de jugades d'Ansible contra la màquina remota.

Funció Ansible Ssh_Copy_Id

El rol té variables que permeten a Ansible configurar les claus SSH a l'amfitrió remot. Aquestes variables inclouen:



Nom d'amfitrió – Defineix el sistema remot al qual connectar-se (FQDN o IP).

Nom d'usuari – Especifica el nom d'usuari per connectar-se al sistema remot.

Contrasenya – Defineix la contrasenya del nom d'usuari per connectar-se al sistema remot.

ssh_clau_pública – Defineix la ruta absoluta al fitxer de clau pública per configurar-lo a l'amfitrió remot.

Port – Defineix el port SSH.

Instal·lació de la funció Ssh_Copy_Id

PRECAUCIÓ: No podem oferir la validesa i la seguretat dels rols i mòduls impulsats per la comunitat. Si us plau, auditeu i verifiqueu el funcionament d'un rol/mòdul abans d'utilitzar-lo en producció i en màquines reals. No es garanteix cap seguretat quan es treballa amb els passos que es descriuen en aquesta publicació.

Com s'ha esmentat, ssh_copy_id és una funció proporcionada per la comunitat que proporciona Ryan. L'enllaç al repositori es proporciona de la següent manera:

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

Abans de poder utilitzar-lo, hem d'assegurar-nos que està instal·lat executant l'ordre següent:

$ galàxia ansible instal·lar rywillia.ssh-copy-id

Exemple d'ús

Un cop instal·lat, podem utilitzar el rol en un llibre de jugades tal com es mostra a continuació:

---
- nom
: configurar l'autenticació ssh sense contrasenya en una màquina remota
amfitrions
: localhost
convertir-se en
:
rols
:
- rol
: ryankwilliams.ssh_copy_id
de qui
:
nom d'amfitrió
: 172.168.112.23
nom d'usuari
: ubuntu
contrasenya
: contrasenya
ssh_clau_pública
: /home/debian12/.ssh/id_rsa.pub
ssh_port
: 22

L'exemple anterior mostra com utilitzar la funció per configurar l'autenticació SSH sense contrasenya, un usuari que es defineix a la màquina remota.

Conclusió

En aquest tutorial introductori, heu après com podeu aprofitar els rols i els mòduls proporcionats per la comunitat per configurar l'autenticació SSH sense contrasenya en amfitrions remots mitjançant un llibre de jocs Ansible.