De Smarteste Måtene Å Sende E-Post Fra Linux-Kommandolinjen

Selv om et halvt århundre har gått siden den første e-postmeldingen ble sendt, stoler vi fortsatt på gammel teknologi daglig. Moderne e-postklienter og tjenester er slanke, enkle å bruke og fullpakket med mer avanserte funksjoner enn de fleste brukere vet hvordan de skal bruke.

noen ganger trenger du imidlertid bare å sende en enkel tekstmelding, og du kan ikke alltid starte ET GUI-program eller logge på et webmail-grensesnitt for å få jobben gjort. I slike situasjoner er det praktisk å vite hvordan du sender e-post Fra Linux – kommandolinjen, og denne artikkelen forklarer hvordan du gjør nettopp det.

Før Vi Begynner

før vi beskriver de smarteste måtene å sende e-post fra Linux-kommandolinjen, hva du kan forvente å lære ved å lese denne artikkelen:

du vil lære å sende e-postmeldinger via e-postleverandørens SMTP-server til en hvilken som helst e-postadresse.

du lærer ikke hvordan du konfigurerer e-postserveren og bruker den til å sende e-postmeldinger direkte.

Hvorfor ikke? Fordi ingen ville godta e-post sendt fra e-postserveren uansett. Som du vet, er spam et stort problem når det gjelder e-post, og nesten alle e-postleverandører og e-postservere inneholder nå minst grunnleggende spambeskyttelse som gjør at alle e-postmeldinger fra tvilsomme kilder blir avvist.

en Ivrig Linux-bruker med EN DIY e-postserver regnes som en tvilsom kilde til e-post. Dessuten blokkerer de fleste internettleverandører port 25, som er standardporten som brukes TIL SMTP-tilkoblinger, slik at du sannsynligvis ikke engang vil kunne sende meldinger i utgangspunktet.

I Stedet for å gå gjennom alle problemer med å lage en hjemme-e-postserver, er det mye lettere å bruke en e-posttjeneste som Gmail, som vi skal bruke for denne artikkelen.

hvis du ikke allerede har gjort det, logger du På Gmail-kontoen din og aktiverer IMAP-tilgang fra Videresending og POP/IMAP-fanen I Innstillinger. Du bør også tillate apper som bruker mindre sikker påloggingsteknologi.

Metode #1: Mutt

Mutt er en ærverdig e-postklient. Det ble opprettet I 1995 Av Michael Elkins, og det har mottatt oppdateringer med jevn hastighet helt siden. Til tross for sin kommandolinje natur, støtter Mutt mange nyttige funksjoner, inkludert tastatur makroer, PGP / MIME, melding threading, vedlegg, og mye mer. Du kan bruke den med en hvilken som helst e-posttjeneste som gir POP3 eller IMAP-tilgang.

først må du installere Mutt fra distribusjonens repositories:

$ sudo apt installere mutt

deretter kan du starte Mutt:

$ mutt

Du vil bli bedt om å opprette En E-postkatalog. Velg «ja» for å lage den. Mutt bør starte og fortelle deg at ingen postkasse er åpen. Nå som Du har bekreftet At Mutt fungerer, er det på tide å lage noen grunnleggende kataloger og hovedkonfigurasjonsfilen, kalt muttrc.

$ mkdir-p ~/.mutt/cache / overskrifter
$ mkdir ~/.mutt/cache / organer
$ touch ~/.mutt / sertifikater
$ touch ~/.mutt / muttrc

nå åpner du konfigurasjonsfilen i din favoritt tekstredigerer og kopierer & lim inn følgende konfigurasjon (sørg for å endre standardinnstillingene til de som samsvarer Med Gmail-e-postkontoen din):

