PowerShell VPN CLI

A VPN CLI for Windows PowerShell.

Free VPN CLI gives Windows users a PowerShell-first path: install with the documented install.ps1 command, approve the standard UAC prompt, parse status with ConvertFrom-Json, and optionally add the desktop GUI.

Windows 10/11 PowerShell ConvertFrom-Json Optional GUI
#1 Free VPN
100M+
Installs worldwide
10+ yrs
Battle-tested VPN core
1,000+
Servers · global exits
Windows setup

Install Free VPN CLI from PowerShell.

Open PowerShell and use the documented Windows installer command. This page keeps Windows content focused on PowerShell and install.ps1.

PowerShell install and verify

Run the installer, approve the Windows permission prompt, then check version and status from PowerShell.

Paste in PowerShell
$iex "& { $(iwr https://freevpnapp.org/install.ps1) }"
$freevpn version
$freevpn status --json
Windows install notes
  • Use PowerShell, not Command Prompt, for the documented one-liner.
  • The standard UAC prompt is expected during service install.
  • Use ConvertFrom-Json for scripts.
  • Do not use Linux shell install commands as the Windows path.
Windows workflows

PowerShell workflows for Windows VPN users.

Keep this page specific to Windows 10/11, PowerShell, MSI installation, UAC, JSON parsing, and the optional GUI.

PowerShell terminal

Install, connect, inspect status, and run diagnostics from PowerShell.

PowerShell scripts

Use ConvertFrom-Json when scripts need to read VPN state.

Desktop companion

Use freevpn gui install when you want a window as well as terminal control.

Windows service flow

Use the installer and normal Windows permissions for local service setup.

How it works

up. status. down.

Three verbs cover most day-to-day VPN work. set-region and doctor cover region selection and troubleshooting.

1 Check where you are · connect
freevpn status · up
user@shell $ freevpn status
VPN : disconnected
region : Fastest (auto)
your IP : 122.179.8.116
location : Bengaluru, India
 
user@shell $ freevpn up
Connected to Fastest (auto)
your IP : 85.195.125.198
location: Frankfurt, Germany
2 Switch region · verify · disconnect
freevpn set-region · status · down
user@shell $ freevpn set-region "US East"
Switched to US East
 
user@shell $ freevpn status
VPN : connected
region : US East
your IP : 23.108.55.113
location : Miami, United States
 
user@shell $ freevpn down
tunnel down · routes restored
PowerShell workflow

Install, parse, diagnose from PowerShell.

After install, the day-to-day Windows flow is status, connect, parse output, and run doctor when network behavior is unclear.

Paste in Terminal
$$status = freevpn status --json | ConvertFrom-Json
$$status
$freevpn up --json
$freevpn doctor --json
$freevpn gui install
CommandWhy it matters
iex "& { $(iwr https://freevpnapp.org/install.ps1) }"Documented PowerShell install command for Windows.
freevpn status --json | ConvertFrom-JsonParse VPN state in PowerShell scripts.
freevpn up --jsonConnect and keep output structured.
freevpn doctor --jsonCollect diagnostics for service, route, DNS, license, or egress issues.
freevpn gui installInstall the optional desktop companion after CLI setup.
Features

Windows-relevant CLI features.

The Windows page should stay PowerShell-first and avoid Linux or macOS install paths.

MSI-based install

The Windows installer downloads the MSI, verifies SHA-256, and opens one standard UAC prompt.

ConvertFrom-Json

PowerShell can parse JSON output from status, regions, and doctor commands.

Named pipe daemon access

Windows uses local daemon communication for CLI operations after install.

GUI lifecycle from CLI

Use freevpn gui install, freevpn gui open, freevpn gui status, and freevpn gui uninstall.

Doctor diagnostics

Use structured diagnostics when Windows networking or service setup looks wrong.

Terminal-first control

Manage VPN state without opening a browser or app window.

Practical notes

Windows troubleshooting notes.

Keep Windows workflows explicit: PowerShell command, normal UAC, JSON parsing, and doctor output.

  • If Windows asks for permission, that is expected for service install.
  • Use freevpn doctor --json for structured troubleshooting.
  • Use ConvertFrom-Json rather than parsing terminal text.
  • Use the optional GUI only when a human wants a desktop window.
FAQ

VPN for Windows PowerShell FAQ.

What is the Windows install command?
Use iex "& { $(iwr https://freevpnapp.org/install.ps1) }" in PowerShell.
Does this page use Linux commands?
No. The Windows path is PowerShell install.ps1.
Does it support Windows 11?
The CLI page lists Windows 10 and Windows 11 support.
Can PowerShell parse VPN status?
Yes. Use freevpn status --json | ConvertFrom-Json.
Can I install the desktop GUI too?
Yes. Run freevpn gui install after the CLI is installed.

Install Free VPN CLI from PowerShell.

Use the Windows installer command, then manage status, regions, diagnostics, and the optional GUI from PowerShell.