Come inviare e-mail dal server Ubuntu?


13

Quello che dovrei fare è inviare e-mail da Ubuntu. Il modo più semplice che ho trovato è usare Thunderbird e collegare il mio vero indirizzo e-mail (abc@hotmail.com) all'account Thunderbird. Posso ricevere e-mail con successo e scaricare la cronologia completa in questo modo. Tuttavia, non posso inviare e-mail.

Quello che voglio fare è inviare e-mail direttamente da Ubuntu e apparire come user1 @ localhost o qualcosa di simile.

È anche possibile? Dopo aver letto diversi argomenti su questo, sembra che l'uso di un indirizzo di inoltro sia l'unico modo.

Ho anche installato Postfix, nello stesso modo in cui è scritto lì: Come configurare un server di posta? Quando mi è stato chiesto di scegliere il tipo di installazione, ho scelto il sito Internet.

Opzioni che avevo:

  • Nessuna configurazione;
  • Sito internet;
  • Internet con smarthost;
  • Sistema di stellite;
  • Solo locale;

Quando mi è stato chiesto il nome della posta di sistema, sono entrato in un sito Web di mia proprietà: some_website.com. Non ho ancora capito come inviare e-mail bia postfix, ma presumo che verrà utilizzato nuovamente un server di inoltro.

Sto eseguendo Ubuntu 11.10 come macchina virtuale.

Spero che questa domanda abbia un senso.

Risposte:


13

Non ha perfettamente senso perché hai detto "dovresti fare", come se fosse il tuo lavoro. Stai configurando un vero server di posta all'interno di una macchina virtuale? Prendo le indicazioni per indicare che è necessario che il server virtuale disponga di un sistema di posta, ma che il server virtuale non sia un server SMTP "reale" a tempo pieno. (Altrimenti lo sapresti già, immagino selvaggiamente.)

Con questo in mente, avresti bisogno dell'opzione "Internet con smarthost". In sostanza, la ragione principale è che i server SMTP ben configurati in tutto il mondo usano tutti misure anti-spam; e, tra queste misure, vi è il rifiuto di tutte le connessioni SMTP che provengono da pool noti di indirizzi dinamici (che gli spammer amano usare). Pertanto, è necessario utilizzare un altro server SMTP per la posta in uscita.

Se vuoi rimanere con Postfix per questo, è facile da fare: basta cercare gli articoli di Ubuntu relativi alla configurazione di Postfix come smarthost. Tuttavia, se si dispone di alcuna affinità particolare per un sistema piuttosto che un altro, v'è un pacchetto studiato proprio per questo: ssmtp. Quindi, se vuoi fare un giro, installa semplicemente ssmtp.

