Set-VpnS2SInterface

Set-VpnS2SInterface

Modifies parameters for a site-to-site (S2S) interface.

Syntax

Parameter Set: EncryptionType
Set-VpnS2SInterface [-Name] <String> [-AdminStatus <Boolean> ] [-AsJob] [-AuthenticationMethod <String> ] [-Certificate <X509Certificate2> ] [-CimSession <CimSession[]> ] [-Destination <String[]> ] [-EapMethod <String> ] [-EncryptionType <String> ] [-IdleDisconnectSeconds <UInt32> ] [-InternalIPv4 <Boolean> ] [-InternalIPv6 <Boolean> ] [-IPv4Subnet <String[]> ] [-IPv6Subnet <String[]> ] [-NetworkOutageTimeSeconds <UInt32> ] [-NumberOfTries <UInt32> ] [-PassThru] [-Password <String> ] [-PromoteAlternate <Boolean> ] [-ResponderAuthenticationMethod <String> ] [-RetryIntervalSeconds <UInt32> ] [-SADataSizeForRenegotiationKilobytes <UInt32> ] [-SALifeTimeSeconds <UInt32> ] [-SharedSecret <String> ] [-ThrottleLimit <Int32> ] [-UserName <String> ] [-Confirm] [-WhatIf] [ <CommonParameters>]

Parameter Set: CustomPolicy
Set-VpnS2SInterface [-Name] <String> -CustomPolicy [-AdminStatus <Boolean> ] [-AsJob] [-AuthenticationMethod <String> ] [-AuthenticationTransformConstants <AuthenticationTransformConstants> ] [-Certificate <X509Certificate2> ] [-CimSession <CimSession[]> ] [-CipherTransformConstants <CipherTransformConstants> ] [-Destination <String[]> ] [-DHGroup <DHGroup> ] [-EapMethod <String> ] [-EncryptionMethod <EncryptionMethod> ] [-IdleDisconnectSeconds <UInt32> ] [-IntegrityCheckMethod <IntegrityCheckMethod> ] [-InternalIPv4 <Boolean> ] [-InternalIPv6 <Boolean> ] [-IPv4Subnet <String[]> ] [-IPv6Subnet <String[]> ] [-NetworkOutageTimeSeconds <UInt32> ] [-NumberOfTries <UInt32> ] [-PassThru] [-Password <String> ] [-PfsGroup <PfsGroup> ] [-PromoteAlternate <Boolean> ] [-ResponderAuthenticationMethod <String> ] [-RetryIntervalSeconds <UInt32> ] [-SADataSizeForRenegotiationKilobytes <UInt32> ] [-SALifeTimeSeconds <UInt32> ] [-SharedSecret <String> ] [-ThrottleLimit <Int32> ] [-UserName <String> ] [-Confirm] [-WhatIf] [ <CommonParameters>]

Detailed Description

The Set-VpnS2SInterface cmdlet modifies parameters for a site-to-site (S2S) interface. If the connection already exists, then the changes take effect after disconnection.

Use the CustomPolicy parameter to customize IPsec settings. If the protocol is Automatic, then the only authentication method allowed is user name. If the AuthenticationMethod parameter is set to pre-shared key (PSK), then only one interface can be enabled per destination and the initiator and responder policies are governed by what is specified for each interface. If the AuthenticationMethod parameter is set to user name or computer certificates (machine certificates), then only the initiator policies are governed by what is specified for each interface and the responder policies are governed by what is specified on the server.

For incoming connections.
-- If the AuthenticationMethod parameter is set to PSK, then the interface for which the destination IP address matches the incoming IP address is activated.
-- If the AuthenticationMethod parameter is set to user name, then the interface for which the name matches the user name is activated.
-- If the AuthenticationMethod parameter is certificates, then the interface for which the name matches the certificate subject name is activated.

Parameters

-AdminStatus<Boolean>

Specifies the administrator status of the cmdlet.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-AsJob

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-AuthenticationMethod<String>

Specifies the authentication method to be used by the S2S connection.

Aliases

none

Required?

false

Position?

named

Default Value

EAP

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-AuthenticationTransformConstants<AuthenticationTransformConstants>

Specifies the authentication transform in the IPsec policy.

Aliases

none

Required?

false

Position?

named

Default Value

2

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-Certificate<X509Certificate2>

Specifies the subject name of the certificate to use in the default store. Applicable only if the AuthenticationMethod parameter is set to MachineCert.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-CimSession<CimSession[]>

Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-CipherTransformConstants<CipherTransformConstants>

Specifies the cipher in the IPsec policy.

Aliases

none

Required?

false

Position?

named

Default Value

1

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-CustomPolicy

Specifies the custom IKE IPsec policies, must be a separate parameter set.

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-DHGroup<DHGroup>

Specifies the Diffie-Hellman (DH) group in the IPsec policy.

Aliases

none

Required?

false

Position?

named

Default Value

2

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-Destination<String[]>

Specifies the destination end point of the S2S connection.
Note: If the Certificate parameter is specified as PSK, then an IP address should be specified for this parameter as a fully qualified domain name (FQDN) will not work.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-EapMethod<String>

Specifies the EAP method if IkeLocalAuthenticationMethod is EAP.

Aliases

none

Required?

false

Position?

named

Default Value

MSCHAPv2

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-EncryptionMethod<EncryptionMethod>

Specifies the encryption method in the IKE policy.

Aliases

none

Required?

false

Position?

named

Default Value

4

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-EncryptionType<String>

Specifies the type of encryption.

Aliases

none

Required?

false

Position?

