PowerShell - VPN

Опубликовано: 27 Март 2021
на канале: Mr Automation
913
15

(How to manage and setup vpn connections with powershell)
In this video I demonstrate how you can setup and manage VPN connections with powershell

*get-vpnconnection
*new-vpnconnection
*remove-vpnconnection
*powershell
*learn powershell
*automation
*learn automation

Code :


import-module "D:\__DEMOS\vpn\vpn.psm1"

$vpnname = "France VPN"

connect-vpn -vpnName $vpnname -vpnUserName "usernamme" -vpnPassword "GetFromWebsite" -vpnServerAddress `
"servername.something.local" -vpnprotocol "pptp"

disconnect-vpn -vpnName $vpnname


module functions, save in file vpn.psm.1

function connect-vpn{
param(
[Parameter(Mandatory)] [string]$vpnName,
[Parameter(Mandatory)] [string]$vpnUserName,
[Parameter(Mandatory)] [string]$vpnPassword,
[Parameter(Mandatory)] [string]$vpnServerAddress,
[Parameter(Mandatory)] [string]$vpnprotocol,
[Parameter(Mandatory=$false)] [string]$shared_secret
)
if ($vpnprotocol -eq 'pptp'){
Add-VpnConnection -Name $vpnName -ServerAddress $vpnServerAddress -TunnelType Pptp `
-EncryptionLevel Required -PassThru
}
else {
Add-VpnConnection -Name $vpnName -ServerAddress $vpnServerAddress -TunnelType L2tp `
-EncryptionLevel Required -PassThru -L2tpPsk $shared_secret -Confirm:$false -Force
}

$cmd = $env:WINDIR + "\System32\rasdial.exe"
$expression = "$cmd ""$vpnName"" $vpnUserName $vpnPassword"
Invoke-Expression -Command $expression

}

function disconnect-vpn{
param(
[Parameter(Mandatory)] [string]$vpnName
)
$vpn = Get-VpnConnection -Name $vpnName

if($vpn.ConnectionStatus -eq "Connected"){
rasdial $vpnName /DISCONNECT;
}
$vpn | Remove-VpnConnection -Force -Confirm:$false
}


Смотрите видео PowerShell - VPN онлайн, длительностью часов минут секунд в хорошем качестве, которое загружено на канал Mr Automation 27 Март 2021. Делитесь ссылкой на видео в социальных сетях, чтобы ваши подписчики и друзья так же посмотрели это видео. Данный видеоклип посмотрели 913 раз и оно понравилось 15 посетителям.