Posted On November 18, 2020

PowerShell: Test LDAPS Connection

kimconnect 0 comments
blog.KimConnect.com >> Codes >> PowerShell: Test LDAPS Connection
Function testLdap {
    [CmdletBinding()]
    Param(
        [Parameter(Position=0,ValueFromPipeline=$true)]$dcs=$($ENV:LOGONSERVER -replace '\\',''),
        [Parameter(Position=1,ValueFromPipeline=$true)]$port='636'
    ) 

    $ErrorActionPreference = "Stop"
    $results = @()
    try{
        Import-Module ActiveDirectory
    }catch{
        write-warning "Active Directory module is not available on $env:computername."
        break
    }
    ForEach($dc in $dcs){
        Try{
            $validatedDc = (Get-ADDomainController -Identity $dc).hostname
        }Catch{
            write-warning $_
            Continue
        }

        If($Null -ne $validatedDc){  
            Try{
                $ldaps = [adsi]"LDAP://$($validatedDc):$port"
                $ldapPath=$ldaps.Path
                If ($ldapPath){
                    $result=New-Object PSObject -Property ([ordered]@{ 
                        DC=$dc
                        Port=$port
                        Path=$ldapPath
                        Success=$true
                    })
                    $results+=$result
                }
            }Catch{
                write-warning $_
                continue
            }        
        }
    }

    If($results){
        return $Results
    }else{
        write-host "No LDAP Connection success for $dcs"
    }
}

testLdap

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Post

PowerShell: Check Windows Scheduled Tasks To Correlate Object Creation Time of a Zip File

$file='c:\temp\backup.zip' $computername='SERVER008' $minutesVariance=15 checkScheduledTaskMatchingFile $file $computername $minutesVariance function checkScheduledTaskMatchingFile{ param( $file='c:\temp\PROD.zip', $computername=$env:computername, $minutesVariance=15 ) if($computername…

Basic CSS: Prioritize One Style Over Another

<style>body {background-color: black;font-family: monospace;color: green;}</style><h1>Hello World!</h1>

PowerShell: Remove an A-Host Record within Active Directory Integrated DNS Domain

Warning: this code is NOT 'production ready'. Please review and test on DEV environments carefully…
Other project: DragonCoin.com