Создание этого сценария заняло два дня — это недопустимо на уровне предприятия.
Отключить службу FA_Scheduler
Set-Service -Name “FA_Scheduler” -StartupType Disabled
Определить путь к командной строке FortiClient
Stop-process -name “fortiSSLVPNdaemon” -force
Start-Sleep -Seconds 10
taskkill /im FortiVPN.exe /t /f
taskkill /im FCDBLog.exe /t /f
taskkill /im FortiSettings.exe /t /f
taskkill /im FortiTray.exe /t /f
Завершить процесс scheduler.exe
Get-Process -Name “scheduler” -ErrorAction SilentlyContinue | Stop-Process -Force
Установить FortiClient VPN
Write-Host “Установка FortiClient VPN…”
Start-Process Msiexec.exe -Wait -ArgumentList ‘/i FortiClient.msi /quiet /norestart’
Write-Host “FortiClient VPN установлен.”
Start-Sleep -Seconds 5
Включить службу FA_Scheduler
Set-Service -Name “FA_Scheduler” -StartupType Automatic
Установить VPN-профили
$vpnKeyPath = “HKLM:\SOFTWARE\Fortinet\FortiClient\Sslvpn\Tunnels\COMPANYVPN”
if((Test-Path -LiteralPath $vpnKeyPath) -ne $true) {
Write-Host “Создаем VPN-профиль…”
New-Item -Path $vpnKeyPath -Force -ErrorAction SilentlyContinue
}
Добавить свойства VPN-профиля
Write-Host “Настройка VPN-профиля…”
New-ItemProperty -LiteralPath $vpnKeyPath -Name ‘Description’ -Value ‘whateveryourcompany’ -PropertyType String -Force -ErrorAction SilentlyContinue
New-ItemProperty -LiteralPath $vpnKeyPath -Name ‘Server’ -Value ‘vpn.yourcompany.domain:443’ -PropertyType String -Force -ErrorAction SilentlyContinue
New-ItemProperty -LiteralPath $vpnKeyPath -Name ‘promptusername’ -Value 1 -PropertyType DWord -Force -ErrorAction SilentlyContinue
New-ItemProperty -LiteralPath $vpnKeyPath -Name ‘promptcertificate’ -Value 0 -PropertyType DWord -Force -ErrorAction SilentlyContinue
New-ItemProperty -LiteralPath $vpnKeyPath -Name ‘ServerCert’ -Value ‘1’ -PropertyType String -Force -ErrorAction SilentlyContinue
New-ItemProperty -LiteralPath $vpnKeyPath -Name ‘sso_enabled’ -Value 1 -PropertyType DWord -Force -ErrorAction SilentlyContinue
New-ItemProperty -LiteralPath $vpnKeyPath -Name ‘use_external_browser’ -Value 1 -PropertyType DWord -Force -ErrorAction SilentlyContinue
Write-Host “VPN-профиль успешно настроен.”