SSMTPをバージョン2.61に更新しましたが、これを使用しようとすると、次のエラーが表示されます。
ssmtp: Cannot open smtp.gmail.com:587
Telnetを介してアドレスに接続できますが、sSMTPが作動しているようで、更新後に何が変わったのかわかりません。
こちらがssmtp.conf
です
[email protected]
mailhub=smtp.gmail.com:587
RewriteDomain=gmail.com
Hostname=localhost
UseTLS=YES
UseSTARTTLS=Yes
AuthUser=XXXXX
AuthPass=XXXXX
FromLineOverride=yes
Telnet経由で接続した場合の出力:
[root@soupcan sbin]# telnet smtp.gmail.com 587
Trying 74.125.142.108...
Connected to smtp.gmail.com.
Escape character is '^]'.
220 mx.google.com ESMTP l7sm7330049igx.2 - gsmtp
quit
221 2.0.0 closing connection l7sm7330049igx.2 - gsmtp
Connection closed by foreign Host.
sSMTP
を使用しようとしたときの出力
[root@soupcan sbin]# /usr/sbin/ssmtp -v [email protected] < /home/user/Documents/Scripts/msg.txt
[<-] 220 mx.google.com ESMTP f5sm7367852igc.4 - gsmtp
[->] EHLO localhost
[<-] 250 CHUNKING
[->] STARTTLS
[<-] 220 2.0.0 Ready to start TLS
ssmtp: Cannot open smtp.gmail.com:587
[〜#〜] edit [〜#〜]デバッグログをオンにするこれが表示されました。
SSL not working: certificate verify failed (20)
EDIT 2これは、以下をssmtp.conf
ファイルに追加することで解決されました
TLS_CA_File=/etc/pki/tls/certs/ca-bundle.crt
[〜#〜] here [〜#〜] および [〜#〜] here [〜#〜] から情報が見つかりました
これは、ssmtp.conf
ファイルに以下を追加することで解決しました
TLS_CA_File=/etc/pki/tls/certs/ca-bundle.crt
[〜#〜] here [〜#〜] および [〜#〜] here [〜#〜] から情報が見つかりました
参考までに-Ubuntuの場合、.crtファイルは別の場所にあり、次のように読む必要があります。
TLS_CA-File=/etc/ssl/certs/ca-certificates.crt
これを追加すると、ポート587のSTARTTLSを介して次の設定でSMTPサーバーに接続できます。
mailhub=smtp.{myserver}.com:587
AuthUser={username}
AuthPass={password}
UseSTARTTLS=YES
UseTLS=NO
TLS_CA_File=/etc/ssl/certs/ca-certificates.crt
メールサーバーがSSLまたはTLSではなくSTARTTLSを使用するように構成されています。
UseTLS=YES
、失敗します。排他的でなければなりませんUseSTARTTLS=YES
、両方ではありません。他のメールサーバーが同時に両方を実行できるかどうかはわかりませんが、私の場合はできません。
ここにある設定を使用してください:
Gmailを使用してコマンドラインから1行のメールを送信する最も簡単な方法?
抜粋:
root=rpi3abc@gmail
mailhub=smtp.gmail.com:465
FromLineOverride=YES
[email protected]
AuthPass=testing123
UseTLS=YES
それはそれと同じくらい簡単です。