MuttはEメールを送信できません

MuttはEメールを送信できません

私はAzure ci / cdパイプラインでUbuntu 20.04のテストを実行しています。テストが完了したら、Azureパイプラインにテストレポートを添付してチームに電子メールを送信するタスクを作成しました。

Azureタスクでbashスクリプトを使用しています。

コードは次のとおりです。

echo "line1"
sudo apt install mailutils
echo "line2"
sudo apt install mutt

echo "line3"
echo -e "Test Message" | mutt -s "[E2E ]TestReport - Test Status" -- [email protected]

この機能は現在時々動作します。私のメールボックスに名前がある人から電子メールを受け取りました。vsts@fv-az355-724.norxwxgvcn4uzhpoaxg0br3vlg.fx.internal.cloudapp.net

このメールアドレスは毎回異なります。

私の仕事はCI / CDパイプラインの一部なので、展開が発生するたびにこの電子メールが自動的に生成されると思います。組織の電子メールシステムは何らかの方法でスパムとして処理し、毎回許可しません。

~/.muttrcまた、ファイルを編集してホスト名を設定してみました。

そのホスト名からメールをもう一度送信してから停止しました。エラーや失敗はありません。

この問題をどのように解決できますか?

投稿の編集:ログの表示中にログに次のものが見つかりました。ログはかなり長いですが重要なようです。 Mailutilsはpostfix自体もインストールします。

Creating /etc/postfix/dynamicmaps.cf
Adding group `postdrop' (GID 129) ...
Done.
setting myhostname: fv-az356-758.todi3lz1wlfenaxowbnpzhq2oe.fx.internal.cloudapp.net
setting alias maps
setting alias database
changing /etc/mailname to fv-az356-758.todi3lz1wlfenaxowbnpzhq2oe.fx.internal.cloudapp.net
setting myorigin
setting destinations: $myhostname, fv-az356-758.todi3lz1wlfenaxowbnpzhq2oe.fx.internal.cloudapp.net, localhost.todi3lz1wlfenaxowbnpzhq2oe.fx.internal.cloudapp.net, , localhost
setting relayhost: 
setting mynetworks: 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
setting mailbox_size_limit: 0
setting recipient_delimiter: +
setting inet_interfaces: all
setting inet_protocols: all
/etc/aliases does not exist, creating it.
WARNING: /etc/aliases exists, but does not have a root alias.

私の組織の電子メールがこの電子メールIDをスパムとして処理し、自動的に拒否しないようにpostfixでmyhostnameとターゲットを変更する方法はありますか?

答え1

実際にあなたの質問に直接答えるのではなく、根本的な問題に対する解決策を提供できるポインタを提供することです。

mutt組み込みのSMTPハンドラを使用して電子メールを組織に直接送信するか、電子メールをpostfix同じシステムに転送し、そのシステムからメッセージを組織に直接送信するようにします。

mutt1つのオプションは、認証されたSMTPを使用して組織内の有効なユーザーに直接転送するように構成することです。これを行うには、組織内でユーザー名と関連するパスワードを入力する必要があります。本当にそうしてはいけない自分のものを使ってください。

引用:https://wiki.archlinux.org/title/mutt#Native_SMTP_support

set my_pass = 'account really long and complex password'
set my_user = 'account name'

set realname = 'Account Real Name'
set from = account_email_address@your_organisation.com
set use_from = yes

set smtp_pass = $my_pass
set smtp_url = smtps://$my_user@your_organisation_smtp_server.com
set ssl_force_tls = yes

もちろん、これは完璧ではありません。特に、CI / CDパイプラインにユーザー名とパスワードの組み合わせが含まれているので、システム管理およびセキュリティスタッフと協力してこの問題を解決してください。認証されていない送信者(送信者)アドレスをホワイトリストに追加するなどの代替ソリューションがあるかもしれません。

関連情報