Thread S/MIME Mails versenden mit perl
(5 answers)
Opened by Arokh at 2017-08-04 09:17
Dann hier nochmal die Antwort:
crypt:SMIME produziert keinen von einem aktuellen Mail-Client auswertbaren SMIME-Header. Ich vermute, es kommt mit aktuellen Schlüssellängen nicht klar - also Finger weg. Die Lösung ist, openssl per System-Aufruf zu benutzen: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 #!/usr/bin/perl use strict; my $body="body.msg"; my $smime="smime.msg"; my $publickey="key.pem"; my $subject="Test-Nachricht E2E-verschluesselt"; my $message='Das hier ist eine ganz geheime Nachricht :-P'; my $orig='absender@example.com'; my $rec='empfaenger@example.com'; open(BODY,">$body") or die ("Kann File $body nicht oeffnen !\n"); print BODY $message; close (BODY); my $message=`/usr/bin/openssl smime -encrypt -text -in $body -out $smime -from $orig -to $rec -subject "$subject" $publickey`; if (my $mail=`/usr/lib/sendmail $rec <$smime`) { print "Fehler beim Mailversand: $mail\n"; } unlink $body; unlink $smime; Ganz wichtig ist die Option "-text", sonst kann der Mailclient die Nachricht nicht korrekt anzeigen. Für dieses simple Script würde normalerweise auch ein Shell-Script genügen, aber man scriptet da ja meistens noch jede Menge drumrum. Last edited: 2017-08-29 16:13:03 +0200 (CEST) |