2016-07-20 7 views
0

Beim Erstellen von Tröpfchen auf Digital Ocean mithilfe von Terraform werden die Kennwörter der erstellten Maschinen per E-Mail gesendet. Wenn ich das documentation on the Digital Ocean provider Recht bekomme, können Sie auch die SSH IDs der zu verwendenden Schlüssel angeben.Wie man Tröpfchen mit Terraform bootstrappt?

Wenn ich ein Datencenter mit Terraform bootstrappe, welche Option sollte ich wählen?

Irgendwie fühlt es sich falsch an, für jede Maschine ein anderes Passwort zu haben (irgendwie funktioniert das Passwort falsch), aber es fühlt sich auch falsch an, wenn jede Maschine mit dem SSH-Schlüssel meines Benutzers verbunden ist.

Wie machst du das? Gibt es einen Weg, der hier als gut (gut?) Angesehen werden kann? Soll ich dafür nur ein SSH-Schlüsselpaar erstellen und es mit den Terraform-Dateien auch an Git übergeben? ...?

Antwort

1

Wie Sie erwähnt haben, ist die Verwendung von Passwörtern für Instanzen ein absoluter Schmerz, sobald Sie eine nennenswerte Anzahl von ihnen haben. Es ist auch weniger sicher als SSH-Schlüssel, die ordnungsgemäß verwaltet (geheim gehalten) werden. Offensichtlich werden Sie Probleme haben, den Rest Ihrer Automatisierung mit einigen Zugangsdaten zu verbinden, die out-of-band zu Ihren Automatisierungswerkzeugen geliefert werden. Wenn Sie diese Server wirklich konfigurieren müssen, um etwas zu tun, dann ist das Passwort per E-Mail-Option ziemlich out.

Ich neige dazu, einen anderen SSH-Schlüssel für jede Anwendung und Entwicklungsphase zu verwenden (zB .dev, testing/staging, production), aber dann wird alles in der Kombination den gleichen öffentlichen Schlüssel für die einfache Verwaltung bekommen. Wenn Sie einen Schlüssel kompromittieren, müssen Sie den öffentlichen Schlüssel nicht überall ersetzen und minimieren so den Explosionsradius dieses Ereignisses. Es bedeutet auch, dass Sie sie unabhängig voneinander drehen können, insbesondere, wenn sich einige Umgebungen schneller als andere bewegen.

Als letztes Wort der Warnung, setzen Sie Ihren privaten SSH-Schlüssel nicht in den gleichen Git-Repo wie der Rest Ihres Codes und definitiv nicht den privaten SSH-Schlüssel zu einem öffentlichen Repo veröffentlichen. Wenn Sie in einem großen Team arbeiten oder diese privaten Schlüssel zumindest dann out-of-band verteilen, wenn Sie von mehreren Personen verwendet werden müssen, sollten Sie sich einige Geheimnisse wie Hashicorps Vault ansehen.

Verwandte Themen