Ich versuche, OfflineIMAP für die Authentifizierung über eine gpg-verschlüsselte Datei einzurichten (auf diese Weise kann ich die gesamte Verschlüsselung für meinen gpg-agent-Prozess konsolidieren).
Aus der Dokumentation geht hervor, dass die einzige Möglichkeit zum Verschlüsseln von Serverkennwörtern die Verwendung des Gnome-Schlüsselbunds ist (den ich lieber nicht auf meinem kopflosen Server ausführen möchte). Gibt es eine Möglichkeit, mein Passwort aus einer gpg-Datei einzugeben, wie Sie es mit mutt tun können?
Ich weiß, dass Sie offlineimap mit der Erweiterungs-Python-Datei zusätzliche Funktionen hinzufügen können, aber ich fürchte, ich würde nicht wissen, wo ich damit anfangen soll.
encryption
gpg
offlineimap
Tammer Ibrahim
quelle
quelle
root
Benutzer tun könnte, um die Verschlüsselung zu umgehen. Denken Sie daran, dass auch das Weiterleiten von X11 von nicht vertrauenswürdigen Computern (z. B. überssh -X
) nicht sicher ist.Antworten:
Eine andere Möglichkeit, offlineimap mit Kenntnis Ihres Passworts laufen zu lassen, ohne das Passwort auf die Festplatte zu legen, besteht darin, offlineimap in tmux / screen laufen zu lassen, wobei die
autorefresh
Einstellung in Ihrem Browser aktiviert ist~/.offlineimaprc
Sie müssen
autorefresh = 10
den[Account X]
Abschnitt der offlineimaprc-Datei hinzufügen, damit diese alle 10 Minuten überprüft wird. Löschen Sie auch jede Konfigurationszeile mitpassword
oderpasswordeval
.Dann führen Sie offlineimap aus - es fragt nach Ihrem Passwort und speichert es im Speicher. Es wird nach dem ersten Lauf nicht beendet, sondern für 10 Minuten in den Ruhezustand versetzt. Dann wird es wieder aktiviert und ausgeführt, aber es wird sich immer noch an Ihr Passwort erinnern.
Sie können also eine tmux-Sitzung mit offlineimap verlassen, Ihr Passwort einmal eingeben und offlineimap ist danach in Ordnung.
quelle
Ich benutze die folgende Methode, die ziemlich gut funktioniert:
1) Speichern Sie Ihre Passwörter in separaten gpg-verschlüsselten Dateien. Beispielsweise
~/.passwd/<accountname>.gpg
2) Erstellen Sie eine Python-Erweiterungsdatei mit einem Namen Ihrer Wahl (z. B.
~/.offlineimap.py
) mit folgendem Inhalt:3) Ändern Sie Ihre .offlineimaprc-Datei, um sie über die Python-Datei zu informieren und um ihr mitzuteilen, wie sie Ihre Passwörter lesen soll
Wenn Sie über mehrere Konten verfügen, die gleichzeitig überprüft werden (separate Threads), und Sie gpg-agent verwenden, werden Sie nach der Passphrase für jedes Konto gefragt. Ich bereite den Agenten vor, indem ich eine Datei (
echo "prime" | gpg -e -r [email protected] > ~/.passwd/prime.gpg
) erstelle , und bereite den gpg-Agenten vor, indem ich diese Datei beim Start von offlineimap entschlüssele. Fügen Sie dazu am Ende von Folgendes hinzu~/.offlineimap.py
:quelle
Ich liebe die Antwort von @ kbeta. Wurde
subprocess.check_output()
jedoch nur in Python 2.7 eingeführt - hier ist eine Versionofflineimap.py
, die mit älteren Python-Versionen funktioniert:quelle