Weboldal keresés

Keressen IP-címeket az Exchange SMTP-relé segítségével


Olyan helyszíni IP-címeket szeretne találni, amelyek az Exchange SMTP-továbbítót használják levelek küldésére. Miért akarod ezt az információt? Leggyakrabban ilyenkor szeretne leállítani egy Exchange-kiszolgálót, és szeretné megerősíteni, hogy nem fut levélfolyam az SMTP-közvetítőn. Ha minden be van állítva, letilthatja az SMTP relé fogadási csatlakozóját. Ebből a cikkből megtudhatja, hogyan automatizálhatja a keresést, és hogyan találhatja meg az SMTP-relét használó IP-címeket.

Bevezetés

Mielőtt elkezdenénk, jó tudni, miért szeretnénk tudni, hogy mely IP-címek használják az Exchange SMTP-relét. Ennek néhány oka van, ha:

  • Váltson új Exchange Serverre SMTP-rel

  • Lépjen az Office 365 SMTP-reléjére

  • Az eltávolítható IP-címek ellenőrzése

Megjegyzés: Kérjük, ne távolítsa el azonnal az SMTP relé fogadási csatlakozóját, és ne szerelje le azonnal az Exchange Servert. Ez nagy hiba.

A következő sorrendet ajánljuk:

  • IP-címek beszerzése az Exchange SMTP-relé segítségével (ez a cikk)

  • Az SMTP relé vételi csatlakozójának letiltása

  • Az Exchange Server leállítása egy hétre vagy hosszabb időre

  • Az Exchange Server leszerelése

Ellenőrizze az SMTP relé naplóit

Ha IP-címeket szeretne keresni a naplókban, engedélyeznie kell a naplózást az összekötőn. Futtassa az Exchange Management Shell-t rendszergazdaként. Futtassa a Get-ReceiveConnector parancsmagot, és ellenőrizze, hogy a protokollnaplózás engedélyezve van-e az SMTP-relé fogadási csatlakozón.

Példánkban a ProtocolLoggingLevel a Verbose elemet mutatja az SMTP Relay azonosítóhoz. Ez azt jelenti, hogy a naplózás engedélyezve van.

[PS] C:\>Get-ReceiveConnector -Server "EX01-2016" | ft Identity,Enabled,TransportRole,Protocol*,Bindings

Identity                                    Enabled     TransportRole ProtocolLoggingLevel Bindings
--------                                    -------     ------------- -------------------- --------
EX01-2016\Default EX01-2016                    True      HubTransport              Verbose {0.0.0.0:2525, [::]:2525}
EX01-2016\Client Proxy EX01-2016               True      HubTransport              Verbose {[::]:465, 0.0.0.0:465}
EX01-2016\Default Frontend EX01-2016           True FrontendTransport              Verbose {[::]:25, 0.0.0.0:25}
EX01-2016\Outbound Proxy Frontend EX01-2016    True FrontendTransport              Verbose {[::]:717, 0.0.0.0:717}
EX01-2016\Client Frontend EX01-2016            True FrontendTransport              Verbose {[::]:587, 0.0.0.0:587}
EX01-2016\SMTP relay                           True FrontendTransport              Verbose {0.0.0.0:25}

Az SMTP naplózási állapotát az Exchange felügyeleti központban ellenőrizheti. Lépjen a levelezési folyamat > csatlakozási szoftverek fogadása oldalra. Válassza ki az ellenőrizni kívánt Exchange-kiszolgálót. Válassza ki az SMTP relé fogadási csatlakozót, és ellenőrizze a részleteket tartalmazó panelt, ha a Bejelentkezés - Be felirat látható.

Megjegyzés: Ha a szervezetben egynél több Exchange-kiszolgáló is van, akkor valószínűleg több Exchange-kiszolgálón is be van állítva egy SMTP-továbbító fogadási csatlakozó a magas rendelkezésre állás érdekében. Ellenőrizze, hogy az SMTP továbbítási fogadási csatlakozó naplózása engedélyezett minden Exchange-kiszolgálón.

