Saya menjalankan server Ubuntu 14.04 (Linux). Saya telah menginstal dan mengkonfigurasi Postfix dan OpenDKIM dengan sangat baik di server; Saya dapat mengirim email ke diri dengan perintah seperti echo hi | sendmail root
, dan postfix / opendkim akan menambahkan header seperti Message-Id
, Date
, dan DKIM-Signature
, meneruskan email ke alamat email pribadi saya, dan semuanya bekerja besar.
Sekarang saya ingin membuat aplikasi yang berjalan dalam wadah Docker dan dapat mengirim email dengan mudah. Secara khusus, saya tidak ingin khawatir tentang menambahkan header seperti Message-Id
, dan saya tidak ingin melakukan banyak konfigurasi atau instalasi perangkat lunak di dalam wadah itu sendiri.
Apa cara terbaik untuk melakukan ini?
Apakah ada cara untuk membiarkan kontainer menjalankan sendmail
exectuable pada host?
Saya mencoba membuat koneksi ke Postfix dari sebuah wadah menggunakan protokol SMTP pada port 25, tetapi Postfix tampaknya memperlakukan pesan yang diterima dengan cara yang berbeda; Saya pikir itu tidak menambahkan header sehingga pesan langsung ditolak sebagai spam oleh gmail (itu bahkan tidak cukup baik untuk dimasukkan ke folder Spam saya).
Di sini konten maillog
Sep 28 23:35:52 dantooine postfix/smtpd[4306]: connect from unknown[172.17.0.95]
Sep 28 23:35:52 dantooine postfix/smtpd[4306]: DD457889B: client=unknown[172.17.0.95]
Sep 28 23:35:52 dantooine postfix/cleanup[4309]: DD457889B: message-id=<>
Sep 28 23:35:52 dantooine spamd[3175]: spamd: connection from localhost [::1]:59471 to port 783, fd 6
Sep 28 23:35:52 dantooine spamd[3175]: spamd: handle_user (getpwnam) unable to find user: 'someone'
Sep 28 23:35:52 dantooine spamd[3175]: spamd: still running as root: user not specified with -u, not found, or set to root, falling back to nobody
Sep 28 23:35:52 dantooine spamd[3175]: spamd: processing message (unknown) for someone:65534
Sep 28 23:35:52 dantooine spamd[3175]: spamd: clean message (2.5/5.0) for someone:65534 in 0.0 seconds, 331 bytes.
Sep 28 23:35:52 dantooine spamd[3175]: spamd: result: . 2 - MISSING_DATE,MISSING_FROM,MISSING_MID,UNPARSEABLE_RELAY scantime=0.0,size=331,user=someone,uid=65534,required_score=5.0,rhost=localhost,raddr=::1,rport=59471,mid=(unknown),autolearn=no autolearn_force=no
Sep 28 23:35:52 dantooine opendkim[3179]: DD457889B: can't determine message sender; accepting
Sep 28 23:35:53 dantooine postfix/qmgr[3664]: DD457889B: from=<whoever@example.com>, size=275, nrcpt=1 (queue active)
Sep 28 23:35:53 dantooine postfix/smtpd[4306]: disconnect from unknown[172.17.0.95]
Sep 28 23:35:53 dantooine postfix/smtp[4311]: DD457889B: to=<someone@gmail.com>, relay=gmail-smtp-in.l.google.com[2607:f8b0:4003:c05::1b]:25, delay=0.25, delays=0.12/0.01/0.03/0.09, dsn=5.7.1, status=bounced (host gmail-smtp-in.l.google.com[2607:f8b0:4003:c05::1b] said: 550-5.7.1 [fd17:8b70:893a:44bf:fe73:6c21] Our system has detected that 550-5.7.1 this message is likely unsolicited mail. To reduce the amount of spam 550-5.7.1 sent to Gmail, this message has been blocked. Please visit 550-5.7.1 http://support.google.com/mail/bin/answer.py?hl=en&answer=188131 for 550 5.7.1 more information. su20si7357528oeb.94 - gsmtp (in reply to end of DATA command))
Sep 28 23:35:53 dantooine postfix/cleanup[4309]: 254E688A0: message-id=<20140928233553.254E688A0@myserver.example.com>
Sep 28 23:35:53 dantooine postfix/bounce[4330]: DD457889B: sender non-delivery notification: 254E688A0
Sep 28 23:35:53 dantooine postfix/qmgr[3664]: 254E688A0: from=<>, size=3374, nrcpt=1 (queue active)
Sep 28 23:35:53 dantooine postfix/qmgr[3664]: DD457889B: removed
Sep 28 23:35:53 dantooine postfix/virtual[4331]: 254E688A0: to=<whoever@example.com>, relay=virtual, delay=0.01, delays=0/0/0/0, dsn=2.0.0, status=sent (delivered to maildir)
Sep 28 23:35:53 dantooine postfix/qmgr[3664]: 254E688A0: removed
To
tajuk, Subject
tajuk, dan satu baris. Saya tidak yakin bagaimana cara mengetahui header apa yang dimilikinya setelah Postfix menjalankannya melalui milters, apakah Anda tahu caranya? Ini adalah keluaran di / var / log / syslog yang menunjukkan bagaimana prosesnya oleh Postfix dan ditolak oleh Gmail: gist.github.com/DavidEGrayson/fbf65c8290c049a1f262