Crie relatórios do Active Directory Exchange com o PowerShell. O Microsoft Exchange é um software de servidor de email popular utilizado por empresas e organizações em todo o mundo. Uma das principais características do Exchange é a capacidade de gerar relatórios sobre vários aspectos do servidor e seu uso. Esses relatórios fornecem informações valiosas sobre o desempenho e a saúde do servidor Exchange, bem como os padrões de uso de seus usuários.
Este artigo explora como gerar esses relatórios usando PowerShell, uma poderosa linguagem de script de linha de comando. Examinamos alguns tipos de relatórios comuns, os cmdlets do PowerShell usados para criá-los e algumas melhores práticas para trabalhar com o PowerShell e o Exchange. Devemos entender como gerar e trabalhar com relatórios do Exchange no PowerShell até o final deste artigo.
Vamos começar com Crie relatórios do Active Directory Exchange com o PowerShell.
Crie relatórios do Active Directory Exchange com o PowerShell
Leia também Implante monitoramento do Azure AD
Pré-requisitos
Para executar comandos do PowerShell Exchange, precisamos atender aos seguintes pré-requisitos:
- Devemos ter as permissões apropriadas para executar comandos do PowerShell no servidor Exchange. Acessar essas permissões geralmente significa ser membro do grupo Gerenciamento de Organização do Exchange ou ter sido atribuído as funções e permissões corretas.
- Nós devemos ter o Exchange Management Shell instalado em nosso computador. O Exchange Management Shell é um módulo PowerShell com cmdlets projetados especificamente para gerenciar servidores Exchange. Geralmente, o Exchange Management Shell é construído dentro de um Windows Server com serviços Exchange.
- Suponha que desejamos estabelecer uma sessão remota do PowerShell session com o servidor Exchange. Isso pode ser feito usando o Connect-ExchangeServer cmdlet, que nos permite conectar-se ao servidor usando nossas credenciais do Exchange.
- Alternativamente, importamos o módulo Exchange Management Shell em nossa sessão do PowerShell. Importamos o módulo usando o Import-Module cmdlet, seguido do nome do módulo.
Import-Module ExchangeManagementShell
Depois de cumprir esses pré-requisitos, devemos estar prontos para executar comandos do Exchange PowerShell e gerar relatórios. Na seção a seguir do artigo, listaremos várias maneiras de auditar nosso ambiente do Microsoft Exchange.
Usando os Comandos Get Mail no PowerShell
O Get-Mail cmdlet do PowerShell é uma ferramenta poderosa para gerenciar e trabalhar com mensagens de e-mail no Microsoft Exchange. Permite-nos recuperar mensagens de e-mail específicas ou grupos de notificações com base em vários critérios, como remetente, destinatário, assunto ou faixa de datas. Além disso, podemos usar o Get-Mail cmdlet para visualizar os detalhes de mensagens individuais ou para exportá-las para um arquivo para análise adicional.
Aqui estão alguns exemplos dos comandos Get-Mail.
Gerando um Relatório de Tráfego de E-mail
Em suma, os relatórios de tráfego de e-mail gerados pelo Get-MailTrafficSummaryReport nos ajudam a analisar o tráfego de e-mail de uma organização, fornecendo informações como o número de e-mails enviados e recebidos, o número de spams recebidos e enviados, malware, e-mails de suplantamento, e assim por diante.
Get-MailTrafficSummaryReport
O comando acima recupera o tráfego de e-mail dos últimos sete (7) dias por padrão. No entanto, podemos recuperar o máximo do relatório de estatísticas de e-mail dos últimos 90 dias usando os atributos -StartDate e -EndDate. Aqui estão alguns exemplos:
Relatório de Tráfego de E-mail Entrada e Saída
Execute o cmdlet com o –Direction parâmetro para obter o tráfego de e-mail de entrada e saída separadamente:
Get-MailTrafficSummaryReport –Direction Inbound –StartDate 6/13/22 -EndDate 6/15/22
O trecho acima recupera as estatísticas de tráfego de e-mail de entrada de 13 de junho de 2022 a 20 de junho de 2022.
Podemos fazer o mesmo se estivermos visualizando o tráfego de saída:
Get-MailTrafficSummaryReport –Direction Outbound
De acordo com isso, podemos usar os valores do parâmetro -EventType para determinar o que aconteceu com as mensagens após a filtragem do serviço:
Get-MailTrafficSummaryReport –Direction Inbound –EventType GoodMail –StartDate 7/1/22 -EndDate 7/31/22
Para saber sobre mensagens marcadas como falsificadas pelo software anti-falsificação:
Get-MailTrafficSummaryReport –EventType SpoofMail
Observe que a saída do comando dependerá da configuração específica do seu servidor Exchange e do tráfego de e-mail durante o período especificado.
Relatório de E-mails Enviados e Recebidos
Além disso, os administradores geralmente desejam saber quantos e-mails os usuários enviam e recebem. Podemos usar o cmdlet Get-MailTrafficTopReport para visualizar essas estatísticas de e-mail. O cmdlet abaixo exibe a contagem de e-mails enviados e recebidos por usuários nos últimos 7 dias:
Get-MailTrafficTopReport -EventType TopMailUser
Visualizar o número de e-mails recebidos pelos usuários durante o período especificado.
Get-MailTrafficTopReport -EventType TopMailUser –Direction Inbound –StartDate 7/15/22 -EndDate 7/20/22
Leia tambémExperimente o Relatório do Office 365
Relatório de Status do Fluxo de Correio do Office 365
Antes de usar este comando, certifique-se de que você esteja atualmente autenticado com um servidor híbrido integrado ao Office 365. Como alternativa, você pode se conectar e autenticar diretamente no Office 365 com o seguinte comando:
$UserCredential = Get-Credential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUrl https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection
O relatório de status do fluxo de email gerado pelo comando Get-MailFlowStatusReport exibe informações sobre emails de entrada e saída bloqueados por proteção de borda:
Get-MailFlowStatusReport | ft Date, EventType, MessageCount
O cmdlet acima retorna o número de mensagens para um intervalo de datas, organizado pela disposição final da mensagem. Por padrão, o comando exibe dados dos últimos sete dias. No entanto, obtemos um fluxo de emailrelatório por até noventa dias especificando o -StartDate e -EndDate.
Leia também Implantar Relatórios de Usuários do Office 365
Gerando um Relatório de Proteção de Email
Acima de tudo, os relatórios de Proteção de Email nos ajudam a identificar spam e malware por Exchange Online Protection (EOP), bem como emails que correspondem a regras de fluxo de email, regras DLP e outros critérios.
Relatórios de Spam do Office 365
No total, o comando Get-MailDetailSpamReport exibe informações sobre mensagens de spam enviadas e recebidas pela nossa organização. O cmdlet exibe uma lista de mensagens de spam detectadas nos últimos dez (10) dias.
Assim, o Microsoft 365 rejeita ou marca como spam e-mails enviados a partir da nossa organização em alguns casos. Execute o seguinte cmdlet para identificar esses e-mails:
Get-MailDetailSpamReport –Direction Outbound
Além disso, com filtros anti-spam, às vezes, classificam e-mails de entrada bons como spam. O administrador pode white list um domínio ou endereço específico verificando esses e-mails. Para visualizar mensagens de spam de entrada:
Get-MailDetailsSpamReport –Direction Inbound
Para visualizar spam enviado por um usuário específico em um período especificado usando os parâmetros -StartDate e -EndDate:
Get-MailDetailsSpamReport –SenderAddress marion@infrasos.com -StartDate 7/15/22 -EndDate 7/20/22
Execute o cmdlet com RecipientAddress em vez de SenderAddress para visualizar spams recebidos por um usuário.
Relatórios de Malware do Exchange Online
Em seguida, o cmdlet Get-MailDetailATPReport auxilia na identificação de emails contendo malware. Execute o cmdlet para ver todas as malwares enviadas e recebidas nos últimos dez (10) dias.
Para visualizar malware enviado por nossa organização, podemos usar o trecho abaixo:
Get-MailDetailATPReport –Direction Outbound
Além disso, também listamos emails de malware detectados recebidos por nossa organização se usarmos a direção Inbound em vez disso:
Get-MailDetailATPReport –Direction Inbound
Então, a fim de visualizar malwares enviados por usuários específicos users, use o parâmetro -RecipientAddress:
Get-MailDetailATPReport –RecipientAddress marion@infrasos.com
Identificando a Regra de Transporte
O comando PowerShell Get-MailDetailTranportRuleReport exibe informações sobre mensagens que atendem aos critérios especificados por quaisquer regras de transporte. O comando mostra a regra de transporte aplicada e os detalhes do e-mail dos últimos dez (10) dias.
O exemplo abaixo recupera todas as mensagens enviadas por [email protected] que atenderam à condição definida pela regra de transporte entre 15 de julho de 2021 e 20 de julho de 2022:
Get-MailDetailTransportRuleReport -TransportRule r1 –StartDate 7/15/22 -EndDate 7/20/22 -SenderAddress marion@infrasos.com
A saída abaixo é um exemplo de um relatório de regra de transporte gerado pelo comando anterior:
Por favor, execute o seguinte cmdlet para identificar e-mails e a regra de transporte do Exchange redirecionando a mensagem para outra endereço de e-mail:
Get-MailDetailTransportRuleReport –Action RedirectMessage
Monitorar E-mails Detectados por Política DLP
A maioria das organizações configura políticas de Prevenção de Perda de Dados (DLP) para proteger seus dados de e-mail confidenciais. Podemos usar o cmdlet Get-MailDetailDLPPolicyReport para identificar mensagens que correspondam às condições definidas pelas políticas DLP políticas.
Get-MailDetailDLPPolicyReport
Leia também Use relatórios de senha do Office 365
Obtenha o Relatório de Rastreamento de Mensagens do Microsoft 365
Para monitorar o fluxo de e-mail, a maioria dos administradores prefere o rastreamento de mensagens. O rastreamento de mensagens fornece aos administradores informações detalhadas sobre mensagens enviadas, recebidas, purgadas e excluídas. Entre os detalhes estão:
- Endereço de remetente
- Endereço de destinatário
- Data de envio/recebimento
- Assunto do e-mail
- Status de entrega do e-mail
- Tamanho do e-mail
- ID de rastreamento da mensagem, etc.
- Endereço IP de origem
Para obter o relatório de rastreamento, podemos executar o comando Get-MessageTrace. Por padrão, o cmdlet recupera os dados das últimas 48 horas. Podemos recuperar os dados dos últimos dez (10) dias usando os parâmetros –StartDate e –EndDate. Podemos usar os cmdlets Start-HistoricalSearch e Get-HistoricalSearch para pesquisar dados de mensagens por mais de dez dias.
Basicamente, o exemplo abaixo recupera informações de rastreamento para mensagens enviadas por um usuário específico durante o período especificado:
Get-MessageTrace –SenderAddress marion@infrasos.com -StartDate 7/25/22 -EndDate 7/30/22
Para exportar o relatório de rastreamento de mensagens para um arquivo CSV:
Get-MessageTrace | Export-CSV -NoTypeInformation
Podemos enviar a saída para a visualização em grade se quisermos filtrar os detalhes do rastreamento de mensagens:
Get-MessageTrace | Out-GridView
O comando acima nos permite filtrar ou restringir os detalhes do rastreamento de mensagens, como
- Rastrear mensagens por assunto,
- Os estados de entrega da mensagem incluem entregue, falhou, pendente, expandido, em quarentena, filtrado como spam e desconhecido
Obrigado por ler Criar relatórios do Active Directory Exchange com PowerShell. Concluiremos este artigo agora.
Criar relatórios do Active Directory Exchange com PowerShell – Conclusão
Em conclusão, o Microsoft Exchange fornece uma grande quantidade de informações e insights sobre o desempenho e uso do nosso servidor de e-mail. Ao gerar relatórios usando PowerShell, acessamos essas informações para melhorar a saúde e eficiência do seu servidor Exchange.
Seja como administradores de sistema ou usuários, entender como gerar e trabalhar com relatórios do Exchange no PowerShell pode ser uma habilidade valiosa. Seguindo os exemplos e as melhores práticas descritas neste artigo, estaremos bem encaminhados para dominar essa poderosa ferramenta.
Source:
https://infrasos.com/create-active-directory-exchange-reports-with-powershell/