15. Configuring Proxmox

15. Configuring Proxmox

If you are new to Proxmox, the web interface can look overwhelming at first. There are a lot of menus, tabs, graphs, and settings, and it can feel like you need to understand everything straight away.

The good news is, you do not.

There is much more visible in Proxmox than you actually need to know right now. For a NAS-focused setup, especially when Proxmox is only being used as a host for storage and a few virtual machines, we only need to understand a small number of core areas.

This section is a guided tour of the Proxmox web interface, focusing only on what matters at this stage. Later tutorials will go deeper into specific features when we actually need them.


Accessing the Proxmox Web Interface

From a computer on the same network, open a web browser and go to:

https://<your-proxmox-ip>:8006

Log in using:

  • Username: root
  • Password: the password you set during installation

Once logged in, you will see the Proxmox dashboard.


Overall Layout Overview

The Proxmox interface is divided into three main areas:

  1. Left navigation tree
  2. Main content panel
  3. Top menu and status area

We will go through each one briefly.


Left Navigation Tree

This is the most important area to understand.

At the very top, you will see Datacenter.
Below that, you will see the name of your Proxmox server, for example pve-n355.

Under your server name, you may see:

  • Local storage
  • Local-lvm storage
  • Network interfaces
  • Other system resources

Think of the left tree as a hierarchy:

  • Datacenter controls everything
  • The node (your server) controls hardware and system-level settings
  • Virtual machines and containers live under the node

For now, we will mostly work inside your server node (pve-n355), not Datacenter.


Datacenter (High Level Settings)

Clicking on Datacenter shows settings that apply to the entire Proxmox environment.

For a single NAS server, you can safely ignore most of these options for now.

Useful sections to be aware of, but not change yet:

  • Storage
  • Backup
  • Permissions

We will revisit Datacenter later if we configure backups and permissions.


Your Proxmox Node (The Server Itself)

Click on your server name in the left panel. (pve-n355)

This is where you manage:

  • CPU and memory usage
  • Storage devices
  • Network interfaces
  • System updates
  • ZFS pools

This is the area you will use the most.


Summary Tab

The Summary tab is the default view when you select your node.

Here you can see:

  • CPU usage
  • Memory usage
  • Disk usage
  • Network activity
  • System uptime

This page is purely informational. It is useful for checking that:

  • The system is running
  • Hardware resources are detected
  • Nothing is under unexpected load

System Section

On the left side under your node, expand System.

Important items to know about:

  • Network
    This shows your physical network ports and bridges
  • DNS
    Controls name resolution for the host
  • Time
    Confirms correct time and timezone
  • Updates
    Used to apply Proxmox updates

For now, we will mostly check these settings, not change them.


Network

Click Network.

You should see:

  • A Linux bridge, usually vmbr0
  • One or more physical network interfaces (enp4s0, enp5s0)

vmbr0 acts like a virtual network switch.
It allows virtual machines and containers to access your physical network.

At this stage, just confirm:

  • vmbr0exists
  • It is linked to the correct physical network port
  • The IP address matches what you configured during installation

We will not modify networking yet.


Disks and Storage

Under your node, expand Disks.

Important sections:

  • Disks
    Shows all detected physical drives
  • ZFS
    Shows your ZFS pools, if you installed using ZFS
  • Directory
    Shows file-based storage

This is where you confirm that:

  • All expected drives are visible
  • Your ZFS mirror or pool is healthy

Do not create or delete anything yet. This is just a visibility check.


Shell

The Shell button opens a terminal directly on the Proxmox host.
This is where we enter written commands.

This guide will be done through the web interface on the Proxmox shell.
We will only use the shell soon for chekhing and updating.


Virtual Machines and Containers

Under your node (pve-n355), this is where:

  • Virtual machines (VMs) will appear
  • Containers (CTs) will appear

Right now, this area will likely be empty, and that is expected.

We will start creating VMs after we finish validating system settings.


What You Can Safely Ignore for Now

As a beginner, you can safely ignore these sections for now:

  • Firewall
  • HA
  • Replication
  • Ceph
  • Permissions
  • Pools

These are powerful features, but they are not required for a basic NAS setup.


What We Are Checking Right Now

At this stage, our goals are simple:

  • Confirm Proxmox is accessible via the web
  • Confirm network settings are correct
  • Confirm storage devices are detected
  • Confirm system resources look normal

Once those checks are complete, we are ready to move on.


Running shell commands

Now lets check to see if everything is in order.
In the main content panel click on the >_ shell and this is where the commands are entered. Right next to the root@pve-n355:~#
Just type or paste the commands and press Enter to run them.

1. Verify hostname and FQDN

To check this try these two commands.

hostname
hostname -f

They should return something like.

pve-n355
pve-n355.nas

If not do this:

hostnamectl set-hostname pve-n355.nas

Then verify /etc/hosts by using a nano command, this is a text editor for a file at a folder path. You need to use keyboard arrows to move around on these, the mouse will not move the cursor.

nano /etc/hosts

It will contain the following info.

127.0.0.1       localhost
192.168.0.2     pve-n355.nas pve-n355

To save any nano files (text files) use Ctrl + O then Enter then Ctrl + X.
This writes out (updates the file), saves the file and then closes the nano.
You will be in the shell again. If you did change anything then make sure to save and reboot the NAS before you continue.

2. Verify networking settings

