Κρυπτογράφηση/Αποκρυπτογράφηση Ansible Vault
Κρυπτογραφήστε και αποκρυπτογραφήστε μυστικά Ansible Vault απευθείας στον browser χρησιμοποιώντας AES-256
Είσοδος
Έξοδος
Readme
Τι είναι το Ansible Vault;
Το Ansible Vault είναι ένα ενσωματωμένο χαρακτηριστικό του Ansible που κρυπτογραφεί ευαίσθητα δεδομένα όπως κωδικοί πρόσβασης, API keys και πιστοποιητικά, ώστε να μπορούν να αποθηκευτούν με ασφάλεια παράλληλα με playbooks και roles στον έλεγχο εκδόσεων. Χρησιμοποιεί κρυπτογραφία AES-256 συμμετρική με παραγωγή κλειδιού PBKDF2, που σημαίνει ότι ένας μόνο κωδικός πρόσβασης χρησιμοποιείται για κρυπτογράφηση και αποκρυπτογράφηση. Το περιεχόμενο που κρυπτογραφείται με Vault αναγνωρίζεται από την κεφαλίδα $ANSIBLE_VAULT;1.1;AES256 ακολουθούμενη από κωδικοποιημένο σε δεκαεξαδικό κρυπτοκείμενο.
Το Ansible Vault επιλύει μια θεμελιώδη πρόκληση DevOps: πώς να διατηρήσετε τα μυστικά στο ίδιο αποθετήριο με τον κώδικα υποδομής χωρίς να τα εκθέσετε. Αντί να διαχειρίζεστε ξεχωριστά αποθετήρια μυστικών ή να βασίζεστε σε μεταβλητές περιβάλλοντος, οι ομάδες μπορούν να δεσμεύσουν κρυπτογραφημένα αρχεία απευθείας στο Git και να τα αποκρυπτογραφήσουν κατά την εκτέλεση κατά τη διάρκεια της εκτέλεσης playbook.
Περιγραφή εργαλείου
Αυτό το εργαλείο κρυπτογραφεί και αποκρυπτογραφεί το περιεχόμενο του Ansible Vault απευθείας στο πρόγραμμα περιήγησης. Εισάγετε έναν κωδικό πρόσβασης vault και απλό κείμενο για να παράγετε ένα πλήρως συμβατό κρυπτογραφημένο blob vault, ή επικολλήστε ένα υπάρχον blob vault για να αποκαλύψετε το αρχικό μυστικό. Κανένα δεδομένο δεν φεύγει από το πρόγραμμα περιήγησης — όλες οι κρυπτογραφικές λειτουργίες εκτελούνται στην πλευρά του πελάτη.
Παραδείγματα
Κρυπτογράφηση απλού κειμένου:
Είσοδος (απλό κείμενο):
db_password: s3cur3P@ss!Έξοδος (κρυπτογραφημένο vault):
$ANSIBLE_VAULT;1.1;AES256
33383239333036363833303565653032383832663162356533343630623030613133623032636566
6536303436646561356461623866386133623462383832620a646363626137626635353462386430
34333937313366383038346135656563316236313139333933383139376333353266666436316536
6335376265313432610a313537363637383264646261303637646631346137393964386432313633
3666Αποκρυπτογράφηση περιεχομένου vault:
Επικολλήστε το κρυπτογραφημένο μπλοκ παραπάνω με τον σωστό κωδικό πρόσβασης για να ανακτήσετε την αρχική τιμή db_password: s3cur3P@ss!.
Χαρακτηριστικά
- Κρυπτογραφία AES-256 πλήρως συμβατή με τη μορφή Ansible Vault 1.1
- Μόνο στην πλευρά του πελάτη — κανένα δεδομένο δεν αποστέλλεται σε κανέναν διακομιστή
- Υποστηρίζει κρυπτογράφηση και αποκρυπτογράφηση με ένα μόνο πεδίο κωδικού πρόσβασης
- Άμεση μετατροπή με ζωντανή προεπισκόπηση καθώς πληκτρολογείτε
- Λειτουργεί με μυστικά πολλών γραμμών, θραύσματα YAML και αυθαίρετο κείμενο
Περιπτώσεις χρήσης
- Γρήγορη κρυπτογράφηση ενός νέου μυστικού πριν το δεσμεύσετε σε ένα αποθετήριο Git που περιέχει Ansible playbooks
- Αποκρυπτογράφηση και επιθεώρηση περιεχομένου vault κατά τη διόρθωση σφαλμάτων χωρίς να χρειάζεται το Ansible εγκατεστημένο τοπικά
- Κοινή χρήση κρυπτογραφημένων μυστικών με συναδέλφους που μπορούν να τα αποκρυπτογραφήσουν στο πρόγραμμα περιήγησης χρησιμοποιώντας έναν κοινό κωδικό πρόσβασης vault
Πώς λειτουργεί
Το Ansible Vault 1.1 χρησιμοποιεί την ακόλουθη διαδικασία:
- Παραγωγή κλειδιού — Το PBKDF2-HMAC-SHA256 παράγει ένα κλειδί 80 byte από τον κωδικό πρόσβασης και ένα τυχαίο salt (10.000 επαναλήψεις). Το κλειδί χωρίζεται σε ένα κλειδί κρυπτογράφησης 32 byte, ένα κλειδί HMAC 32 byte και ένα IV 16 byte.
- Κρυπτογράφηση — Το απλό κείμενο κρυπτογραφείται με AES-256-CTR χρησιμοποιώντας το παραγόμενο κλειδί και IV.
- Αυθεντικοποίηση — Ένα HMAC-SHA256 υπολογίζεται πάνω από το κρυπτοκείμενο για να διασφαλιστεί η ακεραιότητα.
- Κωδικοποίηση — Το salt, το digest HMAC και το κρυπτοκείμενο κωδικοποιούνται σε δεκαεξαδικό και συνδυάζονται κάτω από την κεφαλίδα
$ANSIBLE_VAULT;1.1;AES256.
Η αποκρυπτογράφηση αντιστρέφει τη διαδικασία: ο κωδικός πρόσβασης παράγει ξανά τα ίδια κλειδιά, επαληθεύει το HMAC και αποκρυπτογραφεί το κρυπτοκείμενο.
Περιορισμοί
- Υποστηρίζει μόνο τη μορφή Ansible Vault 1.1 με κρυπτογραφία AES-256
- Δεν υποστηρίζει ετικέτες vault ID για ρυθμίσεις πολλαπλών κωδικών πρόσβασης
- Τα μεγάλα αρχεία μπορεί να προκαλέσουν σύντομες καθυστερήσεις UI λόγω του εντατικού υπολογιστικά βήματος παραγωγής κλειδιού