Ansible Ssh-Copy-Id

Ansible Ssh Copy Id



Ansible er et gratis og åpen kildekode-automatiseringsverktøy som forenkler administrasjonen av konfigurasjon og applikasjonsdistribusjon på flere maskiner.

Ansible bruker det deklarative språket for å beskrive ønsket tilstand til systemene og håndterer automatisk oppgavene som er nødvendige for å oppnå denne tilstanden.

Ansible bruker SSH som standard tilkoblingsmetode for å koble til en målmaskin. SSH gir en sikker og kryptert kommunikasjonskanal mellom Ansible-kontrollnoden og målvertene.







Vanligvis er den vanligste metoden for å konfigurere den SSH-nøkkelbaserte autentiseringen for målverten ssh-copy-id-kommandoen. Kommandoen kopierer den offentlige nøkkelen til kontrollnoden til filen 'authorized_keys' på målverten.



Men når du konfigurerer et system for første gang, kan det hende du trenger Ansible for å gjøre det i en spillebok. Det er her Ansible-samfunnet kommer til unnsetning.



I Ansible-fellesskapet har vi tilgang til rollen ssh_id_copy som lar oss autorisere systemene for passordløs SSH-autentisering.





Denne rollen håndterer oppsettet av SSH-nøklene på den eksterne maskinen som lar oss lage en Ansible inventarfil med den eksterne maskinen. Vi kan da raskt ringe hvilken som helst Ansible-spillebok mot den eksterne maskinen.

Ansible Ssh_Copy_Id-rolle

Rollen har variabler som lar Ansible konfigurere SSH-nøklene på den eksterne verten. Slike variabler inkluderer:



Vertsnavn – Den definerer det eksterne systemet som skal kobles til (FQDN eller IP).

Brukernavn – Den spesifiserer brukernavnet som skal kobles til det eksterne systemet.

Passord – Den definerer passordet til brukernavnet for å koble til det eksterne systemet.

ssh_public_key – Den definerer den absolutte banen til den offentlige nøkkelfilen som skal konfigureres på den eksterne verten.

Havn – Den definerer SSH-porten.

Installere Ssh_Copy_Id-rollen

FORSIKTIGHET: Vi kan ikke gi gyldigheten og sikkerheten til fellesskapsdrevne roller og moduler. Vennligst kontroller og kontroller funksjonene til en rolle/modul før du bruker den i produksjon og på ekte maskiner. Ingen sikkerhet er garantert når du arbeider med trinnene som er skissert i dette innlegget.

Som nevnt er ssh_copy_id en fellesskapsgitt rolle som leveres av Ryan. Linken til depotet er gitt som følger:

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

Før vi kan bruke den, må vi sørge for at den er installert ved å kjøre følgende kommando:

$ ansible-galakse installere rywillia.ssh-copy-id

Eksempel på bruk

Når den er installert, kan vi bruke rollen i en spillebok som vist i følgende:

---
- Navn
: konfigurere passordløs ssh-autentisering på en ekstern maskin
verter
: lokal vert
bli
: ja
roller
:
- rolle
: ryankwilliams.ssh_copy_id
hvem sin
:
vertsnavn
: 172.168.112.23
brukernavn
: ubuntu
passord
: passord
ssh_public_key
: /home/debian12/.ssh/id_rsa.pub
ssh_port
: 22

Den forrige eksempelspilleboken viser hvordan du bruker rollen til å sette opp den passordløse SSH-autentiseringen, en bruker som er definert i den eksterne maskinen.

Konklusjon

I denne introduksjonsveiledningen lærte du hvordan du kan dra nytte av fellesskapsleverte roller og moduler for å konfigurere den passordløse SSH-autentiseringen på eksterne verter ved å bruke en Ansible-spillebok.