From a0ff82d8d95511facbdd3338e6517c744bef1665 Mon Sep 17 00:00:00 2001 From: Thomas Constans Date: Thu, 10 Jun 2021 15:01:29 +0200 Subject: [PATCH] =?UTF-8?q?atelier=20lookup:=20=C3=A9nonc=C3=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Readme.md | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ keep.kdbx | Bin 0 -> 1829 bytes 2 files changed, 54 insertions(+) create mode 100644 Readme.md create mode 100644 keep.kdbx diff --git a/Readme.md b/Readme.md new file mode 100644 index 0000000..ae80a22 --- /dev/null +++ b/Readme.md @@ -0,0 +1,54 @@ +# Lookups + +## Objectif + +Utiliser le lookup _keepass_ pour qu'ansible lise le fichier keep.dbx fourni + +Celui-ci contient 2 entrées: + + * root / 321Lune2021% + * ansible / 123Soleil2021% + +Le fichier peut être ouvert avec l'application keepassx avec le mot de passe suivant: 123Soleil + +## Installation du lookup + +Voir aussi: https://github.com/viczem/ansible-keepass + +```bash +pip3 install 'pykeepass==3.2.1' --user +mkdir -p ~/.ansible/plugins/lookup && cd "$_" +curl https://raw.githubusercontent.com/viczem/ansible-keepass/master/keepass.py -o ./keepass.py +``` +## Configuration + +/!\ En production, on chiffrera le mot de passe d'accès au fichier keepass via ansible-vault + +Créer les variables d'inventaire keepass_dbx et keepass_psw s'appliquant à toutes les machines: + +```bash +# file: group_vars/all + +keepass_dbx: "~/keep.kdbx" +keepass_psw: 123Soleil +``` +## Utilisation + +Il suffit d'utiliser l'instruction +```yaml +lookup( 'keepass', 'Groupe/entrée", 'type') +``` + +Groupe: nom du groupe, en ignorant le groupe de premier niveau. Donc vide dans notre exemple + +entrée: nom de l'entrée qui nous intéresse (par exemple *ansible shell*) + +type: *username* si on souhaite récupérer le nom d'utilisateur, *password* si on souhaite récupérer le mot de passe. + +## Mise en oeuvre + +Récupérer la solution de l'atelier 8_adhoc_to_playbook [ici](https://infra.opendoor.fr/git/tom/sib_8_adhoc_to_playbook/src/4a72838034321e5e4ce7c52d2fa07434e57b13d9/setup.yml) + + +Modifiez le playbook *setup.yml* pour que la tâche de création du compte ansible récupère le mot de passe depuis le fichier keepass + diff --git a/keep.kdbx b/keep.kdbx new file mode 100644 index 0000000000000000000000000000000000000000..4a3321cda488c779c14b2845bcd59a4af5da6b79 GIT binary patch literal 1829 zcmV+=2io`p*`k_f`%AR|00aO65C8xGF~RcYzi~rQzE}kzYW!ON0|Wp70096100bZa z0012};guvN4SN??8A{Sm27Ij44D*k@u;j1LFz|1pxp607(b{00062 z00000000F60000@2mk;800004000001OWg508j(~00062002S(0000}AOHXWeRbc0 zno@eg&ibk`+W8w%ly7lmH2ee4;>zyy*~+@11OWg509FJ5000vJ000001ONa44GIkk z#mCzC90;$THmaHWnq1iS-6cmX?l!o+h0El3=pnS@W+V_Tcy?Qk2C1nyQ7li-Dr-x_ zJSGomJ*_du(QR6J!nG0~iwLtb2>O1(1zN<;GF72f@=F0guWd#e`!kHLz2i_0D@$Yf(%JA?OB>dtZ zyFOIihF|yV)Wq#KKMfC=<9wzqPGNbIMy0maN;HP~ga@@@(!pp@OE&33xebbFj|RR~ z5d`3rlKhlA`;{k9YIG@PY|iE=;fhM^{knCDRv_H&n>lPA5&aj9hgKQs&4sNjCqN<3 z@jffM#Tj*_*v|o;$LNuM&B;X%BN3CUJW;W2jF8aT$;<>Ej(dj!TdB3`*sqCJ8qeZ6 z)!hX!h{NFL9B=djcY$Bk0Yx)(gNyXIHW}H3z=8EnF*b4HIGTWJvpPh&@X)vwY2lgr zx2GwphuGSnn^6q;VRK0tL`QKmY}Cv=$!GjvjK%DEKgyL)Go= z;!NHiaL3oT|^w`4XxAyVh zH7pFKx49}-v)~WcYTTGzB)XPY9&j@>>fN=y85Gie4xV@DocA&>&MapAzHJWhs0(Jy z>^v(QPn8HNbgHv-BQ*c9bQvt+h_>ASn7aYC8PVwv7=cjwp9uX6o8qorUL^aQq9bbF zvh(9WoJ}RZqb0EbTk>My{;TBAvaSXsd%MsMxHpA`>xl75;Fe&`*l zj&sd^8f_FGdyNFJ)Sn^^!Jv;Jjw_f^B`@4+CM9iHs&5P0z~#!Cge$;kUZbMs@I`9e ztqR9<+3w*A0i~GFz0>^UXw!)JJCoT2!|}~OpT7>xEI%CA>=y)DfsMmSY_SEoz-nV` zL*mC6E4bYZvY-m$9ENt2+C*D9f==anvaMZarS1JQyGE7)`B6S8T^avHRJ~ybP9C0) zFZ(ZEhnZ-vRFNb&8uqC=kcAEUT2H!my z4y4kXCOijP>HqpsBcjQbVEvd}3VW<`fUFeF+h`ADIo!g4J2xcioz6TH){dVsFo8SN zx<=F^XzprY!k_C~wV55MwvDIdV2WIml*nDmRxCVuY^PCrqDN!avcIas9UZsVsBa5Q{a!v{(Y6}}igkAOK|h&F^X zG?S>Y5R=X0232leJc>@1+k%Mq_Er#PfL&4Ing5FJIUtorF`)tlx2#Iq+YF9C@dFkH0|aBu?=JSircV zxmG)r)nGK?gTPlwYm!-b$)M#a+CJ>