J'essaie de configurer OfflineIMAP pour s'authentifier via un fichier crypté gpg (de cette façon, je peux consolider tout mon cryptage dans mon processus d'agent gpg).
D'après la documentation, il semble que la seule façon de crypter les mots de passe de son serveur soit d'utiliser gnome-keyring (que je préférerais ne pas exécuter sur mon serveur sans tête). Existe-t-il un moyen de transférer mon mot de passe à partir d'un fichier gpg comme vous le pouvez avec mutt?
Je sais que vous pouvez ajouter des fonctionnalités supplémentaires à offlineimap avec le fichier d'extension python, mais je crains de ne pas savoir par où commencer.
encryption
gpg
offlineimap
Tammer Ibrahim
la source
la source
root
utilisateur peut faire plusieurs choses pour contourner le chiffrement. N'oubliez pas que même le transfert X11 à partir de machines non fiables (par exemple viassh -X
) n'est pas sûr.Réponses:
Une autre méthode pour laisser offlineimap en cours d'exécution en connaissant votre mot de passe, mais sans mettre le mot de passe sur le disque, consiste à laisser offlineimap en cours d'exécution dans tmux / screen avec le
autorefresh
paramètre activé dans votre~/.offlineimaprc
Vous devez ajouter
autorefresh = 10
à la[Account X]
section du fichier offlineimaprc, pour le faire vérifier toutes les 10 minutes. Supprimez également toute ligne de configuration avecpassword
oupasswordeval
.Exécutez ensuite offlineimap - il vous demandera votre mot de passe et le mettra en mémoire cache. Il ne sortira pas après la première manche, mais dormira pendant 10 minutes. Ensuite, il se réveillera et fonctionnera à nouveau, mais il se souviendra toujours de votre mot de passe.
Vous pouvez donc laisser une session tmux en cours avec offlineimap, entrez votre mot de passe une fois, et offlineimap ira bien après.
la source
J'utilise la méthode suivante, qui fonctionne assez bien:
1) Stockez vos mots de passe dans des fichiers chiffrés gpg séparés. Par exemple
~/.passwd/<accountname>.gpg
2) Créez un fichier d'extension python avec le nom de votre choix (par exemple,
~/.offlineimap.py
), avec le contenu suivant:3) Modifiez votre fichier .offlineimaprc pour lui parler du fichier python et lui dire comment lire vos mots de passe
Si vous avez plusieurs comptes qui sont vérifiés simultanément (threads séparés) et que vous utilisez gpg-agent, il vous demandera un mot de passe pour chaque compte. J'amorce l'agent en créant un fichier (
echo "prime" | gpg -e -r [email protected] > ~/.passwd/prime.gpg
), et en amorçant l'agent gpg en déchiffrant ce fichier au lancement de offlineimap. Pour ce faire, ajoutez ce qui suit à la fin de~/.offlineimap.py
:la source
Aimer la réponse de @kbeta. Cependant,
subprocess.check_output()
il n'a été introduit qu'en python 2.7 - voici donc une versionofflineimap.py
qui fonctionnera avec les anciennes versions de python:la source