So verwenden Sie Ansible Vault in Playbooks, um sensible Daten zu schützen - Teil 10
- 1295
- 64
- Susanne Stoutjesdijk
Wenn Sie Ansible verwenden, müssen Sie möglicherweise einige vertrauliche oder geheime Informationen in Playbooks entscheiden. Dies beinhaltet SSH private und öffentliche Schlüssel, Passwörter und SSL -Zertifikate, um nur einige zu erwähnen. Wie wir bereits wissen, ist es aus offensichtlichen Gründen eine schlechte Praxis, diese sensiblen Informationen im Klartext zu speichern. Diese Informationen müssen unter Sperre und Schlüssel gehalten werden.
Zum Glück bietet Ansible uns eine praktische Funktion, die als bekannt ist Ansible Vault. Wie der Name schon sagt, die Ansible Vault Hilft dabei, wichtige geheime Informationen zu sichern, wie wir zuvor besprochen haben. Ansible Vault Kann Variablen oder sogar ganze Dateien und Yaml -Playbooks verschlüsseln, wie wir später demonstrieren werden. Es ist ein sehr praktisches und benutzerfreundliches Tool, das das gleiche Passwort beim Verschlingen und Entschlüsseln von Dateien erfordert.
Lassen Sie uns nun eintauchen und einen Überblick über die verschiedenen Operationen haben, die verwendet werden können Ansible Vault.
So erstellen Sie eine verschlüsselte Datei in Ansible
Wenn Sie eine verschlüsselte Erstellung erstellen möchten Spielbuch Datei verwenden einfach die Ansible-vault erstellen Befehl und geben Sie den Dateinamen wie gezeigt an.
# Ansible-vault Dateiname erstellen
Zum Beispiel um eine verschlüsselte Datei zu erstellen meine Geheimnisse.YML Führen Sie den Befehl aus.
# Ansible-vault erstellen mySecrets.YML
Danach werden Sie für ein Passwort aufgefordert, und nach der Bestätigung wird ein neues Fenster mit dem VI -Editor geöffnet, in dem Sie mit dem Schreiben Ihrer Spiele beginnen können.
Erstellen Sie eine verschlüsselte Datei in AnsibleNachfolgend finden Sie ein Beispiel einiger Informationen. Sobald Sie fertig sind, speichern Sie einfach das Spielbuch und beenden Sie das Spielbuch. Und das ist genau das, wenn Sie eine verschlüsselte Datei erstellen.
Verschlüsselte Datei in AnsibleVerwenden Sie den Befehl cat wie gezeigt, um die Dateiverschlüsselung zu überprüfen.
# Cat Mysecrets.YMLÜberprüfen Sie die verschlüsselte Datei in Ansible
Wie man eine verschlüsselte Datei in Ansible anzeigt
Wenn Sie eine verschlüsselte Datei anzeigen möchten, übergeben Sie einfach die Ansible-Vault-Ansicht Befehl wie unten gezeigt.
# Ansible-vault anzeigen MySecrets.YML
Noch einmal werden Sie für ein Passwort aufgefordert. Noch einmal haben Sie Zugriff auf Ihre Informationen.
Zeigen Sie die verschlüsselte Datei in Ansible anSo bearbeiten Sie eine verschlüsselte Datei in Ansible
Um Änderungen an einer verschlüsselten Datei vorzunehmen, verwenden Sie die Ansible-vault bearbeiten Befehl wie gezeigt.
# Ansible-vault bearbeiten MySecrets.YML
Geben Sie wie immer das Passwort an und bearbeiten Sie danach die Datei.
Bearbeiten Sie verschlüsselte Datei in AnsibleNachdem Sie bearbeitet haben, speichern und beenden Sie den VIM -Editor.
So ändern Sie das Kennwort des Ansible Vault
Falls Sie das Ansible Vault -Kennwort ändern müssen, können Sie dies einfach mit dem tun Ansible-Vault Rekey Befehl wie unten gezeigt.
# Ansible-vault Rekey Mysecrets.YMLÄndern Sie das Kennwort des Ansible Vault
Dies fordert Sie für das Tresorkennwort auf und fordert später auf, das neue Passwort einzugeben und später zu bestätigen.
Wie man eine unverschlüsselte Datei in Ansible verschlüsselt
Angenommen, Sie möchten eine unverschlüsselte Datei verschlüsseln. Sie können dies tun, indem Sie das ausführen Ansible-vault verschlüsseln Befehl wie gezeigt.
# Ansible-vault-Verschlüsselung klassifiziert.txtVerschlüsseln Sie eine unverschlüsselte Datei
Sie können die Datei später mit dem CAT -Befehl wie unten angegeben anzeigen.
Verschlüsselte Datei anzeigenSo entschlüsseln Sie eine verschlüsselte Datei
Um den Inhalt einer verschlüsselten Datei anzuzeigen, entschlüsseln Sie einfach die Datei mit der Datei Ansible-vault verschlüsseln Wie im folgenden Beispiel dargestellt.
# Ansible-vault entschlüsselt klassifiziert.txtEntschlüsseln Sie eine verschlüsselte Datei
So verschlüsseln Sie bestimmte Variablen in Ansible
Darüber hinaus gewährt Ihnen ein ansible Vault die Möglichkeit, bestimmte Variablen zu verschlüsseln. Dies geschieht mit dem Ansible-Vault Encrypt_string Befehl wie gezeigt.
# Ansible-vault Encrypt_stringVerschlüsselte spezifische Variablen in Ansible
Ansible Vault fordert Sie für das Passwort auf und verlangt später, dass Sie es bestätigen müssen. Geben Sie als Nächstes den String -Wert ein, den Sie verschlüsseln möchten. Schließlich drücken Sie Strg + d
. Danach können Sie den verschlüsselten Wert in einem Spielbuch zuweisen.
Dies kann in einer einzelnen Zeile erreicht werden, wie unten gezeigt.
# Ansible-Vault Encrypt_string 'String' --Name 'Variable_Name' 'Weisen Sie im Ansible Playbook verschlüsselte Wert zu
So entschlüsseln Sie während der Laufzeit eine Playbook -Datei
Wenn Sie eine Playbook -Datei haben und sie während der Laufzeit entschlüsseln möchten, verwenden Sie die --Ask-vault-Pass
Option wie illustriert.
# Ansible-Playbook-Bereitstellung.YML-Task-Vault-PassEntschlüsseln Sie die Playbook -Datei während der Laufzeit
Dies entschlüsselt alle Dateien, die im Spielbuch verwendet werden, vorausgesetzt, sie wurden mit demselben Passwort verschlüsselt.
Die Passwortaufforderungen können manchmal ärgerlich sein. Diese Eingabeaufforderungen machen die Automatisierung unhaltbar, insbesondere wenn die Automatisierung der Schlüssel ist. Um den Prozess der Entschlüsselung von Playbooks während der Laufzeit zu optimieren, wird empfohlen, eine separate Passwortdatei zu haben, die das Ansible Vault -Passwort enthält. Diese Datei kann dann während der Laufzeit wie gezeigt übergeben werden.
# Ansible-Playbook-Bereitstellung.YML-Vault-Password-Datei/Home/Tecmint/vault_pass.txt
Dies bringt uns zum Abschluss dieses Themas und der Ansible Automation Series. Wir hoffen, dass die Tutorials nützliche Kenntnisse darüber infundiert haben, wie Sie Aufgaben über mehrere Server von einem zentralen System automatisieren können.
- « So installieren Sie Apache CouchDB auf CentOS 8
- So installieren Sie Apache Tomcat 9 auf Debian 10 »