Kuidas kasutada tundlike andmete kaitsmiseks raamatut Ansible Vault - 10. osa


Kui kasutate rakendust Ansible, võite nõuda, et sisestate mänguraamatutesse konfidentsiaalse või salajase teabe. Siia hulka kuuluvad SSH privaat- ja avalikud võtmed, paroolid ja SSL-sertifikaadid. Nagu me juba teame, on halb tava selle tundliku teabe salvestamine arusaadavatel põhjustel lihttekstina. Seda teavet tuleb hoida luku ja võtme all, sest võime vaid ette kujutada, mis juhtuks, kui häkkerid või volitamata kasutajad selle kätte saaksid.

Õnneks pakub Ansible meile käepärase funktsiooni, mida nimetatakse Ansible Vaultiks. Nagu nimigi ütleb, aitab Ansible Vault kindlustada olulist salajast teavet, nagu oleme varem arutanud. Nagu hiljem demonstreerime, saab Ansible Vault krüptida muutujaid või isegi terveid faile ja YAML-i raamatuid. See on väga mugav ja kasutajasõbralik tööriist, mis nõuab failide krüptimisel ja dekrüpteerimisel sama parooli.

Sukeldume nüüd ja omame ülevaadet erinevatest toimingutest, mida saab teha Ansible vault'i abil.

Kuidas luua krüptitud faili rakenduses Ansible

Kui soovite luua krüptitud Playbooki faili, kasutage lihtsalt käsku ansible-vault create ja sisestage failinimi nagu näidatud.

# ansible-vault create filename

Näiteks krüptitud faili mysecrets.yml loomiseks käivitage käsk.

# ansible-vault create mysecrets.yml

Seejärel küsitakse teilt parooli ja pärast selle kinnitamist avaneb vi redaktori abil uus aken, kus saate oma näidendeid kirjutama hakata.

Allpool on näidis mõnest teabest. Kui olete lõpetanud, lihtsalt salvestage ja lahkuge mängukirjast. Ja see on krüpteeritud faili loomisel just sellest.

Faili krüptimise kontrollimiseks kasutage kassi käsku, nagu näidatud.

# cat mysecrets.yml

Kuidas vaadata krüptitud faili rakenduses Ansible

Kui soovite vaadata krüpteeritud faili, edastage lihtsalt ansible-vault view käsk, nagu allpool näidatud.

# ansible-vault view mysecrets.yml

Veelkord küsitakse teilt parooli. Jällegi on teil juurdepääs oma teabele.

Kuidas muuta krüptitud faili rakenduses Ansible

Krüptitud failis muudatuste tegemiseks kasutage ansible-vault edit käsku, nagu näidatud.

# ansible-vault edit mysecrets.yml

Nagu alati, sisestage parool ja jätkake seejärel faili muutmist.

Pärast redigeerimise lõpetamist salvestage vimiredaktor ja väljuge sellest.

Kuidas muuta kustutatava varahoidla parooli

Kui tunnete vajadust muuta Ansible vault parooli, saate seda hõlpsalt kasutada allpool näidatud käsu ansible-vault rekey abil.

# ansible-vault rekey mysecrets.yml

See küsib teilt hoidla parooli ja hiljem palutakse teil sisestada uus parool ja hiljem see kinnitada.

Krüptimata faili krüptimine rakenduses Ansible

Oletame, et soovite krüpteerida krüptimata faili, saate seda teha, käivitades ansible-vault krüptimise käsu, nagu näidatud.

# ansible-vault encrypt classified.txt

Hiljem saate faili vaadata kassi käsu abil, nagu allpool näidatud.

Krüptitud faili dekrüpteerimine

Krüptitud faili sisu vaatamiseks dekrüpteerige fail lihtsalt ansible-vault krüpteerimise abil, nagu on näidatud allpool toodud näites.

# ansible-vault decrypt classified.txt

Konkreetsete muutujate krüptimine rakenduses Ansible

Lisaks annab Ansible vault võimaluse teatud muutujaid krüptida. Selleks kasutatakse käsku ansible-vault encrypt_string, nagu näidatud.

# ansible-vault encrypt_string 

Ansible vault küsib teilt parooli ja nõuab hiljem selle kinnitamist. Järgmisena tippige stringi väärtus, mille soovite krüptida. Lõpuks vajutage klahvi ctrl+d . Seejärel võite hakata krüptitud väärtust omistama esitusraamatusse.

Seda saab saavutada ühe joonega, nagu allpool näidatud.

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

Kuidas esitusraamatu faili tööaja jooksul dekrüpteerida

Kui teil on mängukirjafail ja soovite selle käitamise ajal dekrüpteerida, kasutage valikut --ask-vault-pass , nagu illustreeritud.

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

See dekrüpteerib kõik esitusraamatus kasutatud failid tingimusel, et need krüpteeriti sama parooliga.

Parooliviip võib olla kohati tüütu. Need viited muudavad automaatika püsimatuks, eriti kui automaatika on võtmetähtsusega. Esitusraamatute dekrüpteerimise käitamise ajal sujuvamaks muutmiseks on soovitatav kasutada eraldi paroolifaili, mis sisaldab Ansible vault parooli. Seejärel saab selle faili käitamise ajal edastada, nagu näidatud.

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

Nii jõuame selle teema ja Ansible automatiseerimise sarja järelduseni. Loodame, et õpetused on andnud kasulikke teadmisi selle kohta, kuidas saate ühest kesksüsteemist mitme serveri ülesandeid automatiseerida.