私はメール クライアントとして使用しようとしておりmutt
、Gmail アカウントでは問題なく動作します。しかし、仕事用のメールを使用すると、メールが送信されません。エラーは発生せず、単に送信されないだけです。.muttrc
この問題の原因となるファイル内の行は次のとおりです。
smtp_url を "smtp://mail.my_work_email_server.com:587" に設定します
smtp_pass
を追加しても動作は変わりません。また、電子メール サーバーの名前を変更しても (つまり、「架空の」サーバー アドレスを使用しても)動作は変わりません。
答え1
私も同じ経験があり、これが私にとっては効果がありました。
set ssl_starttls=yes
set ssl_force_tls=yes
set imap_user = "[email protected]"
set imap_pass = "!HASHEDPASSWORD!"
set folder = imap://mail.example.com/
set spoolfile = imap://mail.example.com/INBOX
# SMTP user auth
# # fill in the right user and pass based on your setup
# # protocols: smtp for TLS (25/587), smtps for SSL (465)
set smtp_url = "smtp://[email protected]:587"
set smtp_pass = "$imap_pass"
# Where to save copies of outgoing mail
set record = '+Sent'
私の場合、これが機能しなかったのは、構成ファイル内の順序と、存在しないフォルダーへのリンクであるフォルダーへの「記録の設定」の定義が原因でした。
フォルダーを作成するかどうかの質問に「いいえ」と答えると、フォルダーがハングし、SMTP サーバーへのトラフィックは確認されませんでした。
PS: ソース設定ファイルを確認してください。競合する設定や間違った順序が指定されている可能性があります。
HTH
答え2
そのマシン上の別のメール クライアントを使用して SMTP 経由でメールを正常に送信できますか? SMTP サーバーに Telnet して接続を確立できますか? STARTTLS を使用していますか?
mutt では、最初から TLS/SSL で保護された接続を示すためにプロトコルを使用しますsmtps
。メール サーバーがこれを期待している場合 (最近では多くのサーバーがそうしています)、それが問題の原因である可能性があります。
ただし、メール サーバーが を使用することを想定している場合はSTARTTLS
、 で通常のsmtp://
プロトコルを使用しsmtp_url
、 を必ず実行してくださいset ssl_starttls=yes
。
telnet
以下は、STARTTLS を使用するメールサーバーを示すセッションの例です。
$ telnet smtp.example.com 587
Trying 127.0.0.1...
Connected to smtp.example.com.
Escape character is '^]'.
220 smtp.example.com ESMTP Postfix (Debian/GNU)
EHLO test
250-
250-PIPELINING
250-SIZE 10240000
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
QUIT
221 2.0.0 Bye
Connection closed by foreign host.
答え3
私はこれを解明するために丸一日を費やし、さまざまな SSL/TLS とポート構成の組み合わせを何度も調整しましたが、成功しませんでした。今日、ついにこれを具体的に試しました。
set ssl_starttls = no
muttのデフォルトの動作はSTARTTLSを試すことになっているようですので、具体的に伝える必要があります。しないでください
明らかな設定以外には何も必要ありませんでしたsmtp_url
。smtp_pass
これで完璧にメールを送信できるようになりました。.muttrc
set ssl_starttls = no
set smtp_url = "smtp://[email protected]@mail.example.com:587/"
set smtp_pass = "password"
それは推奨されませんメール プロバイダーからの SSL 構成。465 ポートを使用した推奨構成をまだ使用できません。
他にも試してみたい方のために、メールの送信に影響する私が調整した設定は次のとおりです。
set ssl_starttls = no # apparently yes is default.
set ssl_force_tls = yes
set smtp_authenticators = "login"
set smtp_url = "smtp[s]://..."
set certificate_file = "~/.mutt/certificates" # some recommend creating the file first: mkdir ~/.mutt && touch ~/.mutt/certificates
set ssl_verify_host = no
set ssl_verify_dates = no
答え4
これは古いスレッドだとは思いますが、昨日、上記の構成が機能しない理由を突き止めるのに 2 時間費やしました。他の人の時間を節約するために、解決策を共有したいと思います。
問題は、Google の SMTP サーバーからの証明書を少なくとも 1 回は受け入れる必要があり、そのためには入力をリダイレクトせずに mutt を実行する必要があることでした。そうしないと、mutt は証明書を受け入れるように要求できません。
ちなみに、証明書を に保存するには、常に に (a) を選択する必要があります.mutt/certificates
。 に (o) を 1 回だけ選択すると、提供された証明書が使用されますが、 には保存されません .mutt/certificates
。
したがって、入力をリダイレクトせずにmuttを実行し(これには標準入力へのパイプも含まれます)、提供された証明書を受け入れます。1つの常に。その後、次に mutt を実行すると、保存された証明書が使用されるため、正常に動作するはずです。