ScriptsJul 17, 2026·3 min read

Mullvad VPN — Open Source Privacy-First VPN Client

A free, open-source VPN client supporting WireGuard and OpenVPN with a strong focus on privacy, built in Rust with native apps for all major platforms.

Agent ready

Safe staging for this asset

This asset is staged first. The copied prompt tells the agent to inspect the staged files and ask before activating scripts, MCP config, or global config.

Stage only · 29/100Policy: stage
Agent surface
Any MCP/CLI agent
Kind
CLI Tool
Install
Single
Trust
Trust: Established
Entrypoint
Mullvad VPN Overview
Safe staging command
npx -y tokrepo@latest install 44ade926-81dd-11f1-9bc6-00163e2b0d79 --target codex

Stages files first; activation requires review of the staged README and plan.

Introduction

Mullvad VPN is a fully open-source VPN client application built in Rust. It connects to the Mullvad VPN service with a strong emphasis on privacy: no email, no phone number, and no personal data required to create an account — just a randomly generated account number.

What Mullvad VPN Does

  • Provides encrypted VPN tunnels using WireGuard or OpenVPN protocols
  • Runs native desktop apps for Linux, macOS, and Windows built with Rust and Electron
  • Includes a mobile app for Android and iOS
  • Features a kill switch that blocks all traffic if the VPN connection drops
  • Supports multihop routing through two VPN servers for additional privacy

Architecture Overview

The client is split into a Rust daemon (mullvad-daemon) that manages tunnel connections and firewall rules, and a frontend GUI built with Electron (desktop) or native code (mobile). The daemon handles protocol negotiation, DNS leak protection, and the kill switch via OS-level firewall rules (nftables on Linux, PF on macOS, WFP on Windows). All cryptographic operations use the WireGuard or OpenVPN libraries.

Self-Hosting & Configuration

  • Download official packages for Linux (deb/rpm), macOS, or Windows from GitHub releases
  • The CLI tool mullvad provides full control over connections, servers, and settings
  • Configure DNS to use Mullvad's ad-blocking DNS or custom resolvers
  • Split tunneling allows specific apps to bypass the VPN on supported platforms
  • All settings persist across reboots via the daemon's configuration store

Key Features

  • Fully open-source client and infrastructure code
  • WireGuard and OpenVPN support with automatic protocol selection
  • Kill switch and DNS leak protection enabled by default
  • No-logging policy with independent security audits published publicly
  • Anonymous accounts — no email, name, or personal data required

Comparison with Similar Tools

  • WireGuard CLI — raw protocol client; Mullvad adds server management, kill switch, and GUI
  • OpenVPN — generic VPN protocol; Mullvad wraps it with privacy-focused defaults
  • Tailscale — mesh networking tool; Mullvad is a traditional VPN for internet privacy
  • ProtonVPN — similar privacy focus but closed-source client; Mullvad is fully open source
  • Gluetun — Docker VPN container; Mullvad is a desktop/mobile client with native UI

FAQ

Q: Is the VPN service itself free? A: No. The client is open source and free, but the VPN service requires a paid subscription. This listing covers the open-source client software.

Q: Can I use the client with other VPN providers? A: The client is designed for the Mullvad service. For generic WireGuard connections, use the WireGuard CLI.

Q: Does it support split tunneling? A: Yes, on Linux, Windows, and Android. You can exclude specific apps from the VPN tunnel.

Q: Has the code been audited? A: Yes. Multiple independent security audits have been conducted and the reports are publicly available on Mullvad's website.

Sources

Discussion

Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.

Related Assets