Wie kann man mutt so einrichten, dass die gesendeten Nachrichten über Bash-Skripts in einem bestimmten IMAP-Ordner gespeichert werden?

1367
Ferdi

Ich habe Zimbra Collaboration Suite auf CentOS 7 installiert. Ich muss mutt verwenden, um stündlich eine E-Mail zu senden.

Das Problem ist, wenn mein Skript mutt ausführt, wird die Nachricht nicht in einem bestimmten (Remote-IMAP-) Ordner in der .muttrc-Datei gespeichert.

Wenn ich den Befehl direkt ausführt, wird die Nachricht in dem Ordner gespeichert.

Dies ist meine .muttrc-Konfiguration. Sie befindet sich im aktuellen Benutzer-Home, der das Skript ausführt:

set from="IP Address Information <ip-no-reply@xxx>" set folder="imaps://username:password@localhost" set mask="!^\\.[^.]" set record="+IPInfo" set postponed="+Drafts" set spoolfile="+INBOX" set edit_headers=yes  set ssl_starttls=yes set ssl_force_tls=yes  set smtp_url = "smtp://username:password@localhost:587" 

Dies ist der Mutt-Aufruf, der jede Stunde von cron ausgeführt wird:

echo "Test" | mutt -s "IP Address Information" destination@email.address 

Wenn ich den Befehl so aufrufen würde:

mutt -s "IP Address Information" destination@email.address 

und folgen sie dem prozess (mutt öffnet vi und lasst mich den body eingeben), es speichert die nachricht im ordner. Aber ich kann diesen Befehl nicht in das Skript einfügen, da er automatisch sein sollte.

Dies ist der Zielordner, den ich erwähnt habe:

[Screenshot von Zimbra] (http://imgur.com/U8EnQ6M)

0

1 Antwort auf die Frage

0
Ferdi

Kürzlich habe ich die Standorte von Mutt und Zimbra aufgeteilt und festgestellt, dass während der E-Mail-Zustellung ein Zertifikatproblem aufgetreten ist.

mutt wartet auf die Bestätigung, ein Zertifikat anzunehmen oder abzulehnen. Wenn es ohne Interaktivität ausgeführt wird, lehnt es das Zertifikat automatisch ab. [das ist meine Annahme des Verhaltens]

Hier ist eine aktualisierte .muttrc:

set from="IP Address Information <ip-no-reply@xxx>" set folder="imaps://username:password@zimbra_or_postfix_server" set mask="!^\\.[^.]" set record="+IPInfo" set postponed="+Drafts" set spoolfile="+INBOX" set edit_headers=yes  set certificate_file=.mutt-certs  set ssl_starttls=yes set ssl_force_tls=yes  set smtp_url = "smtp://username:password@zimbra_or_postfix_server:587" 

Ich suchte nach einer Lösung für dieses Problem und fand die Antwort hier: http://www.seas.upenn.edu/cets/answers/mutt-certificates.html. Dort wurde erklärt, dass ich set certificate_fileeiner Datei Direktive hinzufügen muss .

Nachdem das mutt das selbstsignierte Zertifikat speichern gelassen hat, kann das Skript erneut E-Mails an den MTA senden. Wenn ich jedoch das Postfach des Kontos betrage, das für die Zustellung verwendet wird, gibt es einen Ordner mit dem Namen 'IPInfo', der auf die set recordDirektive folgt . Daher gehe ich davon aus, dass die Lösung für mein ursprüngliches Problem darin besteht, das selbstsignierte Zertifikat von mutt speichern zu lassen.

Ich hoffe, dass dies jedem hilft, der nach einer ähnlichen Antwort sucht.