Ha az SMTP naplózás engedélyezve van, hagyja ki a következő lépést. Ha nem, a következő lépésben engedélyezze a naplózást az SMTP relé fogadási csatlakozóján. Valószínűleg a FrontendTransport szállítási szerepe.

SMTP továbbítási naplók engedélyezése

[PS] C:\>Get-ReceiveConnector -Identity "EX01-2016\SMTP relay" | Set-ReceiveConnector -ProtocolLogging Verbose

Szeretné engedélyezni az SMTP továbbítási naplózást az Exchange felügyeleti központban? Kattintson a részletek panelen a Be linkre az SMTP-naplózás engedélyezéséhez. Tegye ugyanezt a többi Exchange szerveren is.

Ha most engedélyezte az SMTP-relé fogadási csatlakozó naplózását, néhány napot vagy hetet kell várnia a naplók generálására. Ez a használattól függ.

Keresse meg az SMTP továbbítási naplókat

Lehetetlen megtalálni az Exchange SMTP naplózási útvonalát az Exchange felügyeleti központban. Az Exchange Management Shell-t kell használnunk, és meg kell találnunk az SMTP-naplók elhelyezését.

[PS] C:\>Get-FrontendTransportService -Identity "EX01-2016" | fl Name,Identity,Receive*


Name                               : EX01-2016
Identity                           : Frontend
ReceiveProtocolLogMaxAge           : 30.00:00:00
ReceiveProtocolLogMaxDirectorySize : 250 MB (262,144,000 bytes)
ReceiveProtocolLogMaxFileSize      : 10 MB (10,485,760 bytes)
ReceiveProtocolLogPath             : C:\Program Files\Microsoft\Exchange Server\V15\TransportRoles\Logs\FrontEnd\ProtocolLog\SmtpReceive

Másolja ki a ReceiveProtocolLogPath elemet, és illessze be a Windows Intézőbe.

A következő lépésben elkészítjük a PowerShell-szkriptet az összes napló átvizsgálására és az IP-címek kiszűrésére.

Bővebben: Exchange fogadási csatlakozó naplózása »

Készítse elő az SMTP-Review PowerShell-szkriptet

Hozzon létre két mappát az Exchange Server (C:) meghajtóján:

  • Temp

  • Szkriptek

Töltse le az SMTP-Review.ps1 PowerShell-szkriptet, és helyezze el a C:\scripts mappába. A szkript a szövegfájlt a C:\temp mappába exportálja.

Győződjön meg arról, hogy a fájl blokkolása fel van oldva, hogy elkerülje a hibákat a szkript futtatásakor. További információ a cikkben: Nem digitálisan aláírt hiba a PowerShell-szkript futtatásakor.

Egy másik lehetőség az alábbi kód másolása és beillesztése a Jegyzettömbbe. Adja meg az SMTP-Review.ps1 nevet, és helyezze a C:\scripts mappába.

<#
    .SYNOPSIS
    SMTP-Review.ps1

    .DESCRIPTION
    Script is intended to help determine servers that are using an Exchange server to connect and send email.
    This is especially pertinent in a decommission scenario, where the logs are to be checked to ensure that
    all SMTP traffic has been moved to the correct endpoint.

    .LINK
    www.alitajran.com/find-ip-addresses-using-exchange-smtp-relay

    .NOTES
    Written by: ALI TAJRAN
    Website:    www.alitajran.com
    LinkedIn:   linkedin.com/in/alitajran

    .CHANGELOG
    V1.00, 04/05/2021 - Initial version
    V2.00, 03/28/2023 - Rewrite script to retrieve results faster
#>

# Clears the host console to make it easier to read output
Clear-Host

# Sets the path to the directory containing the log files to be processed
$logFilePath = "C:\Program Files\Microsoft\Exchange Server\V15\TransportRoles\Logs\FrontEnd\ProtocolLog\SmtpReceive\*.log"

# Sets the path to the output file that will contain the unique IP addresses
$Output = "C:\temp\IPAddresses.txt"

# Gets a list of the log files in the specified directory
$logFiles = Get-ChildItem $logFilePath

