Proxmox Virtual En­vi­ron­ment (Proxmox VE) lets you ef­fi­cient­ly manage virtual machines and con­tain­ers on Linux. This guide walks you through in­stalling Proxmox VE on Debian 12 (Bookworm) and getting it up and running.

Dedicated Servers
Per­for­mance through in­no­va­tion
  • Dedicated en­ter­prise hardware
  • Con­fig­urable hardware equipment
  • ISO-certified data centers

Step 1: Prepare the server

Before you begin, make sure you have a server with enough resources. For a typical test or pro­duc­tion setup, a quad-core processor, 8 GB of RAM and 100 GB of disk space are rec­om­mend­ed as a minimum.

Make sure that Debian 12 has been installed correctly and has an active internet con­nec­tion. Then update all packages to bring the system up to date before in­stalling Proxmox.

sudo apt update && sudo apt upgrade -y
sudo reboot
bash
Tip

Unlike a bare-metal Proxmox in­stal­la­tion, in­stalling Proxmox on top of Debian 12 gives you full control over the operating system. You can install extra packages and services as needed while also ben­e­fit­ing from Debian’s proven stability.

Step 2: Add the Proxmox repos­i­to­ry

Proxmox isn’t included in Debian’s official package sources, so you’ll need to add its repos­i­to­ry manually. Start by importing the Proxmox GPG key:

sudo wget https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg
bash

Next, add the Proxmox VE repos­i­to­ry:

echo "deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription" | sudo tee /etc/apt/sources.list.d/pve-install-repo.list
bash

Then update your package list:

sudo apt update
bash
Note

This guide in­ten­tion­al­ly uses the “no-sub­scrip­tion” repos­i­to­ry from Proxmox, which is freely available and ideal for testing en­vi­ron­ments, home labs or smaller pro­duc­tion systems. It includes all essential updates and security patches but doesn’t provide en­ter­prise-grade support or access to the En­ter­prise repos­i­to­ry. If you’re using Proxmox in a business setting, consider pur­chas­ing a sub­scrip­tion to receive regular verified updates and official support.

Step 3: Install the Proxmox kernel

Before setting up the Proxmox Virtual En­vi­ron­ment, first install the Proxmox kernel, which is optimized for vir­tu­al­iza­tion and provides better per­for­mance and com­pat­i­bil­i­ty. You can do this using the following terminal commands:

sudo apt install proxmox-default-kernel -y
sudo reboot
bash

Step 4: Install Proxmox

Now install Proxmox VE and its core com­po­nents. The command below installs all required packages au­to­mat­i­cal­ly:

sudo apt install proxmox-ve postfix open-iscsi -y
bash

During in­stal­la­tion, you’ll be asked to configure Postfix. Choose Internet Site and enter your server’s hostname. When the in­stal­la­tion finishes, restart the system:

sudo reboot
bash

Step 5: Remove un­nec­es­sary Debian kernels

After in­stal­la­tion, your system uses the new Proxmox kernel, which is based on Debian but optimized for vir­tu­al­iza­tion. To avoid boot menu clutter and potential conflicts, remove the default Debian kernel (usually linux-image-amd64). This keeps your system clean and helps prevent possible issues during future updates.

Run the following commands:

sudo apt remove linux-image-amd64 linux-image-6.1* -y
sudo update-grub
bash

The first command removes unused Debian kernel packages. The second updates the boot­loader, so the system boots with the Proxmox kernel by default. Then restart to load the new kernel:

sudo reboot
bash

After the reboot, check the Proxmox kernel is active:

uname -r
bash

The output should now look something like this: 6.8.4-3-pve. If you see this kind of version label, it confirms the system is running the Proxmox kernel.

Step 6: Access the Proxmox web interface

Proxmox is now fully installed and ready for use. You can manage it entirely through its web interface, which you can access via any browser. To do so, open the browser of your choice and enter your server’s IP address followed by the default port 8006 in the address bar. Use the HTTPS protocol, which encrypts the con­nec­tion by default and keeps data secure:

https://<YOUR-IP-ADDRESS>:8006/

Your browser may show a warning that the SSL cer­tifi­cate isn’t trusted. This is normal because Proxmox uses a self-signed cer­tifi­cate. Accept the warning to proceed. You’ll then see the Proxmox VE login page. Sign in with the user “root” and your Debian password. Keep the Realm field set Linux PAM standard authentication.

Note

If you have trouble accessing the Proxmox web interface through port 8006, a firewall might be blocking the con­nec­tion. Make sure this port is open in your firewall settings so you can connect to the web interface.

After logging in, the Proxmox dashboard will appear. From here, you can:

  • Create and manage virtual machines and con­tain­ers
  • Configure storage and networks
  • Monitor system resources such as CPU, RAM and disk usage

Your in­stal­la­tion is now complete and you can start creating your first virtual en­vi­ron­ment.

Step 7: Adjust repos­i­to­ries and remove warning messages

After suc­cess­ful­ly in­stalling Proxmox and logging in for the first time, you’ll see a message stating that no active sub­scrip­tion is available. This warning appears because the system is currently using the En­ter­prise repos­i­to­ry, which requires a valid support license. As we’re working with the free no-sub­scrip­tion repos­i­to­ry, disable the En­ter­prise entry to remove the warning. To do so, use the following command:

sudo sed -i 's/^deb/#deb/' /etc/apt/sources.list.d/pve-enterprise.list
bash

This de­ac­ti­vates the line in the repos­i­to­ry con­fig­u­ra­tion file so it’s ignored during future package updates. Next, update your package sources so the system applies the changes:

sudo apt update
bash

This ad­just­ment doesn’t affect system stability. All it does is prevent Proxmox from dis­play­ing the license warning at login while ensuring all future updates come from the pre­vi­ous­ly con­fig­ured “no-sub­scrip­tion” repos­i­to­ry.

Step 8: Update the system and run a final check

To complete the in­stal­la­tion, make sure your system is fully up to date and all Proxmox services are running correctly. This will help avoid com­pat­i­bil­i­ty issues and ensure your en­vi­ron­ment runs smoothly. First, update all installed packages using the following command:

sudo apt full-upgrade -y
bash

After com­plet­ing the update, it’s a good idea to check the status of the key Proxmox services. These processes are essential, so the man­age­ment interface and vir­tu­al­iza­tion features run smoothly:

sudo systemctl status pve-cluster
sudo systemctl status pvedaemon
sudo systemctl status pveproxy
bash

If all services show as active (running), your Proxmox Debian in­stal­la­tion is working correctly. The setup is now complete and your server is ready to go live. You can use the web interface to create virtual machines and con­tain­ers, configure networks and manage storage.

Once your en­vi­ron­ment is up and running, you can expand Proxmox as needed — for example, by adding a Proxmox file server for cen­tral­ized storage access or a Proxmox backup server to protect your virtual machines and con­tain­ers.

Go to Main Menu