i blogindlægget bedste gratis SMTP-servere berørte vi de skybaserede løsninger til afsendelse af e-mails. Disse er ret almindelige for alle størrelser af projekter. Men hvad nu hvis du ikke vil bruge e-mail-relætjenesterne i Gmail SMTP eller dens alternativer? I denne artikel lærer vi dig, hvordan du opretter en lokal SMTP-server og slippe af med eventuelle e-mail-afsendelsesafhængigheder.
har du virkelig brug for en SMTP-server?
brug af en udgående SMTP-server er den traditionelle metode til at sende e-mails. En alternativ løsning er at omgå SMTP-serveren og sende direkte til destinationen. Det er kendt som direkte Send, og du kan bruge det gennem specifikke e-mail-programmer. Direkte afsendelse er dog ikke særlig pålidelig, og her er hvorfor:
- det kan ikke bruges, hvis port 25 er blokeret af din internetudbyder.
- det er uegnet til bulk e-mail på grund af flere forbindelser til mange forskellige servere.
- det kan ikke sende ikke-personlige e-mails.
- det kan blokeres af e-mail-filtre, fordi e-mails ikke sendes fra en almindelig SMTP-server.
lad os sætte direkte sende væk. Hvad du kan være interesseret i er, hvorfor du ville køre din egen SMTP-server.
fordele og ulemper ved en lokal SMTP-server
fordele | ulemper |
---|---|
|
|
nogle skybaserede løsninger som Mailgun og SendPulse giver også alle fordelene ovenfor. Alle disse funktioner betales dog, og du skal stadig stole på en tredjepartstjeneste. I stedet kan du oprette en SMTP-server på din computer ved hjælp af et bestemt program.
krav til en lokal SMTP-server
der er ingen specifikke krav hidtil. Ikke desto mindre bør du være forberedt på følgende:
- Nogle internetudbydere kan blokere porten 25. Du kan løse dette ved at kontakte din internetudbyder og lære om de begrænsninger, de måtte pålægge. Du skal også anmode om en korrekt DNS-server og tilladelse til opløsning af MK-post.
- for bulk – e-mails skal du sandsynligvis vælge et domæne og en fast IP-adresse, der er knyttet til det-dette vil øge din modstand mod spamfiltre.
hurtig SMTP-serveropsætning
lad os nu gøre jobbet. Da du skal oprette en SMTP-server på din computer, er det vigtigt at vide, hvilket operativsystem der bruges. Derfor gennemgår vi tre måder, hvordan du gør dette til macOS, vinduer og Linou.
vigtig note: hvis du sender test-e-mails til den rigtige e-mail-adresse, kan du muligvis ikke finde dem i indbakken. Glem ikke at kontrollere spam-mappen. ESP ‘ er som Gmail, Yahoo og andre er mistænkelige for nye mailoverførselsagenter.
til macOS
de nyeste versioner af macOS leveres forudinstalleret med Postrettelse-en standard e – mail-server. Så alt hvad du skal gøre er at justere SMTP-serverkonfigurationen som følger:
postfiks konfigurationsfil
- postfiks hovedkonfigurationsfilen er den første til at arbejde med. Kør:
sudo vim /etc/postfix/main.cf
- Fortæl
hvilket navn det skal bruge til at identificere sig til andre mailservere. Tilføj følgende linjer:
myhostname = john.example.commyorigin = example.com
hvis dit lokale brugernavn er John, mailen ser ud til at være fra [email protected].
- relæværten er den maskine, der accepterer mails efter godkendelse og videresender dem til SMTP-serveren.
relayhost=mail.example.com:25
- du skal aktivere SASL med en ekstra konfigurationsfil, hvor adgangskoden er gemt.
smtp_sasl_auth_enable = yessmtp_sasl_password_maps = hash:/etc/postfix/saslpasswd
- denne linje betyder, at Postrettelse kun bruger TLS-krypterede forbindelser.
smtp_tls_security_level = encrypt
- her er hvordan
main.cf
ser ud fuldt ud:
myhostname = john.example.commyorigin = example.comrelayhost=mail.example.com:25smtp_sasl_auth_enable = yessmtp_sasl_password_maps = hash:/etc/postfix/saslpasswdsmtp_tls_security_level = encrypt
- Gem filen med:
sudo postmap /etc/postfix/main.cf
fil med SASL-adgangskode
- Opret filen
sasl_passwd
:
sudo vim /etc/postfix/sasl_passwd
- tilføj følgende linje:
mail.example.com:25 [email protected]:
- Gem filen med:
sudo postmap /etc/postfix/sasl_passwd
- og genstart Postrettelse:
sudo postfix reload
den lokale SMTP-server er klar. Prøv det ved at sende en test-e-mail:
date | mail -s "Test email" [email protected]
Bemærk: denne installationsproces er velegnet til ikke-macOS-maskiner, der har en almindelig postfiks-dæmon.
for Linuk
de fleste distributioner leveres med de to mest almindelige SMTP-implementeringer: Sendmail og Postrettelse. Sendmail har et ret komplekst design og er mindre sikkert; derfor valgte vi Postfiks igen.
Installation
hvis du ikke har Postrettelse på din maskine, skal du installere den først. Du skal også bruge postpakken Mailutils, som indeholder programmer, der er nødvendige for, at Postrettelsen kan fungere:
sudo apt install mailutils postfix
i konfigurationsvinduet efter rettelse skal du vælge konfigurationen af Internetsidens mail. Endelig skal du angive systemets mailnavn. Det skal være det samme som det navn, du har tildelt domænenavnet, der peger på din server. Lad os bruge example.com.
konfiguration
lad os nu konfigurere Postrettelse til at behandle anmodninger om at sende e-mails fra localhost. Til dette skal du justere hovedkonfigurationsfilen main.cf
:
sudo nano /etc/postfix/main.cf
Rul ned til linjen inet_interfaces = all
og erstat den med inet_interfaces = loopback-only
du skal også ændre mydestination
, som angiver listen over domæner. Det skal se sådan ud:
mydestination = $myhostname, localhost.$example.com, $example.com
Gem filen og genstart Postrettelsen med:
sudo systemctl restart postfix
i slutningen skal du prøve at sende en test-e-mail:
echo "Test email body" | mail -s "Test email subject line" receipient's_email_address
til vinduer
der er flere muligheder for at oprette en SMTP-server på vinduer, herunder MailEnable og Apache James. Men vi har valgt den mest populære, kaldet hMailServer.
Installation
Hent den nyeste version her, og installer den. I begyndelsen af installationen skal du være opmærksom på følgende:
- i vinduet Vælg komponenter skal du sørge for, at fuld installation er valgt. Server og Administrative komponenter skal kontrolleres.
- i vinduet vælg databaseservertype skal du kontrollere den indbyggede databasemotor.
- Opret en adgangskode til standardbrugeren i vinduet Hmailserver Security.
når det er installeret, skal du køre hMailServer, og lad os nu konfigurere det.
konfiguration
- Klik på Opret forbindelse i startvinduet, og indtast den adgangskode, du oprettede under installationen.
- Klik på Tilføj Domæne, og indtast dit domænenavn i det tilsvarende felt. Forresten kan du bruge et falsk domænenavn, da den rigtige ikke er forpligtet til at sende e-mails. Men i dette tilfælde skal du sørge for, at det falske domæne faktisk ikke eksisterer. Klik på Gem, og du vil se dit domæne oprettet i venstre fane.
- vælg mappen konti i venstre fane, og klik på Tilføj… for at konfigurere en. Alt du skal gøre her er at indtaste et navn i adressefeltet. Dette opretter din e-mail-adresse. Eventuelt kan du angive en adgangskode. Klik på Gem og gå videre til indstillingerne i venstre fane.
- Udvid indstillingstråden, og vælg protokoller. Fjern markeringen af POP3 og IMAP. For mere om disse protokoller, læs vores blogindlæg IMAP vs. POP3 vs. SMTP. Klik På Gem.
- Vælg nu Avanceret i indstillingstråden og indtast localhost i Standarddomænefeltet i højre fane. Klik På Gem. For at ende med de avancerede indstillinger skal du vælge automatisk forbud og fjerne markeringen i feltet Aktiveret. Klik På Gem.
- til sidst skal du udvide hjælpeprogrammet og vælge diagnostik. Vælg dit domæne for at køre test på, og klik på Start. Vi er ikke interesseret i alle testene, bare indsamle serveroplysninger og Test udgående port. Disse skal være markeret grønt.
det er det. Nu Kan du sende din test e-mail. Dette kan gøres med Strømshell-det er hurtigt og nemt. For mere om dette, læs vores blogindlæg Send e-mails fra
Send-MailMessage -To "<recipient's email address>" -From "<your email address>" -Subject "Your email subject" -Body "Your email body text" -Credential "<your username>" -SmtpServer "127.0.0.1" -Port 25
i pop op-vinduet skal du indtaste din adgangskode.
er en SMTP-server god til test?
i de fleste tilfælde opretter folk lokale SMTP-servere til testformål. Hvis du udvikler en app, der sender e-mails, skal du teste denne funktion, og en rigtig SMTP-server, der kører på din lokale maskine, kan synes at være en god mulighed. Men er det? På den ene side er det ikke besværligt at installere og konfigurere en lokal SMTP-server. Der er dog en meget bedre løsning.
hvis du bruger Mailtrap til test, får du et avanceret værktøj baseret på en falsk SMTP-server. Det betyder, at din app sender e-mails, men faktisk ikke leverer dem. Din udgående mail vil ende i Mailtrap Demo indbakke. Så du behøver ikke bekymre dig om rigtige e-mail-modtagere og kontrollere spam-mappen, hver gang du kører test. Ingen installation er overhovedet påkrævet. Alt du skal gøre er at opdatere dine SMTP-indstillinger med Mailtrap-legitimationsoplysninger. Alternativt kan du kopiere og indsætte et kodestykke, der er klar til brug. Forskellige integrationer er tilgængelige for de mest almindelige rammer og programmeringssprog. For mere information om andre fordele og muligheder, læse Mailtrap Kom godt i gang Guide.
at afslutte
at køre en lokal mailserver kan undertiden være en smerte. Der kræves stor viden og indsats for at opnå god e-mail-leverbarhed ved hjælp af din egen SMTP-server. Måske er det en god mulighed til testformål, men Mailtrap eller andre e-mail-testværktøjer vil gøre det bedre. Så har du faktisk brug for en lokal SMTP-server? Du er den eneste, der kan svare på det. Held og lykke!