ວິທີການໃຊ້ Vault ທີ່ສາມາດໃຊ້ໄດ້ໃນ Playbook ເພື່ອປົກປ້ອງຂໍ້ມູນທີ່ລະອຽດອ່ອນ - ພາກທີ 10


ໃນຂະນະທີ່ທ່ານໄປ ນຳ ໃຊ້ Ansible, ທ່ານອາດຈະ ຈຳ ເປັນຕ້ອງໄດ້ເອົາຂໍ້ມູນລັບຫຼືບາງຂໍ້ມູນລັບໃນ Playbook. ນີ້ປະກອບມີຄີເອກະຊົນແລະລະຫັດສາທາລະນະຂອງ SSH, ລະຫັດຜ່ານແລະໃບຢັ້ງຢືນ SSL ເພື່ອກ່າວເຖິງພຽງແຕ່ສອງສາມຂໍ້ເທົ່ານັ້ນ. ດັ່ງທີ່ພວກເຮົາຮູ້ມາແລ້ວ, ການປະຕິບັດທີ່ບໍ່ດີຂອງມັນໃນການບັນທຶກຂໍ້ມູນທີ່ລະອຽດອ່ອນນີ້ໃນຂໍ້ຄວາມ ທຳ ມະດາຍ້ອນເຫດຜົນທີ່ຈະແຈ້ງ. ຂໍ້ມູນນີ້ຮຽກຮ້ອງໃຫ້ເກັບຮັກສາໄວ້ພາຍໃຕ້ການລັອກແລະກຸນແຈເພາະວ່າພວກເຮົາພຽງແຕ່ສາມາດຈິນຕະນາການວ່າຈະມີຫຍັງເກີດຂື້ນຖ້າແຮັກເກີ້ຫລືຜູ້ໃຊ້ທີ່ບໍ່ໄດ້ຮັບອະນຸຍາດໄດ້ຮັບຂໍ້ມູນໄວ້.

ໂຊກດີທີ່ Ansible ໃຫ້ພວກເຮົາມີຄຸນລັກສະນະທີ່ເປັນປະໂຫຍດທີ່ຮູ້ຈັກກັນໃນນາມ Ansible Vault. ໃນຖານະເປັນຊື່ຊີ້ໃຫ້ເຫັນ, Ansault Vault ຊ່ວຍໃຫ້ຮັບປະກັນຂໍ້ມູນລັບທີ່ ສຳ ຄັນດັ່ງທີ່ພວກເຮົາໄດ້ກ່າວມາກ່ອນ ໜ້າ ນີ້. Ansault Vault ສາມາດເຂົ້າລະຫັດຕົວແປຕ່າງໆ, ຫຼືແມ່ນແຕ່ເອກະສານທັງ ໝົດ ແລະ YAML playbook ດັ່ງທີ່ພວກເຮົາຈະສະແດງຕໍ່ມາ ມັນເປັນເຄື່ອງມືທີ່ໃຊ້ງ່າຍແລະເປັນມິດກັບຜູ້ໃຊ້ທີ່ຕ້ອງການລະຫັດລັບດຽວກັນເມື່ອເຂົ້າລະຫັດແລະຖອດລະຫັດເອກະສານ.

ຕອນນີ້ໃຫ້ ດຳ ນ້ ຳ ເຂົ້າເບິ່ງແລະມີພາບລວມຂອງການ ດຳ ເນີນງານຕ່າງໆທີ່ສາມາດ ດຳ ເນີນການໄດ້ໂດຍໃຊ້ Ansult vault.

ວິທີການສ້າງເອກະສານທີ່ຖືກເຂົ້າລະຫັດເປັນ ຄຳ ຕອບ

ຖ້າທ່ານຕ້ອງການສ້າງເອກະສານ Playbook ທີ່ເຂົ້າລະຫັດ, ພຽງແຕ່ໃຊ້ ຄຳ ສັ່ງສ້າງທີ່ສາມາດຕອບສະ ໜອງ ໄດ້ແລະໃຫ້ຊື່ແຟ້ມດັ່ງທີ່ສະແດງໄວ້.

# ansible-vault create filename

ຕົວຢ່າງ, ເພື່ອສ້າງເອກະສານເຂົ້າລະຫັດ mysecrets.yml ປະຕິບັດ ຄຳ ສັ່ງ.

# ansible-vault create mysecrets.yml

ຫຼັງຈາກນັ້ນທ່ານຈະໄດ້ຮັບການກະຕຸ້ນລະຫັດຜ່ານ, ແລະຫຼັງຈາກຢືນຢັນມັນແລ້ວ, ປ່ອງຢ້ຽມ ໃໝ່ ຈະເປີດໂດຍໃຊ້ຕົວແກ້ໄຂ vi ບ່ອນທີ່ທ່ານສາມາດເລີ່ມຕົ້ນຂຽນບົດລະຄອນຂອງທ່ານ.

