ExpressVPN on Raspberry Pi: The Ultimate Guide

Raspberry Pi is a small, low-cost computer that can be used for a variety of projects. It is a great choice for those who want to build their own home media server, create a smart home, or even build a gaming console. One of the most important things to consider when using a Raspberry Pi is security. This is where a VPN comes in. A VPN, or virtual private network, is a secure connection that encrypts your data and hides your IP address. This makes it much harder for hackers to access your data and can help protect your privacy.

ExpressVPN is one of the most popular VPNs on the market. It is fast, secure, and easy to use. It also offers a wide range of features, including unlimited bandwidth, unlimited server switching, and a 30-day money-back guarantee. In this guide, we will show you how to set up ExpressVPN on your Raspberry Pi. We will also discuss the benefits of using a VPN on your Raspberry Pi and how to choose the best VPN for your needs.

ExpressVPN is a trustworthy solution used to install a VPN client on a Raspberry Pi or any computer. I used it at work for years, and I love it. But the installation on Raspberry Pi is not as straightforward as on PC, even if they have a package for Raspberry Pi OS, so I wrote this tutorial to explain every step.

ExpressVPN can be installed on Raspberry Pi OS by downloading the corresponding package on the official website. There is no graphic interface, everything is done via the command line.

Let’s start with some important prerequisites before jumping to the installation part, and then I’ll explain how to use ExpressVPN once installed on your system.

If you’re looking to quickly progress on Raspberry Pi, you can check out my e-book here. It’s a 30-day challenge where you learn one new thing every day until you become a Raspberry Pi expert. The first third of the book teaches you the basics, but the following chapters include projects you can try on your own.

What you need to install ExpressVPN on Raspberry Pi

Here are the prerequisites to install ExpressVPN on a Raspberry Pi. Some may seem obvious, but others are essential and less evident:

  • An ExpressVPN account.
    Yes, ExpressVPN works with a paid subscription. It’s not that expensive, but you need an account and your activation code before going further.
    There is a 30-day money-back guarantee, so you don’t take any risk by testing it out.
    There are other VPN providers you can try (I tested a few of them here), but ExpressVPN is one of the most serious options (installation, support, reliability, etc.).
  • A Raspberry Pi.
    The steps will be similar on any Linux computer, but I’m testing this tutorial for you on a Raspberry Pi 4. It should work with any model. No desktop environment is required, so even a Raspberry Pi Zero is fine.
  • A good SD card or USB drive (links to my favorite products).
    Nothing special here, but if it’ll be an important node of your network later, it’s essential to choose the right storage. You want something reliable.
  • Raspberry Pi OS (32 bits) installed.
    Yes, at the time of writing, ExpressVPN doesn’t work with the 64-bit version.
    I tested with Bullseye 32-bit, and it’s ok, so I guess it’s safe to start with this.
    It should work with the Lite edition if you don’t need a desktop environment (server or gateway).

    If you already have another 32-bit distribution, it might work on it, I just didn’t test them all.
    For example, you can also use it with LibreElec, which I explain at the end of this article.

    They also have a manual installation method, where you can use the OpenVPN client and a configuration file. This might work on a 64-bit distribution if you don’t have other options.
    Here is the link to the documentation.

Once you have everything set up, we can move to the installation part.

Install ExpressVPN on Raspberry Pi

Download the ExpressVPN package

The first step is to go to the ExpressVPN website, and get the package for Raspberry Pi OS from the Downloads page,:

If like me, you’re following this tutorial from your computer, you can right-click on the Download button to copy the direct link to the file (once Raspberry Pi OS is selected), and then use it via SSH or VNC.
For example, use wget to download the file from a terminal:
wget https://www.expressvpn.works/clients/linux/expressvpn_3.34.1.0-1_armhf.deb

Don’t copy this command directly, please change the file version according to the one given on the website.

Are you a bit lost in the Linux command line? Check this article first for the most important commands to remember, and a free downloadable cheat sheet so you can have the commands at your fingertips.

Get the ExpressVPN license key

While you are on the website, you can log in and go to your Dashboard to get the activation code you’ll need later. It looks like this:

Keep it safe, you’ll need it later.

Install ExpressVPN in a terminal

Once the package is downloaded, we can install it.

If you have a desktop environment, just double-click on the file and choose to install it from the popup window:

Or, if you prefer to use the command line, you can use dpkg to install it.
It should be something like:
sudo dpkg -i expressvpn_3.34.1.0-1_armhf.deb
Don’t forget to change the version number depending on the one you got.

