How to use Proxmox VE remotely over Meshnet
Learn how you can incorporate Meshnet into your Proxmox VE configuration for secure remote access.
Virtual machines (VMs) are emulated computers that operate within a physical machine, enabling multiple operating systems to run simultaneously on a single computer. VMs are useful for developers, system administrators, and organizations that need to create and manage multiple environments for testing, development, and production purposes. A popular hypervisor for personal and enterprise solutions is Proxmox.
Proxmox Virtual Environment (VE) is a free and open-source virtualization platform that allows for centralized management of virtual machines, containers, and other virtualized resources. It supports a wide range of virtualization technologies, providing flexibility in managing virtual infrastructure. By including Meshnet in the Proxmox setup, you can enable secure remote control of the hypervisor. This configuration allows you to maintain and manage your virtual infrastructure from anywhere in the world.
This article describes how you can install Meshnet on your Proxmox system and remotely control your VMs.
Proxmox provides you with two installation methods:
- Installing Proxmox VE as a standalone operating system (OS).
- Installing Proxmox VE on top of an already present Debian system.
For most users, a standalone Promox VE OS is recommended. However, enthusiasts may opt to choose the second method. For the purpose of this article, a standalone Proxmox VE 7.4 installation is used.
To install Proxmox VE:
- 1.
- 2.
Once the installation finishes, you should see the local IP address and port of your Proxmox VE web interface.

Proxmox is fully controlled from the web interface. While you can manage some of the settings via the command line, the web interface provides a convenient alternative with a graphical user interface (GUI). To access Proxmox VE:
- 1.On another local device, open your internet browser.
- 2.In the URL bar, enter the previously presented local IP and port combination and press Enter.
- 3.Enter the password you created during Proxmox installation and click Login.
Now you should see the Proxmox VE web interface.
Note
Since Proxmox is using self-signed SSL certificates, you may see a “Your connection is not private” message. To proceed further:
- 1.Click Advanced.
- 2.Select Proceed to <IP> (unsafe).
The first thing you should do after installing a new OS is fetch and install all available system updates. They can range from simple dependency updates to security upgrades.
By default, the Proxmox VE installation uses an enterprise Proxmox update repository, which requires an enterprise subscription to access. To use the free version of Proxmox, you can change the update repository by taking the following steps:
- 1.From the menu on the left, under Datacenter, select proxmox.
- 2.Expand the Updates section and click Repositories.
- 3.Select the enterprise Proxmox repository entry and click Disable.
- 4.Click the Add button.
- 5.From the Repository dropdown list, select No-subscription and click Add.
The No-subscription repository is now added to your Proxmox VE.
After changing the Proxmox repository, you can update your system by taking these steps:
- 1.Switch to the Updates section.
- 2.Click the Refresh button to fetch all available updates. Close the pop-up window when the scan finishes.
- 3.Click the Upgrade button to install the available updates.
- 4.In the Proxmox Console window, type in Y and press Enter to proceed.
Once the process is finished, close the Proxmox Console window and reboot your Proxmox machine.
With your Proxmox VE instance updated, you can start setting up Meshnet. Because Proxmox is based on Debian, you can install NordVPN the same way as on a standard Linux machine.
Follow these steps to set up NordVPN on your Proxmox VE:
- 1.Open your Proxmox VE web interface.
- 2.From the list on the left, select Shell.
- 3.Download and install the NordVPN Linux client by running this command:sh <(wget -qO - https://downloads.nordcdn.com/apps/linux/install.sh)
- 4.Log in to your NordVPN account.
You can log in to your NordVPN account without the use of a graphical user interface (GUI) in two ways:
- By running the
nordvpn login
command with the--token
flag - By running the
nordvpn login
command with the--callback
flag
Instructions for both methods are outlined below.
- 1.On any device, log in to your Nord Account dashboard and, under NordVPN Meshnet free, select View details.
- 2.Scroll down until you see Manual setup, and select Set up NordVPN manually.
- 3.Enter the verification code sent to your email address.
- 4.Under Access token, select Generate new token.
- 5.In the dialog that appears, choose either a token that expires in 30 days or one that never expires, and then select Generate token.
- 6.Select Copy and close.
- 7.In your Proxmox shell, run the
nordvpn login --token <your_token>
command, replacing<your_token>
with the copied token. Examplenordvpn login --token 3fe460cefb8dcf1478c92e45903cec9f9bdbadf7a456a6dfb35dc2c58ee39d5b
You should now see a welcome message.
- 1.Run the
nordvpn login
command. - 2.Open the provided link in your browser on any device.
- 3.Complete the login procedure.
- 4.Right-click the Continue button and select Copy link address.
- 5.Run the
nordvpn login --callback "<URL>"
command, replacing<URL>
with the previously copied link address. Examplenordvpn login --callback "nordvpn://login?action=login&exchange_token=MGFlY2E1NmE4YjM2NDM4NjUzN2VjOWIzYWM3ZTU3ZDliNDdiNzRjZTMwMjE5YjkzZTNhNTI3ZWZlOTIwMGJlOQ%3D%3D&status=done"
You should now see a welcome message.
Tip
To preserve your token when logging out of the NordVPN app, use the
nordvpn logout --persist-token
command. Otherwise, your token will be revoked. nordvpn set meshnet on
To view the Nord name and Meshnet IP address of your instance, enter the following command:
nordvpn meshnet peer list

With Meshnet enabled on your Proxmox machine, you can access the Proxmox web interface remotely by following these steps:
- 1.Copy the Nord name of the Proxmox machine from the NordVPN application.
- 2.Open your internet browser.
- 3.In the URL bar, paste the copied Nord name followed by
:8006/
and press Enter. - 4.On the Your connection is not private page, select Advanced > Proceed to <Nord Name>.
- 5.Log in to your Proxmox account.
Now you can remotely use Proxmox and its features, such as creating VMs, from any device connected to your Meshnet.
With Proxmox and Meshnet configured, you can deploy various VMs remotely from the Proxmox web interface.
First, you need to import an installation ISO file for your VMs operating system to Proxmox. You can import ISO images in the following two methods.
Upload an image from another device
Download an image directly to Proxmox VE
To upload an ISO image from the device that you are currently using:
- 1.Open your Proxmox web interface.
- 2.From the menu on the left, select the local (proxmox) storage entry.
- 3.Select ISO images and click Upload.
- 4.In the new pop-up window, click Select file.
- 5.Locate the ISO file for your preferred VM and click Open.
- 6.Click Upload.
Once the upload is finished, you can see the uploaded file in the ISO images menu and use it for VM deployment.

To download an ISO image using the Proxmox web interface:
- 1.Open your Proxmox web interface.
- 2.From the menu on the left, select the local (proxmox) storage entry.
- 3.Select ISO images and click Download from URL.
- 4.In the URL field, paste a direct download link for your selected ISO image and select Query URL.
- 5.Click Download.
Once the download is finished, you can see the downloaded file in the ISO images menu and use it for VM deployment.

To configure a new VM on Proxmox VE:
- 1.In the upper-right corner, click Create VM.
- 2.In the Name field, enter a custom name for your VM and click Next.
- 3.In the ISO image field, select an ISO file that you imported previously.
- 4.Finish creating the VM by selecting the required fields and clicking Next.
- 5.In the Confirm section, double-check your VM configuration and click Finish.
Once the VM is created, you can see its entry in the menu on the left.
To start your new VM:
- 1.In the menu on the left, select the VM you want to start.
- 2.In the upper-right corner, click Start.
In a few seconds, the VM is started, and you can interact with it by switching to the Console section.
