GNU/Linux >> Znalost Linux >  >> Linux

Odesílá mailx poštu pomocí přenosu SMTP nebo se přímo připojuje k cílovému serveru SMTP?

mailx může používat SMTP. Jeho konfigurační soubor je ~/.mailrc

Jedním z příkladů je mailx využívající SMTP Gmailu.

Konfigurace může být dokonce jedním příkazem:

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

Pokud je použit normální SMTP server, je to mnohem jednodušší (viz podrobný úvod zde):

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

Můžete je také vložit do konfiguračního souboru mailx ~/.mailrc


Tradičně Unix mail a deriváty (a mnoho dalších unixových nástrojů) používají /usr/bin/sendmail rozhraní, které poskytují téměř všichni agenti pro přenos pošty (MTA – postfix, exim, kurýr a samozřejmě sendmail).

Tedy mail program nemluví žádný síťový protokol – posílá zprávu na sendmail přes stdin a nechá ho zpracovat skutečné doručení. (To sahá do dob, kdy některá pošta používala SMTP, některá používala UUCP, jiná BITNET...)

Jakmile je zpráva zařazena do fronty přes sendmail , MTA zpracovává skutečný přenos zpráv, ať už přes SMTP nebo něco jiného. V závislosti na konfiguraci se může buď připojit přímo k cílovému MTA, nebo předávat poštu přes jiného hostitele (nazývaného také chytrý hostitel).

Přímé připojení je běžnější na serverech; přenos přes smarthost je běžnější na osobních počítačích s domácím připojením – přenos přes váš Gmail nebo ISP/pracovní e-mailový účet je nezbytný, abyste se vyhnuli plošným „dynamickým IP“ antispamovým filtrům.

(Některé MTA, například esmtp nebo nullmailer jsou vytvořeny speciálně pro domácí uživatele a vždy použijte relayhost. Ty nepodporují příjem pošty a jsou mnohem lehčí na zdroje.)

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

Ostatní programy, většinou uživatelsky přívětiví grafičtí klienti, jako je Thunderbird nebo Outlook, vždy připojte se přímo k předávacímu/inteligentnímu serveru SMTP (opět obvykle Gmail nebo ISP/pracovní SMTP server), který přenáší zprávu vaším jménem.

Nativní podpora SMTP je k dispozici v heirloom-mailx , ale ne v tradičním bsd-mailx .

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

Třetí způsob – připojení přímo k serveru příjemce – je téměř nikdy používá a žádný MUA jej nepodporuje. Na osobních počítačích by jeho použití způsobilo odmítnutí vaší zprávy (z infikovaných IP adres domácích uživatelů je odesíláno velké množství spamu).

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

Z mailx(1) manuálová stránka, DESCRIPTION sekce Možnosti řetězce podsekce:

   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. Java se nemůže připojit k okennímu serveru X11 pomocí 'localhost:10.0' jako hodnoty proměnné DISPLAY

  2. Jak odeslat nezpracovanou poštovní zprávu na Linuxu?

  3. Odesílání e-mailů z mého serveru

  1. Použití prohlížeče protokolu pošty Plesk

  2. Jak odesílat poštu přes externí server SMTP pomocí příkazu mailx v Linuxu?

  3. Jak odeslat e-mail HTML pomocí příkazu Linux „mail“?

  1. Odeslat obrázek v těle pošty pomocí některého z poštovních nástrojů v systému Linux?

  2. Konfigurace poštovního serveru pro přenos e-mailů?

  3. Připojte se ke cloudovému serveru pomocí Filezilla pomocí SFTP