7772 lines
205 KiB
PowerShell
7772 lines
205 KiB
PowerShell
#
|
|
# $Id: fcarpin $ Fabrizio Carpin
|
|
#
|
|
|
|
$warning = "WARNING: This function is deprecated. Please use"
|
|
|
|
# ==================================================
|
|
# region TEMPLATES
|
|
# ==================================================
|
|
Function ExportVSTemplate
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$VirtualService,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$Port,
|
|
|
|
[ValidateSet("tcp", "udp")]
|
|
[string]$Protocol,
|
|
|
|
[Int32]$VSIndex,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Path,
|
|
[switch]$Force,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Export-VSTemplate"
|
|
}
|
|
Export-ModuleMember -function ExportVSTemplate
|
|
|
|
Function UploadTemplate
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateScript({Test-Path $_})]
|
|
[string]$Path,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Install-Template"
|
|
}
|
|
Export-ModuleMember -function UploadTemplate
|
|
|
|
Function DeleteTemplate
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Name,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-Template"
|
|
}
|
|
Export-ModuleMember -function DeleteTemplate
|
|
|
|
Function ListTemplates
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-Template"
|
|
}
|
|
Export-ModuleMember -function ListTemplates
|
|
# ==================================================
|
|
# endregion TEMPLATES
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region LOGGING
|
|
# ==================================================
|
|
Function Get-EmailOption
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-LogEmailConfiguration"
|
|
}
|
|
Export-ModuleMember -function Get-EmailOption
|
|
|
|
Function Set-EmailOption
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[bool]$EmailEnable,
|
|
|
|
[string]$EmailServer,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[int]$EmailPort,
|
|
|
|
[string]$EmailUser,
|
|
|
|
[string]$EmailPassword,
|
|
|
|
[string]$EmailDomain,
|
|
|
|
[ValidateSet(0, 1, 2, 3)]
|
|
[Int16]$EmailSSLMode,
|
|
|
|
[string]$EmailEmergency,
|
|
|
|
[string]$EmailCritical,
|
|
|
|
[string]$EmailError,
|
|
|
|
[string]$EmailWarn,
|
|
|
|
[string]$EmailNotice,
|
|
|
|
[string]$EmailInfo,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LogEmailConfiguration"
|
|
}
|
|
Export-ModuleMember -function Set-EmailOption
|
|
|
|
Function Get-SyslogOption
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-LogSyslogConfiguration"
|
|
}
|
|
Export-ModuleMember -function Get-SyslogOption
|
|
|
|
Function Set-SyslogOption
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[string]$SyslogCritical,
|
|
[string]$SyslogEmergency,
|
|
[string]$SyslogError,
|
|
[string]$SyslogInfo,
|
|
[string]$SyslogNotice,
|
|
[string]$SyslogWarn,
|
|
|
|
[UInt16]$SyslogPort,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LogSyslogConfiguration"
|
|
}
|
|
Export-ModuleMember -function Set-SyslogOption
|
|
|
|
Function Get-Statistics
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[switch]$VirtualService,
|
|
[switch]$RealServer,
|
|
[switch]$Totals,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-LogStatistics"
|
|
}
|
|
Export-ModuleMember -function Get-Statistics
|
|
# ==================================================
|
|
# endregion LOGGING
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region SSO
|
|
# ==================================================
|
|
Function UploadRSAConfigurationFile
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[string]$Path,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Install-SSORSAConfigurationFile"
|
|
}
|
|
Export-ModuleMember -function UploadRSAConfigurationFile
|
|
|
|
Function UploadRSANodeSecretAndPassword
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[string]$Password,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[string]$Path,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Install-SSORSANodeSecretAndPassword"
|
|
}
|
|
Export-ModuleMember -function UploadRSANodeSecretAndPassword
|
|
|
|
Function FlushSsoCache
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Clear-SSOCache"
|
|
}
|
|
Export-ModuleMember -function FlushSsoCache
|
|
# ==================================================
|
|
# endregion SSO
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region NETWORKING
|
|
# ==================================================
|
|
Function ListIfconfig
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-LmNetworkInterface"
|
|
}
|
|
Export-ModuleMember -function ListIfconfig
|
|
|
|
Function Get-NetworkOptions
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-NetworkConfiguration"
|
|
}
|
|
Export-ModuleMember -function Get-NetworkOptions
|
|
|
|
Function Set-NetworkOptions
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[bool]$SNAT,
|
|
|
|
[bool]$AllowUpload,
|
|
|
|
[ValidateRange(0, 86400)]
|
|
[Int64]$ConnTimeout,
|
|
|
|
[bool]$KeepAlive,
|
|
|
|
[bool]$MultiGW,
|
|
|
|
[bool]$NonLocalRS,
|
|
|
|
[bool]$OnlyDefaultRoutes,
|
|
|
|
[bool]$ResetClose,
|
|
|
|
[bool]$SubnetOrigin,
|
|
|
|
[bool]$SubnetOriginating,
|
|
|
|
[bool]$TCPTimeStamp,
|
|
|
|
[bool]$RouteFilter,
|
|
|
|
[ValidateRange(512, 4096)]
|
|
[Int32]$DHKeySize,
|
|
|
|
[string]$Http_Proxy,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-NetworkConfiguration"
|
|
}
|
|
Export-ModuleMember -function Set-NetworkOptions
|
|
|
|
Function Get-DNSConfiguration
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-NetworkDNSConfiguration"
|
|
}
|
|
Export-ModuleMember -function Get-DNSConfiguration
|
|
|
|
Function Set-DNSConfiguration
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[string]$Hostname,
|
|
|
|
[string]$HA1Hostname,
|
|
|
|
[string]$HA2Hostname,
|
|
|
|
[string]$NameServer,
|
|
|
|
[string]$Searchlist,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-NetworkDNSConfiguration"
|
|
}
|
|
Export-ModuleMember -function Set-DNSConfiguration
|
|
|
|
Function Update-LmDNSCache
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Update-NetworkDNSCache"
|
|
}
|
|
Export-ModuleMember -function Update-LmDNSCache
|
|
|
|
Function Get-SNMPOption
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-NetworkSNMPConfiguration"
|
|
}
|
|
Export-ModuleMember -function Get-SNMPOption
|
|
|
|
Function Set-SNMPOption
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[bool]$SNMPEnable,
|
|
[bool]$SNMPv3enable,
|
|
[string]$SNMPv3user,
|
|
[string]$SNMPv3userpasswd,
|
|
|
|
[ValidateSet("SHA", "MD5")]
|
|
[string]$snmpAuthProt,
|
|
|
|
[ValidateSet("AES", "DES")]
|
|
[string]$snmpPrivProt,
|
|
|
|
[string]$SNMPClient,
|
|
[string]$SNMPCommunity,
|
|
[string]$SNMPContact,
|
|
[string]$SNMPLocation,
|
|
[bool]$SNMPTrapEnable,
|
|
[bool]$SNMPHaTrap,
|
|
[string]$SNMPv1Sink,
|
|
[string]$SNMPv2Sink,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-NetworkSNMPConfiguration"
|
|
}
|
|
Export-ModuleMember -function Set-SNMPOption
|
|
|
|
Function Get-Interface
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Int16]$InterfaceID = -1,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-NetworkInterface"
|
|
}
|
|
Export-ModuleMember -function Get-Interface
|
|
|
|
Function Set-Interface
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Int16]$InterfaceID = 0,
|
|
|
|
[string]$IPAddress,
|
|
|
|
[Int32]$MTU,
|
|
|
|
[bool]$HACheck,
|
|
|
|
[bool]$GWIface,
|
|
|
|
[bool]$clupdate,
|
|
|
|
[bool]$GeoTraffic,
|
|
|
|
[ValidateSet("802.3ad", "Active-backup")]
|
|
[string]$BondMode,
|
|
|
|
[string]$Partner,
|
|
|
|
[string]$Shared,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-NetworkInterface"
|
|
}
|
|
Export-ModuleMember -function Set-Interface
|
|
|
|
Function Add-InterfaceAddress
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Int16]$InterfaceID,
|
|
[string]$Address,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-NetworkInterfaceAdditionalAddress"
|
|
}
|
|
Export-ModuleMember -function Add-InterfaceAddress
|
|
|
|
Function Remove-InterfaceAddress
|
|
{
|
|
[cmdletbinding(SupportsShouldProcess=$true, ConfirmImpact="High", DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Int16]$InterfaceID,
|
|
[string]$Address,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN,
|
|
|
|
[switch]$Force
|
|
)
|
|
Write-Output "$warning Remove-NetworkInterfaceAdditionalAddress"
|
|
}
|
|
Export-ModuleMember -function Remove-InterfaceAddress
|
|
|
|
Function Get-Route
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-NetworkRoute"
|
|
}
|
|
Export-ModuleMember -function Get-Route
|
|
|
|
Function New-Route
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Destination,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[Alias("Mask", "SubnetMask")]
|
|
[Int16]$CIDR,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Gateway,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-NetworkRoute"
|
|
}
|
|
Export-ModuleMember -function New-Route
|
|
|
|
Function Remove-Route
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Destination,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-NetworkRoute"
|
|
}
|
|
Export-ModuleMember -function Remove-Route
|
|
|
|
Function Register-BondedInterface
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[Int16]$InterfaceID,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Register-NetworkBondedInterface"
|
|
}
|
|
Export-ModuleMember -function Register-BondedInterface
|
|
|
|
Function Unregister-BondedInterface
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[Int16]$InterfaceID,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Unregister-NetworkBondedInterface"
|
|
}
|
|
Export-ModuleMember -function Unregister-BondedInterface
|
|
|
|
Function Add-BondedInterface
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[Int16]$InterfaceID,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[Int16]$BondID,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-NetworkBondedInterface"
|
|
}
|
|
Export-ModuleMember -function Add-BondedInterface
|
|
|
|
Function Remove-BondedInterface
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[Int16]$InterfaceID,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[Int16]$BondID,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-NetworkBondedInterface"
|
|
}
|
|
Export-ModuleMember -function Remove-BondedInterface
|
|
|
|
Function Add-VLan
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[Int16]$InterfaceID,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateRange(1, 4095)]
|
|
[Int16]$VLanId,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-NetworkVLAN"
|
|
}
|
|
Export-ModuleMember -function Add-VLan
|
|
|
|
Function Remove-VLan
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[Int16]$InterfaceID,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-NetworkVLAN"
|
|
}
|
|
Export-ModuleMember -function Remove-VLan
|
|
|
|
Function Add-VxLan
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[Int16]$InterfaceID,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateRange(1, 16777214)]
|
|
[Int32]$VNI,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Addr,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-NetworkVxLAN"
|
|
}
|
|
Export-ModuleMember -function Add-VxLan
|
|
|
|
Function Remove-VxLan
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[Int16]$InterfaceID,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-NetworkVxLAN"
|
|
}
|
|
Export-ModuleMember -function Remove-VxLan
|
|
# ==================================================
|
|
# endregion NETWORKING
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region ADC
|
|
# ==================================================
|
|
Function New-VirtualService
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[string]$VirtualService,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$VSPort,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateSet("tcp", "udp")]
|
|
[string]$VSProtocol,
|
|
|
|
[ValidateRange(0, 6)]
|
|
[Int16]$AddVia,
|
|
|
|
[string]$Template,
|
|
|
|
[bool]$Cache = $false,
|
|
|
|
[string]$CertFile,
|
|
|
|
[ValidateSet("tcp", "icmp", "https", "http", "smtp", "nntp", "ftp", "telnet", "pop3", "imap", "rdp", "ldap", "none")]
|
|
[string]$CheckType = "tcp",
|
|
|
|
[string]$CheckHost,
|
|
|
|
[string]$CheckPattern,
|
|
|
|
[string]$CheckUrl,
|
|
|
|
[string]$CheckHeaders,
|
|
|
|
[string]$LdapEndpoint,
|
|
|
|
[string]$MatchLen,
|
|
|
|
[ValidateRange(0, 1)]
|
|
[int]$CheckUse1_1 = -1,
|
|
|
|
[Int32]$CheckPort,
|
|
|
|
[bool]$EnhancedHealthChecks,
|
|
|
|
[Int32]$RsMinimum,
|
|
|
|
[ValidateRange(0, 2)]
|
|
[Int16]$ClientCert = 0,
|
|
|
|
[bool]$Compress = $false,
|
|
|
|
[string]$Cookie,
|
|
|
|
[ValidateRange(0, 100)]
|
|
[Int16]$CachePercent = 0,
|
|
|
|
[string]$DefaultGW,
|
|
|
|
[bool]$Enable = $true,
|
|
|
|
[string]$ErrorCode = 0,
|
|
|
|
[string]$ErrorUrl,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$PortFollow,
|
|
|
|
[bool]$ForceL7 = $true,
|
|
|
|
[ValidateRange(0, 86400)]
|
|
[Int32]$Idletime,
|
|
|
|
[String[]]$LocalBindAddresses,
|
|
|
|
[ValidateSet("gen", "http", "tls", "ts")]
|
|
[string]$VSType,
|
|
|
|
[string]$Nickname,
|
|
|
|
[ValidateSet("ssl", "cookie", "active-cookie", "cookie-src", "active-cook-src", "cookie-hash",
|
|
"url", "query-hash", "host", "header", "super", "super-src", "src", "rdp", "rdp-src",
|
|
"rdp-sb", "udpsip", "none")]
|
|
[string]$Persist,
|
|
|
|
[ValidateRange(0, 604800)]
|
|
[Int32]$PersistTimeout,
|
|
|
|
[string]$QueryTag,
|
|
|
|
[string]$CipherSet,
|
|
|
|
[bool]$SSLReencrypt,
|
|
|
|
[bool]$SSLReverse,
|
|
|
|
[ValidateSet("", "http", "https")]
|
|
[string]$SSLRewrite,
|
|
|
|
[string]$ReverseSNIHostname,
|
|
|
|
[ValidateSet("rr", "wrr", "lc", "wlc", "fixed", "adaptive", "sh")]
|
|
[string]$Schedule,
|
|
|
|
[ValidateRange(0, 5)]
|
|
[Int16]$ServerInit,
|
|
|
|
[bool]$SSLAcceleration,
|
|
|
|
[string]$StandByAddr,
|
|
|
|
[string]$StandByPort,
|
|
|
|
[Int32]$TransactionLimit,
|
|
|
|
[bool]$Transparent,
|
|
|
|
[bool]$SubnetOriginating,
|
|
|
|
[bool]$UseforSnat,
|
|
|
|
[ValidateSet("0", "1", "2", "4", "8")]
|
|
[string]$QoS,
|
|
|
|
[int32]$CheckUseGet,
|
|
|
|
[ValidateRange(0, 7)]
|
|
[Int16]$Verify,
|
|
|
|
[string]$ExtraHdrKey,
|
|
|
|
[string]$ExtraHdrValue,
|
|
|
|
[string]$AllowedHosts,
|
|
|
|
[string]$AllowedDirectories,
|
|
|
|
[string]$AllowedGroups,
|
|
|
|
[string]$GroupSIDs,
|
|
|
|
[bool]$IncludeNestedGroups,
|
|
|
|
[bool]$DisplayPubPriv,
|
|
|
|
[bool]$DisablePasswordForm,
|
|
|
|
[string]$Domain,
|
|
|
|
[string]$AltDomains,
|
|
|
|
[string]$Logoff,
|
|
|
|
[ValidateRange(0, 7)]
|
|
[Int16]$ESPLogs,
|
|
|
|
[string]$SMTPAllowedDomains,
|
|
|
|
[bool]$ESPEnabled,
|
|
|
|
[string]$UserPwdChangeUrl,
|
|
|
|
[string]$UserPwdChangeMsg,
|
|
|
|
[ValidateRange(0, 5)]
|
|
[Int16]$InputAuthMode,
|
|
|
|
[ValidateRange(0, 2)]
|
|
[Int16]$OutputAuthMode,
|
|
|
|
[ValidateRange(0, 1)]
|
|
[Int16]$StartTLSMode,
|
|
|
|
[string]$ExtraPorts,
|
|
|
|
[string]$AltAddress,
|
|
|
|
[bool]$MultiConnect,
|
|
|
|
[string]$SingleSignOnDir,
|
|
|
|
[string]$OCSPVerify,
|
|
|
|
[Int32]$FollowVSID,
|
|
|
|
[bool]$TlsType = $false,
|
|
|
|
[string]$CheckPostData,
|
|
|
|
[string]$CheckCodes,
|
|
|
|
[string]$PreProcPrecedence,
|
|
|
|
[Int16]$PreProcPrecedencePos,
|
|
|
|
[string]$RequestPrecedence,
|
|
|
|
[Int16]$RequestPrecedencePos,
|
|
|
|
[string]$ResponsePrecedence,
|
|
|
|
[Int16]$ResponsePrecedencePos,
|
|
|
|
[string]$RsRulePrecedence,
|
|
|
|
[Int16]$RsRulePrecedencePos,
|
|
|
|
[bool]$NeedHostName,
|
|
|
|
[string]$CopyHdrFrom = "",
|
|
|
|
[string]$CopyHdrTo = "",
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-AdcVirtualService"
|
|
}
|
|
Export-ModuleMember -function New-VirtualService
|
|
|
|
Function Get-VirtualService
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$VirtualService,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$VSPort,
|
|
|
|
[ValidateSet("tcp", "udp")]
|
|
[String]$VSProtocol,
|
|
|
|
[Int32]$VSIndex = -1,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-AdcVirtualService"
|
|
}
|
|
Export-ModuleMember -function Get-VirtualService
|
|
|
|
Function Set-VirtualService
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$VirtualService,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$VSPort,
|
|
|
|
[ValidateSet("tcp", "udp")]
|
|
[string]$VSProtocol,
|
|
|
|
[Int32]$VSIndex = -1,
|
|
|
|
[Int16]$AddVia,
|
|
|
|
[bool]$Cache,
|
|
|
|
[string]$CertFile,
|
|
|
|
[ValidateSet("tcp", "icmp", "https", "http", "smtp", "nntp", "ftp", "telnet", "pop3", "imap", "rdp", "ldap", "none")]
|
|
[string]$CheckType,
|
|
|
|
[string]$CheckHost,
|
|
|
|
[string]$CheckPattern,
|
|
|
|
[string]$CheckUrl,
|
|
|
|
[string]$CheckHeaders,
|
|
|
|
[string]$LdapEndpoint,
|
|
|
|
[string]$MatchLen,
|
|
|
|
[ValidateRange(0, 1)]
|
|
[int]$CheckUse1_1 = -1,
|
|
|
|
[Int32]$CheckPort,
|
|
|
|
[bool]$EnhancedHealthChecks,
|
|
|
|
[Int32]$RsMinimum,
|
|
|
|
[ValidateRange(0, 2)]
|
|
[Int16]$ClientCert,
|
|
|
|
[bool]$Compress,
|
|
|
|
[string]$Cookie,
|
|
|
|
[ValidateRange(0, 100)]
|
|
[Int16]$CachePercent,
|
|
|
|
[string]$DefaultGW,
|
|
|
|
[bool]$Enable,
|
|
|
|
[string]$ErrorCode,
|
|
|
|
[string]$ErrorUrl,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$PortFollow,
|
|
|
|
[bool]$ForceL7,
|
|
|
|
[ValidateRange(0, 86400)]
|
|
[Int32]$Idletime,
|
|
|
|
[String[]]$LocalBindAddresses,
|
|
|
|
[ValidateSet("gen", "http", "tls", "ts")]
|
|
[string]$VSType,
|
|
|
|
[string]$Nickname,
|
|
|
|
[ValidateSet("none", "ssl", "cookie", "active-cookie", "cookie-src", "active-cook-src", "cookie-hash", "url",
|
|
"query-hash", "host", "header", "super", "super-src", "src", "rdp", "rdp-src", "rdp-sb", "udpsip")]
|
|
[string]$Persist,
|
|
|
|
[ValidateRange(0, 604800)]
|
|
[Int32]$PersistTimeout,
|
|
|
|
[string]$QueryTag,
|
|
|
|
[string]$CipherSet,
|
|
|
|
[bool]$SSLReencrypt,
|
|
|
|
[bool]$SSLReverse,
|
|
|
|
[ValidateSet("", "http", "https")]
|
|
[string]$SSLRewrite,
|
|
|
|
[string]$ReverseSNIHostname,
|
|
|
|
[ValidateSet("rr", "wrr", "lc", "wlc", "fixed", "adaptive", "sh")]
|
|
[string]$Schedule,
|
|
|
|
[ValidateRange(0, 5)]
|
|
[Int16]$ServerInit,
|
|
|
|
[bool]$SSLAcceleration,
|
|
|
|
[string]$StandByAddr,
|
|
|
|
[string]$StandByPort,
|
|
|
|
[Int32]$TransactionLimit,
|
|
|
|
[bool]$Transparent,
|
|
|
|
[bool]$SubnetOriginating,
|
|
|
|
[bool]$UseforSnat,
|
|
|
|
[ValidateSet("0", "1", "2", "4", "8")]
|
|
[string]$QoS,
|
|
|
|
[int32]$CheckUseGet,
|
|
|
|
[ValidateRange(0, 7)]
|
|
[Int16]$Verify,
|
|
|
|
[string]$ExtraHdrKey,
|
|
|
|
[string]$ExtraHdrValue,
|
|
|
|
[string]$AllowedHosts,
|
|
|
|
[string]$AllowedDirectories,
|
|
|
|
[string]$AllowedGroups,
|
|
|
|
[string]$GroupSIDs,
|
|
|
|
[bool]$IncludeNestedGroups,
|
|
|
|
[bool]$DisplayPubPriv,
|
|
|
|
[bool]$DisablePasswordForm,
|
|
|
|
[string]$Domain,
|
|
|
|
[string]$AltDomains,
|
|
|
|
[string]$Logoff,
|
|
|
|
[ValidateRange(0, 7)]
|
|
[Int16]$ESPLogs,
|
|
|
|
[string]$SMTPAllowedDomains,
|
|
|
|
[bool]$ESPEnabled,
|
|
|
|
[string]$UserPwdChangeUrl,
|
|
|
|
[string]$UserPwdChangeMsg,
|
|
|
|
[ValidateRange(0, 5)]
|
|
[Int16]$InputAuthMode,
|
|
|
|
[ValidateRange(0, 1)]
|
|
[Int16]$OutputAuthMode,
|
|
|
|
[ValidateRange(0, 1)]
|
|
[Int16]$StartTLSMode,
|
|
|
|
[string]$ExtraPorts,
|
|
|
|
[string]$AltAddress,
|
|
|
|
[bool]$MultiConnect,
|
|
|
|
[string]$SingleSignOnDir,
|
|
|
|
[string]$OCSPVerify,
|
|
|
|
[Int32]$FollowVSID,
|
|
|
|
[bool]$TlsType = $false,
|
|
|
|
[string]$CheckPostData,
|
|
|
|
[string]$CheckCodes,
|
|
|
|
[string]$PreProcPrecedence,
|
|
|
|
[Int16]$PreProcPrecedencePos,
|
|
|
|
[string]$RequestPrecedence,
|
|
|
|
[Int16]$RequestPrecedencePos,
|
|
|
|
[string]$ResponsePrecedence,
|
|
|
|
[Int16]$ResponsePrecedencePos,
|
|
|
|
[string]$RsRulePrecedence,
|
|
|
|
[Int16]$RsRulePrecedencePos,
|
|
|
|
[bool]$NeedHostName,
|
|
|
|
[string]$CopyHdrFrom,
|
|
|
|
[string]$CopyHdrTo,
|
|
|
|
[string]$ServerFbaPath,
|
|
|
|
[string]$ServerFbaPost,
|
|
|
|
[bool]$Intercept,
|
|
|
|
[bool]$AllowHTTP2,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$InterceptOpts,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$InterceptRules,
|
|
|
|
[ValidateRange(0, 100000)]
|
|
[int32]$AlertThreshold,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-AdcVirtualService"
|
|
}
|
|
Export-ModuleMember -function Set-VirtualService
|
|
|
|
Function Remove-VirtualService
|
|
{
|
|
[cmdletbinding(SupportsShouldProcess=$true, ConfirmImpact="High", DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(ParameterSetName="IPAddress",ValueFromPipelineByPropertyName=$true)]
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[string]$VirtualService,
|
|
|
|
[Parameter(ParameterSetName="IPAddress",ValueFromPipelineByPropertyName=$true)]
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$VSPort,
|
|
|
|
[Parameter(ParameterSetName="IPAddress",ValueFromPipelineByPropertyName=$true)]
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateSet("tcp", "udp")]
|
|
[string]$VSProtocol,
|
|
|
|
[Parameter(ParameterSetName="Index",ValueFromPipelineByPropertyName=$true)]
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[Int32]$VSIndex = -1,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN,
|
|
|
|
[switch]$Force
|
|
)
|
|
Write-Output "$warning Remove-AdcVirtualService"
|
|
}
|
|
Export-ModuleMember -function Remove-VirtualService
|
|
|
|
Function New-RealServer
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$VirtualService,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$VSPort,
|
|
|
|
[ValidateSet("tcp", "udp")]
|
|
[string]$VSProtocol,
|
|
|
|
[Int32]$VSIndex = -1,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$RealServer,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$RealServerPort,
|
|
|
|
[ValidateRange(1, 65530)]
|
|
[Int32]$Weight,
|
|
|
|
[ValidateSet("nat", "route")]
|
|
[string]$Forward = "nat",
|
|
|
|
[bool]$Enable = $true,
|
|
|
|
[bool]$Non_Local = $false,
|
|
|
|
[ValidateRange(0, 100000)]
|
|
[Int64]$Limit = 0,
|
|
|
|
[bool]$Critical,
|
|
|
|
[ValidateRange(0, 65535)]
|
|
[Int32]$Follow,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-AdcRealServe"
|
|
}
|
|
Export-ModuleMember -function New-RealServer
|
|
|
|
Function Remove-RealServer
|
|
{
|
|
[cmdletbinding(SupportsShouldProcess=$true, ConfirmImpact="High", DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$VirtualService,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$VSPort,
|
|
|
|
[ValidateSet("tcp", "udp")]
|
|
[string]$VSProtocol,
|
|
|
|
[Int32]$VSIndex = -1,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$RealServer,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$RealServerPort,
|
|
|
|
[Int32]$RSIndex = -1,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN,
|
|
|
|
[switch]$Force
|
|
)
|
|
Write-Output "$warning Remove-AdcRealServer"
|
|
}
|
|
Export-ModuleMember -function Remove-RealServer
|
|
|
|
Function Set-RealServer
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$VirtualService,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$VSPort,
|
|
|
|
[ValidateSet("tcp", "udp")]
|
|
[string]$VSProtocol,
|
|
|
|
[Int32]$VSIndex = -1,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$RealServer,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$RealServerPort,
|
|
|
|
[Int32]$RSIndex = -1,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$NewPort,
|
|
|
|
[ValidateRange(1, 65530)]
|
|
[Int32]$Weight,
|
|
|
|
[ValidateSet("nat", "route")]
|
|
[string]$Forward = "nat",
|
|
|
|
[bool]$Enable = $true,
|
|
|
|
[ValidateRange(0, 100000)]
|
|
[Int64]$Limit = 0,
|
|
|
|
[bool]$Critical,
|
|
|
|
[ValidateRange(0, 65535)]
|
|
[Int32]$Follow,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-AdcRealServer"
|
|
}
|
|
Export-ModuleMember -function Set-RealServer
|
|
|
|
Function Get-RealServer
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$VirtualService,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$VSPort,
|
|
|
|
[ValidateSet("tcp", "udp")]
|
|
[String]$VSProtocol,
|
|
|
|
[Int32]$VSIndex = -1,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$RealServer,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$RSPort,
|
|
|
|
[Int32]$RSIndex = -1,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-AdcRealServer"
|
|
}
|
|
Export-ModuleMember -function Get-RealServer
|
|
|
|
Function Enable-RealServer
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$RSIpAddress,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$RSPort,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$RSFqdn,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Enable-AdcRealServer"
|
|
}
|
|
Export-ModuleMember -function Enable-RealServer
|
|
|
|
Function Disable-RealServer
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$RSIpaddress,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$RSPort,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$RSFqdn,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Disable-AdcRealServer"
|
|
}
|
|
Export-ModuleMember -function Disable-RealServer
|
|
|
|
Function Remove-AdcVirtualServerRule
|
|
{
|
|
[cmdletbinding(SupportsShouldProcess=$true, ConfirmImpact="High", DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$VirtualService,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$VSPort,
|
|
|
|
[ValidateSet("tcp", "udp")]
|
|
[string]$VSProtocol,
|
|
|
|
[Int32]$VSIndex = -1,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateSet("pre", "response", "request")]
|
|
[string]$RuleType,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$RuleName,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN,
|
|
|
|
[switch]$Force
|
|
)
|
|
Write-Output "$warning Remove-AdcVirtualServiceRule"
|
|
}
|
|
Export-ModuleMember -function Remove-AdcVirtualServerRule
|
|
|
|
Function Remove-VirtualServerRule
|
|
{
|
|
[cmdletbinding(SupportsShouldProcess=$true, ConfirmImpact="High", DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$VirtualService,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$VSPort,
|
|
|
|
[ValidateSet("tcp", "udp")]
|
|
[string]$VSProtocol,
|
|
|
|
[Int32]$VSIndex = -1,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateSet("pre", "response", "request")]
|
|
[string]$RuleType,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$RuleName,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN,
|
|
|
|
[switch]$Force
|
|
)
|
|
Write-Output "$warning Remove-AdcVirtualServiceRule"
|
|
}
|
|
Export-ModuleMember -function Remove-VirtualServerRule
|
|
|
|
Function New-RealServerRule
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$VirtualService,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$VSPort,
|
|
|
|
[ValidateSet("tcp", "udp")]
|
|
[string]$VSProtocol,
|
|
|
|
[Int32]$VSIndex = -1,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$RealServer,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$RSPort,
|
|
|
|
[Int32]$RSIndex = -1,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$RuleName,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-AdcRealServerRule"
|
|
}
|
|
Export-ModuleMember -function New-RealServerRule
|
|
|
|
Function Remove-RealServerRule
|
|
{
|
|
[cmdletbinding(SupportsShouldProcess=$true, ConfirmImpact="High", DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$VirtualService,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$VSPort,
|
|
|
|
[ValidateSet("tcp", "udp")]
|
|
[string]$VSProtocol,
|
|
|
|
[Int32]$VSIndex = -1,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$RealServer,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$RSPort,
|
|
|
|
[Int32]$RSIndex = -1,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$RuleName,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN,
|
|
|
|
[switch]$Force
|
|
)
|
|
Write-Output "$warning Remove-AdcRealServerRule"
|
|
}
|
|
Export-ModuleMember -function Remove-RealServerRule
|
|
|
|
Function New-Rule
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[Parameter(Mandatory=$true)]
|
|
[string]$RuleName,
|
|
|
|
[ValidateSet("regex", "prefix", "postfix")]
|
|
[string]$MatchType = "regex",
|
|
|
|
[bool]$IncHost = $false,
|
|
|
|
[bool]$NoCase = $false,
|
|
|
|
[bool]$Negate = $false,
|
|
|
|
[bool]$IncQuery = $false,
|
|
|
|
[string]$Header,
|
|
|
|
[string]$Pattern,
|
|
|
|
[string]$Replacement,
|
|
|
|
[ValidateRange(0, 5)]
|
|
[Int32]$Type, # TODO: to change Type to RuleType. Pay attention to the mapping
|
|
# to add values range
|
|
# EVEN BETTER: set the RuleType to string as in Get-AdcContentRule with the
|
|
# same values and maps the string type to the corrispondent integer value.
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-AdcContentRule"
|
|
}
|
|
Export-ModuleMember -function New-Rule
|
|
|
|
Function Remove-Rule
|
|
{
|
|
[cmdletbinding(SupportsShouldProcess=$true, ConfirmImpact="High", DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[Parameter(Mandatory=$true, ValueFromPipeline=$true)]
|
|
[string]$RuleName,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN,
|
|
|
|
[switch]$Force
|
|
)
|
|
Write-Output "$warning Remove-AdcContentRule"
|
|
}
|
|
Export-ModuleMember -function Remove-Rule
|
|
|
|
Function Set-Rule
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[Parameter(Mandatory=$true)]
|
|
[string]$RuleName,
|
|
|
|
[ValidateSet("regex", "prefix", "postfix")]
|
|
[string]$MatchType = "regex",
|
|
|
|
[bool]$IncHost,
|
|
|
|
[bool]$NoCase,
|
|
|
|
[bool]$Negate,
|
|
|
|
[bool]$IncQuery,
|
|
|
|
[string]$Header,
|
|
|
|
[string]$Pattern,
|
|
|
|
[string]$Replacement,
|
|
|
|
[ValidateRange(0, 5)]
|
|
[Int32]$Type, # TODO: to change Type to RuleType. Pay attention to the mapping
|
|
# to add values range
|
|
# EVEN BETTER: set the RuleType to string as in Get-AdcContentRule with the
|
|
# same values and maps the string type to the corrispondent integer value.
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-AdcContentRule"
|
|
}
|
|
Export-ModuleMember -function Set-Rule
|
|
|
|
Function Get-Rule
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[string]$RuleName,
|
|
|
|
[ValidateSet("MatchContentRule", "AddHeaderRule", "DeleteHeaderRule", "ReplaceHeaderRule", "ModifyUrlRule", "ReplaceBodyRule")]
|
|
[string]$RuleType,
|
|
|
|
[switch]$All,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-AdcContentRule"
|
|
}
|
|
Export-ModuleMember -function Get-Rule
|
|
|
|
Function Get-L7Configuration
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-AdcL7Configuration"
|
|
}
|
|
Export-ModuleMember -function Get-L7Configuration
|
|
|
|
Function Set-L7Configuration
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[bool]$ScalingOver64KConnections,
|
|
|
|
[ValidateSet("No", "Yes", "Yes - Accept Changes")]
|
|
[string]$AlwaysCheckPersist,
|
|
|
|
[bool]$AddPortToActiveCookie,
|
|
|
|
[bool]$RFCConform,
|
|
|
|
[bool]$CloseOnError,
|
|
|
|
[bool]$AddViaHeaderInCacheResponses,
|
|
|
|
[bool]$RSAreLocal,
|
|
|
|
[bool]$DropOnRSFail,
|
|
|
|
[bool]$DropAtDrainEnd,
|
|
|
|
[ValidateRange(30, 300)]
|
|
[Int16]$L7AuthTimeoutSecs,
|
|
|
|
[ValidateRange(60, 300)]
|
|
[Int16]$L7ClientTokenTimeoutSecs,
|
|
|
|
[int]$L7ConnectionDrainTimeoutSecs,
|
|
|
|
[ValidateSet("X-ClientSide", "X-Forwarded-For", "None")]
|
|
[string]$AdditionalL7Header,
|
|
|
|
[ValidateSet("RFC-2616 Compliant", "Require 100-Continue", "RFC-7231 Compliant")]
|
|
[string]$OneHundredContinueHandling,
|
|
|
|
[bool]$AllowEmptyPosts,
|
|
|
|
[bool]$AllowEmptyHttpHeaders,
|
|
|
|
[bool]$ForceCompleteRSMatch,
|
|
|
|
[ValidateRange(0, 600)]
|
|
[Int16]$SlowStart,
|
|
|
|
[bool]$ShareSubVSPersistance,
|
|
|
|
#[bool]$Transparent, # FIXME: still available?
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-AdcL7Configuration"
|
|
}
|
|
Export-ModuleMember -function Set-L7Configuration
|
|
|
|
Function Get-LogSplitInterval
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
param(
|
|
[validatenotnullorempty()]
|
|
[string]$LoadBalancer = $loadbalanceraddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-AdcL7LogInsightSplitConfiguration"
|
|
}
|
|
Export-ModuleMember -function Get-LogSplitInterval
|
|
|
|
Function Set-LogSplitInterval
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[string]$logsplitinterval,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-AdcL7LogInsightSplitConfiguration"
|
|
}
|
|
Export-ModuleMember -function Set-LogSplitInterval
|
|
|
|
Function Get-ServiceHealth
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-AdcServiceHealth"
|
|
}
|
|
Export-ModuleMember -function Get-ServiceHealth
|
|
|
|
Function Set-ServiceHealth
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateRange(9, 120)]
|
|
[Int16]$CheckInterval,
|
|
|
|
[ValidateRange(4, 60)]
|
|
[Int16]$ConnectTimeout,
|
|
|
|
[ValidateRange(2, 15)]
|
|
[Int16]$RetryCount,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-AdcServiceHealth"
|
|
}
|
|
Export-ModuleMember -function Set-ServiceHealth
|
|
|
|
Function Add-NoCompressExtension
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true,ValueFromPipeline=$true)]
|
|
[ValidatePattern({^\.})]
|
|
[String[]]$Extension,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-AdcHttpCompressionException"
|
|
}
|
|
Export-ModuleMember -function Add-NoCompressExtension
|
|
|
|
Function Remove-NoCompressExtension
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true,ValueFromPipeline=$true)]
|
|
[ValidatePattern({^\.})]
|
|
[String[]]$Extension,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-AdcServiceHealth"
|
|
}
|
|
Export-ModuleMember -function Remove-NoCompressExtension
|
|
|
|
Function Add-NoCacheExtension
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true, ValueFromPipeline=$true)]
|
|
[ValidatePattern({^\.})]
|
|
[String[]]$Extension,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-AdcHttpCacheException"
|
|
}
|
|
Export-ModuleMember -function Add-NoCacheExtension
|
|
|
|
Function Remove-NoCacheExtension
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true, ValueFromPipeline=$true)]
|
|
[ValidatePattern({^\.})]
|
|
[String[]]$Extension,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-AdcHttpCacheException"
|
|
}
|
|
Export-ModuleMember -function Remove-NoCacheExtension
|
|
|
|
Function Get-AdaptiveCheck
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-AdcAdaptiveHealthCheck"
|
|
}
|
|
Export-ModuleMember -function Get-AdaptiveCheck
|
|
|
|
Function Set-AdaptiveCheck
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[string]$AdaptiveURL,
|
|
[Int32]$AdaptivePort,
|
|
[ValidateRange(10, 60)]
|
|
[Int32]$AdaptiveInterval,
|
|
[Int16]$MinPercent,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-AdcAdaptiveHealthCheck"
|
|
}
|
|
Export-ModuleMember -function Set-AdaptiveCheck
|
|
|
|
Function VSAddWafRule
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$VS,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$VSPort,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateSet("tcp", "udp")]
|
|
[string]$VSProtocol,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[string]$Rule,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Enablerules,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Disablerules,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-AdcVsWafRule"
|
|
}
|
|
Export-ModuleMember -function VSAddWafRule
|
|
|
|
Function VSRemoveWafRule
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$VS,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$VSPort,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateSet("tcp", "udp")]
|
|
[string]$VSProtocol,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Rule,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-AdcVsWafRule"
|
|
}
|
|
Export-ModuleMember -function VSRemoveWafRule
|
|
|
|
Function VSListWafRuleIds
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$VS,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$VSPort,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateSet("tcp", "udp")]
|
|
[string]$VSProtocol,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Rule,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-AdcVsWafRule"
|
|
}
|
|
Export-ModuleMember -function VSListWafRuleIds
|
|
# ==================================================
|
|
# endregion ADC
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region SECURITY
|
|
# ==================================================
|
|
Function Set-AdminAccess
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateRange(0, 99)]
|
|
[Int32]$WuiNetworkInterfaceId = -1,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateRange(3, 65530)]
|
|
[int32]$WuiPort = -1,
|
|
|
|
[string]$WuiDefaultGateway,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-SecAdminAccess"
|
|
}
|
|
Export-ModuleMember -function Set-AdminAccess
|
|
|
|
Function Get-WUIAuth
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-SecWuiAuthentication"
|
|
}
|
|
Export-ModuleMember -function Get-WUIAuth
|
|
|
|
Function Set-WUIAuth
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[string]$RADIUSServer,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int64]$RADIUSPort,
|
|
|
|
[string]$RADIUSSecret,
|
|
|
|
[string]$RADIUSBackupServer,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int64]$RADIUSBackupPort,
|
|
|
|
[string]$RADIUSBackupSecret,
|
|
|
|
[int]$RADIUSRevalidateInterval,
|
|
|
|
[string]$WuiLdapEp,
|
|
|
|
[bool]$SessionLocalAuth,
|
|
|
|
[ValidateSet(7, 22, 23, 262, 263, 278, 279, 772, 773, 774, 775, 788, 789, 790, 791)]
|
|
[Int16]$SessionAuthMode,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-SecWuiAuthentication"
|
|
}
|
|
Export-ModuleMember -function Set-WUIAuth
|
|
|
|
Function Get-WUISetting
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-SecAdminWuiConfiguration"
|
|
}
|
|
Export-ModuleMember -function Get-WUISetting
|
|
|
|
Function Set-WUISetting
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateRange(0, 14)]
|
|
[int]$WUITLSProtocols,
|
|
|
|
[ValidateSet("Default", "Default_NoRc4", "BestPractices", "Intermediate_compatibility", "Backward_compatibility", "WUI", "FIPS", "Legacy")]
|
|
[string]$WUICipherset,
|
|
|
|
[bool]$sessioncontrol,
|
|
|
|
[bool]$sessionbasicauth,
|
|
|
|
[ValidateRange(1, 999)]
|
|
[Int16]$sessionmaxfailattempts,
|
|
|
|
[ValidateRange(60, 86400)]
|
|
[Int32]$sessionidletime,
|
|
|
|
[ValidateRange(0, 9)]
|
|
[Int16]$sessionconcurrent,
|
|
|
|
[string]$wuipreauth,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-SecAdminWuiConfiguration"
|
|
}
|
|
Export-ModuleMember -function Set-WUISetting
|
|
|
|
Function UserSetSystemPassword
|
|
{
|
|
[CmdletBinding()]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[String]$CurrentPassword,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[String]$NewPassword,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred
|
|
)
|
|
Write-Output "$warning Set-SecSystemUserPassword"
|
|
}
|
|
Export-ModuleMember -function UserSetSystemPassword
|
|
|
|
Function UserSetPermissions
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[String]$User,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[String]$Permissions,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-SecUserPermission"
|
|
}
|
|
Export-ModuleMember -function UserSetPermissions
|
|
|
|
Function UserChangeLocalPassword
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[String]$User,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[String]$Password,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateRange(0, 1)]
|
|
[int]$Radius,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-SecUserPassword"
|
|
}
|
|
Export-ModuleMember -function UserChangeLocalPassword
|
|
# ==================================================
|
|
# endregion SECURITY
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region SYSTEM
|
|
# ==================================================
|
|
Function Initialize-LoadBalancer
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Address,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = 443,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = [System.Management.Automation.PSCredential]::Empty,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $null,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $null
|
|
)
|
|
Write-Output "$warning Initialize-LmConnectionParameters"
|
|
}
|
|
Export-ModuleMember -function Initialize-LoadBalancer
|
|
|
|
Function Test-ServerConnection
|
|
{
|
|
[CmdletBinding()]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$ComputerName,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[Int32]$Port
|
|
)
|
|
Write-Output "$warning Test-LmServerConnection"
|
|
}
|
|
Export-ModuleMember -function Test-ServerConnection
|
|
# ==================================================
|
|
# endregion SYSTEM
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region GET-SET
|
|
# ==================================================
|
|
Function Get-AllParameters
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-LmAllParameters"
|
|
}
|
|
Export-ModuleMember -function Get-AllParameters, Get-AllParameters
|
|
|
|
Function Get-Parameter
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Param,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-LmParameter"
|
|
}
|
|
Export-ModuleMember -function Get-Parameter
|
|
|
|
Function Set-Parameter
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Param,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[AllowEmptyString()]
|
|
[String]$Value = "",
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
|
|
)
|
|
Write-Output "$warning Set-LmParameter"
|
|
}
|
|
Export-ModuleMember -function Set-Parameter
|
|
|
|
# ==================================================
|
|
# endregion GET-SET
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region TLS
|
|
# ==================================================
|
|
Function New-Certificate
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Name,
|
|
|
|
[string]$Password,
|
|
|
|
[switch]$Replace,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Path,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-TlsCertificate"
|
|
}
|
|
Export-ModuleMember -function New-Certificate
|
|
|
|
Function ListCert
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[string]$CertName,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-TlsCertificate"
|
|
}
|
|
Export-ModuleMember -function ListCert
|
|
|
|
Function Remove-Certificate
|
|
{
|
|
[cmdletbinding(SupportsShouldProcess=$true,ConfirmImpact="High",DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Name,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN,
|
|
|
|
[switch]$Force
|
|
)
|
|
Write-Output "$warning Remove-TlsCertificate"
|
|
}
|
|
Export-ModuleMember -function Remove-Certificate
|
|
|
|
Function Backup-Certificate
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateLength(6, 64)]
|
|
[string]$Password,
|
|
|
|
[string]$Path,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN,
|
|
|
|
[switch]$Force
|
|
)
|
|
Write-Output "$warning Backup-TlsCertificate"
|
|
}
|
|
Export-ModuleMember -function Backup-Certificate
|
|
|
|
Function Restore-Certificate
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateLength(6, 64)]
|
|
[string]$Password,
|
|
|
|
[ValidateScript({Test-Path $_})]
|
|
[string]$Path,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateSet("Full", "VS", "Third")]
|
|
[string]$Type,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Restore-TlsCertificate"
|
|
}
|
|
Export-ModuleMember -function Restore-Certificate
|
|
|
|
Function New-IntermediateCertificate
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[string]$Name,
|
|
|
|
[string]$Path,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-TlsIntermediateCertificate"
|
|
}
|
|
Export-ModuleMember -function New-IntermediateCertificate
|
|
|
|
Function Remove-IntermediateCertificate
|
|
{
|
|
[cmdletbinding(SupportsShouldProcess=$true,ConfirmImpact="High",DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Name,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN,
|
|
|
|
[switch]$Force
|
|
)
|
|
Write-Output "$warning Remove-TlsIntermediateCertificate"
|
|
}
|
|
Export-ModuleMember -function Remove-IntermediateCertificate
|
|
|
|
Function GetCipherset
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Name,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-TlsCipherSet"
|
|
}
|
|
Export-ModuleMember -function GetCipherset
|
|
|
|
Function ModifyCipherset
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Name,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Value,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-TlsCipherSet"
|
|
}
|
|
Export-ModuleMember -function ModifyCipherset
|
|
|
|
Function DelCipherset
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Name,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-TlsCipherSet"
|
|
}
|
|
Export-ModuleMember -function DelCipherset
|
|
|
|
Function HSMShow
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-TlsHSM"
|
|
}
|
|
Export-ModuleMember -function HSMShow
|
|
|
|
Function HSMConfigure
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[String]$Sethsm,
|
|
[String]$Safeaddr,
|
|
[String]$Clpass,
|
|
[bool]$Enable,
|
|
[String]$Cavhsmaddr,
|
|
[String]$Cavhsmpasswd,
|
|
[String]$Cavhsmuser,
|
|
[bool]$Cavhsmenable,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-TlsHSM"
|
|
}
|
|
Export-ModuleMember -function HSMConfigure
|
|
|
|
Function HSMGenerateClientCert
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[string]$Path,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Clcertname,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN,
|
|
|
|
[switch]$Force
|
|
)
|
|
Write-Output "$warning New-TlsHSMClientCert"
|
|
}
|
|
Export-ModuleMember -function HSMGenerateClientCert
|
|
|
|
Function HSMUploadCACert
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateScript({Test-Path $_})]
|
|
[string]$Path,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-TlsHSMCACert"
|
|
}
|
|
Export-ModuleMember -function HSMUploadCACert
|
|
# ==================================================
|
|
# endregion TLS
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region WAF
|
|
# ==================================================
|
|
Function ListWafRules
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-WafRules"
|
|
}
|
|
Export-ModuleMember -function ListWafRules
|
|
|
|
Function AddWafCustomData
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateScript({Test-Path $_})]
|
|
[string]$Path,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-WafCustomRuleData"
|
|
}
|
|
Export-ModuleMember -function AddWafCustomData
|
|
|
|
Function DownloadWafCustomData
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[string]$Path,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$RuleDataName,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN,
|
|
|
|
[switch]$Force
|
|
)
|
|
Write-Output "$warning Export-WafCustomRuleData"
|
|
}
|
|
Export-ModuleMember -function DownloadWafCustomData
|
|
|
|
Function DelWafCustomData
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Filename,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Uninstall-WafCustomRuleData"
|
|
}
|
|
Export-ModuleMember -function DelWafCustomData
|
|
|
|
Function AddWafCustomRule
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateScript({Test-Path $_})]
|
|
[string]$Path,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-WafCustomRuleSet"
|
|
}
|
|
Export-ModuleMember -function AddWafCustomRule
|
|
|
|
Function DelWafCustomRule
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Filename,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Uninstall-WafCustomRuleSet"
|
|
}
|
|
Export-ModuleMember -function DelWafCustomRule
|
|
|
|
Function DownloadWafCustomRule
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[string]$Path,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$RuleSetName,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN,
|
|
|
|
[switch]$Force
|
|
)
|
|
Write-Output "$warning Export-WafCustomRuleSet"
|
|
}
|
|
Export-ModuleMember -function DownloadWafCustomRule
|
|
|
|
Function EnableWafRemoteLogging
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$RemoteURI,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Username,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Passwd,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Enable-WafRemoteLogging"
|
|
}
|
|
Export-ModuleMember -function EnableWafRemoteLogging
|
|
|
|
Function DisableWafRemoteLogging
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Disable-WafRemoteLogging"
|
|
}
|
|
Export-ModuleMember -function DisableWafRemoteLogging
|
|
|
|
Function ListWafAuditFiles
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-WafAuditFiles"
|
|
}
|
|
Export-ModuleMember -function ListWafAuditFiles
|
|
|
|
Function DownloadWafAuditLog
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[string]$Path,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$AuditFile,
|
|
|
|
[string]$Filter,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN,
|
|
|
|
[switch]$Force
|
|
)
|
|
Write-Output "$warning Export-WafAuditLog"
|
|
}
|
|
Export-ModuleMember -function DownloadWafAuditLog
|
|
|
|
Function GetWafChangeLog
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[string]$Path,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN,
|
|
|
|
[switch]$Force
|
|
)
|
|
Write-Output "$warning Export-WafChangeLog"
|
|
}
|
|
Export-ModuleMember -function GetWafChangeLog
|
|
|
|
Function ManInstallWafRules
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Install-WafRulesDatabase"
|
|
}
|
|
Export-ModuleMember -function ManInstallWafRules
|
|
|
|
Function DownloadWafRules
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Update-WafRulesDatabase"
|
|
}
|
|
Export-ModuleMember -function DownloadWafRules
|
|
|
|
Function GetWafSettings
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-WafRulesAutoUpdateConfiguration"
|
|
}
|
|
Export-ModuleMember -function GetWafSettings
|
|
# ==================================================
|
|
# endregion WAF
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region GEO
|
|
# ==================================================
|
|
Function AddFQDN
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$FQDN,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-GeoFQDN"
|
|
}
|
|
Export-ModuleMember -function AddFQDN
|
|
|
|
Function Add-GeoFQDN
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$FQDN,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-GeoFQDN"
|
|
}
|
|
Export-ModuleMember -function Add-GeoFQDN
|
|
|
|
Function DeleteFQDN
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$FQDN,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-GeoFQDN"
|
|
}
|
|
Export-ModuleMember -function DeleteFQDN
|
|
|
|
Function ListFQDNs
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$FQDN,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-GeoFQDN"
|
|
}
|
|
Export-ModuleMember -function ListFQDNs
|
|
|
|
Function ModifyFQDN
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$FQDN,
|
|
|
|
[ValidateSet("RoundRobin", "WeightedRoundRobin", "FixedWeighting", "RealServerLoad", "Proximity", "LocationBased", "AllAvailable")]
|
|
[String]$SelectionCriteria,
|
|
|
|
[ValidateRange(0, 1440)]
|
|
[Int32]$SiteFailureDelay = -1,
|
|
|
|
[ValidateSet("auto", "manual")]
|
|
[String]$SiteRecoveryMode,
|
|
|
|
[ValidateSet("PublicSitesOnly", "PreferPublicSites", "PreferPrivateSites", "AllSites")]
|
|
[string]$PublicRequest,
|
|
|
|
[ValidateSet("PrivateSitesOnly", "PreferPrivateSites", "PreferPublicSites", "AllSites")]
|
|
[string]$PrivateRequest,
|
|
|
|
[String]$Failover,
|
|
|
|
[bool]$LocalSettings,
|
|
|
|
[ValidateRange(1, 86400)]
|
|
[Int32]$localttl,
|
|
|
|
[ValidateRange(0, 86400)]
|
|
[Int32]$localsticky,
|
|
|
|
[bool]$UnanimousChecks,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-GeoFQDN"
|
|
}
|
|
Export-ModuleMember -function ModifyFQDN
|
|
|
|
Function AddCluster
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$ClusterIp,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$ClusterName,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-GeoCluster"
|
|
}
|
|
Export-ModuleMember -function AddCluster
|
|
|
|
Function DeleteCluster
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$ClusterIp,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-GeoCluster"
|
|
}
|
|
Export-ModuleMember -function DeleteCluster
|
|
|
|
Function Get-GeoCluster
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$ClusterIp,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-GeoCluster"
|
|
}
|
|
Export-ModuleMember -function ListClusters
|
|
|
|
Function ShowCluster
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$ClusterIp,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-GeoCluster"
|
|
}
|
|
Export-ModuleMember -function ShowCluster
|
|
|
|
Function ModifyCluster
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$ClusterIp,
|
|
|
|
[String]$ClusterName,
|
|
|
|
[ValidateSet("default", "remoteLM", "localLM")]
|
|
[String]$Type,
|
|
|
|
[ValidateSet("none", "tcp", "icmp")]
|
|
[String]$Checker,
|
|
|
|
[Int32]$CheckerPort,
|
|
|
|
[String]$Enable,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-GeoCluster"
|
|
}
|
|
Export-ModuleMember -function ModifyCluster
|
|
|
|
Function ClusterChangeLocation
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$ClusterIp,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[Int32]$LatSecs,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[Int32]$LongSecs,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-GeoClusterCoordinates"
|
|
}
|
|
Export-ModuleMember -function ClusterChangeLocation
|
|
|
|
Function AddMap
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$FQDN,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SiteAddress,
|
|
|
|
[string]$Cluster,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-GeoFQDNSiteAddress"
|
|
}
|
|
Export-ModuleMember -function AddMap
|
|
|
|
Function DeleteMap
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$FQDN,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SiteAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-GeoFQDNSiteAddress"
|
|
}
|
|
Export-ModuleMember -function DeleteMap
|
|
|
|
Function ModifyMap
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$FQDN,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SiteAddress,
|
|
|
|
[ValidateSet("None", "Icmp Ping", "Tcp Connect", "Cluster Checks")]
|
|
[String]$Checker,
|
|
|
|
[Int32]$Weight,
|
|
|
|
[String]$Enable,
|
|
|
|
[String]$Cluster,
|
|
|
|
[String]$Mapaddress,
|
|
|
|
[String]$Mapport,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-GeoFQDNSiteAddress"
|
|
}
|
|
Export-ModuleMember -function ModifyMap
|
|
|
|
Function ChangeCheckerAddr
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$FQDN,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SiteAddress,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CheckerIP,
|
|
|
|
[Parameter(Mandatory=$true,Position=3)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CheckerPort,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-GeoFQDNSiteCheckerAddress"
|
|
}
|
|
Export-ModuleMember -function ChangeCheckerAddr
|
|
|
|
Function AddCountry
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$FQDN,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SiteAddress, # was IP
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CountryCode,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$IsContinent,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CustomLocation,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-GeoFQDNSiteCountry"
|
|
}
|
|
Export-ModuleMember -function AddCountry
|
|
|
|
Function RemoveCountry
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$FQDN,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SiteAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CountryCode,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$IsContinent,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CustomLocation,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-GeoFQDNSiteCountry"
|
|
}
|
|
Export-ModuleMember -function RemoveCountry
|
|
|
|
Function ChangeMapLocation
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$FQDN,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SiteAddress,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[Int32]$Lat,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[Int32]$Long,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-GeoFQDNSiteCoordinates"
|
|
}
|
|
Export-ModuleMember -function ChangeMapLocation
|
|
|
|
Function AddCustomLocation
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Location,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-GeoCustomLocation"
|
|
}
|
|
Export-ModuleMember -function AddCustomLocation
|
|
|
|
Function DeleteCustomLocation
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Location,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-GeoCustomLocation"
|
|
}
|
|
Export-ModuleMember -function DeleteCustomLocation
|
|
|
|
Function ListCustomLocation
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-GeoCustomLocation"
|
|
}
|
|
Export-ModuleMember -function ListCustomLocation
|
|
|
|
Function EditCustomLocation
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$clOldName,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$clNewName,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-GeoCustomLocation"
|
|
}
|
|
Export-ModuleMember -function EditCustomLocation
|
|
|
|
Function AddIP
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$IP,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-GeoIpRange"
|
|
}
|
|
Export-ModuleMember -function AddIP
|
|
|
|
Function DeleteIP
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$IP,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-GeoIpRange"
|
|
}
|
|
Export-ModuleMember -function DeleteIP
|
|
|
|
Function ShowIP
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$IP,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-GeoIpRange"
|
|
}
|
|
Export-ModuleMember -function ShowIP
|
|
|
|
Function ListIPs
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$IP,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-GeoIpRange"
|
|
}
|
|
Export-ModuleMember -function ListIPs
|
|
|
|
Function ModifyIPLocation
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$IP,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[Int32]$Lat,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[Int32]$Long,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-GeoIPRangeCoordinates"
|
|
}
|
|
Export-ModuleMember -function ModifyIPLocation
|
|
|
|
Function DeleteIPLocation
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$IP,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-GeoIPRangeCoordinates"
|
|
}
|
|
Export-ModuleMember -function DeleteIPLocation
|
|
|
|
Function AddIPCountry
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$IP,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[String]$CountryCode,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-GeoIPRangeCountry"
|
|
}
|
|
Export-ModuleMember -function AddIPCountry
|
|
|
|
Function RemoveIPCountryCustom
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true,Position=0)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$IP,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-GeoIPRangeCountry"
|
|
}
|
|
Export-ModuleMember -function RemoveIPCountryCustom
|
|
|
|
Function Remove-GeoIPRangeCustomLocation
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true,Position=0)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$IP,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-GeoIPRangeCountry"
|
|
}
|
|
Export-ModuleMember -function Remove-GeoIPRangeCustomLocation
|
|
|
|
Function RemoveIPCountry
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true,Position=0)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$IP,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-GeoIPRangeCountry"
|
|
}
|
|
Export-ModuleMember -function RemoveIPCountry
|
|
|
|
Function AddIPCountryCustom
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$IP,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[String]$CustomLoc,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-GeoIPRangeCustomLocation"
|
|
}
|
|
Export-ModuleMember -function AddIPCountryCustom
|
|
|
|
Function ListMiscParameters
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-GeoMiscParameter"
|
|
}
|
|
Export-ModuleMember -function ListMiscParameters
|
|
|
|
Function ModifyMiscParameters
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[String]$SourceOfAuthority,
|
|
[String]$NameSrv,
|
|
[String]$SOAEmail,
|
|
[String]$TTL,
|
|
[String]$Persist,
|
|
[String]$CheckInterval,
|
|
[String]$ConnTimeout,
|
|
[String]$RetryAttempts,
|
|
[String]$Zone,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-GeoMiscParameter"
|
|
}
|
|
Export-ModuleMember -function ModifyMiscParameters
|
|
|
|
Function LocationDataUpdate
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[string]$Path,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Update-GeoDatabase"
|
|
}
|
|
Export-ModuleMember -function LocationDataUpdate
|
|
|
|
Function EnableGEO
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Update-GeoDatabase"
|
|
}
|
|
Export-ModuleMember -function EnableGEO
|
|
|
|
Function DisableGEO
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Disable-LmGeoPack"
|
|
}
|
|
Export-ModuleMember -function DisableGEO
|
|
|
|
Function IsGEOEnabled
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Disable-LmGeoPack"
|
|
}
|
|
Export-ModuleMember -function IsGEOEnabled
|
|
# ==================================================
|
|
# endregion GEO
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region BACKUP
|
|
# ==================================================
|
|
Function Backup-LoadBalancer
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[string]$Path,
|
|
[switch]$Force,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Backup-LmConfiguration"
|
|
}
|
|
Export-ModuleMember -function Backup-LoadBalancer
|
|
|
|
Function Restore-LoadBalancer
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateScript({Test-Path $_})]
|
|
[string]$Path,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateSet("Base", "Base + VS", "Base + Geo", "VS", "VS + Geo", "Geo", "SSO/LDAP", "All")]
|
|
[string]$Type,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Restore-LmConfiguration"
|
|
}
|
|
Export-ModuleMember -function Restore-LoadBalancer
|
|
|
|
Function Get-BackupOption
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-LmBackupConfiguration"
|
|
}
|
|
Export-ModuleMember -function Get-BackupOption
|
|
|
|
Function Set-BackupOption
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateSet("yes", "no")]
|
|
[string]$BackupEnable,
|
|
|
|
[ValidateRange(0, 23)]
|
|
[Int16]$BackupHour,
|
|
|
|
[ValidateRange(0, 59)]
|
|
[Int16]$BackupMinute,
|
|
|
|
[ValidateRange(0, 7)]
|
|
[Int16]$BackupDay,
|
|
|
|
[ValidateSet("Ftp", "SCP")]
|
|
[string]$BackupMethod,
|
|
|
|
[string]$BackupUser,
|
|
|
|
[string]$BackupPassword,
|
|
|
|
[string]$BackupHost,
|
|
|
|
[string]$BackupPath,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LmBackupConfiguration"
|
|
}
|
|
Export-ModuleMember -function Set-BackupOption
|
|
# ==================================================
|
|
# endregion BACKUP
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region VPN
|
|
# ==================================================
|
|
Function CreateVpnConnection
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Name,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-LmVpnConnection"
|
|
}
|
|
Export-ModuleMember -function CreateVpnConnection
|
|
|
|
Function DeleteVpnConnection
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Name,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-LmVpnConnection"
|
|
}
|
|
Export-ModuleMember -function DeleteVpnConnection
|
|
|
|
Function ListVpns
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Name,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-LmVpnConnection"
|
|
}
|
|
Export-ModuleMember -function ListVpns
|
|
|
|
Function SetVpnAddrs
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Name,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$LocalIp,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$LocalSubnets,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$RemoteIp,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$RemoteSubnets,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LmVpnAddrs"
|
|
}
|
|
Export-ModuleMember -function SetVpnAddrs
|
|
|
|
Function SetVpnLocalIp
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Name,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$LocalIp,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LmVpnLocalIp"
|
|
}
|
|
Export-ModuleMember -function SetVpnLocalIp
|
|
|
|
Function SetVpnLocalSubnets
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Name,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$LocalSubnets,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LmVpnLocalIp"
|
|
}
|
|
Export-ModuleMember -function SetVpnLocalSubnets
|
|
|
|
Function SetVpnRemoteIp
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Name,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$RemoteIp,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LmVpnRemoteIp"
|
|
}
|
|
Export-ModuleMember -function SetVpnRemoteIp
|
|
|
|
Function SetVpnRemoteSubnets
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Name,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$RemoteSubnets,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LmVpnRemoteSubnet"
|
|
}
|
|
Export-ModuleMember -function SetVpnRemoteSubnets
|
|
|
|
Function SetVpnSecret
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Name,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$LocalId,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$RemoteId,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Key,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LmVpnSecret"
|
|
}
|
|
Export-ModuleMember -function SetVpnSecret
|
|
|
|
Function StartVpnConnection
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Name,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Start-LmVpnConnection"
|
|
}
|
|
Export-ModuleMember -function StartVpnConnection
|
|
|
|
Function StopVpnConnection
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Name,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Stop-LmVpnConnection"
|
|
}
|
|
Export-ModuleMember -function StopVpnConnection
|
|
|
|
Function StartIkeDaemon
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Start-LmVpnIkeDaemon"
|
|
}
|
|
Export-ModuleMember -function StartIkeDaemon
|
|
|
|
Function StopIkeDaemon
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Stop-LmVpnIkeDaemon"
|
|
}
|
|
Export-ModuleMember -function StopIkeDaemon
|
|
|
|
Function StatusIkeDaemon
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-LmVpnIkeDaemonStatus"
|
|
}
|
|
Export-ModuleMember -function StatusIkeDaemon
|
|
|
|
Function SetVpnPfsEnable
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Name,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LmVpnPfsEnable"
|
|
}
|
|
Export-ModuleMember -function SetVpnPfsEnable
|
|
|
|
Function SetVpnPfsDisable
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Name,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LmVpnPfsDisable"
|
|
}
|
|
Export-ModuleMember -function SetVpnPfsDisable
|
|
# ==================================================
|
|
# endregion VPN
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region ADDON
|
|
# ==================================================
|
|
Function UploadAddon
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[string]$Path,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Install-LmAddon"
|
|
}
|
|
Export-ModuleMember -function UploadAddon
|
|
|
|
Function DeleteAddon
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Name,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-LmAddon"
|
|
}
|
|
Export-ModuleMember -function DeleteAddon
|
|
|
|
Function ListAddons
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-LmAddOn"
|
|
}
|
|
Export-ModuleMember -function ListAddons
|
|
# ==================================================
|
|
# endregion ADDON
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region PATCH
|
|
# ==================================================
|
|
Function Install-Patch
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateScript({Test-Path $_})]
|
|
[string]$Path,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Install-LmPatch"
|
|
}
|
|
Export-ModuleMember -function Install-Patch
|
|
|
|
Function Restore-Patch
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Uninstall-LmPatch"
|
|
}
|
|
Export-ModuleMember -function Restore-Patch
|
|
|
|
Function Restart-LoadBalancer
|
|
{
|
|
[cmdletbinding(SupportsShouldProcess=$true, ConfirmImpact="High", DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN,
|
|
|
|
[switch]$Shutdown,
|
|
[switch]$Force,
|
|
[int]$SleepTime,
|
|
[int]$Cycles
|
|
)
|
|
Write-Output "$warning Restart-Lm"
|
|
}
|
|
Export-ModuleMember -function Restart-LoadBalancer
|
|
# ==================================================
|
|
# endregion PATCH
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region DATE-TIME
|
|
# ==================================================
|
|
Function Get-DateTimeOption
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-LmDateTimeConfiguration"
|
|
}
|
|
Export-ModuleMember -function Get-DateTimeOption
|
|
|
|
Function Set-DateTimeOption
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[string]$NTPHost,
|
|
|
|
[string]$TimeZone,
|
|
|
|
[ValidateRange(1, 100)]
|
|
[int]$NTPKeyId,
|
|
|
|
[string]$NTPKeySecret,
|
|
|
|
[ValidateSet("SHA-1", "MD5")]
|
|
[string]$NTPKeyType,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LmDateTimeConfiguration"
|
|
}
|
|
Export-ModuleMember -function Set-DateTimeOption
|
|
# ==================================================
|
|
# endregion DATE-TIME
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region SDN
|
|
# ==================================================
|
|
Function AddSDNController
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$IPV4,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[Int32]$Port,
|
|
|
|
[Int32]$Clid,
|
|
|
|
[Boolean]$Https,
|
|
|
|
[String]$User,
|
|
|
|
[String]$Password,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-SdnController"
|
|
}
|
|
Export-ModuleMember -function AddSDNController
|
|
|
|
Function DeleteSDNController
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Int32]$Clid,
|
|
|
|
[Int32]$Cid,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-SdnController"
|
|
}
|
|
Export-ModuleMember -function DeleteSDNController
|
|
|
|
Function ModifySDNController
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[Int32]$Cid,
|
|
|
|
[Int32]$Clid,
|
|
|
|
[String]$IPV4,
|
|
|
|
[Int32]$Port,
|
|
|
|
[Boolean]$Https,
|
|
|
|
[String]$User,
|
|
|
|
[String]$Password,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-SdnController"
|
|
}
|
|
Export-ModuleMember -function ModifySDNController
|
|
|
|
Function GetSDNController
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-SdnController"
|
|
}
|
|
Export-ModuleMember -function GetSDNController
|
|
# ==================================================
|
|
# endregion SDN
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region AFE
|
|
# ==================================================
|
|
Function Get-AFEConfiguration
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-LmAFEConfiguration"
|
|
}
|
|
Export-ModuleMember -function Get-AFEConfiguration
|
|
|
|
Function Set-AFEConfiguration
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateRange(1, 409)]
|
|
[Int]$CacheSize,
|
|
|
|
[bool]$HostCache,
|
|
|
|
[ValidateSet("Low - Only logging, no rejection", "Default - Only Critical problems are rejected", "High - Serious and Critical problems are rejected", "Paranoid - All problems detected are rejected")]
|
|
[string]$DetectionLevel,
|
|
|
|
[ValidateRange(0, 100000)]
|
|
[Int64]$LimitInput,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LmAFEConfiguration"
|
|
}
|
|
Export-ModuleMember -function Set-AFEConfiguration
|
|
|
|
Function Update-IDSRule
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateScript({Test-Path -Path $_})]
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Path,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Update-AFEIDSRules"
|
|
}
|
|
Export-ModuleMember -function Update-IDSRule
|
|
# ==================================================
|
|
# endregion AFE
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region CONNLIMIT
|
|
# ==================================================
|
|
Function AfeClientLimitList
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-LmIPConnectionLimit"
|
|
}
|
|
Export-ModuleMember -function AfeClientLimitList
|
|
|
|
Function AfeClientLimitAdd
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[String]$L7addr,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[int32]$L7limit,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-LmIPConnectionLimit"
|
|
}
|
|
Export-ModuleMember -function AfeClientLimitAdd
|
|
|
|
Function AfeClientLimitDelete
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[String]$L7addr,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-LmIPConnectionLimit"
|
|
}
|
|
Export-ModuleMember -function AfeClientLimitDelete
|
|
# ==================================================
|
|
# endregion CONNLIMIT
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region CLUSTER
|
|
# ==================================================
|
|
Function Get-HAOption
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-LmHAConfiguration"
|
|
}
|
|
Export-ModuleMember -function Get-HAOption
|
|
|
|
Function Set-HAOption
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateSet(3, 6, 9, 12, 15)]
|
|
[Int16]$hatimeout,
|
|
|
|
[ValidateRange(0, 180)]
|
|
[Int16]$hawait,
|
|
|
|
[ValidateRange(1, 255)]
|
|
[Int16]$havhid,
|
|
|
|
[ValidateSet("No Preferred Host", "Prefer First HA", "Prefer Second HA")]
|
|
[string]$haprefered,
|
|
|
|
[Int16]$haif,
|
|
|
|
[bool]$hal4update,
|
|
|
|
[bool]$hal7update,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LmHAConfiguration"
|
|
}
|
|
Export-ModuleMember -function Set-HAOption
|
|
|
|
Function Set-AzureHAMode
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateSet("master", "slave", "single")]
|
|
[string]$HAMode,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LmAzureHAMode"
|
|
}
|
|
Export-ModuleMember -function Set-AzureHAMode
|
|
|
|
Function Get-AzureHAOption
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-LmAzureHAConfiguration"
|
|
}
|
|
Export-ModuleMember -function Get-AzureHAOption
|
|
|
|
Function Set-AzureHAOption
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Partner,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Hcp,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(0, 1)]
|
|
[int]$haprefered,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LmAzureHAConfiguration"
|
|
}
|
|
Export-ModuleMember -function Set-AzureHAOption
|
|
|
|
Function Set-AwsHAMode
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateSet("master", "slave", "single")]
|
|
[string]$HAMode,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LmAwsHAMode"
|
|
}
|
|
Export-ModuleMember -function Set-AwsHAMode
|
|
|
|
Function Get-AwsHAOption
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-LmAwsHAConfiguration"
|
|
}
|
|
Export-ModuleMember -function Get-AwsHAOption
|
|
|
|
Function Set-AwsHAOption
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Partner,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$HealthCheckPort,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(0, 1)]
|
|
[int]$haprefered,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LmAwsHAConfiguration"
|
|
}
|
|
Export-ModuleMember -function Set-AwsHAOption
|
|
# ==================================================
|
|
# endregion CLUSTER
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region DIAGNOSTIC
|
|
# ==================================================
|
|
Function Get-DebugOption
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-LmDebugConfiguration"
|
|
}
|
|
Export-ModuleMember -function Get-DebugOption
|
|
|
|
Function Set-DebugOption
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[bool]$transparent,
|
|
|
|
[bool]$irqbalance,
|
|
|
|
[bool]$linearesplogs,
|
|
|
|
[string]$netconsole,
|
|
|
|
[Int16]$netconsoleinterface,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Set-LmDebugConfiguration"
|
|
}
|
|
Export-ModuleMember -function Set-DebugOption
|
|
|
|
Function DoTcpDump
|
|
{
|
|
[cmdletbinding(SupportsShouldProcess=$true, DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(1, 200000)]
|
|
[int]$MaxPackets,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(1, 600)]
|
|
[int]$MaxTime,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Interface,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Port,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$Address,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$TcpOptions,
|
|
|
|
[string]$Path,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN,
|
|
|
|
[switch]$Force
|
|
)
|
|
Write-Output "$warning Trace-TcpTraffic"
|
|
}
|
|
Export-ModuleMember -function DoTcpDump
|
|
# ==================================================
|
|
# endregion DIAGNOSTIC
|
|
# ==================================================
|
|
|
|
|
|
# ==================================================
|
|
# region N+M
|
|
# ==================================================
|
|
Function NMClusterStatus
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Get-ClusterStatus"
|
|
}
|
|
Export-ModuleMember -function NMClusterStatus
|
|
|
|
Function NMClusterCreate
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SharedAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-Cluster"
|
|
}
|
|
Export-ModuleMember -function NMClusterCreate
|
|
|
|
Function NMAddNode
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$Address,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning New-ClusterNode"
|
|
}
|
|
Export-ModuleMember -function NMAddNode
|
|
|
|
Function NMJoinCluster
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Join-Cluster"
|
|
}
|
|
Export-ModuleMember -function NMJoinCluster
|
|
|
|
Function NMEnableNode
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[Int32]$NodeId,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Enable-ClusterNode"
|
|
}
|
|
Export-ModuleMember -function NMEnableNode
|
|
|
|
Function NMDisableNode
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[Int32]$NodeId,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Disable-ClusterNode"
|
|
}
|
|
Export-ModuleMember -function NMDisableNode
|
|
|
|
Function NMDeleteNode
|
|
{
|
|
[cmdletbinding(DefaultParameterSetName='Credential')]
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[ValidateNotNullOrEmpty()]
|
|
[Int32]$NodeId,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[string]$LoadBalancer = $LoadBalancerAddress,
|
|
|
|
[ValidateNotNullOrEmpty()]
|
|
[ValidateRange(3, 65530)]
|
|
[int]$LBPort = $LBAccessPort,
|
|
|
|
[Parameter(ParameterSetName="Credential")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[System.Management.Automation.Credential()]$Credential = $script:cred,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$CertificateStoreLocation = $script:CertificateStoreLocation,
|
|
|
|
[Parameter(ParameterSetName="Certificate")]
|
|
[ValidateNotNullOrEmpty()]
|
|
[String]$SubjectCN = $script:SubjectCN
|
|
)
|
|
Write-Output "$warning Remove-ClusterNode"
|
|
}
|
|
Export-ModuleMember -function NMDeleteNode
|
|
# ==================================================
|
|
# endregion N+M
|
|
# ==================================================
|
|
|
|
# SIG # Begin signature block
|
|
# MIIcDQYJKoZIhvcNAQcCoIIb/jCCG/oCAQExDzANBglghkgBZQMEAgEFADB5Bgor
|
|
# BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG
|
|
# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCDproCmbHORq7dN
|
|
# rCvi71htoutFNbUcZ1oxnmMNGCABJaCCCuMwggVWMIIEPqADAgECAhAZGjLLdZyX
|
|
# uM+sEY3VEn9JMA0GCSqGSIb3DQEBCwUAMIHKMQswCQYDVQQGEwJVUzEXMBUGA1UE
|
|
# ChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdv
|
|
# cmsxOjA4BgNVBAsTMShjKSAyMDA2IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhv
|
|
# cml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDMgUHVibGlj
|
|
# IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHNTAeFw0xNDAzMDQw
|
|
# MDAwMDBaFw0yNDAzMDMyMzU5NTlaMIGRMQswCQYDVQQGEwJVUzEdMBsGA1UEChMU
|
|
# U3ltYW50ZWMgQ29ycG9yYXRpb24xHzAdBgNVBAsTFlN5bWFudGVjIFRydXN0IE5l
|
|
# dHdvcmsxQjBABgNVBAMTOVN5bWFudGVjIENsYXNzIDMgRXh0ZW5kZWQgVmFsaWRh
|
|
# dGlvbiBDb2RlIFNpZ25pbmcgQ0EgLSBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEP
|
|
# ADCCAQoCggEBANAYAu7too0IWGMPJtfdInuI9uTH7DsmGHjTx6QgU42DfKU/fqXI
|
|
# K0ffDfWm2cMdJZNgz3zc6gMsvnh/XEhtpwLZSfih6+uaYXyfwCbW3BXYuBB8ILpe
|
|
# 9Cj2qOqnXHzGnJCQNDy2Iqz+ugw6HtZehLZb8KOBcHiKjUZSe/zbSfMpExF0T40W
|
|
# s8LjoC3HAwSdzMNy4Q4M+wKO8SYXe26u+Lczi6ZhS0Xf8iVEx/ewmCM23Ch5Cuib
|
|
# coio2Oiue38KZEWl8FeSmncGRR7rn+hm83p9koFfAC0euPZWE1piDbdHoY9y74Ne
|
|
# guCUmOGspa2GN+Cn07qxPnrrRajxwUR94gMCAwEAAaOCAW0wggFpMBIGA1UdEwEB
|
|
# /wQIMAYBAf8CAQAwLwYDVR0fBCgwJjAkoCKgIIYeaHR0cDovL3Muc3ltY2IuY29t
|
|
# L3BjYTMtZzUuY3JsMBYGA1UdJQEB/wQMMAoGCCsGAQUFBwMDMA4GA1UdDwEB/wQE
|
|
# AwIBBjAuBggrBgEFBQcBAQQiMCAwHgYIKwYBBQUHMAGGEmh0dHA6Ly9zLnN5bWNk
|
|
# LmNvbTBfBgNVHSAEWDBWMFQGBFUdIAAwTDAjBggrBgEFBQcCARYXaHR0cHM6Ly9k
|
|
# LnN5bWNiLmNvbS9jcHMwJQYIKwYBBQUHAgIwGRoXaHR0cHM6Ly9kLnN5bWNiLmNv
|
|
# bS9ycGEwKQYDVR0RBCIwIKQeMBwxGjAYBgNVBAMTEVN5bWFudGVjUEtJLTEtNjI5
|
|
# MB0GA1UdDgQWBBQWZt5KNONQpxGGA7FsqcaszVlumzAfBgNVHSMEGDAWgBR/02Wn
|
|
# wt3su/AwCfNDOfoCrzMxMzANBgkqhkiG9w0BAQsFAAOCAQEAP1sZ8/oT1XU4Klru
|
|
# n1qgTKkdxcyU7t4V/vUQbqQbpWSDVBhYxAsooYXDTnTl/4l8/tXtPLpxn1YCJo8W
|
|
# Koj+sKMnIs5L4jiOAKY6hl+d5T6o3mRJQXRBIf0HyIQX2h1lMILLJk851gQnpIGx
|
|
# S0nDI4t+AjIYJ7erC/MYcrak7mcGbzimWI3g8X5dpGDGqOVQX+DouuKPmVi2taCo
|
|
# dvGi8RyIQXJ+UpebCjaZjVD3Aes85/AiauU1jGM2ihqx2WdmX5ca76ggnfAvumzO
|
|
# 2ZSFAPFY8X3JfCK1B10CxuYLv6uTk/8nGI4zNn5XNPHDrwTBhPFWs+iHgzb40wox
|
|
# 3G4sbTCCBYUwggRtoAMCAQICECeDjyzMAJ09C7Adbyi1uUkwDQYJKoZIhvcNAQEL
|
|
# BQAwgZExCzAJBgNVBAYTAlVTMR0wGwYDVQQKExRTeW1hbnRlYyBDb3Jwb3JhdGlv
|
|
# bjEfMB0GA1UECxMWU3ltYW50ZWMgVHJ1c3QgTmV0d29yazFCMEAGA1UEAxM5U3lt
|
|
# YW50ZWMgQ2xhc3MgMyBFeHRlbmRlZCBWYWxpZGF0aW9uIENvZGUgU2lnbmluZyBD
|
|
# QSAtIEcyMB4XDTE2MTAwNTAwMDAwMFoXDTE3MTAwNTIzNTk1OVowgdYxEzARBgsr
|
|
# BgEEAYI3PAIBAxMCVVMxGTAXBgsrBgEEAYI3PAIBAhMIRGVsYXdhcmUxHTAbBgNV
|
|
# BA8TFFByaXZhdGUgT3JnYW5pemF0aW9uMRAwDgYDVQQFEwc1MDg0MDMyMQswCQYD
|
|
# VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxETAPBgNVBAcMCE5ldyBZb3JrMR8w
|
|
# HQYDVQQKDBZLRU1QIFRlY2hub2xvZ2llcyBJbmMuMR8wHQYDVQQDDBZLRU1QIFRl
|
|
# Y2hub2xvZ2llcyBJbmMuMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
|
|
# zUcerldV4VKZ+xPtYfy3/HwbSLJu8HS2urs4QUEF41PJYl50P/+ePYKpuOcksc2l
|
|
# n45YO5/zrKTcjgzxMxJhrNDDAelPeZjiDlkidj6a79msxMXjRzIAI8A4b5SpKBKc
|
|
# 7GVANCt0HZlEWjYegiaVjA6fRJFTRuJVr+K1fc1M79mgARNPCLOuy21N7d+MNvOl
|
|
# nfBlvRGJZC2CQeeXHjhh/q8RdPmVqXliG8zkIIX+wq+kyVSO1ngYsDJZ4iMmjpCA
|
|
# QzdT564zK8potK4fjPblYDiiEtUR1wGg6g4l2X18Mci21of4RbWBKQ/hxQm6oprA
|
|
# XBraFsYnwwwt8QSl9+UtmQIDAQABo4IBkDCCAYwwLgYDVR0RBCcwJaAjBggrBgEF
|
|
# BQcIA6AXMBUME1VTLURFTEFXQVJFLTUwODQwMzIwCQYDVR0TBAIwADAOBgNVHQ8B
|
|
# Af8EBAMCB4AwKwYDVR0fBCQwIjAgoB6gHIYaaHR0cDovL3N3LnN5bWNiLmNvbS9z
|
|
# dy5jcmwwYAYDVR0gBFkwVzBVBgVngQwBAzBMMCMGCCsGAQUFBwIBFhdodHRwczov
|
|
# L2Quc3ltY2IuY29tL2NwczAlBggrBgEFBQcCAjAZDBdodHRwczovL2Quc3ltY2Iu
|
|
# Y29tL3JwYTAWBgNVHSUBAf8EDDAKBggrBgEFBQcDAzAfBgNVHSMEGDAWgBQWZt5K
|
|
# NONQpxGGA7FsqcaszVlumzAdBgNVHQ4EFgQUu/UpUEJhq9Dx+3CC/n6LPC3FyRYw
|
|
# WAYIKwYBBQUHAQEETDBKMB8GCCsGAQUFBzABhhNodHRwOi8vc3cuc3ltY2QuY29t
|
|
# MCcGCCsGAQUFBzAChhtodHRwOi8vc3cxLnN5bWNiLmNvbS9zdy5jcnQwDQYJKoZI
|
|
# hvcNAQELBQADggEBAF/gxzrK67CSW740OGSXAC4/NzRVcP5RmONNEXIjmYEowtgN
|
|
# UtXAns9olC+uzborP1Pq7MvZKMC0CW5P8GsloeqVGjRQ2IPFiEvLAagQO5HVzDMA
|
|
# NZeuTNS5At5i+MkqkW+sLoVH+tBVDhbn17sH2mX0wXid4NCOojyVA1FarE0gup+v
|
|
# XjhwBlXQPRU2K49cmd6dryN1GGufmiXJC25fggZ+2lc0A+j1mBfN9lsMVe7ZYgvW
|
|
# o1WyWM/K66ga8FC9MIpv2tzVQc5Oy0UysQtnHykfRuAA5yXHaiXejx2uF5/5LWR1
|
|
# s53Zchz0LXsZ+ndn4Utg0e2T9iRyuW7Sw7jek4sxghCAMIIQfAIBATCBpjCBkTEL
|
|
# MAkGA1UEBhMCVVMxHTAbBgNVBAoTFFN5bWFudGVjIENvcnBvcmF0aW9uMR8wHQYD
|
|
# VQQLExZTeW1hbnRlYyBUcnVzdCBOZXR3b3JrMUIwQAYDVQQDEzlTeW1hbnRlYyBD
|
|
# bGFzcyAzIEV4dGVuZGVkIFZhbGlkYXRpb24gQ29kZSBTaWduaW5nIENBIC0gRzIC
|
|
# ECeDjyzMAJ09C7Adbyi1uUkwDQYJYIZIAWUDBAIBBQCgfDAQBgorBgEEAYI3AgEM
|
|
# MQIwADAZBgkqhkiG9w0BCQMxDAYKKwYBBAGCNwIBBDAcBgorBgEEAYI3AgELMQ4w
|
|
# DAYKKwYBBAGCNwIBFTAvBgkqhkiG9w0BCQQxIgQgTWpulaW38EfEXNeVA1fN7aFp
|
|
# SKe1UWvCrZzj5nHvoBIwDQYJKoZIhvcNAQEBBQAEggEAa+FCIrOPR8sC+zW/IcXY
|
|
# 0xRkJTlKobcyIXBSH0UMIWNRVuBYwxeBRGxiqiz5KAQctQn4otz7K+aCkBo/Am2S
|
|
# cFuLkVKdhHQwpFWykuEtApgd1GG1jE1aCAZ2g2TTwzjnQDtg9Eah60MpzJe6xr4Q
|
|
# WyDqbclITMgq8vtVkvRSrmFF3i5FjZpQUL2P2uBD62X9aSrsmbo1GVHIGk6+hrwZ
|
|
# Px2hLlWJmrnKWa499kxH3Vroy9i6x5rSzSqjnDO+pPBrSCputzbFmW5e5CFVB1qh
|
|
# f9fFmA8SxRoq/peUU/ZuBn2y95U89ELMg7e48dc60T9BBShw4034J02IxkD6iliz
|
|
# aqGCDiwwgg4oBgorBgEEAYI3AwMBMYIOGDCCDhQGCSqGSIb3DQEHAqCCDgUwgg4B
|
|
# AgEDMQ0wCwYJYIZIAWUDBAIBMIH/BgsqhkiG9w0BCRABBKCB7wSB7DCB6QIBAQYL
|
|
# YIZIAYb4RQEHFwMwITAJBgUrDgMCGgUABBQxGASFalxI+VWDHJNvgB4WzOE3jQIV
|
|
# APgqvBCcWXGiLkinDGW+Q62VwJNrGA8yMDE3MDYwMjE3MTIyOVowAwIBHqCBhqSB
|
|
# gzCBgDELMAkGA1UEBhMCVVMxHTAbBgNVBAoTFFN5bWFudGVjIENvcnBvcmF0aW9u
|
|
# MR8wHQYDVQQLExZTeW1hbnRlYyBUcnVzdCBOZXR3b3JrMTEwLwYDVQQDEyhTeW1h
|
|
# bnRlYyBTSEEyNTYgVGltZVN0YW1waW5nIFNpZ25lciAtIEcyoIIKizCCBTgwggQg
|
|
# oAMCAQICEHsFsdRJaFFE98mJ0pwZnRIwDQYJKoZIhvcNAQELBQAwgb0xCzAJBgNV
|
|
# BAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNp
|
|
# Z24gVHJ1c3QgTmV0d29yazE6MDgGA1UECxMxKGMpIDIwMDggVmVyaVNpZ24sIElu
|
|
# Yy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTE4MDYGA1UEAxMvVmVyaVNpZ24g
|
|
# VW5pdmVyc2FsIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTYwMTEy
|
|
# MDAwMDAwWhcNMzEwMTExMjM1OTU5WjB3MQswCQYDVQQGEwJVUzEdMBsGA1UEChMU
|
|
# U3ltYW50ZWMgQ29ycG9yYXRpb24xHzAdBgNVBAsTFlN5bWFudGVjIFRydXN0IE5l
|
|
# dHdvcmsxKDAmBgNVBAMTH1N5bWFudGVjIFNIQTI1NiBUaW1lU3RhbXBpbmcgQ0Ew
|
|
# ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC7WZ1ZVU+djHJdGoGi61Xz
|
|
# sAGtPHGsMo8Fa4aaJwAyl2pNyWQUSym7wtkpuS7sY7Phzz8LVpD4Yht+66YH4t5/
|
|
# Xm1AONSRBudBfHkcy8utG7/YlZHz8O5s+K2WOS5/wSe4eDnFhKXt7a+Hjs6Nx23q
|
|
# 0pi1Oh8eOZ3D9Jqo9IThxNF8ccYGKbQ/5IMNJsN7CD5N+Qq3M0n/yjvU9bKbS+GI
|
|
# mRr1wOkzFNbfx4Dbke7+vJJXcnf0zajM/gn1kze+lYhqxdz0sUvUzugJkV+1hHk1
|
|
# inisGTKPI8EyQRtZDqk+scz51ivvt9jk1R1tETqS9pPJnONI7rtTDtQ2l4Z4xaE3
|
|
# AgMBAAGjggF3MIIBczAOBgNVHQ8BAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIB
|
|
# ADBmBgNVHSAEXzBdMFsGC2CGSAGG+EUBBxcDMEwwIwYIKwYBBQUHAgEWF2h0dHBz
|
|
# Oi8vZC5zeW1jYi5jb20vY3BzMCUGCCsGAQUFBwICMBkaF2h0dHBzOi8vZC5zeW1j
|
|
# Yi5jb20vcnBhMC4GCCsGAQUFBwEBBCIwIDAeBggrBgEFBQcwAYYSaHR0cDovL3Mu
|
|
# c3ltY2QuY29tMDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly9zLnN5bWNiLmNvbS91
|
|
# bml2ZXJzYWwtcm9vdC5jcmwwEwYDVR0lBAwwCgYIKwYBBQUHAwgwKAYDVR0RBCEw
|
|
# H6QdMBsxGTAXBgNVBAMTEFRpbWVTdGFtcC0yMDQ4LTMwHQYDVR0OBBYEFK9j1sqj
|
|
# ToVy4Ke8QfMpojh/gHViMB8GA1UdIwQYMBaAFLZ3+mlIR59TEtXC6gcydgfRlwcZ
|
|
# MA0GCSqGSIb3DQEBCwUAA4IBAQB16rAt1TQZXDJF/g7h1E+meMFv1+rd3E/zociB
|
|
# iPenjxXmQCmt5l30otlWZIRxMCrdHmEXZiBWBpgZjV1x8viXvAn9HJFHyeLojQP7
|
|
# zJAv1gpsTjPs1rSTyEyQY0g5QCHE3dZuiZg8tZiX6KkGtwnJj1NXQZAv4R5NTtzK
|
|
# EHhsQm7wtsX4YVxS9U72a433Snq+8839A9fZ9gOoD+NT9wp17MZ1LqpmhQSZt/gG
|
|
# V+HGDvbor9rsmxgfqrnjOgC/zoqUywHbnsc4uw9Sq9HjlANgCk2g/idtFDL8P5dA
|
|
# 4b+ZidvkORS92uTTw+orWrOVWFUEfcea7CMDjYUq0v+uqWGBMIIFSzCCBDOgAwIB
|
|
# AgIQVFjyqtdB1kS8hKl7oJZS5jANBgkqhkiG9w0BAQsFADB3MQswCQYDVQQGEwJV
|
|
# UzEdMBsGA1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24xHzAdBgNVBAsTFlN5bWFu
|
|
# dGVjIFRydXN0IE5ldHdvcmsxKDAmBgNVBAMTH1N5bWFudGVjIFNIQTI1NiBUaW1l
|
|
# U3RhbXBpbmcgQ0EwHhcNMTcwMTAyMDAwMDAwWhcNMjgwNDAxMjM1OTU5WjCBgDEL
|
|
# MAkGA1UEBhMCVVMxHTAbBgNVBAoTFFN5bWFudGVjIENvcnBvcmF0aW9uMR8wHQYD
|
|
# VQQLExZTeW1hbnRlYyBUcnVzdCBOZXR3b3JrMTEwLwYDVQQDEyhTeW1hbnRlYyBT
|
|
# SEEyNTYgVGltZVN0YW1waW5nIFNpZ25lciAtIEcyMIIBIjANBgkqhkiG9w0BAQEF
|
|
# AAOCAQ8AMIIBCgKCAQEAmfP82AQJA4b511ymk8BCfOp8Y89dAOKO88CQ348p9Rjq
|
|
# lLeS5dewoHOB6OkKm0p8Af+dj6Q5pw7qRfQiDDpw7TlFi+TFG1zwRWhGJAVjdpsc
|
|
# /J5sKrFW5Yp/UnGu8jXVRiMGHM9ILR20zbjZdiOOHP8+v7sGXGkHpmUO+F6ufS7t
|
|
# Ta4178nXAEL9KJUOn11yQgm8w9pE0u3MR4Tk/MotrFi+rveu2UQNCLfCd9YaQ3DR
|
|
# bgPeUpLEEAhx2boiVfIfvO2bnTviXh1Mg/+XD3sL51WDTtIN677X7K5uR7mf36XW
|
|
# UbwEVe3/J3BMye0qSxPhsblMD8kB7lVlX2kCeGbLPwIDAQABo4IBxzCCAcMwDAYD
|
|
# VR0TAQH/BAIwADBmBgNVHSAEXzBdMFsGC2CGSAGG+EUBBxcDMEwwIwYIKwYBBQUH
|
|
# AgEWF2h0dHBzOi8vZC5zeW1jYi5jb20vY3BzMCUGCCsGAQUFBwICMBkaF2h0dHBz
|
|
# Oi8vZC5zeW1jYi5jb20vcnBhMEAGA1UdHwQ5MDcwNaAzoDGGL2h0dHA6Ly90cy1j
|
|
# cmwud3Muc3ltYW50ZWMuY29tL3NoYTI1Ni10c3MtY2EuY3JsMBYGA1UdJQEB/wQM
|
|
# MAoGCCsGAQUFBwMIMA4GA1UdDwEB/wQEAwIHgDB3BggrBgEFBQcBAQRrMGkwKgYI
|
|
# KwYBBQUHMAGGHmh0dHA6Ly90cy1vY3NwLndzLnN5bWFudGVjLmNvbTA7BggrBgEF
|
|
# BQcwAoYvaHR0cDovL3RzLWFpYS53cy5zeW1hbnRlYy5jb20vc2hhMjU2LXRzcy1j
|
|
# YS5jZXIwKAYDVR0RBCEwH6QdMBsxGTAXBgNVBAMTEFRpbWVTdGFtcC0yMDQ4LTUw
|
|
# HQYDVR0OBBYEFAm1wf6WcpcpQ5rJ4AK6rvj9L7r2MB8GA1UdIwQYMBaAFK9j1sqj
|
|
# ToVy4Ke8QfMpojh/gHViMA0GCSqGSIb3DQEBCwUAA4IBAQAXswqI6VxaXiBrOwoV
|
|
# smzFqYoyh9Ox9BxTroW+P5v/17y3lIW0x1J+lOi97WGy1KeZ5MPJk8E1PQvoaApd
|
|
# Vpi9sSI70UR617/wbVEyitUj3zgBN/biUyt6KxGPt01sejMDG3xrCZQXu+TbWNQh
|
|
# E2Xn7NElyix1mpx//Mm7KmirxH20z6PJbKfZxACciQp3kfRNovsxO4Zu9uYfUAOG
|
|
# m7/LQqvmdptyWhEBisbvpW+V592uuuYiZfAYWRsRyc2At9iXRx9CCPiscR+wRlOz
|
|
# 1LLVo6tQdUgSF4Ktz+BBTzJ+zZUcv5GKCD2kp2cClt8kTKXQQcCCYKOKFzJL07zP
|
|
# pLSMMYICWjCCAlYCAQEwgYswdzELMAkGA1UEBhMCVVMxHTAbBgNVBAoTFFN5bWFu
|
|
# dGVjIENvcnBvcmF0aW9uMR8wHQYDVQQLExZTeW1hbnRlYyBUcnVzdCBOZXR3b3Jr
|
|
# MSgwJgYDVQQDEx9TeW1hbnRlYyBTSEEyNTYgVGltZVN0YW1waW5nIENBAhBUWPKq
|
|
# 10HWRLyEqXugllLmMAsGCWCGSAFlAwQCAaCBpDAaBgkqhkiG9w0BCQMxDQYLKoZI
|
|
# hvcNAQkQAQQwHAYJKoZIhvcNAQkFMQ8XDTE3MDYwMjE3MTIyOVowLwYJKoZIhvcN
|
|
# AQkEMSIEIOw2a6U50/47tGXS4vTeEw645pE3ZGClFmSZdIAZBwjpMDcGCyqGSIb3
|
|
# DQEJEAIvMSgwJjAkMCIEIM96wXrQR+zV/cNoIgMbEtTvB4tvK0xea6Qfj/LPS61n
|
|
# MAsGCSqGSIb3DQEBAQSCAQB6HE9H+Hy0EB+bAyTu3NlzLqTMMpcpBSroC+ntHCDh
|
|
# uBTmbn8qPjSqQRRTFLXvHH5kuVzUseHX2LOhADDOze29Nh2H8ibzRnFap3aGOy6n
|
|
# nyb1vcumA7OT8GdXCJhEXo2uBBOvAA4qozxiv40tGb9VR1jtjO3WckhxOUg3KXnY
|
|
# CVx/4HD4+yutxhLQ/Z7L2Q4zDxVjArjoW0vFX1sr6eNfWEQ776x9zym/7hi3rzAG
|
|
# vvn5yqtAMBmv1yIssa+YAFHQCfRWTq7CZmpifXJQweH8AXkPycBSloUpqklpNPUA
|
|
# ydgpD7Wy2KWu8OrLCehNdotebYawEkpYo2AnyDM+l9D3
|
|
# SIG # End signature block
|