Neįmanomo tapti direktyva vykdyti komandas kaip nurodytas vartotojas

Ansible Become Directive Run Commands



Naudodami „Ansible“ galite atlikti įvairias operacijas nuotoliniuose kompiuteriuose naudodami neapdorotas komandas arba „Ansible“ žaidimo knygas. Pagal numatytuosius nustatymus „Ansible“ žaidimo knyga vykdoma nuotoliniame priegloboje kaip tas pats vartotojas „Ansible“ valdiklyje. Tai reiškia, kad jei jums reikia paleisti komandą kaip kitam nuotolinio kompiuterio naudotojui, turėsite tai aiškiai nurodyti „Ansible“ žaidimo knygoje.

Norėdami įgyvendinti komandų vykdymo funkcijas kaip kitas vartotojas, turėsite naudoti „sudo“ funkciją, kuri yra prieinama „Linux“ sistemose. „Ansible tapti“ direktyva leidžia vykdyti komandas kaip nurodytas vartotojas.







Naudotojo informacija nurodoma „Ansible“ žaidimo knygoje, naudojant kintamuosius, pvz., Tapti_pasauliu, siekiant nurodyti vartotojo „user_user“ slaptažodį ir nurodyti, kuris vartotojas gali vykdyti komandą.



Kaip atlikti neveikiančias užduotis kaip šaknis

Jei norite vykdyti konkrečią komandą kaip pagrindinį vartotoją „Ansible“, galite įgyvendinti direktyvą tapti ir nustatyti vertę „true“. Tai padarius, „Ansible“ nurodo, kad vykdant komandą diegti sudo be jokių argumentų.



Pvz., Apsvarstykite „Ansible“ vadovėlį, kuris atnaujina „MySQL“ serverio paketą ir iš naujo jį paleidžia. Įprastomis „Linux“ operacijomis, norint atlikti tokias užduotis, turėsite prisijungti kaip pagrindinis vartotojas. „Ansible“ galite tiesiog paskambinti direktyva tapti: taip, kaip parodyta žemiau:





- šeimininkai: visi

tapti:taip

užduotys:

- pavadinimas: nevartojamas bėgimaskaiproot ir atnaujinti sys

yum:

pavadinimas: mysql-server

būsena: naujausia

- vardas:

service.service:
pavadinimas: mysqld

būsena: paleista iš naujo

Aukščiau pateiktame vadovėlyje mes naudojome direktyvą „tapti“ ir nenurodėme vartotojo „user_user“, nes visos komandos pagal direktyvą tampa pagal numatytuosius nustatymus.

Tai panašu į nurodymą kaip:



- šeimininkai: visi

tapti:taip

tapti_vartotojas: šaknis

užduotys:

- pavadinimas: nevartojamas bėgimaskaiproot ir atnaujinti sys

yum:
pavadinimas: mysql-server

būsena: naujausia

- vardas: paslauga. paslauga:

pavadinimas: mysqld

būsena: paleista iš naujo

Kaip atlikti neveikiančias užduotis kaip „Sudo“

Jei norite vykdyti „Ansible“ užduotį kaip konkretus vartotojas, o ne įprastas pagrindinis vartotojas, galite naudoti „get_user“ direktyvą ir perduoti vartotojo vartotojo vardą užduočiai vykdyti. Tai panašu į komandą sudo -u naudojant „Unix“.

Jei norite įgyvendinti direktyvą „get_user“, pirmiausia turite suaktyvinti „tapti“ direktyvą, nes „get_user“ negalima naudoti be šios direktyvos.

Apsvarstykite šią žaidimų knygą, kurioje komanda vykdoma kaip niekas vartotojas.

- vardas: paleiskite akomandą kaipkitas vartotojas(niekas)
komanda:psapie

tapti:tiesa

tapti_metodu:jos

tapti_vartotojas: niekas

tapti_ vėliavomis:„-s /bin /bash“

Aukščiau pateiktame vadovėlio fragmente mes įgyvendinome direktyvas tapti, tapti naudotoju ir kitos.

  1. tapti_metodu : Tai nustato privilegijų didinimo metodą, pvz., Su arba sudo.
  2. tapti „vartotojo“ direktyva : Tai nurodo vartotojui vykdyti komandą kaip; tai nereiškia tapti: taip.
  3. tapti_ vėliavomis : Tai nustato žymes, kurios bus naudojamos nurodytoms užduotims atlikti.

Dabar galite paleisti aukščiau pateiktą vadovėlį su „ansible-playbook“ failo pavadinimu.yml ir pamatyti rezultatą patys. Jei norite atlikti užduotis su išvestimi, gali tekti įdiegti derinimo modulį.

Kaip paleisti „Ansible“ su slaptažodžiu

Jei norite paleisti direktyvą, kuriai reikia slaptažodžio, galite nurodyti „Ansible“ paprašyti slaptažodžio, kai iškviečiama nurodyta žaidimo knyga.

Pavyzdžiui, norėdami paleisti žaidimo knygą su slaptažodžiu, įveskite toliau nurodytą komandą:

ansible-playbook tapo_pas.yml-užduoti klausimą

Taip pat galite nurodyti vėliavą -K, kuri atlieka panašias operacijas kaip aukščiau pateikta komanda. Pavyzdžiui:

ansible-playbook tapo_pas.yml-TO

Kai nurodysite, vykdydami užduotis būsite paraginti įvesti slaptažodį.

PASTABA : Tapimo direktyvą taip pat galite naudoti „Ansible AD HOC“ neapdorotose komandose, naudodami vėliavą -b. Norėdami sužinoti daugiau, peržiūrėkite toliau pateiktą dokumentaciją:

https://linkfy.to/becomeDocumentation

Išvada

Perskaitę šį straipsnį, dabar turėtumėte žinoti, kaip naudoti „Ansible BECOME“ direktyvą, kad būtų galima padidinti privilegijas įvairioms užduotims atlikti.

Saugumo sumetimais geriau taikyti apribojimus įvairioms paskyroms ir aiškiai nurodyti, kada jie naudojami. Taigi privilegijų didinimas yra svarbus sudo ir su naudojimo aspektas „Ansible“.