# SMTP
sett smtp_url = » smtp://:587 / «
sett smtp_pass = $imap_pass
sett ssl_force_tls = ja
# IMAP
sett imap_user = [email protected]
sett imap_pass = passord
sett spoolfile = imaps://imap.gmail.com/INNBOKS
sett mappe = imaps://imap.gmail.com/
sett rekord=»imaps://imap.gmail.com//Sendt E-Post»
sett utsatt=»imaps://imap.gmail.com//Utkast»
sett mbox=»imaps://imap.gmail.com//all post»
sett header_cache = «~/.mutt / cache / overskrifter »
sett message_cachedir =»~/.mutt / cache / organer »
sett certificate_file =»~/.mutt / sertifikater «
# REDAKTØR
sett redaktør = «nano»

Du kan nå starte Mutt, og det skal automatisk hente e-postene dine for deg. For å sende din første e-postmelding fra kommandolinjen, trykk » m » på tastaturet. Velg ikke å huske en utsatt melding, og skriv inn mottakerens e-postadresse, emnet for e-postmeldingen og til slutt meldingsteksten.

Før Mutt sender e-postmeldingen, vil det tillate deg å endre det og legge ved en fil. Når du er fornøyd med det, kan du trykke » y » for å sende den. Det er så enkelt det er å sende en e-post fra Linux kommandolinjen!

Metode #2: aerc

det vil nok ikke overraske deg å lære At Mutt ikke er Den eneste kommandolinjeklienten For Linux, selv om den er absolutt den mest populære. Selv om det ville være utenfor omfanget av denne artikkelen for å beskrive alle kommandolinjeklienter For Linux, er det to flere klienter vi vil at du skal vite om, og starter med aerc.

designet for å være effektiv og utvidbar, bringer aerc til bordet støtte for flere kontoer, Vim-stil keybindings, en interaktiv terminal nettleser i stand TIL å gjengi HTML e-post, og mer.

best av alt, aerc er betydelig enklere å sette opp enn Mutt, men det er en sjanse for at det ikke vil bli inkludert i distribusjonens arkiver. I så fall kan du kompilere det selv ved å følge instruksjonene på de offisielle instruksjonene.

når du har aerc installert på systemet ditt, kan du starte det ved hjelp av kommandoen «aerc». Aerc inkluderer en hendig installasjonsveiviser for å hjelpe deg med å konfigurere kontoen din-du trenger ikke å redigere konfigurasjonsfiler manuelt!

Når du er ferdig med å skrive inn grunnleggende kontoinformasjon og konfigurere et par grunnleggende innstillinger, kan du enten lese den medfølgende opplæringen eller gå rett til innboksen din.

for å skrive en ny melding, er alt du trenger å gjøre, trykk Shift + C.

Metode #3: swaks

for å sende e-post Fra Linux-kommandolinjen på den smarteste måten, må du tenke utenfor boksen og bruke programvareverktøy på måter de ikke var ment å bli brukt. Swaks-programmet er en allsidig SMTP-transaksjonstester som kan brukes til å sende e-postmeldinger via Gmail og andre leverandører.

Start med å installere det akkurat som du ville noe annet program:

$ sudo apt install <a > < / a > swaks

skriv inn følgende kommando (sørg for å inkludere Din Egen Gmail-adresse) for å teste tilkoblingen din:

$ swaks-t [email protected] -s smtp. gmail. com:587-tls-EN PÅLOGGING

Du vil bli bedt om å skrive Inn Gmail-brukernavnet ditt (e-postadressen din) og passordet ditt. Du bør motta en e-postadresse fra deg selv, som bekrefter at testen var vellykket. Hvis du vil sende en faktisk e-postmelding, bruker du følgende syntaks:

$ swaks –til [email protected] -s smtp. gmail. com: 587-tls-au< brukerkonto > -ap < konto-passord > –attach-d ./post.txt

Slik kan du sende en e-postmelding ved hjelp av swaks med en enkelt terminal kommando.

Metode # 4: sSMTP

sSMTP er et e-postleveringsprogram som skal levere e-post fra en datamaskin til EN e-postnav (SMTP-server). Dette betyr at du kan bruke den til å sende en e-postmelding til noen andre, men du kan ikke bruke den til å motta en e-postmelding sendt til deg av noen andre.