( Attenzione: l'azione sotto rimuoverà postfix o sendmail. )

sudo apt-get install ssmtp

Quindi modificare il file di configurazione ssmtp:

sudo -e /etc/ssmtp/ssmtp.conf

Non conosco i dettagli di un server SMTP a tua disposizione, quindi fornirò un esempio di GMail:

Root=your_email@gmail.com
Mailhub=smtp.gmail.com:465
RewriteDomain=gmail.com
AuthUser=your_gmail_username # me@gmail.com
AuthPass=your_gmail_password
FromLineOverride=Yes
UseTLS=Yes

Ora il tuo sistema invierà la posta nel modo desiderato. È possibile utilizzare localhost come server di posta nelle applicazioni GUI per il server SMTP in uscita. Ma che dire della CLI? Usa il mailsoftware:

sudo apt-get install heirloom-mailx

Ora puoi anche usare la posta dalla riga di comando con qualcosa del tipo:

mail < filename.ascii someone@somewhere.com -s "My File"

In alternativa, se si utilizza mailper comporre un messaggio digitato ( mail someone@somewhere.com), quindi completare il messaggio di posta con un singolo punto su una riga vuota. Un client di posta CLI migliore è mutto pine.

È questo l'angolo che ti serviva? Se è così, ha avuto successo?


1
Mutt dice "sendmail: Impossibile aprire: 25" quando provo a inviare un'e-mail. ssmtp dice "ssmtp: impossibile aprire: 25" Ho anche detto che posso inviare e-mail tramite Thunderbird, ma penso di aver sbagliato. Mi dispiace per quello. Ottengo il timeout quando invio nel tentativo di inviare e-mail tramite Thunderbird e messaggi sulla porta 25 quando si utilizzano i client di posta della CLI.
afaf12

@ afaf12 controlla se il firewall sta bloccando. L'errore di timeout della connessione si verifica principalmente a causa del problema del firewall.
Mughil

1
Il server di posta remoto limita l'accesso a determinati intervalli di indirizzi, mediante configurazione o firewall?

È necessario utilizzare su questo server di posta remoto la porta di invio: 465?

Non riesco a sudo /etc/init.d/ssmtp restartlavorare sul mio computer.
Nam G VU,

1

Se si utilizza Thunderbird, è possibile configurare un server remoto per SMTP. A meno che tu non abbia un tuo server di posta, questo sarebbe normalmente il server di inoltro del tuo ISP o il server SMTP dei tuoi fornitori di posta. Ho usato con successo Gmail come mio server SMTP, ma richiede autenticazione. (Anche alcuni degli altri host potrebbero.)

Testare l'accesso al server con il comando telnet mail.example.com 25. Se funziona, riceverai un messaggio banner dal server.

Una volta che Thunderbird lavora con il server, è possibile configurare Exim o Postfix come server satellite per lo stesso server. Puoi saltare questo se non hai bisogno di inviare e-mail dal sistema da altre applicazioni. Fare attenzione, che l'indirizzo di origine sul server in uscita possa accettare la posta elettronica.

MODIFICA: Verifica che iptables non sia attivato e blocchi il traffico in uscita. In tal caso, abilita il traffico in uscita sulla porta desiderata. Puoi usare un comando come tcptraceroute mail.example.com 25per vedere dove ti stai bloccando. tcptraceroutedovrebbe essere installato prima di utilizzarlo.


Telnet: impossibile connettersi all'host remoto: timeout della connessione. Sono sicuro che il server remoto può accettare la posta sulla porta 25. Ho inviato con successo e-mail a questo server remoto da un'altra macchina (Windows 7).
afaf12,

0

L'ho provato su una scatola vagabonda e funzionava perfettamente. Installato seguendo le cose eseguendo il comando

apt-get install php-pear

mail di installazione di pera

pero installa Net_SMTP

pear install Auth_SASL

pear installa mail_mime

Quindi installare postfix eseguendo il comando seguente

apt-get install postfix

durante l'installazione Selezionare--

Sito Internet e localhost al posto del server perché stiamo provando questo su localhost

Dopo questo eseguire il comando seguente

sudo vim /etc/ssmtp/ssmtp.conf

per apportare modifiche ai file

apportare questa modifica al file ssmtp.conf

FromLineOverride = YES

AuthUser=youremail@gmail.com

AuthPass = yourpasss

più importante rendere accessibile la tua e-mail ad app meno sicure

https://www.google.com/settings/security/lesssecureapps

e quindi è possibile utilizzare la funzione php mail o Enter seguendo il comando nel terminale per inviare la posta dal terminale stesso

$ ssmtp youremail@gmail.com

Da: youremail@gmail.com

A: sendto@email.com

Oggetto: il soggetto

Ciao, questa è la mia prima email ssmtp !.

premi Ctrl + D e ssmtp invierà la tua email

Puoi anche controllare che smtp funzioni o meno dal tuo computer

ping smtp.gmail.com

--output da questo comando è qualcosa di simile

64 byte da sc-in-f108.1e100.net (74.125.68.108): icmp_seq = 1 ttl = 63 time = 68.4 ms

telnet smtp.gmail.com 587

--output deve essere qualcosa del genere

Prova 74.125.68.108 ...

Collegato a gmail-smtp-msa.l.google.com.

220 smtp.gmail.com ESMTP l14sm12513264pfb.73 - gsmtp

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.