# Free VPN on Linux: a terminal-first setup you can understand

Free VPN's Linux client provides terminal controls, a background VPN service and an optional desktop window. Start by checking your distribution, CPU architecture and whether you need a local desktop or headless setup. Then follow our official CLI installation route, connect and use the status and diagnostic commands to understand the result.

## Match the client to your Linux machine

A desktop laptop, Raspberry Pi and cloud VM have different requirements. Our [CLI documentation](/cli/) describes Linux support for Ubuntu 22.04+, Debian 12, Fedora, Arch and Raspberry Pi environments, with the downloads page describing modern glibc and systemd requirements. Use the current installer documentation for your architecture.

Start with two local information checks:

```sh
cat /etc/os-release
uname -m
```

These read your system version and architecture. They do not install anything or change routes. Use the results to choose the supported package instead of assuming that any file labeled Linux will run on your machine.

| Your setup | The useful Free VPN route | Check before connecting |
| --- | --- | --- |
| Local desktop | CLI service with an optional companion window. | Distribution, architecture and package support. |
| Terminal workstation | CLI commands and structured output. | Installed command help and required permissions. |
| Headless server | Background service without a GUI. | Remote-access policy and a recovery console. |
| Raspberry Pi / ARM machine | The installer-supported architecture route. | Your OS release and the actual release package offered. |

## What the Linux client brings to your workflow

The CLI is useful when a connection is part of a repeatable task. It documents connection controls, region selection, status, diagnostics and JSON output. You can read reported state in a shell or use structured output in a local script without depending on a desktop window.

The product also documents a system-managed background service. A running service and an active VPN tunnel are different states: check the tunnel status after a reboot or network change rather than assuming that service startup means traffic is connected.

For AI assistants and coding tools, the CLI includes agent-oriented documentation. That can help a tool understand commands, but it is still your machine's network connection. Review changes before letting an assistant switch routes on a shared workstation, CI runner or production server. Find supported commands and examples on our [CLI page](/cli/).

## Install through the documented route

Use [Downloads](/downloads/#tile-linux) or [CLI documentation](/cli/) to reach the official installer. The shell route detects the platform and architecture, verifies the download against its published SHA-256 sidecar and installs the background service with the appropriate system approval. Read the current instructions before running a script.

A checksum helps detect a changed or damaged download relative to the published value. The [official-download guide](/guides/verify-official-vpn-download/) explains that distinction and the product identity to compare.

Once installed, our documented starting commands are:

```sh
freevpn up
freevpn status
freevpn doctor
freevpn regions
```

`up` starts the connection using the default automatic route. `status` reports the current state. `doctor` diagnoses areas such as DNS, routes, controller, license and egress. `regions` lists available exits. Use the installed help and current documentation for selection syntax and other options.

After installation, use these commands to connect, check status, diagnose a problem and browse regions.

## Prefer a window? Add the companion app

The optional desktop window talks to the same VPN service as the CLI. The documented commands are:

```sh
freevpn gui install
freevpn gui
```

The companion makes status and routine connection controls easier to see. Use the companion on a desktop, or stay with the terminal on a headless machine. The documentation also distinguishes removing the companion from removing the CLI and service.

## Ad Block and diagnostics have practical jobs

Our CLI documents optional Ad Block controls for known advertising and tracker requests while the VPN is connected:

```sh
freevpn adblock on
freevpn adblock update
freevpn adblock stats
```

Use the Ad Block controls to turn filtering on and inspect its activity. Filtering does not remove every tracker or account identifier. When a tool or page fails after enabling it, compare that setting before changing the entire route. The [Ad Block overview](/adblock/) explains why connection encryption and request filtering are separate layers.

For troubleshooting, begin with `freevpn status` and `freevpn doctor`. Use the diagnostic result to identify connection, DNS or routing errors. Review reports before sharing them: IP addresses and local system details may be unnecessary for a public issue.

## Request a service or route for your workflow

Free VPN spans thousands of servers and hundreds of services, including activity choices beyond ordinary browsing. If your supported client does not show what you need, [tell our team](/contact/) the service, region and workflow you are trying to use. We work on adding requests on demand. For a technical issue, include the distro and client version, not private keys or unreviewed system reports.

## A remote server needs a recovery plan

The CLI documents SSH-preservation behavior, but your server's routing and access policies still matter. Keep a provider console or another recovery path available before the first remote connection. Check your SSH and firewall configuration before changing the network route.

On a local machine, try ordinary browsing, name resolution and the applications you depend on. Disconnect and confirm the expected direct connection returns. Then check an ordinary sleep/wake or network change before relying on the client for a longer session.

If the machine is managed or runs a critical workload, coordinate with its administrator. Send our [support team](/contact/) the distribution, architecture, client version and exact error if you need help. Do not broadly disable the firewall to make an unexplained error disappear.

<!-- PRODUCT_FACTS_START -->

## Free VPN at a glance

**NO LOGS. NO LOGINS.** We do not log your browsing activity. No Free VPN account, login or email registration is needed to use the VPN.

- **Simple setup:** Install Free VPN, approve the VPN profile or system connection permission, and connect. Desktop clients follow their supported installer and service setup.
- **Free VPN time:** Watch ads to get VPN time in our mobile apps. Free access is real; a paid upgrade is optional if you prefer not to watch ads. Desktop clients have their own published access terms.
- **Built-in controls:** Auto-connect, Boost Speed, System-wide Ad Block. System-wide Ad Block filters known ad and tracker requests across apps while enabled and connected, rather than only inside one browser.
- **Our network:** Thousands of servers. Hundreds of services across AI, social, streaming, live TV, gaming, music, sports and more. Open Regions and Services in the app, choose what you want to use and connect.
- **On-demand requests:** Missing a service or region? Tell our team what you need and we will work on adding it on demand. [Request a service or region](/contact/).
- **Your devices:** [Android](/downloads/#tile-android), [iPhone / iPad](/downloads/#tile-ios), [Mac](/downloads/#tile-mac), [Windows](/windows/), [Linux and CLI](/cli/).

Read our [privacy policy](/privacy-policy/) for no-logs and advertising details. Watch ads to earn mobile VPN time, or choose an optional paid upgrade if you prefer not to watch ads.

<!-- PRODUCT_FACTS_END -->

## Linux questions

### Do I need a GUI to use Free VPN on Linux?

No. The CLI and background service support terminal and headless workflows. The companion desktop window is optional.

### Can I use the same status commands in scripts?

The CLI documents structured JSON output for commands. Use the installed version's help and JSON schema to select the fields your script needs.

### Which Linux systems does Free VPN support?

Free VPN supports Ubuntu 22.04+, Debian 12, Fedora, Arch and Raspberry Pi environments through the documented installer. Check your distribution and architecture to choose the matching package.

### Does SSH-safe mean I can ignore recovery access?

No. The CLI documents SSH-preservation behavior, but remote routing varies. Keep a console or recovery route and follow the server's access policies before changing its connection.
