Synlig

Ansible Become-direktivet til at køre kommandoer som specificeret bruger

Ansible Become-direktivet til at køre kommandoer som specificeret bruger

Ved hjælp af Ansible kan du udføre forskellige handlinger på eksterne maskiner ved hjælp af rå kommandoer eller Ansible playbooks. Som standard udføres en Ansible playbook på den eksterne vært som den samme bruger på Ansible-controlleren. Det betyder, at hvis du har brug for at køre en kommando som en anden bruger på den eksterne maskine, skal du angive den eksplicit i din Ansible playbook.

For at implementere funktionaliteten ved kørende kommandoer som en anden bruger skal du bruge sudo-funktionen, der er tilgængelig i Linux-systemer. Ansible bliver-direktivet giver dig mulighed for at køre kommandoer som den angivne bruger.

Brugerens oplysninger er specificeret i en Ansible playbook ved hjælp af blive-variablerne, såsom become_pass, for at angive adgangskoden til brugeren bliver_bruger samt hvilken bruger, der kan køre kommandoen.

Sådan køres anvendelige opgaver som rod

For at køre en bestemt kommando som rodbruger i Ansible kan du implementere direktivet blive og indstille værdien til 'sand.'At gøre dette fortæller Ansible at implementere sudo uden argumenter, når du kører kommandoen.

Overvej f.eks. En Ansible playbook, der opdaterer MySQL-serverpakken og derefter genstarter den. Under normale Linux-operationer skal du logge ind som rodbruger for at udføre sådanne opgaver. I Ansible kan du blot kalde direktivet om at blive: ja, som vist nedenfor:

- værter: alle
blive: ja
opgaver:
- navn: Ansible køres som root og opdater sys
yum:
navn: mysql-server
tilstand: seneste
- navn:
service.service:
navn: mysqld
tilstand: genstartet

I ovenstående playbook brugte vi bliver direktivet og specificerede ikke brugeren bruger, da alle kommandoer under direktivet køres som root som standard.

Dette svarer til at specificere det som:

- værter: alle
blive: ja
bliver_bruger: rod
opgaver:
- navn: Ansible køres som root og opdater sys
yum:
navn: mysql-server
tilstand: seneste
- navn: service.service:
navn: mysqld
tilstand: genstartet

Sådan køres brugbare opgaver som Sudo

For at køre en Ansible-opgave som en bestemt bruger i stedet for den normale root-bruger, kan du bruge become_user-direktivet og videregive brugerens brugernavn til at udføre opgaven. Dette er ligesom at bruge kommandoen sudo -u i Unix.

For at implementere bliver_brugerdirektivet skal du først aktivere bliver direktivet, da bliver_bruger er ubrugelig uden dette direktiv aktiveret.

Overvej følgende playbook, hvor kommandoen køres som ingen bruger.

- navn: Kør en kommando som en anden bruger (ingen)
kommando: ps aux
blive: sandt
blive_metode: su
bliver_bruger: ingen
bliver_flags: '-s / bin / bash'

I ovenstående playbook-uddrag implementerede vi word, become_user og andre bliver direktiver.

  1. blive_metode: Dette indstiller metode til optrapning af privilegier, såsom su eller sudo.
  2. bliver_brugerdirektiv: Dette specificerer brugeren til at køre kommandoen som; dette betyder ikke at blive: ja.
  3. bliver_flag: Dette indstiller de flag, der skal bruges til den angivne opgave.

Du kan nu køre ovenstående playbook med ansible-playbook-filnavnet.yml og se resultatet selv. For opgaver med output skal du muligvis implementere fejlretningsmodulet.

Sådan køres Ansible bliver med adgangskode

For at køre et direktiv, der kræver en adgangskode, kan du bede Ansible om at bede om en adgangskode, når du påberåber den angivne playbook.

For eksempel for at køre en playbook med en adgangskode skal du indtaste kommandoen nedenfor:

ansible-playbook bliver_pass.yml --spørg-blive-pass

Du kan også angive -K-flag, som udfører lignende operationer som ovenstående kommando. For eksempel:

ansible-playbook bliver_pass.yml -K

Når det er angivet, bliver du bedt om en adgangskode, når opgaverne udføres.

BEMÆRK: Du kan også bruge bliver direktivet i Ansible AD HOC rå kommandoer ved hjælp af -b flag. For at lære mere, se dokumentationen nedenfor:

https: // linkfy.til / blive Dokumentation

Konklusion

Efter at have læst denne artikel, skal du nu vide, hvordan du bruger Ansible BECOME-direktivet til at udføre rettighedsforøgelse til forskellige opgaver.

Af sikkerhedsmæssige årsager er det bedre at implementere begrænsninger for forskellige konti og udtrykkeligt angive, hvornår de bruges. Så eskalering af privilegier er et vigtigt aspekt ved brug af sudo og su i Ansible.

Mus Efterlig museklik ved at svæve ved hjælp af Clickless Mouse i Windows 10
Efterlig museklik ved at svæve ved hjælp af Clickless Mouse i Windows 10
Brug af en mus eller et tastatur i den forkerte kropsholdning af overdreven brug kan resultere i mange sundhedsmæssige problemer, herunder stamme, kar...
Mus Føj musbevægelser til Windows 10 ved hjælp af disse gratis værktøjer
Føj musbevægelser til Windows 10 ved hjælp af disse gratis værktøjer
I de senere år har computere og operativsystemer udviklet sig meget. Der var et tidspunkt, hvor brugerne skulle bruge kommandoer til at navigere genne...
Mus Styr og administrer musebevægelse mellem flere skærme i Windows 10
Styr og administrer musebevægelse mellem flere skærme i Windows 10
Dual Display Mouse Manager lader dig kontrollere og konfigurere musebevægelse mellem flere skærme ved at bremse dens bevægelser nær grænsen. Windows 1...