# Gets the number of log files to be processed
$count = $logFiles.Count

# Initializes an array to store the unique IP addresses
$ips = foreach ($log in $logFiles) {

    # Displays progress information
    $percentComplete = [int](($logFiles.IndexOf($log) + 1) / $count * 100)
    $status = "Processing $($log.FullName) - $percentComplete% complete ($($logFiles.IndexOf($log)+1) of $count)"
    Write-Progress -Activity "Collecting Log details" -Status $status -PercentComplete $percentComplete

    # Displays the name of the log file being processed
    Write-Host "Processing Log File $($log.FullName)" -ForegroundColor Magenta

    # Reads the content of the log file, skipping the first five lines
    $fileContent = Get-Content $log | Select-Object -Skip 5

    # Loops through each line in the log file
    foreach ($line in $fileContent) {

        # Extracts the IP address from the socket information in the log line
        $socket = $line.Split(',')[5]
        $ip = $socket.Split(':')[0]
        
        # Adds the IP address to the $ips array
        $ip
    }
}

# Removes duplicate IP addresses from the $ips array and sorts them alphabetically
$uniqueIps = $ips | Select-Object -Unique | Sort-Object

# Displays the list of unique IP addresses on the console
Write-Host "List of noted remove IPs:" 
$uniqueIps
Write-Host 

# Writes the list of unique IP addresses to the output file
$uniqueIps | Out-File $Output

Így néz ki a File Explorerben.

A 27. sorban módosítsa az előző lépésben keresett fogadási protokoll naplójának elérési útját.

Példánkban így néz ki:

$LogFilePath = "C:\Program Files\Microsoft\Exchange Server\V15\TransportRoles\Logs\FrontEnd\ProtocolLog\SmtpReceive\*.log"

Futtassa az SMTP-Review PowerShell-szkriptet

Futtassa a PowerShellt rendszergazdaként, és futtassa az SMTP-Review.ps1 PowerShell-parancsfájlt.

Megjegyzés: Futtassa a szkriptet az összes Exchange-kiszolgálón, ha SMTP-relé van konfigurálva rajta. Például Exchange Server EX01-2016 és EX02-2016.

PS C:\> cd C:\scripts
PS C:\scripts> .\SMTP-Review.ps1

A szkript végigmegy az összes fájlon, és a befejezés után látni fogja, hogy mely IP-címek használják az SMTP-relét a konzol kimenetében. Ezenkívül létrehoz egy IPAddresses.txt fájlt a C:\temp mappában található IP-címekkel.

Jegyezze fel az IP-címeket, és állítsa be az SMTP mezőt a nyomtatókban, alkalmazásokban és szervereken az új SMTP továbbítási rekordhoz.

További cikkek, amelyek érdekelhetik:

  • Távoli IP-címek exportálása az Exchange fogadási csatlakozójába

  • Távoli IP-címek importálása az Exchange fogadási csatlakozójába

  • Másolja át a fogadási csatlakozót egy másik Exchange kiszolgálóra

Következtetés

Megtanulta, hogyan kereshet IP-címeket az Exchange SMTP relay használatával. Engedélyezze a naplózást az SMTP-relé fogadási csatlakozón, és másolja ki a naplózási útvonalat, mielőtt elkezdené. Futtassa az SMTP-Review.ps1 PowerShell-parancsfájlt, és futtassa át az SMTP fogadási naplókon. Ne felejtse el futtatni a szkriptet az összes olyan Exchange-kiszolgálón, amelyen SMTP relé fogadási csatlakozó van konfigurálva.

Amikor a szkript befejeződik, állítsa be az SMTP rekordokat az említett IP-címeken. A szkript használatának másik kiváló módja az, hogy megtudja, mely IP-címek elavultak, és törli azokat a fogadási csatlakozó IP-címeinek listájából.

Tetszett ez a cikk? Tetszeni fog a Microsoft Exchange Server sebezhetőségének ellenőrzése is. Ne felejtsen el követni minket és megosztani ezt a cikket.

Kapcsolódó cikkek