GNU/Linux >> Linux Esercitazione >  >> Linux

mailx invia la posta utilizzando un relay SMTP o si connette direttamente al server SMTP di destinazione?

mailx può usare SMTP. Il suo file di configurazione è ~/.mailrc

Un esempio è mailx che utilizza l'SMTP di Gmail.

Il configure può anche essere in un comando:

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

Se viene utilizzato un normale server SMTP, è molto più semplice (vedi un'introduzione dettagliata qui):

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

Puoi anche inserirli nel file di configurazione di mailx ~/.mailrc


Tradizionalmente, Unix mail e derivati ​​(e molti altri strumenti Unix) usano /usr/bin/sendmail interfaccia, fornita da quasi tutti gli agenti di trasferimento della posta (MTA:postfix, exim, corriere e ovviamente sendmail).

Cioè, il mail il programma non parla alcun protocollo di rete – invia il messaggio a sendmail tramite stdin e gli consente di gestire la consegna effettiva. (Questo risale ai giorni in cui alcune mail usavano SMTP, altre usavano UUCP, altre usavano BITNET...)

Una volta che un messaggio è stato messo in coda attraverso sendmail , l'MTA gestisce la trasmissione effettiva dei messaggi, tramite SMTP o altro. A seconda della configurazione, può connettersi direttamente all'MTA di destinazione o inoltrare la posta tramite un altro host (chiamato anche smarthost).

La connessione diretta è più comune sui server; l'inoltro tramite smarthost è più comune sui personal computer su connessioni domestiche:l'inoltro tramite il tuo account Gmail o ISP/e-mail di lavoro è essenziale per evitare i filtri antispam "IP dinamico".

(Alcuni MTA come esmtp o nullmailer sono creati appositamente per gli utenti domestici e sempre usa un host di inoltro. Questi non supportano la ricezione della posta e sono molto più leggeri in termini di risorse.)

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

Altri programmi, principalmente i client grafici user-friendly come Thunderbird o Outlook, sempre connettiti direttamente a un server SMTP relay/smarthost (di nuovo, solitamente Gmail o ISP/server SMTP di lavoro), che trasmette il messaggio per tuo conto.

Il supporto SMTP nativo è presente in heirloom-mailx , ma non nel tradizionale bsd-mailx .

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

Il terzo metodo, la connessione diretta al server del destinatario, è quasi mai utilizzato e nessun MUA lo supporta. Sui personal computer, il suo utilizzo causerebbe il rifiuto del tuo messaggio (molto spam viene inviato da indirizzi IP di utenti domestici infetti).

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

Dal mailx(1) pagina man, DESCRIZIONE sezione Opzioni stringa sottosezione:

   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. Utilizzando il browser del registro di posta di Plesk

  2. Come inviare posta tramite server SMTP esterno utilizzando il comando mailx in Linux?

  3. Server SMTP in uscita leggero?

  4. Come inviare e-mail HTML utilizzando il comando "posta" di Linux?

  5. Connettiti a un server cloud con Filezilla utilizzando SFTP

Come connettersi a un server utilizzando la funzione di console remota BMC

Configurazione del server di posta per inoltrare le e-mail?

Configurazione di DotNetNuke per inviare e-mail utilizzando Mail Relay

Invia la posta dalla riga di comando con un server smtp esterno su Linux

Come configurare un server di posta SMTP con Postfix su Ubuntu 18.04

Come inviare e-mail con il mio server CentOS?