解決策 1:
ローカルで使用している MTA は何ですか? mail
メールメッセージを作成する機能を提供するだけで、実際の配信を行うには MTA が必要ですか?デフォルトでは、ほとんどのディストリビューションに sendmail が付属しています。別の MTA をインストールするか、外部配信をサポートするように現在の MTA を構成する必要がある可能性があります。
解決策 2:
mailx は、デフォルトでは構成されていない完全な SMTP インフラストラクチャーを想定しているためです。インストールされている SMTP サーバーの種類 (postfix、exim、sendmail、qmail など) を教えてください。
解決策 3:
# fgrep remote /var/log/exim4/mainlog.1 | sed -E 's#([ <])[^ <][email protected][^ >]+([ >])#\[email protected]\2#g' | head -1 2019-01-08 00:47:00 1ggebk-00055M-St ** [email protected] <[email protected]> R=nonlocal: Mailing to remote domains not supported #
Debian には exim4
が付属しているようです これは、送信 SMTP ポートがブロックされていないインターネットに接続されたマシンでは正しく機能しないように設定されています。
さまざまなコメントで指摘されているように、正しく機能させるには、dpkg-reconfigure exim4-config
を実行する必要があります をクリックし、ウィザード内で最初の internet
を選択します オプション .ウィザード内の後続のダイアログ ボックスでは、デフォルトで localhost
のみをリッスンするように設定されていることに注意してください。 IPv4/IPv6 アドレスであるため、他のデフォルトをそのままにしておくと、着信 SMTP ポートをそのままにしておくことになります。
ウィザードが正しく機能したことを確認するには、Debian 固有の /etc/exim4/update-exim4.conf.conf
をチェックします。 (はい、ダブル .conf.conf
です 、それはタイプミスではありません)、これがこの大失敗に一役買っています。 dpkg-reconfigure exim4-config
を実行した後の関連部分は次のとおりです。 ウィザード内の最初のオプションのみを変更すると、メールの送信が有効になりますが、SMTP ポートはマシン自体に対してのみ開いたままになります (最初のオプションの後で再構成をクリックするだけの場合のデフォルトのオプション):
dc_eximconfig_configtype='internet'
…
dc_local_interfaces='127.0.0.1 ; ::1'
もう 1 つの解決策は、DragonFly メール エージェントを jessie 以降にインストールすることです — https://packages.debian.org/jessie/dma — これは MTA の単純な実装であり、受信 SMTP を除くすべての優れた UNIX メール機能を実装します。 、構成ミスや外部の脆弱性について心配する必要はありません。