ຂ້າງລຸ່ມນີ້ແມ່ນຕົວຢ່າງຂອງບາງຂໍ້ມູນ. ເມື່ອທ່ານເຮັດແລ້ວກໍ່ພຽງແຕ່ບັນທຶກແລະອອກຈາກປື້ມຫຼີ້ນ. ແລະມັນກ່ຽວກັບມັນເມື່ອສ້າງເອກະສານທີ່ເຂົ້າລະຫັດ.

ເພື່ອກວດສອບການເຂົ້າລະຫັດເອກະສານ, ໃຫ້ໃຊ້ ຄຳ ສັ່ງແມວດັ່ງທີ່ສະແດງໄວ້.

# cat mysecrets.yml

ວິທີການເບິ່ງແຟ້ມເອກະສານທີ່ຖືກເຂົ້າລະຫັດເປັນ ຄຳ ຕອບ

ຖ້າທ່ານຕ້ອງການເບິ່ງເອກະສານທີ່ເຂົ້າລະຫັດ, ພຽງແຕ່ສົ່ງ ຄຳ ສັ່ງເບິ່ງທີ່ສາມາດຕອບຮັບໄດ້ຕາມຮູບຂ້າງລຸ່ມ.

# ansible-vault view mysecrets.yml

ອີກຄັ້ງ ໜຶ່ງ, ທ່ານຈະຖືກຖາມໃຫ້ໃສ່ລະຫັດຜ່ານ. ອີກເທື່ອ ໜຶ່ງ, ທ່ານຈະສາມາດເຂົ້າເຖິງຂໍ້ມູນຂອງທ່ານ.

ວິທີການແກ້ໄຂເອກະສານທີ່ຖືກເຂົ້າລະຫັດເປັນ ຄຳ ຕອບ

ເພື່ອເຮັດການປ່ຽນແປງເອກະສານເຂົ້າລະຫັດໃຊ້ ຄຳ ສັ່ງດັດແກ້ທີ່ສາມາດຕອບສະ ໜອງ ໄດ້ດັ່ງທີ່ເຫັນ.

# ansible-vault edit mysecrets.yml

ຕາມປົກກະຕິ, ໃຫ້ລະຫັດຜ່ານແລະຫຼັງຈາກນັ້ນສືບຕໍ່ແກ້ໄຂເອກະສານ.

ຫຼັງຈາກທີ່ທ່ານ ສຳ ເລັດການດັດແກ້, ບັນທຶກແລະອອກຈາກບັນນາທິການ vim.

ວິທີການປ່ຽນລະຫັດຜ່ານ Vault ທີ່ຖືກຕ້ອງ

ໃນກໍລະນີທີ່ທ່ານຮູ້ສຶກວ່າຕ້ອງການປ່ຽນລະຫັດລັບຂອງ Ansible vault, ທ່ານສາມາດເຮັດໄດ້ງ່າຍໂດຍໃຊ້ ຄຳ ສັ່ງ rekey-ansult-vault rekey ຕາມຮູບຂ້າງລຸ່ມນີ້.

# ansible-vault rekey mysecrets.yml

ສິ່ງນີ້ກະຕຸ້ນທ່ານ ສຳ ລັບລະຫັດລັບ vault ແລະຕໍ່ມາຮຽກຮ້ອງໃຫ້ທ່ານໃສ່ລະຫັດລັບ ໃໝ່ ແລະຕໍ່ມາກໍ່ຢືນຢັນມັນ.

ວິທີການເຂົ້າລະຫັດເອກະສານທີ່ບໍ່ເຂົ້າລະຫັດເປັນທີ່ຕອບໄດ້

ສົມມຸດວ່າທ່ານຕ້ອງການທີ່ຈະເຂົ້າລະຫັດເອກະສານທີ່ບໍ່ເຂົ້າລະຫັດ, ທ່ານສາມາດເຮັດໄດ້ໂດຍການເຮັດ ຄຳ ສັ່ງການເຂົ້າລະຫັດທີ່ສາມາດຕອບສະ ໜອງ ໄດ້ດັ່ງທີ່ສະແດງໄວ້.

# ansible-vault encrypt classified.txt

ຕໍ່ມາທ່ານສາມາດເບິ່ງເອກະສານໂດຍໃຊ້ ຄຳ ສັ່ງແມວດັ່ງທີ່ລະບຸໄວ້ຂ້າງລຸ່ມ.

ວິທີການຖອດລະຫັດເອກະສານທີ່ເຂົ້າລະຫັດ

