Ich bin folgendem Link gefolgt: Mutt: Wie kann ich Passwörter sicher speichern?
Ich bin mir nicht sicher, was ich übersehe, aber es funktioniert nicht so, wie ich es brauche. Folgendes fällt mir auf:
Wenn ich zur Shell-Eingabeaufforderung komme und „mutt“ eingebe, wird ein Bildschirm angezeigt, in dem ich die Passphrase eingeben muss. Sobald ich sie eingebe, wird der E-Mail-Client angezeigt und ich kann problemlos E-Mails senden und empfangen. Wenn ich ihn schließe und erneut ausführe, wird er nicht nach der Passphrase gefragt. Wenn ich ihn jedoch vollständig schließe und mich per SSH wieder beim Server anmelde und „mutt“ eingebe, wird er nach der Passphrase gefragt.
Ich versuche, das Passwort zu verschlüsseln, damit es beim Ausführen eines Cronjobs keine Probleme gibt und die Abfrage der Passphrase umgangen wird. Kann mir bitte jemand dabei helfen, das zum Laufen zu bringen?
Antwort1
Es gibt verschiedene Optionen mit unterschiedlichen Sicherheitsstufen. Lassen Sie uns einige der Optionen skizzieren, damit Sie die beste Entscheidung treffen können. Um die Entschlüsselung zu automatisieren, muss eine Passphrase irgendwo gespeichert werden (auf der Festplatte, im Speicher oder auf einem anderen Computer). Normalerweise lohnt es sich, Folgendes zu berücksichtigen:
- Wer hat Zugriff auf die Maschine?
- Ist es öffentlich zugänglich oder hostet es einen öffentlich zugänglichen Dienst?
Option 1:Speichern Sie die E-Mail-Passwortphase unverschlüsselt in Ihrer Muttrc-Datei.
Beschränken Sie den Lesezugriff von muttrc auf den Benutzer, der den Cron ausführt, und verschlüsseln Sie das zugrunde liegende Dateisystem. Da Sie Gmail verwenden,Erstellen Sie ein App-Passwortdas bei Kompromittierung rotiert/widerrufen werden kann. Dies ist wahrscheinlich die einfachste Lösung für das Problem.
Der Nachteil dieser Lösung besteht darin, dass der root
Benutzer oder jeder mit sudo
entsprechenden Berechtigungen auf diese Datei zugreifen kann. Sie können die Datei so konfigurieren, sudo
dass ein Kennwort erforderlich ist, um diese Möglichkeit zu verringern.
Option 2:Speichern Sie die GPG-Passphrase unverschlüsselt in einer Datei.
Bei dieser Option konfigurieren Sie Mutt so, dass GPG nicht interaktiv ausgeführt wird. Der Lesezugriff auf Ihre Mutt-Passwörter und GPG-Passphrasedateien sollte eingeschränkt sein. Sie sollten außerdem das zugrunde liegende Dateisystem verschlüsseln, um es vor physischem Zugriff zu schützen. Dies macht es nur undurchsichtiger, ein Passwort unverschlüsselt in Muttrc zu speichern. Es gelten die gleichen Nachteile, und diese Lösung gilt als ebenso sicher.
Damit gpg von einem nicht-interaktiven Benutzer ausgeführt werden kann, müssen Sie gpg-Befehle mit Folgendem ausführen:
--batch
um den interaktiven Modus zu deaktivieren--passphrase-file
um ein Passwort für den privaten GPG-Schlüssel bereitzustellen--pinentry-mode loopback
um Pinentry-Anfragen an den Anrufer zurückzuleiten.
Also, im mutttrc:
source "/usr/local/bin/gpg -d --batch --passphrase-file=$HOME/.passFile.txt --pinentry-mode loopback $HOME/.mutt/passwords.gpg |"
Option 3:Verwenden Sie einen Dienst zur Geheimnisverwaltung.
Es gibt keinen echten Standard in diesem Bereich, und es gibtviele Optionen in diesem Raum. Ein Dienst zur Geheimnisverwaltung zentralisiert die Verwaltung von Geheimnissen und ermöglicht die Prüfung und Kontrolle des Zugriffs auf Geheimnisse in großem Umfang. Vorteile und Nachteile ändern sich je nach Bereitstellung und Implementierung, und jede weitere Einbeziehung in diesen Bereich wäre weitgehend meinungsbasiert.
Zusätzlich,hier ist eine andere Fragedas berührt weitgehend den Fragenbereich und könnte hilfreich sein.