Zwei Optionen - die erste, wie Sie in Ihrer eigenen Antwort gesagt haben, besteht darin, die Umgebungsvariable ANSIBLE_HOST_KEY_CHECKING
auf False zu setzen.
Die zweite Möglichkeit, es festzulegen, besteht darin, es in einer ansible.cfg-Datei abzulegen. Dies ist eine sehr nützliche Option, da Sie diese entweder global (auf System- oder Benutzerebene, in /etc/ansible/ansible.cfg
oder ~/.ansible.cfg
) oder in einer Konfigurationsdatei im selben Verzeichnis festlegen können als das Playbook, das Sie ausführen.
Erstellen Sie dazu eine ansible.cfg
Datei an einem dieser Speicherorte und fügen Sie Folgendes hinzu:
[defaults]
host_key_checking = False
Sie können dort auch viele andere praktische Standardeinstellungen festlegen, z. B. ob zu Beginn eines Spiels Fakten gesammelt werden sollen oder nicht, ob an mehreren Stellen deklarierte Hashes zusammengeführt oder durch andere ersetzt werden sollen usw. Hier in den Ansible-Dokumenten finden Sie eine große Liste von Optionen .
Bearbeiten: ein Hinweis zur Sicherheit.
Die SSH-Hostschlüsselüberprüfung ist eine sinnvolle Sicherheitsschicht für persistente Hosts. Wenn Sie mehrmals eine Verbindung zu demselben Computer herstellen, ist es hilfreich, den Hostschlüssel lokal zu akzeptieren.
Bei längerlebigen EC2-Instanzen ist es sinnvoll, den Hostschlüssel mit einer Aufgabe zu akzeptieren, die bei der ersten Erstellung der Instanz nur einmal ausgeführt wird :
- name: Write the new ec2 instance host key to known hosts
connection: local
shell: "ssh-keyscan -H {{ inventory_hostname }} >> ~/.ssh/known_hosts"
Es gibt keinen Sicherheitswert für die Überprüfung von Hostschlüsseln in Instanzen, die Sie dynamisch aufstehen und direkt nach der Ausführung des Playbooks entfernen. Es gibt jedoch einen Sicherheitswert für die Überprüfung von Hostschlüsseln auf persistente Computer. Daher sollten Sie die Überprüfung des Hostschlüssels je nach logischer Umgebung unterschiedlich verwalten.
- Lassen Sie die Überprüfung standardmäßig aktiviert (in
~/.ansible.cfg
).
./ansible.cfg
Deaktivieren Sie die Hostschlüsselprüfung im Arbeitsverzeichnis für Playbooks, die Sie für kurzlebige Instanzen ausführen ( neben dem Playbook für Komponententests gegen vagabundierende VMs, Automatisierung für kurzlebige ec2-Instanzen).