It should be installed directly, without any errors or missing prerequisites (at least I did it on a fresh install, and it worked perfectly). As mentioned earlier, this is a package for the “ARMHF” architecture, so using it on “ARM64” won’t work (more details about the difference between Raspberry Pi OS 32 and 64 bits here).

Activate ExpressVPN

Finally, you need to activate your ExpressVPN license before going any further. None of the commands I’ll give you later will work without it.

To do this, simply open a terminal and type:
expressvpn activate

Paste the activation code you got earlier from your account, and that’s it, ExpressVPN is now installed and activated on your Raspberry Pi. Ready to use!

Note: You get a message there telling you about the Chrome and Firefox extensions, but in my experience, none of them work on Raspberry Pi OS, as we don’t use the same versions as on PC (it’s Chromium and not Chrome for example).

Using ExpressVPN on Raspberry Pi

Unfortunately, there is no graphic interface for ExpressVPN on Raspberry Pi. Using it is not complicated, though, there are only a few commands to do everything you need.

Here is a list of the most important ones:

  • Connect:
    expressvpn connect
    You’ll be connected automatically to the “best” server available (what they call “Smart location”).

    It will often be the closest one, I guess there is some evaluation of availability and speed to decide which one it will be.
  • Disconnect:
    expressvpn disconnect
    Disconnect from ExpressVPN, and get back to your normal Internet access.
  • Connect to a specific location:
    Start by getting a list of the servers available:
    expressvpn list

    Then use either the country name or the location name to get access to it:
    expressvpn connect [country]
    expressvpn connect [location]

    Here is one example:
    expressvpn connect Germany

Once connected, you can check that your public IP address has been updated with this online IP tool.
With my last command, it locates me in Germany, which is precisely the goal:

There is no need to use sudo for these commands, which is great.

I hope it’s working well on your side, let me know if you have any issues or questions (you can ask them in the community). But also check the next section, where I answer the most common ones.

Reminder: Remember that all the members of my community get access to this website without ads, exclusive courses and much more. You can become part of this community for as little as $5 per month & get all the benefits immediately.

Related questions

How to automatically start ExpressVPN on boot?

By default, ExpressVPN won’t start on boot. To change this, start ExpressVPN with the Raspberry Pi and connect to the latest location, you can use this command:
expressvpn autoconnect true

You can’t configure the server location, but it will use the latest one you tried manually, so it’s fine.

How to uninstall ExpressVPN?

To uninstall ExpressVPN on Raspberry Pi OS, just use the “Add/Remove software” tool or the command:
sudo dpkg -r expressvpn

How to use ExpressVPN on LibreElec (Kodi)?

ExpressVPN works on LibreElec (tested with the latest versions), but the setup is slightly different. You need to get the ExpressVPN username and password, as well as the OpenVPN configuration file from the manual installation procedure.

It’s a bit tricky, but here is the complete step-by-step procedure to do this.
First, get the information you need from ExpressVPN:

  • Go to this page of the ExpressVPN website.
    Get your username and password.
  • Then click on one server location and download the corresponding configuration file.
  • Transfer the configuration file to your Raspberry Pi.
    You may need to enable Samba or SSH to do this.

Then you need to add a new repository in Kodi. Here are the steps:

Finally, install the VPN manager from this repository, so you can use it with ExpressVPN:

To make sure it’s working, you can check the weather widget on the home page of Kodi. If it gives you the weather forecast in Brazil (or whatever server you chose), it’s working :-).

Can I use a Raspberry Pi with ExpressVPN as a router/gateway for other computers?

Once ExpressVPN is installed on a Raspberry Pi, it’s possible to use the Raspberry Pi as a gateway to share the secured connection with other computers on the same network.

The procedure is not easy though, but I did it. I got the ExpressVPN IP address on my phone, even without using the ExpressVPN app. I use a wireless hotspot, created on the Raspberry Pi, to share the VPN connection:

This is a long procedure, so I won’t explain all the details here, but basically, the idea is to use one connection of the Raspberry Pi to connect it to ExpressVPN (Ethernet or Wi-Fi) and then configure the other connection to allow other computers to use it as a gateway.

I have an entire tutorial on this topic here: How to use Raspberry Pi as a Wireless Router with Firewall?
It explains how to create a Wi-Fi hotspot on a Raspberry Pi. If your Raspberry Pi is connected via the Ethernet connection and ExpressVPN is enabled, you can follow the same steps.

The only change will be that ExpressVPN creates a virtual interface (tun0) for the VPN connection, so you need to redirect the traffic to this interface instead of the wireless interface directly (wlan0).
For example, with iptables:
sudo iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

It’s not something I would recommend to beginners, but it’s possible if you are looking for a new challenge :-).

Additional Resources