Check the interface.

ip a show vmbr0

You should see this: vmbr0 and 192.168.0.2/24
Now check the routing.

ip r

You should see this: default via 192.168.0.1

3. Configure check or correct the DNS for the host

Run this.

cat /etc/resolv.conf

You should see.

nameserver 192.168.0.1

If you don’t then run another nano command.

nano /etc/resolv.conf

Paste this in and save as shown last time.

nameserver 192.168.0.1

4. Enable the no-subscription repository

Check what is called a repo file.

cat /etc/apt/sources.list.d/pve-enterprise.sources

If this does work (has a file path) then nano again.

nano /etc/apt/sources.list.d/pve-enterprise.sources

Change Enabled: true to Enabled: false and then save and close the nano.
Now to add the no-subscription repo.

nano /etc/apt/sources.list.d/pve-no-subscription.sources

Paste this in and save and close the nano.

Types: deb
URIs: http://download.proxmox.com/debian/pve
Suites: bookworm
Components: pve-no-subscription

Now update Proxmox.

apt update

Now upgrade Proxmox to use the setting correctly. (The -y just saves you from saying Yes you want to upgrade when the script is about to run)

apt full-upgrade -y

Now I mentioned if this works earlier. If running cat /etc/apt/sources.list.d/pve-enterprise.sources and it says “No such file or directory” then it didnt work so you need to do this.

nano /etc/apt/sources.list.d/pve-enterprise.list

You should see.

deb https://enterprise.proxmox.com/debian/pve bookworm pve-enterprise

If you know anything about coding you need to comment out the command so it doesn’t run. We do this by adding a # in front of anything that is a comment and not actual code. It should now look like this.

# deb https://enterprise.proxmox.com/debian/pve bookworm pve-enterprise

Close the nano and then add the Proxmox no-subscription repository.

nano /etc/apt/sources.list.d/pve-no-subscription.list

Then paste this code in.

deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription

Save and close the nano.
Now time to apt update and then apt full-upgrade -y again.

5. Now lets remove the enterprise subscription warning on the UI when we log in

Run this, you won’t see an output in the shell.

sed -i 's/data.status !== .Active./false/' /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js
systemctl restart pveproxy

6. Enable the IOMMU for the HBA passthrough needed later with TrueNAS.

Run this nano.

nano /etc/default/grub

Find the line that says GRUB_CMDLINE_LINUX_DEFAULT=”quiet” and edit it to be.

GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt"

Save and close the nano.
Now the GRUB needs to updated. This is a file the runs on boot for the OS. Run these three commands.

update-grub
update-initramfs -u
reboot

Just wait a minute or two for it to complete, your shell will refresh after it reboots.
Now run.

dmesg | grep -i iommu

You should get a list with parts looking like this.

[    0.469625] pci 0000:00:02.0: Adding to iommu group 0
[    0.470122] pci 0000:00:00.0: Adding to iommu group 1
[    0.470139] pci 0000:00:0d.0: Adding to iommu group 2
[    0.470154] pci 0000:00:14.0: Adding to iommu group 3

7. Now to load required kernel modules permanently

Run this.

nano /etc/modules

And add this the below text.

vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd

Save and close the nano and reboot.

8. Now time to disable the Proxmox firewall

Just for now we are going to disable any firewall running.

In Web UI:

  • Datacenter > Firewall > Options > (double click on Firewall in the window and untick Firewall, it will now say No).
  • Node (pve-n355) > Firewall > Options > (double click on Firewall in the window and untick Firewall, it will now say No).

We’ll handle security later via the router firewall, Tailscale and Optional OPNsense/pfsense later.

9. Check that we can see the storage

Now to make sure all storage SSD and HDD are seen by Proxmox run.

lsblk

We should be able to see the four sda-sdd HDDs and the two nvme 0-1 SSDs.

NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda           8:0    0   5.5T  0 disk 
sdb           8:16   0   5.5T  0 disk 
sdc           8:32   0   5.5T  0 disk 
sdd           8:48   0   5.5T  0 disk 
nvme0n1     259:0    0 238.5G  0 disk 
├─nvme0n1p1 259:2    0  1007K  0 part 
├─nvme0n1p2 259:3    0     1G  0 part 
└─nvme0n1p3 259:4    0 237.5G  0 part 
nvme1n1     259:1    0 238.5G  0 disk 
├─nvme1n1p1 259:5    0  1007K  0 part 
├─nvme1n1p2 259:6    0     1G  0 part 
└─nvme1n1p3 259:7    0 237.5G  0 part

Looking great so far but we will not create ZFS pools yet. TrueNAS will own the HDDs.

Shutdown the NAS via the Shutdown button located towards the top right of the web interface. Turn the NAS back on and eveything should be running like new.


Quite a lot of shell / terminal commands but it gives you an idea how Linux works as well. If you get so inclined try to learn Linux Bash so you can learn the shell commands. This might be a side project on the NAS even? Install Ubuntu linux as a VM on Proxmox and go through a BASH tutorial. Or, if you really want to get into programming find an ebook called Learn Python the Hard Way. You will learn how to code in Python and bash at the same time, the book is aging but if you can get through it you will be a super star programmer. It just takes time. If you get even more enthused start saving your project files on GITHUB.

Next up we will install Tailscale on Proxmox so we can remote access the NAS from anywhere.

Scroll to Top