Adam Automator
hader det eller elsker det; e-mail er overalt. Protokollen til at flytte denne e-mail overalt er SMTP, og SMTP “routere” er SMTP-relæer.
opsætning af SMTP-relæer varierer på tværs af systemer, men hvis du har Office 365 som din mailtjenesteudbyder, er dine muligheder begrænsede. Opsætning kan være kompliceret og fejlbehæftet, især for enheder, der ikke er i stand til TLS.
Bemærk, at afsendelse af e-mail via Office 365 ikke kræver et SMTP-relæ. Du kan få klienter til at sende e-mails direkte til Office 365 uden at tilføje et SMTP-relæ, der ikke kræver nogen konfigurationsændringer. Hvis du vil vide, hvad de er, skal du læse, hvordan du sender Office 365 Direct Send/SMTP Client Submission Email.
Indholdsfortegnelse
forudsætninger
Dette er kravene, før du kan fortsætte.
- et Office 365-abonnement. Hvis du ikke har dette endnu, kan du tilmelde dig et Office 365 E5-prøveabonnement.
- a Vinduer 10 computer med Strømshell v5.1
- en offentlig statisk IP-adresse. Du kan stadig oprette et SMTP-relæ i Office 365, selv uden dette, men du tester muligvis ikke.
- TCP-port 25 adgang fra en klient til dit Office-slutpunkt
- et gyldigt SSL-certifikat. Dette certifikat kan være et jokertegn certifikat (f.eks. *. yourdomain.com) udstedt af tredjeparts certifikatmyndigheder som LetsEncrypt, Digicert osv. Bemærk, at du ikke kan bruge selvsignerede certifikater eller certifikater udstedt af en intern PKI, fordi de ikke understøttes. (kun påkrævet for TLS-forbindelser)
for at konfigurere et SMTP-relæ skal du først oprette et stik i Office 365 for at acceptere SMTP-transaktioner. Dette stik modtager SMTP-relætransaktioner fra applikationen eller enheden.
før du forsøger at oprette et stik, skal du sørge for, at din konto har de korrekte tilladelser til udveksling online. Sørg for, at din konto er medlem af Organisationsstyringsgruppen.
der er to måder at oprette et stik på. Du kan enten bruge Udvekslingsadministrationscenter eller Strømshell. Begge muligheder udfører den samme opgave. Det er op til dig, hvilken du skal bruge. I denne artikel dækker vi begge dele. Vi dækker også oprettelse af både ikke-TLS-og TLS-stik.
Opret et ikke-TLS-stik ved hjælp af Udvekslingsadministrationscenter
lad os starte med at oprette et ikke-TLS-stik. Du lærer først, hvordan du gør dette via Udvekslingsadministrationscentret. Du kan konfigurere mange Office 365 SMTP-indstillinger i Udvekslingsadministrationscenter.
Når du er logget ind, skal du klikke på mailstrøm (1) –>stik (2) –> ny (3). Det nye Forbindelsesvindue vises.
i det nye Forbindelsesvindue skal du vælge fra: din organisations e-mail-server (1), vælge til: Office 365 (2), klik på næste (3).
i det næste vindue skal du indtaste navnet SMTP Relay (Non-TLS) eller vælg dit eget navn (1), skriv beskrivelsen accepter relæ fra lokalt SMTP-server (2), Fjern markeringen behold interne udvekslings-e-mail-overskrifter (anbefales) (3), og klik på næste (4).
i det næste vindue skal du vælge ved at kontrollere, at IP-adressen på den afsendende server matcher en af disse IP-adresser, der tilhører din organisation (1), og klik på Tilføj (2).
i det nye pop op-vindue skal du indtaste din offentlige IP-adresse (1), og klik derefter på OK (2). Dette skulle bringe dig tilbage til det forrige vindue.
Kontroller, at IP-adressen er tilføjet i listen (1), klik derefter på næste (2).
så vil du se resumeet af de ændringer, du skal implementere. Arbejd først med de nødvendige ændringer. Hvis der ikke er nogen, kan du gå videre og klikke på Gem.
Tilbage i Udvekslingsadministrationscenter kan du nu bekræfte, at det nye stik er oprettet.
Du skal nu have et ikke-TLS-stik oprettet.
Opret et TLS-stik ved hjælp af Udvekslingsadministrationscenter
oprettelse af et TLS-stik svarer til oprettelse af et ikke-TLS-stik. Ligesom hvordan du oprettede et ikke-TLS-stik, skal du gå tilbage til guiden Ny stik og bruge det samme poststrømsscenarie. Jeg bruger et a-forbindelsesnavn på SMTP Relay (ikke-TLS), men din kan variere.
i vinduet for at definere Office 365 skal identificere e-mail fra din e-mail-server skal du vælge:
- ved at kontrollere, at emnenavnet på certifikatet, som den afsendende server bruger til at godkende med Office 365, matcher dette domænenavn (anbefales) (1)
- indtast derefter emnet for SSL-certifikatet (2)
- og klik på Næste (3).
igen vil du se et TLS-stik ved hjælp af Udvekslingsadministrationscenter
sammenfatning af nødvendige ændringer. Arbejde på dem først før behandling. Hvis der ikke er nogen, kan du klikke på knappen Gem med det samme.
Opret et ikke-TLS-stik ved hjælp af Strømshell
hvis oprettelse af Office 365-stik via en GUI ikke er din ting, kan du altid oprette dem via Strømshell også. For at gøre det skal du først sikre dig, at du er forbundet til at udveksle online Strømshell.
for at oprette stikket skal du køre kommandoen New-InboundConnector
. Denne kommando kræver et par forskellige parametre, så jeg opretter disse parametre på forhånd ved hjælp af splatting.
jeg har tilføjet nogle kommentarer i selve koden nedenfor, men her er en oversigt over hver parameter og hvad den bruges til:
- navn – Dette er navnet på stikket.
- ConnectorType-dette er typen af stik. Denne værdi kan være
OnPremises
ellerPartner
. I dette scenario er den relevante typeOnPremises
.SenderDomains-dette kan være en liste over de tilladte afsenderdomæner. Kun bekræftede domæner til din lejer er gyldige valg. Asterisken (*
) betyder, at du tillader alle dine bekræftede domæner at videresende meddelelser ved hjælp af dette stik. Hvis du kun har brug for at tillade visse afsenderdomæner, skal du ændre denne værdi til en række domæner. (fx.'domain1.com','domain2.com'
) - SenderIPAddresses – dette er din offentlige IP-adresse. Glem ikke at ændre dette før udførelse.
- RestrictDomainsToIPAddresses – når denne værdi er indstillet til
$true
, indikerer det, at dette stik kun accepterer e-mails fra afsenderadresser, der kommer fra din tilladte offentlige IP-adresse.
$splat = @{ ## Define the name of the connector. Name = 'SMTP Relay' ## Defined the type of connector to create. ConnectorType = 'OnPremises' ## The set of sender domains allowed to relay. SenderDomains = '*' ## Change this to your actual public IP address. SenderIPAddresses = '110.x.x.x' ## Restrict the email relay only to your sender domains and sender IP address RestrictDomainsToIPAddresses = $true}## Create the connectorNew-InboundConnector @splat
Når du udføres, skal du se noget, der ligner nedenfor.
Opret et TLS-stik ved hjælp af Strømshell
hvis du antager, at du er tilsluttet, skal du køre koden nedenfor for også at oprette et TLS-stik. Du kan se nedenfor, at mange parametre er identiske med at oprette et ikke-TLS-stik. De krævede parametre, der adskiller sig fra at oprette et ikke-TLS-stik, er:
- krav – Dette angiver, at alle meddelelser, der modtages af dette stik, kræver TLS – transmission
- TlsSenderCertificateName-dette er navnet (eller emnet) på det certifikat, som afsenderen bruger.
$splat = @{ ## Define the name of the connector. Name = 'SMTP Relay (TLS)' ## The type of connector to create. ConnectorType = 'OnPremises' ## The set of sender domains allowed to relay. SenderDomains = '*' ## Require TLS RequireTLS = $true ## Subject/Name of the SSL certificate TlsSenderCertificateName = '*.YourDomain.com'}## Create the connectorNew-InboundConnector @splat
udfør ovenstående kode og få et TLS-stik oprettet og klar til at modtage e-mail.
test af Office 365 SMTP Relay-stikket med Strømshell
når du har oprettet stikket, skal du forberede dig på at teste det. Den nemmeste måde at gøre det på er at bruge Strømshell. I dette afsnit opretter vi nogle Strømshell-scripts, så du nemt kan sikre, at stikket fungerer korrekt.
før du går i gang med at teste, skal du først sikre dig, at du ved, hvad URL ‘ en til slutpunktet er for din udveksling online domæne. Hvis du ikke ved, hvordan du finder din endpoint-URL, skal du logge ind på Office 365-Administratorportalen. Klik på Opsætning, Vælg Domæner, klik på domænenavnet, og kopier MK-punkterne til adresse eller værdi.
test af et ikke-TLS SMTP-relæ (IP-adresse)
Bemærk: Denne test skal udføres fra den computer, hvis offentlige IP-adresse er tilladt i Office 365 SMTP relay setup.
brug Strømshell-koden nedenfor til test. Sørg for at ændre From
To
og SmtpServer
parameterværdier for at bruge dine egne Office 365 SMTP relæindstillinger, før du kører det.
-
To
– skal indeholde en intern domænemodtager og en ekstern domænemodtager. Glem ikke at ændre disse værdier til dine egne. -
From
– skal ændres til din nominerede afsenderadresse. Domænedelen af e-mail-adressen skal være et af din lejers e-mail-domæner. -
SmtpServer
– skal ændres til din Office 365-lejers slutpunkt.
$mailParams = @{ SmtpServer = '<tenant>.mail.protection.outlook.com' Port = '25' From = '' To = '','' Subject = ('SMTP Relay - ' + (Get-Date -Format g)) Body = 'This is a test email using SMTP Relay' DeliveryNotificationOption = 'OnFailure','OnSuccess'}Send-MailMessage @mailParams
test af et TLS SMTP-relæ (certifikat)
Bemærk: Du skal have det offentlige SSL-certifikat i PF-format, før du kan fortsætte med denne test.
da TLS SMTP-relæet kræver et certifikat, kan du ikke brugeSend-MailMessage
cmdlet, fordi det ikke tillader dig at vælge et specifikt certifikat. Brug i stedet to. net-objekter kaldet System. Net.Mail.SmtpClient til at definere SMTP-parametrene, og System.Net.Mail.MailMessage til at komponere meddelelsen.
nedenfor finder du et kodestykke, du kan bruge til at teste TLS SMTP-relæet. Glem ikke at ændre pfxFile
pfxPass
From
To
og SmtpServer
værdier til brug af din Office 365 SMTP relæindstillinger, før du kører det.
# specify the full path of your PFX certificate$pfxFile = "C:\Certificate\cert.pfx"$pfxPass = '<cert password here>'$pfxBytes = Get-Content -path $pfxFile -encoding Byte -ErrorAction:SilentlyContinue$X509Cert = New-Object -TypeName System.Security.Cryptography.X509Certificates.X509Certificate2$X509Cert.Import(]$pfxBytes, $pfxPass,"Exportable,PersistKeySet")# Build SMTP properties$smtpServer = '<tenant>.mail.protection.outlook.com'$smtpPort = '25'$smtp = New-Object Net.Mail.SmtpClient($smtpServer,$smtpPort)$smtp.ClientCertificates.Add($X509Cert)$smtp.EnableSSL = $true# Compose message$emailMessage = New-Object System.Net.Mail.MailMessage$emailMessage.From = ''$emailMessage.To.Add('')$emailMessage.To.Add('')$emailMessage.Subject = ('SMTP Relay (TLS) - ' + (Get-Date -Format g))$emailMessage.Body = 'This is a test email using SMTP Relay (TLS)'# Send the message$smtp.Send($emailMessage)
Hvis opsætning af TLS-stikket er korrekt, definerer modtagerne via Add()
– metoden skal modtage test-e-mailen.
validering af SMTP Relay humle ved hjælp af meddelelsesoverskriften
nu har du et funktionelt SMTP relæ oprettet ved hjælp af en lokal server og Office 365 SMTP relay. Alle testene var vellykkede, og dine enheder kan sende beskeder til både interne og eksterne modtagere. Flot arbejde!
Hvis du stadig er i tvivl og har brug for at bekræfte, om disse meddelelser går gennem Office 365 SMTP-relæet, kan du gennemgå meddelelsesoverskrifterne på de modtagne e-mails.
Bemærk: åbning af meddelelsesoverskrifterne varierer mellem forskellige mailklienter. Nedenstående eksempel er specifikt for Gmail.
Åbn e-mailen i Gmail-grænsefladen, åbn meddelelsen, og klik på de tre lodrette prikker (1), og klik derefter på Vis original (2).
en ny side viser e-mail-meddelelsesoverskrifterne. Klik på Kopier til udklipsholder (1).
Åbn en ny bro.ser-fane og naviger til https://testconnectivity.microsoft.com/.
gå til fanen Meddelelsesanalysator (1), Indsæt de kopierede data i feltet (2), og klik på Analyser overskrifter (3).
resultatet af analysen vises i tabellen som vist nedenfor.
du skal se følgende arbejdsgang i resultaterne ovenfor:
- IP-adresse 192.168.0.3 den angiver oprindelsen af computeren.
- On-prem SMTP relay server modtog beskeden.
- udveksling Online beskyttelse (EOP) modtaget meddelelsen.
- udveksling Online server og omdirigeret til udgående levering modtaget beskeden.
- Office 365 til google.com leverede beskeden.
baseret på analyseresultaterne kan du bekræfte, at meddelelsen passerede gennem Office 365 SMTP-relæet som beregnet.
oversigt
i denne artikel har du lært, hvordan du opretter et SMTP-relæ til TLS og ikke-TLS Office 365. Du lærte også, hvordan du tester og bekræfter deres funktionalitet ved hjælp af forskellige teknikker, og hvordan du validerer de SMTP-ruter, som meddelelsen var gået igennem.
Leave a Reply