named

Default Value

RequireEncryption

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-IPv4Subnet<String[]>

Specifies the IPv4 subnet that is routed on this connection with metrics.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-IPv6Subnet<String[]>

Specifies the IPv6 subnet that is routed on this connection with metrics.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-IdleDisconnectSeconds<UInt32>

Specifies the time, in seconds, after which an idle connection is disconnected. Unless the idle time-out is Disabled, the entire connection is disconnected if the connection is idle for the specified interval.

Aliases

none

Required?

false

Position?

named

Default Value

300

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-IntegrityCheckMethod<IntegrityCheckMethod>

Specifies the integrity method in the IPsec policy.

Aliases

none

Required?

false

Position?

named

Default Value

2

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-InternalIPv4<Boolean>

Specifies that the IPv4 address should be negotiated.

Aliases

none

Required?

false

Position?

named

Default Value

True

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-InternalIPv6<Boolean>

Specifies that the IPv6 address should be negotiated.

Aliases

none

Required?

false

Position?

named

Default Value

True

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-Name<String>

Specifies the name of the connection.

Aliases

none

Required?

true

Position?

2

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-NetworkOutageTimeSeconds<UInt32>

Specifies the maximum network outage time after which the connection is disconnected.

Aliases

none

Required?

false

Position?

named

Default Value

15

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-NumberOfTries<UInt32>

Specifies the number of connection attempts.
If this parameter is specified as zero (0), then the connection is not retried if the first attempt fails.

Aliases

none

Required?

false

Position?

named

Default Value

3

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-PassThru

Returns an object representing the item with which you are working. By default, this cmdlet does not generate any output.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Password<String>

Specifies the password for the user name to be used for the connection.
Applicable only if the AuthenticationMethod parameter is set to EAP.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-PfsGroup<PfsGroup>

Specifies the PFS group in the IPsec policy.

Aliases

none

Required?

false

Position?

named

Default Value

3

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-PromoteAlternate<Boolean>

Specifies an alternate IP address that when it successfully connects becomes the primary IP address, and the current primary IP address is moved to the alternate list.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-ResponderAuthenticationMethod<String>

Specifies the authentication method to be used by the S2S initiator to validate the S2S responder.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-RetryIntervalSeconds<UInt32>

Specifies the time, in seconds, between retries.

Aliases

none

Required?

false

Position?

named

Default Value

60

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-SADataSizeForRenegotiationKilobytes<UInt32>

Specifies the number of kilobytes that are allowed to transfer using a security association (SA). After the limit is reached, then the SA will be renegotiated.

Aliases

none

Required?

false

Position?

named

Default Value

10000

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-SALifeTimeSeconds<UInt32>

Specifies the lifetime of a SA in seconds, after which the SA is no longer valid.

Aliases

none

Required?

false

Position?

named

Default Value

7200

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-SharedSecret<String>

Specifies the text of the shared secret to be used for the connection. This parameter is only applicable only if the AuthenticationMethod parameter is set to PSK or the ResponderAuthenticationMethod parameter is set to PSK.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-ThrottleLimit<Int32>

Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0 is entered, then Windows PowerShell® calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-UserName<String>

Specifies the user name to be used for the connection. Applicable only if the AuthenticationMethod parameter is set to EAP.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-Confirm

Prompts you for confirmation before running the cmdlet.

Required?

false

Position?

named

Default Value

false

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Required?

false

Position?

named

Default Value

false

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

<CommonParameters>

This cmdlet supports the common parameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see    about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216).

Inputs

The input type is the type of the objects that you can pipe to the cmdlet.

  • None

Outputs

The output type is the type of the objects that the cmdlet emits.

  • Microsoft.Management.Infrastructure.CimInstance#VpnS2SInterface

    The Microsoft.Management.Infrastructure.CimInstance object is a wrapper class that displays Windows Management Instrumentation (WMI) objects. The path after the pound sign (#) provides the namespace and class name for the underlying WMI object.

Examples

EXAMPLE 1

This example modifies the destination address for the interface named edge1.

PS C:\> Set-VpnS2SInterface –Name edge1 -Destination 131.107.0.4 -PassThru

EXAMPLE 2

This example modifies the initiator authentication method.

PS C:\> Set-VpnS2SInterface –Name edge1 -AuthenticationMethod EAP -EapMethod EAP-MSCHAPv2 -PassThru

EXAMPLE 3

This example modifies the responder authentication method for edge1.

PS C:\> Get-VpnS2SInterface -Name edge1 | Set-VpnS2SInterface -ResponderAuthenticationMethod MachineCertificates -PassThru

EXAMPLE 4

This example changes the authentication method for the interface 3-edge1 to computer certificate and specifies the certificate for which the subject name matches edge1.contoso.com.

PS C:\> $cert1 = ( Get-ChildItem -Path cert:LocalMachine\My | Where-Object -FilterScript { $_.Subject -Like "*CN=edge1.contoso.com" } )
PS C:\> Set-VpnS2SInterface –Name 3-edge1 -AuthenticationMethod MachineCertificates -Certificate $cert1 -ResponderAuthenticationMethod MachineCertificates -PassThru

Add-VpnS2SInterface

Clear-VpnS2SInterfaceStatistics

Connect-VpnS2SInterface

Disconnect-VpnS2SInterface

Get-VpnAuthProtocol

Get-VpnS2SInterface

Get-VpnS2SInterfaceStatistics

Get-VpnServerIPsecConfiguration

Remove-VpnS2SInterface

Set-VpnAuthProtocol

Set-VpnServerIPsecConfiguration