T13nn3s / Invoke-SpfDkimDmarc

PowerShell Module for checking SPF, DKIM and DMARC-record.
https://binsec.nl/powershell-script-for-spf-dmarc-and-dkim-validation/
MIT License
43 stars 8 forks source link
dkim dmarc dns powershell spf

# Invoke-SpfDkimDmarc Invoke-SpfDkimDmarc is a function within the PowerShell module named `DomainHealthChecker` that can check the SPF, DKIM and DMARC record for one or multiple domains. On installing this module you can use `Invoke-SpfDKimDmarc` to check the records. You can also check the records individually by using the cmdlets `Get-SPFrecord`, `Get-DKIMRecord` or by running the `Get-DMARCRecord` to check the record of a single domain. ![Invoke-SpfDkimDmarc](https://github.com/T13nn3s/Show-SpfDkimDmarc/blob/main/logo/Show-SpfDkimDmarc.png) ## System Requirements This module requires PowerShell version 5.1 or higher. ## Installation PowershellGallery (recommended) The module is published on the PowerShellGallery. You can install this module directly from the PowerShellGallery with the following command: ```powershell C:\> Install-Module DomainHealthChecker ``` PowerShellGallery will automatically download and install the latest version of the module. ## Manual Installation Download the module from the 'Releases' tab from Github. Just download and extract the ZIP file, and just import the module by running this command below: ```powershell C:\> Import-Module -Name .\DomainHealthChecker.psm1 ``` ## Available cmdlets After installing this module, you have the following cmdlets at your disposal. - `Invoke-SpfDkimDmarc` to check the SPF, DKIM, and DMARC records for one or multiple domains. You can export the results to a file. For example, to a comma-separated file with the `Export-CSV` command. - `Get-SPFRecord` to check the SPF record for a single domain. The module also checks the charachter lenght of the SPF-record. This cmdlet has also an alias `gspf` for quick checks. - `Get-DKIMRecord` to check the DKIM record for a single domain. This cmdlet has also an alias `gdkim` for quick checks. - `Get-DMARCRecord` to check the DMARC record for a single domain. This cmdlet has also an alias `gdmarc` for quick checks. - `Get-DNSSec` to check whether the domain is protected with DNSSEC. This cmdlet has also an alias `gdnssec` for quick checks. ## Split DNS environment If you are using a split DNS environment, you can use the `-Server` parameter to specify an alternative DNS server.