A volte, tuttavia, tutto ciò che devi fare è inviare un semplice messaggio di solo testo e potresti non essere sempre in grado di avviare un'applicazione GUI o accedere a un'interfaccia di webmail per svolgere il lavoro. In tali situazioni, è utile sapere come inviare e -mail dalla riga di comando di Linux e questo articolo spiega come fare proprio questo.
Prima di iniziare
Prima di descrivere i modi più intelligenti per inviare e -mail dalla riga di comando di Linux, cosa puoi aspettarti di imparare leggendo questo articolo:
Imparerai Per inviare messaggi di posta elettronica tramite il server SMTP del provider di posta elettronica a qualsiasi indirizzo e -mail.
Non imparerai Come impostare il tuo server di posta elettronica e utilizzarlo per inviare direttamente i messaggi di posta elettronica.
Perché no? Perché nessuno accetterebbe comunque le e -mail inviate dal tuo server di posta elettronica. Come sapete, lo spam è un grosso problema quando si tratta di e -mail e praticamente tutti i fornitori di servizi di e -mail e i server di posta ora includono almeno la protezione da spam di base che provoca il rifiuto di tutte le e -mail da fonti dubbie.
Un appassionato utente Linux con un server di posta elettronica fai -da -te è considerato una dubbia fonte di e -mail. Inoltre, la maggior parte dei provider di servizi Internet blocca la porta 25, che è la porta standard utilizzata per le connessioni SMTP, quindi molto probabilmente non saresti nemmeno in grado di inviare messaggi in primo luogo.
Invece di affrontare tutti i problemi di far funzionare un server di posta elettronica domestico, è molto più facile utilizzare un servizio di posta elettronica come Gmail, che useremo per questo articolo.
Se non l'hai già fatto, accedi al tuo account Gmail e abilita Access IMAP dalla scheda Forwarding e Pop/IMAP nelle impostazioni. Dovresti anche consentire app che utilizzano una tecnologia di accesso meno sicura.
Metodo n. 1: Mutt
Mutt è un venerabile client di posta elettronica. È stato creato nel 1995 da Michael Elkins e da allora ha ricevuto aggiornamenti a un ritmo costante. Nonostante la sua natura di comando, MUTT supporta molte funzionalità utili, tra cui macro da tastiera, PGP/MIME, threading dei messaggi, allegati e molto altro ancora. È possibile utilizzarlo con qualsiasi servizio di posta elettronica che fornisce accesso POP3 o IMAP.
Innanzitutto, devi installare Mutt dai repository della tua distribuzione:
$ sudo APT Installa Mutt
Quindi puoi lanciare Mutt:
$ mutt
Ti verrà chiesto di creare una directory di posta. Scegli "sì" per crearlo. Mutt dovrebbe lanciarti e dirti che nessuna cassetta postale è aperta. Ora che hai confermato che Mutt sta funzionando, è tempo di creare alcune directory di base e il file di configurazione principale, chiamato MUTTRC.
$ mkdir -p ~/.mutt/cache/intestazioni
$ mkdir ~/.mutt/cache/corpi
$ touch ~/.Mutt/certificati
$ touch ~/.Mutt/Muttrc
Ora, apri il file di configurazione nel tuo editor di testo preferito e copia e incolla la seguente configurazione (assicurati di modificare le impostazioni predefinite in quelle che corrispondono al tuo account e -mail Gmail):
# SMTP
Imposta SMTP_URL = "SMTP: // [email protected]: 587/"
Imposta SMTP_PASS = $ IMAP_PAPS
Imposta ssl_force_tls = Sì
# IMAP
Imposta imap_user = nome [email protected]
Imposta imap_pass = password
Imposta spoolfile = imaps: // imap.gmail.com/casella di posta
set cartella = imaps: // imap.gmail.com/
Imposta record = "IMAPS: // IMAP.gmail.com/[gmail]/ha inviato posta "
Imposta postponed = "IMAPS: // IMAP.gmail.com/[gmail]/bozze "
Imposta mBox = "IMAPS: // IMAP.gmail.com/[Gmail]/All Mail "
Imposta header_cache = "~/.mutt/cache/intestazioni "
Imposta Message_Cachedir = "~/.mutt/cache/corpi "
Imposta certificate_file = "~/.Mutt/Certificati "
# Editor
Set editor = "nano"
Ora puoi lanciare Mutt e dovrebbe prendere automaticamente le tue e -mail per te. Per inviare il tuo primo messaggio e -mail dalla riga di comando, premere "M" sulla tastiera. Scegli di non ricordare un messaggio rinviato e inserire l'indirizzo e -mail del destinatario, l'oggetto del messaggio e -mail e, infine, il corpo del messaggio.
Prima che MUTT invii il messaggio e -mail, ti consentirà di modificarlo e allegare un file. Una volta che ne sei felice, puoi premere "y" per inviarlo. È così facile inviare un'e -mail dalla riga di comando Linux!
Metodo n. 2: Aerc
Probabilmente non ti sorprenderà apprendere che Mutt non è l'unico client di posta elettronica di comando per Linux, anche se è sicuramente il più popolare. Mentre sarebbe oltre lo scopo di questo articolo descrivere tutti i client di posta elettronica della riga di comando per Linux, ci sono altri due clienti che vogliamo che tu sappia, a partire da AERC.
Progettato per essere efficiente ed estensibile, AERC porta al supporto della tabella per più account, keybindings in stile VIM, un browser Web interattivo in grado di rendere e-mail HTML e altro ancora.
Soprattutto, AERC è considerevolmente più facile da configurare rispetto a Mutt, ma c'è la possibilità che non sia incluso nei repository della tua distribuzione. In tal caso, puoi compilarlo da solo seguendo le istruzioni sulle istruzioni ufficiali.
Quando hai installato AERC sul tuo sistema, puoi lanciarlo utilizzando il comando "AERC". Aerc include una comoda procedura guidata di configurazione per aiutarti a configurare il tuo account, non è necessario modificare manualmente i file di configurazione!
Una volta che hai finito di inserire informazioni sull'account di base e configurazione di un paio di impostazioni di base, puoi leggere il tutorial in bundle o andare direttamente alla tua casella di posta.
Per comporre un nuovo messaggio, tutto ciò che devi fare è premere Shift + C.
Metodo n. 3: Swaks
Per inviare e -mail dalla riga di comando Linux nel modo più intelligente possibile, è necessario pensare fuori dagli schemi e utilizzare gli strumenti software in modi che non dovevano essere utilizzati. L'applicazione SWAKS è un tester di transazioni SMTP per tutti gli usi che può essere utilizzato per inviare messaggi di posta elettronica tramite Gmail e altri provider.
Inizia installandolo proprio come faresti con qualsiasi altra applicazione:
$ sudo APT Installa Swaks
Ora inserisci il seguente comando (assicurati di includere il tuo indirizzo Gmail) per testare la connessione:
$ swaks -t nome [email protected] -s Smtp.gmail.com: 587 -tls -a login [Invio]
Ti verrà chiesto di inserire il tuo nome utente Gmail (il tuo indirizzo email) e la tua password. Dovresti ricevere un indirizzo email da te stesso, confermando che il test ha avuto successo. Per inviare un messaggio di posta elettronica effettivo, utilizzare la seguente sintassi:
$ swaks -to [email protected] -s Smtp.gmail.com: 587 -tls -au-ap --Attacco -d ./Mail.TXT
È così che puoi inviare un messaggio di posta elettronica utilizzando Swaks con un singolo comando terminale.
Metodo n. 4: SSMTP
SSMTP è un programma di consegna e -mail destinato a consegnare la posta da un computer a un hub di posta (server SMTP). Ciò significa che puoi usarlo per inviare un messaggio di posta elettronica a qualcun altro, ma non puoi usarlo per ricevere un messaggio di posta elettronica inviato da qualcun altro.
È possibile installare SSMTP installando il pacchetto corrispondente dai repository:
$ sudo apt install ssmtp
La configurazione viene eseguita modificando/etc/ssmtp/ssmtp.File di configurazione di configurazione:
# L'utente che ottiene tutte le mail (uid < 1000, usually the admin)
root = nome [email protected]
# Il server di posta (in cui viene inviata la posta), sia la porta 465 o 587 dovrebbe essere accettabile
# Vedi anche https: // support.Google.com/mail/risposta/78799
MailHub = SMTP.gmail.com: 587
# L'indirizzo da cui sembra provenire la posta per l'autenticazione dell'utente.
riscrittura = gmail.com
# Il nome host completo. Deve essere formato correttamente, il nome di dominio completamente qualificato o Gmail rifiuteranno la connessione.
hostname = yourLocalHost.yourlocaldomain.tld
# Usa SSL/TLS prima di iniziare la negoziazione
TLS_CA_FILE =/etc/ssl/certi/certificati CA.Crt
Usetls = sì
Usestarttls = sì
# Nome utente/password
AuthUser = nome utente
AuthPass = password
AuthMethod = Login
# Email 'da Header's può sovrascrivere il dominio predefinito?
Da LineOverride = Sì
Per inviare un messaggio di posta elettronica, è necessario installare il pacchetto MailUtils (Sistemi basati su Debian) o MailX (Sistemi basati su RHEL) per utilizzare il comando Mail per passare il messaggio di posta elettronica a SSMTP che può consegnarlo a Gmail. Come questo:
$ echo -e "soggetto: questo è il soggetto \ n \ nthis è il corpo" | Mail [email protected]
Metodo n. 5: Telnet
L'ultimo metodo che vogliamo guardare è quello più gessoso di tutti, ma potrebbe tornare utile ad un certo punto della tua vita, quindi almeno essere consapevoli della sua esistenza è bello. Questo metodo si basa su Telnet, un protocollo client-server utilizzato per stabilire una connessione a remota solo testo su una rete.
La cosa fantastica di questo metodo è che un client Telnet è probabilmente già installato sulla distribuzione Linux. Ciò che non è così grande è che ci sono molti passi da seguire. Dato che stiamo usando Gmail per gli scopi di questo articolo, è necessario assicurarsi che il tuo client Telnet supporti la crittografia SSL:
$ sudo APT Installa Telnet-SSL
È quindi possibile avviare il client Telnet e collegarlo al server SMTP di Gmail:
$ telnet -z ssl smtp.gmail.com 465
Dal momento che sarebbe scortese non presentarci, puoi salutare il server in questo modo:
Helo Hellogoogle
Se hai ricevuto una risposta positiva, puoi procedere con l'autenticazione:
Accesso dell'autenzione
Innanzitutto, inserisci il tuo nome utente codificato in Base64 e quindi inserisci la password, anche codificata in Base64. Il server SMTP dovrebbe rispondere con "334 UGFZC3DVCMQ6" ogni volta.
Ora è il momento di specificare il tuo indirizzo email:
Mail da:
Quindi, specifica il destinatario:
Rcpt a:
Infine, dì al server SMTP che vuoi scrivere un'e -mail:
DATI
Ora puoi inserire l'oggetto della tua e -mail e premere Invio per confermare. Procedere con il corpo della posta e premere Invio per confermare. Per chiudere il messaggio di posta elettronica, inserisci:
.
Dovresti vedere un messaggio di conferma che assomiglia a questo: 250 2.0.0 OK 1630506266 N10SM56478EJK.86 - GSMTP
Immettere il comando seguente per terminare la connessione e inviare l'e -mail:
ESENTATO
Conclusione
Sta inviando messaggi di posta elettronica dalla riga di comando di Linux impraticabile? Forse, ma non sai mai quando questa abilità sarà utile. Anche se non lo metti mai a frutto, almeno puoi sentirti bene con te stesso, sapendo che sei diventato leggermente più avanzato come utente Linux.