GNU/Linux >> Linux の 問題 >  >> Linux

mailx は SMTP リレーを使用してメールを送信しますか、それとも対象の SMTP サーバーに直接接続しますか?

mailx は SMTP を使用できます。構成ファイルは ~/.mailrc です

一例は、Gmail の SMTP を使用する mailx です。

構成は 1 つのコマンドで行うこともできます:

mailx -v -s "$EMAIL_SUBJECT" \
-S smtp-use-starttls \
-S ssl-verify=ignore \
-S smtp-auth=login \
-S smtp=smtp://smtp.gmail.com:587 \
-S from="$FROM_EMAIL_ADDRESS($FRIENDLY_NAME)" \
-S smtp-auth-user=$FROM_EMAIL_ADDRESS \
-S smtp-auth-password=$EMAIL_ACCOUNT_PASSWORD \
-S ssl-verify=ignore \
-S nss-config-dir=~/.mozilla/firefox/xxxxxxxx.default/ \
$TO_EMAIL_ADDRESS

通常の SMTP サーバーを使用する場合は、はるかに簡単です (詳細な紹介はこちらを参照してください):

mailx -v -s "$EMAIL_SUBJECT" \
-S smtp=smtp://smtp.example.com
-S from="$FROM_EMAIL_ADDRESS($FRIENDLY_NAME)" \
$TO_EMAIL_ADDRESS

これらを mailx の設定ファイル ~/.mailrc に入れることもできます


伝統的に、Unix mail および派生物 (および他の多くの Unix ツール) は /usr/bin/sendmail を使用します ほとんどすべてのメール転送エージェント (MTA – postfix、exim、courier、そしてもちろん sendmail) によって提供されるインターフェース。

つまり、mail プログラムは、ネットワーク プロトコルをまったく認識しません。メッセージを sendmail に送ります。 標準入力経由で、実際の配信を処理できるようにします。 (これは、一部のメールが SMTP を使用し、一部が UUCP を使用し、一部が BITNET を使用していた時代にまでさかのぼります...)

メッセージが sendmail を介してキューに入れられると、 、MTA は、SMTP またはその他の方法を使用して、実際のメッセージ送信を処理します。構成に応じて、宛先 MTA に直接接続するか、別のホスト (スマートホストとも呼ばれます) を介してメールを中継することができます。

サーバーでは、直接接続がより一般的です。スマートホストを介したリレーは、自宅接続のパーソナル コンピュータでより一般的です。包括的な「動的 IP」アンチスパム フィルタを回避するには、Gmail または ISP/仕事用メール アカウントを介したリレーが不可欠です。

(esmtp などの一部の MTA または nullmailer ホーム ユーザー向けに特別に構築されており、常に リレーホストを使用します。これらはメールの受信をサポートしておらず、リソースがはるかに軽量です。)

mailx → [/usr/bin/sendmail] → local MTA queue → [SMTP] → recipient MTA → recipient inbox
mailx → [/usr/bin/sendmail] → local MTA queue → [SMTP] → Gmail or ISP/work servers → [SMTP] → recipient MTA → recipient inbox

その他のプログラム、主に Thunderbird や Outlook などの使いやすいグラフィカル クライアントは常に リレー/スマートホスト SMTP サーバー (ここでも、通常は Gmail または ISP/仕事用 SMTP サーバー) に直接接続し、あなたに代わってメッセージを送信します。

ネイティブ SMTP サポートは heirloom-mailx にあります 、しかし従来の bsd-mailx にはありません .

app → [SMTP] → Gmail or ISP/work servers → [SMTP] → recipient MTA → recipient inbox

受信者のサーバーに直接接続する 3 番目の方法は、ほとんど決してありません。 使用されており、MUA はそれをサポートしていません。パーソナル コンピューターでこれを使用すると、メッセージが拒否される可能性があります (感染したホーム ユーザーの IP アドレスから多くのスパムが送信されます)。

app → [SMTP] → recipient MTA → caught by the spam filter

mailx(1) から man ページ、DESCRIPTION セクション、文字列オプション サブセクション:

   smtp   Normally, mailx invokes sendmail(8) directly to  transfer
          messages.  If the smtp variable is set, a SMTP connection
          to the server specified by the value of this variable  is
          used  instead.

Linux
  1. Pleskメールログブラウザの使用

  2. Linuxでmailxコマンドを使用して外部SMTPサーバー経由でメールを送信するにはどうすればよいですか?

  3. 軽量の送信SMTPサーバー?

  1. Linux上の外部SMTPサーバーを使用してコマンドラインからメールを送信する

  2. SFTPを使用してFilezillaでクラウドサーバーに接続する

  3. LinuxまたはMacOSXでSSHを使用してサーバーに接続します

  1. ターミナルを使用してMacOSXからLinuxに接続する

  2. PuTTYを使用してWindowsからLinuxに接続する

  3. CentOS サーバーでメールを送信する方法を教えてください。