ເພື່ອເບິ່ງເນື້ອໃນຂອງເອກະສານທີ່ເຂົ້າລະຫັດ, ພຽງແຕ່ຖອດລະຫັດເອກະສານໂດຍໃຊ້ encryption-ansult-vault ທີ່ສະແດງຢູ່ໃນຕົວຢ່າງຂ້າງລຸ່ມນີ້.

# ansible-vault decrypt classified.txt

ວິທີການເຂົ້າລະຫັດຕົວປ່ຽນສະເພາະໃນ ຄຳ ຕອບ

ນອກຈາກນັ້ນ, Ansult vault ຊ່ວຍໃຫ້ທ່ານມີຄວາມສາມາດໃນການເຂົ້າລະຫັດຕົວແປບາງຢ່າງ. ນີ້ແມ່ນເຮັດໄດ້ໂດຍໃຊ້ຄໍາສັ່ງທີ່ສາມາດຕອບສະ ໜອງ ໄດ້ໂດຍສະແດງໃຫ້ເຫັນ.

# ansible-vault encrypt_string 

vault ທີ່ຕອບໄດ້ຈະກະຕຸ້ນທ່ານ ສຳ ລັບລະຫັດຜ່ານແລະຕໍ່ມາຮຽກຮ້ອງໃຫ້ທ່ານຢືນຢັນມັນ. ຕໍ່ໄປ, ພິມຄ່າສາຍທີ່ທ່ານຕ້ອງການເຂົ້າລະຫັດ. ສຸດທ້າຍ, ກົດ ctrl + d . ຫລັງຈາກນັ້ນ, ທ່ານສາມາດເລີ່ມການມອບ ໝາຍ ຄ່າທີ່ຖືກເຂົ້າລະຫັດໄວ້ໃນປື້ມຫຼີ້ນ.

ນີ້ສາມາດບັນລຸໄດ້ໃນເສັ້ນດຽວທີ່ສະແດງຢູ່ຂ້າງລຸ່ມ.

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

ວິທີການຖອດລະຫັດເອກະສານ Playbook ໃນລະຫວ່າງເວລາແລ່ນ

ຖ້າທ່ານມີໄຟລ໌ຫຼິ້ນແລະຕ້ອງການຖອດລະຫັດມັນໃນລະຫວ່າງເວລາແລ່ນ, ໃຫ້ໃຊ້ຕົວເລືອກ --ask-vault-pass ດັ່ງທີ່ໄດ້ສະແດງໄວ້.

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

ນີ້ຖອດລະຫັດແຟ້ມເອກະສານທັງ ໝົດ ທີ່ໃຊ້ໃນ playbook ໄດ້ສະ ໜອງ ໃຫ້ພວກເຂົາຖືກເຂົ້າລະຫັດໂດຍໃຊ້ລະຫັດຜ່ານດຽວກັນ.

ລະຫັດຜ່ານຂອງລະຫັດຜ່ານສາມາດເປັນສິ່ງທີ່ຫນ້າຮໍາຄານໃນບາງຄັ້ງ. ການກະຕຸ້ນເຫລົ່ານີ້ເຮັດໃຫ້ເຄື່ອງຈັກອັດຕະໂນມັດບໍ່ສາມາດປະຕິບັດໄດ້, ໂດຍສະເພາະໃນເວລາທີ່ອັດຕະໂນມັດແມ່ນກຸນແຈ. ເພື່ອປັບປຸງຂັ້ນຕອນຂອງການຖອດລະຫັດປື້ມຫຼິ້ນໃນລະຫວ່າງເວລາແລ່ນ, ແນະ ນຳ ໃຫ້ມີເອກະສານລະຫັດລັບແຍກຕ່າງຫາກເຊິ່ງມີລະຫັດລັບຂອງ Ansible vault. ໄຟລ໌ນີ້ສາມາດຖືກສົ່ງຜ່ານໃນລະຫວ່າງເວລາແລ່ນຕາມທີ່ສະແດງ.

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

ນີ້ ນຳ ພວກເຮົາມາສະຫລຸບຂອງຫົວຂໍ້ນີ້ແລະຊຸດອັດຕະໂນມັດ Ansible. ພວກເຮົາຫວັງວ່າບົດແນະ ນຳ ໄດ້ ນຳ ໃຊ້ຄວາມຮູ້ທີ່ເປັນປະໂຫຍດບາງຢ່າງກ່ຽວກັບວິທີທີ່ທ່ານສາມາດອັດຕະໂນມັດວຽກຕ່າງໆຜ່ານຫລາຍເຊີບເວີຈາກລະບົບ ໜຶ່ງ ສູນກາງ.