Ansible Ssh-Copy-Id

Ansible Ssh Copy Id



Ansible är ett gratis automatiseringsverktyg med öppen källkod som förenklar hanteringen av konfiguration och applikationsdistribution på flera maskiner.

Ansible använder det deklarativa språket för att beskriva önskat systemtillstånd och hanterar automatiskt de uppgifter som behövs för att uppnå det tillståndet.

Ansible använder SSH som standardanslutningsmetod för att ansluta till en måldator. SSH tillhandahåller en säker och krypterad kommunikationskanal mellan Ansible-kontrollnoden och målvärdarna.







Vanligtvis är den vanligaste metoden för att konfigurera den SSH-nyckelbaserade autentiseringen för målvärden kommandot ssh-copy-id. Kommandot kopierar den publika nyckeln för kontrollnoden till filen 'authorized_keys' på målvärden.



Men när du konfigurerar ett system för första gången kan du behöva Ansible för att göra det i en spelbok. Det är här Ansible-gemenskapen kommer till undsättning.



I Ansible-communityt har vi tillgång till rollen ssh_id_copy som tillåter oss att auktorisera systemen för lösenordslös SSH-autentisering.





Den här rollen hanterar konfigurationen av SSH-nycklarna på fjärrmaskinen som gör att vi kan skapa en Ansible-inventeringsfil med fjärrmaskinen. Vi kan sedan snabbt anropa vilken Ansible-spelbok som helst mot fjärrmaskinen.

Ansible Ssh_Copy_Id Roll

Rollen har variabler som gör att Ansible kan konfigurera SSH-nycklarna på fjärrvärden. Sådana variabler inkluderar:



Värdnamn – Den definierar fjärrsystemet att ansluta till (FQDN eller IP).

Användarnamn – Den anger användarnamnet för att ansluta till fjärrsystemet.

Lösenord – Den definierar lösenordet för användarnamnet för att ansluta till fjärrsystemet.

ssh_public_key – Den definierar den absoluta sökvägen till den publika nyckelfilen som ska konfigureras på fjärrvärden.

Hamn – Den definierar SSH-porten.

Installerar rollen Ssh_Copy_Id

VARNING: Vi kan inte tillhandahålla giltigheten och säkerheten för gemenskapsdrivna roller och moduler. Granska och verifiera hur en roll/modul fungerar innan du använder den i produktion och på riktiga maskiner. Ingen säkerhet garanteras när du arbetar med stegen som beskrivs i detta inlägg.

Som nämnts är ssh_copy_id en roll som tillhandahålls av gemenskapen som tillhandahålls av Ryan. Länken till arkivet tillhandahålls enligt följande:

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

Innan vi kan använda det måste vi se till att det är installerat genom att köra följande kommando:

$ ansible-galax Installera rywillia.ssh-copy-id

Exempel på användning

När den väl har installerats kan vi använda rollen i en spelbok som visas i följande:

---
- namn
: konfigurera lösenordslös ssh-autentisering på en fjärrdator
värdar
: lokal värd
bli
: ja
roller
:
- roll
: ryankwilliams.ssh_copy_id
vars
:
värdnamn
: 172.168.112.23
Användarnamn
: ubuntu
Lösenord
: Lösenord
ssh_public_key
: /home/debian12/.ssh/id_rsa.pub
ssh_port
: 22

Föregående exempel på spelboken visar hur man använder rollen för att ställa in den lösenordslösa SSH-autentiseringen, en användare som är definierad i fjärrdatorn.

Slutsats

I den här inledande självstudien lärde du dig hur du kan dra fördel av roller och moduler som tillhandahålls av gemenskapen för att konfigurera den lösenordslösa SSH-autentiseringen på fjärrvärdar med hjälp av en Ansible-spelbok.