Giunsa Paggamit ang Ansible Vault sa mga Playbook aron Mapanalipdan ang Sensitibo nga Data - Bahin 10


Samtang naglakaw ka sa paggamit sa Ansible, mahimong kinahanglan nimo nga isulod ang pipila ka kompidensyal o sekreto nga kasayuran sa mga playbook. Naglakip kini sa pribado ug publiko nga mga yawe sa SSH, mga password, ug mga sertipiko sa SSL aron mahisgutan ang pipila. Sama sa nahibal-an na nato, ang dili maayo nga praktis sa pagtipig niining sensitibo nga impormasyon sa yano nga teksto alang sa klaro nga mga hinungdan. Ang kini nga kasayuran kinahanglan nga ibutang sa ilawom sa kandado ug yawe tungod kay mahanduraw ra naton kung unsa ang mahitabo kung ang mga hacker o dili awtorisado nga tiggamit makakuha niini.

Maayo na lang, ang Ansible naghatag kanamo usa ka magamit nga bahin nga nailhan nga Ansible Vault. Sama sa gisugyot sa ngalan, ang Ansible Vault makatabang sa pagsiguro sa hinungdanon nga sekreto nga kasayuran sama sa among gihisgutan sa sayo pa. Ang Ansible Vault mahimong mag-encrypt sa mga variable, o bisan ang tibuuk nga mga file ug mga playbook sa YAML sama sa among ipakita sa ulahi. Kini usa ka dali nga magamit ug magamit nga himan nga nanginahanglan parehas nga password sa pag-encrypt ug pag-decrypt sa mga file.

Mag-dive kita karon ug adunay usa ka kinatibuk-ang ideya sa lainlaing mga operasyon nga mahimo gamit ang Ansible vault.

Giunsa Paghimo ang usa ka Naka-encrypt nga File sa Ansible

Kung gusto nimo maghimo usa ka naka-encrypt nga Playbook file gamita lang ang ansible-vault nga paghimo nga mando ug ihatag ang filename sama sa gipakita.

# ansible-vault create filename

Pananglitan, sa paghimo sa usa ka encrypted file mysecrets.yml ipatuman ang sugo.

# ansible-vault create mysecrets.yml

Human niana aghaton ka alang sa usa ka password, ug pagkahuman sa pagkumpirma niini, usa ka bag-ong bintana ang magbukas gamit ang vi editor diin mahimo ka magsugod sa pagsulat sa imong mga dula.

Sa ubos usa ka sample sa pipila ka impormasyon. Kung nahuman na ka i-save ug paggawas sa playbook. Ug kana lang bahin niini kung maghimo usa ka naka-encrypt nga file.

Aron mapamatud-an ang file encryption, gamita ang cat command sama sa gipakita.

# cat mysecrets.yml

Giunsa Pagtan-aw ang usa ka Naka-encrypt nga File sa Ansible

Kung gusto nimo tan-awon ang usa ka naka-encrypt nga file, ipasa lang ang ansible-vault view command sama sa gipakita sa ubos.

# ansible-vault view mysecrets.yml

Sa makausa pa, aghaton ka alang sa usa ka password. Sa makausa pa, ikaw adunay access sa imong impormasyon.

Giunsa ang Pag-edit sa usa ka Naka-encrypt nga File sa Ansible

Aron makahimo og mga kausaban sa usa ka naka-encrypt nga file gamita ang ansible-vault edit nga sugo sama sa gipakita.

# ansible-vault edit mysecrets.yml

Sama sa kanunay, ihatag ang password ug pagkahuman ipadayon ang pag-edit sa file.

Human nimo mahuman ang pag-edit, i-save ug exit ang vim editor.

Giunsa Pagbag-o ang Ansible Vault Password

Kung gibati nimo nga kinahanglan nimo usbon ang password sa Ansible vault, dali nimo kini mahimo gamit ang ansible-vault rekey nga mando sama sa gipakita sa ubos.

# ansible-vault rekey mysecrets.yml

Kini nag-aghat kanimo alang sa password sa vault ug sa ulahi naghangyo kanimo sa pagsulod sa bag-ong password ug sa ulahi kumpirmahi kini.

Giunsa ang Pag-encrypt sa usa ka Wala Naka-encrypt nga File sa Ansible

Ibutang ta nga gusto nimong i-encrypt ang usa ka wala ma-encrypt nga file, mahimo nimo kini pinaagi sa pagpadagan sa ansible-vault encrypt nga mando sama sa gipakita.

# ansible-vault encrypt classified.txt

Mahimo nimong tan-awon sa ulahi ang file gamit ang cat command sama sa gipakita sa ubos.

Giunsa ang Pag-decrypt sa usa ka Naka-encrypt nga File

Aron matan-aw ang mga sulod sa usa ka naka-encrypt nga file, i-decrypt lang ang file gamit ang ansible-vault encrypt sama sa gihulagway sa panig-ingnan sa ubos.

# ansible-vault decrypt classified.txt

Giunsa ang Pag-encrypt sa Piho nga mga Variable sa Ansible

Dugang pa, ang Ansible vault naghatag kanimo og abilidad sa pag-encrypt sa pipila ka mga variable. Gihimo kini gamit ang ansible-vault encrypt_string command sama sa gipakita.

# ansible-vault encrypt_string 

Ang ansible vault moaghat kanimo alang sa password ug sa ulahi kinahanglan nimo nga kumpirmahon kini. Sunod, i-type ang kantidad sa string nga gusto nimong i-encrypt. Sa katapusan, pindota ang ctrl+d. Pagkahuman, mahimo nimong sugdan ang pag-assign sa naka-encrypt nga kantidad sa usa ka playbook.

Mahimo kini nga makab-ot sa usa ka linya sama sa gipakita sa ubos.

# ansible-vault encrypt_string 'string' --name 'variable_name'

Giunsa ang Pag-decrypt sa usa ka File sa Playbook Panahon sa Runtime

Kung naa kay playbook file ug gusto nimo nga i-decrypt kini panahon sa runtime, gamita ang --ask-vault-pass nga opsyon sama sa gihulagway.

# ansible-playbook deploy.yml --ask-vault-pass

Gi-decrypt niini ang tanan nga mga file nga gigamit sa playbook basta na-encrypt sila gamit ang parehas nga password.

Ang mga pag-aghat sa password mahimong makalagot usahay. Kini nga mga pag-aghat naghimo sa automation nga dili mahimo, labi na kung ang automation mao ang yawe. Aron mapahapsay ang proseso sa pag-decrypt sa mga playbook sa panahon sa pagdagan, girekomenda nga adunay usa ka bulag nga file sa password nga adunay sulud nga password sa Ansible vault. Mahimong mapasa kini nga file sa panahon sa runtime sama sa gipakita.

# ansible-playbook deploy.yml --vault-password-file  /home/tecmint/vault_pass.txt

Kini nagdala kanato sa pagtapos sa kini nga hilisgutan ug ang serye sa Ansible automation. Naglaum kami nga ang mga panudlo naghatag pipila ka mapuslanon nga kahibalo kung giunsa nimo ma-automate ang mga buluhaton sa daghang mga server gikan sa usa ka sentral nga sistema.