Wie kann ich Duplicity mit einem symmetrischen Schlüssel verwenden?
7
Ich verwende Duplizität, um Sicherungen auf meinem Server durchzuführen. Derzeit verschlüsselt die Duplizität die Sicherung mit einem öffentlich-privaten GPG-Schlüsselsystem. Ich würde es vorziehen, die Sicherungsdateien nur mit einer Passphrase zu verschlüsseln, damit ich nicht versuchen muss, mit geheimen Schlüsseln Schritt zu halten. Wie kann ich die auf diese Weise zu verschlüsselnden Backups konfigurieren?
Der Standardmodus für die Duplizität ist die Verwendung eines symmetrischen Schlüssels, der aus einer einfachen Passphrase besteht. Ich würde das jedoch auf keinen Fall verwenden: Wenn Sie den Schlüssel eingeben müssen, können Sie keine unbeaufsichtigte Sicherung ausführen!
Wenn Sie eine unbeaufsichtigte Sicherung ausführen möchten, müssen Sie einen öffentlichen Schlüssel irgendwie duplizieren. Die einzige Art von öffentlichem Schlüssel, die von Duplicity unterstützt wird, ist GPG, für die ein Schlüsselpaar erforderlich ist. Wenn Sie nicht mehr Sicherheit wünschen, als die Passphrase bietet, bewahren Sie zahlreiche Kopien des privaten Schlüssels auf (z. B. speichern Sie ihn auf jedem Sicherungsmedium und drucken Sie ihn aus).
Beachten Sie, dass Sie eine wirklich gute Passphrase wählen müssen (wie lange und mit hoher Entropie ), um eine angemessene Sicherheit vor Offline-Angriffen zu erhalten (was hier die Bedrohung darstellt).
Gilles, Sie sagen mir also, dass ich bereits symmetrische Verschlüsselung verwende? Bedeutet dies, dass ich meine Backups wiederherstellen könnte, wenn mein Server heute explodieren würde, indem ich nur die Passphrase verwende? Ich hatte den Eindruck, dass die Passphrase irgendwie in Verbindung mit einem in meiner GPG-Datenbank gespeicherten Schlüssel verwendet werden musste, was bedeutet, dass ich meine GPG-Datenbank mit meinem Leben schützen müsste! Ich kann eine Passphrase in einer unbeaufsichtigten Sicherung verwenden, indem ich die Phrase am Anfang meines Sicherungsskripts in $ PASSPHRASE exportiere und am Ende deaktiviere.
mclark1129
@ Mike: Soweit ich mich erinnere, unterstützt die Duplizität nur die beiden Modi. Wenn Sie übergeben --encrypt-key, verwenden Sie die Verschlüsselung mit öffentlichem Schlüssel, und Ihr privater Schlüssel besteht aus Ihrer privaten Schlüsseldatei und Ihrer Passphrase. Andernfalls verwenden Sie eine symmetrische Verschlüsselung und der geheime Schlüssel besteht ausschließlich aus Ihrer Passphrase. Natürlich sollten Sie die Wiederherstellung auf einem Computer oder Konto testen, auf dem Ihre GPG-Datenbank nicht vorhanden ist, wenn Sie dies wünschen.
Gilles 'SO - hör auf böse zu sein'
Ich werde heute Abend eine Testwiederherstellung auf einem separaten Computer durchführen, um zu sehen, was passiert, danke!
mclark1129
7
alte Frage, aber ich habe eine Antwort. Sie können die Passphrase in Ihrem Backupscript festlegen, damit sie unbeaufsichtigt ausgeführt wird.
Vergessen Sie nicht unset PASSPHRASEam Ende des Skripts, sonst steht die Passphrase anderen Skripten zur Verfügung.
Sam Wilson
3
PASSPHRASEwird für andere Skripte nicht verfügbar sein, aber für alles andere in diesem Skript (vorausgesetzt, Sie verwenden sourcedas Skript nicht). Wenn Sie wirklich nur die Passphrase für den Befehl duplicity festlegen möchten, verwenden Sie die Präfixsyntax:PASSPHRASE=whatever duplicity ...
--encrypt-key
, verwenden Sie die Verschlüsselung mit öffentlichem Schlüssel, und Ihr privater Schlüssel besteht aus Ihrer privaten Schlüsseldatei und Ihrer Passphrase. Andernfalls verwenden Sie eine symmetrische Verschlüsselung und der geheime Schlüssel besteht ausschließlich aus Ihrer Passphrase. Natürlich sollten Sie die Wiederherstellung auf einem Computer oder Konto testen, auf dem Ihre GPG-Datenbank nicht vorhanden ist, wenn Sie dies wünschen.alte Frage, aber ich habe eine Antwort. Sie können die Passphrase in Ihrem Backupscript festlegen, damit sie unbeaufsichtigt ausgeführt wird.
quelle
unset PASSPHRASE
am Ende des Skripts, sonst steht die Passphrase anderen Skripten zur Verfügung.PASSPHRASE
wird für andere Skripte nicht verfügbar sein, aber für alles andere in diesem Skript (vorausgesetzt, Sie verwendensource
das Skript nicht). Wenn Sie wirklich nur die Passphrase für den Befehl duplicity festlegen möchten, verwenden Sie die Präfixsyntax:PASSPHRASE=whatever duplicity ...