du kan installere sSMTP ved å installere den tilsvarende pakken fra repositories:

$ sudo apt install ssmtp

Konfigurasjonen gjøres ved å redigere /etc / ssmtp / ssmtp.conf konfigurasjonsfil:

# brukeren som får alle postene (UID < 1000, vanligvis admin)
[email protected]
# e-postserveren (der e-posten sendes til), bør både port 465 eller 587 være akseptabelt
# Se også https://support.google.com/mail/answer/78799
mailhub=smtp.gmail. com:587
# adressen der e-posten ser ut til å komme fra for brukerautentisering.
rewriteDomain=gmail.com
# det fulle vertsnavnet. Må være riktig utformet, fullt kvalifisert domenenavn eller Gmail vil avvise tilkoblingen.
vertsnavn=yourlocalhost.ditt lokale domene.tld
# Bruk SSL/TLS før du starter forhandling
TLS_CA_FILE=/etc/ssl / certs / ca-sertifikater.crt
UseTLS=Ja
UseSTARTTLS=Ja
# Brukernavn / Passord
AuthUser=brukernavn
AuthPass=passord
AuthMethod=LOGG inn
# E-Post ‘fra topptekst kan overstyre standarddomenet?
FromLineOverride = ja

for å sende en e-postmelding må du installere pakken mailutils (Debian-baserte systemer) eller mailx (RHEL-baserte systemer) for å bruke mail-kommandoen til å sende e-postmeldingen til sSMTP at den kan levere Den Til Gmail. Som dette:

$ echo-e » Emne: dette er emnet\n \ ndette er kroppen | / mail [email protected]

Metode # 5: Telnet

den siste metoden vi vil se på er den geekiest av dem alle, men det kan komme til nytte på et tidspunkt i livet ditt, så det er i det minste å være klar over eksistensen. Denne metoden er avhengig Av Telnet, en klient-server-protokoll som brukes til å etablere en ekstern tekst-tilkobling over et nettverk.

det som er bra med denne metoden er at En Telnet-klient sannsynligvis allerede er installert på Linux-distribusjonen din. Det som ikke er så bra er at det er mange skritt å gå gjennom. Siden vi bruker Gmail i denne artikkelen, må du sørge for at telnet-klienten støtter SSL-kryptering:

$ sudo apt install telnet-ssl

Du kan deretter starte Telnet-klienten og koble Den til Gmail ‘ S SMTP-server:

$ telnet – z ssl smtp.gmail.com 465

Siden det ville være uhøflig å ikke introdusere oss selv, kan du hilse på serveren slik:

HELO hellogoogle

hvis du har mottatt et positivt svar, kan du fortsette med autentisering:

AUTH LOGIN

skriv først inn brukernavnet ditt kodet i base64 og skriv deretter inn passordet ditt, også kodet i base64. SMTP-serveren skal svare med» 334 UGFzc3dvcmQ6 » hver gang.

nå er det på tide å spesifisere e-postadressen din:

POST fra: <[email protected]>

deretter angir mottakeren:

RCPT til: < [email protected]>

til SLUTT, fortell SMTP-serveren at du vil skrive en e-post:

DATA

Du kan nå skrive inn emnet i e-posten din og trykke enter for å bekrefte. Fortsett med postens kropp og trykk enter for å bekrefte. For å lukke e-postmeldingen, skriv inn:

du skal se en bekreftelsesmelding som ser slik ut: 250 2.0.0 OK 1630506266 n10sm56478ejk.86-gsmtp

Skriv inn følgende kommando for å avslutte tilkoblingen og sende e-posten:

AVSLUTT

Konklusjon

er det upraktisk å sende e-postmeldinger fra Linux-kommandolinjen? Kanskje, men du vet aldri når denne ferdigheten vil være nyttig. Selv om du aldri bruker det til god bruk, kan du i det minste føle deg godt om deg selv, og vite at du har blitt litt mer avansert som Linux-bruker.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.