Not sure where to start?
Understand everything about the Raspberry Pi, stop searching for help all the time, and finally enjoy completing your projects.
Watch the Raspberry Pi Bootcamp course now.

Master your Raspberry Pi in 30 days
Don’t want the basic stuff only? If you are looking for the best tips to become an expert on Raspberry Pi, this book is for you. Learn useful Linux skills and practice multiple projects with step-by-step guides.
Download the e-book.

VIP Community
If you just want to hang out with me and other Raspberry Pi fans, you can also join the community. I share exclusive tutorials and behind-the-scenes content there. Premium members can also visit the website without ads.
More details here.

Need help building something with Python?
Create, understand, and improve any Python script for your Raspberry Pi.
Learn the essentials step-by-step without losing time understanding useless concepts.
Get the e-book now.

You can also find all my recommendations for tools and hardware on this page.

ExpressVPN on Raspberry Pi: The Ultimate Guide

Raspberry Pi is a small, affordable, and powerful computer that can be used for a variety of projects. It is a great choice for those who want to set up a home media server, build a gaming console, or create a home automation system. But one of the most popular uses for Raspberry Pi is to set up a secure and private VPN server.

ExpressVPN is one of the most popular and reliable VPN services available. It offers fast speeds, strong encryption, and a wide range of features. In this guide, we’ll show you how to set up ExpressVPN on your Raspberry Pi.

What You’ll Need

  • A Raspberry Pi 3 or higher
  • An ExpressVPN subscription
  • A microSD card with at least 8GB of storage
  • A USB keyboard and mouse
  • A monitor with an HDMI port
  • An Ethernet cable

Step 1: Install Raspbian

The first step is to install the Raspbian operating system on your Raspberry Pi. Raspbian is a free and open-source operating system based on Debian. It is the official operating system for Raspberry Pi and is optimized for the hardware.

To install Raspbian, you’ll need to download the Raspbian image from the Raspberry Pi website. Once you’ve downloaded the image, you’ll need to write it to your microSD card. You can use a tool like Etcher to do this.

Step 2: Set Up Your Raspberry Pi

Once you’ve installed Raspbian, you’ll need to set up your Raspberry Pi. This includes connecting your keyboard, mouse, and monitor, as well as connecting to the internet. You can connect to the internet via Wi-Fi or an Ethernet cable.

Once you’ve connected to the internet, you’ll need to update the operating system. To do this, open the Terminal and type the following command:

sudo apt-get update && sudo apt-get upgrade

This will update the operating system and install any available updates.

Step 3: Install ExpressVPN

Now that your Raspberry Pi is set up, you can install ExpressVPN. To do this, open the Terminal and type the following command:

wget -O expressvpn.deb https://download.expressvpn.xyz/clients/linux/expressvpn_2.4.4_armhf.deb

This will download the ExpressVPN package to your Raspberry Pi. Once the download is complete, type the following command to install ExpressVPN:

sudo dpkg -i expressvpn.deb

Once the installation is complete, you’ll need to activate your ExpressVPN account. To do this, type the following command:

expressvpn activate

You’ll be prompted to enter your ExpressVPN username and password. Once you’ve entered your credentials, your account will be activated.

Step 4: Connect to ExpressVPN

Now that ExpressVPN is installed and activated, you can connect to the VPN. To do this, open the Terminal and type the following command:

expressvpn connect

This will connect you to the ExpressVPN server of your choice. You can also use the ExpressVPN app to select a server and connect.

Step 5: Enjoy Your Secure Connection

Once you’re connected to ExpressVPN, you can enjoy a secure and private connection. All of your internet traffic will be encrypted and routed through the ExpressVPN server, keeping your data safe and secure.

You can now use your Raspberry Pi to browse the web securely and privately. You can also use it to access geo-restricted content, such as streaming services like Netflix and Hulu.

Conclusion

Setting up ExpressVPN on your Raspberry Pi is a great way to keep your data secure and private. With ExpressVPN, you can enjoy fast speeds, strong encryption, and a wide range of features. Follow the steps in this guide to get started.

Jaspreet Singh Ghuman

Jaspreet Singh Ghuman

Jassweb.com/

Passionate Professional Blogger, Freelancer, WordPress Enthusiast, Digital Marketer, Web Developer, Server Operator, Networking Expert. Empowering online presence with diverse skills.

jassweb logo

Jassweb always keeps its services up-to-date with the latest trends in the market, providing its customers all over the world with high-end and easily extensible internet, intranet, and extranet products.

Contact
San Vito Al Tagliamento 33078
Pordenone Italy
Item added to cart.
0 items - 0.00
Open chat
Scan the code
Hello 👋
Can we help you?