Home Lab Computer Self Taught, Eager Learner also a Teacher (All of Us are!) Learning Trial and Error Successes:
Public Note:
Please allow me to share my Trial and Error Proxmox 9.1 and Hestia Control Panel, Webserver Port Forwarding Success:
Here is my entire Proxmox 9.1 installation and network settings:
Self Taught, No Formal Teachings. I Just Really Like and Love Computers and I have for Months and Years Finally have written it on 1/One Page.
I Am That, I Am more than Happy to Share it Freely!
A Working Setup for Proxmox 9.1 🙂
I have the same thing made for Canonical LXD… 🙂 Happy Computing. 🙂
I Am That, I Am a Conscious and Aware Individual Private Self!
I Am That, AM Sharing My Actual IP Addresses and Passwords from My Personal Self Hosting Computer Lab. It is easier to look at and understand in context instead of replacing it with demo examples or hiding it.
Self Awakening Equal Universal Knowledge Education of All of Us:
Stop having Secret, Keeping Secrets,- Stop Hiding Your Thoughts and Feelings Self Believes and Stop fearing Them Too!!! It is Only INSIDE the Brain! Don’t Believe, Do, Care or Need it! It is Only within,, INSIDE the Brain! Also,- Feel Healthy Only to Heal it! with Your Breathing!!! “Just Do it!” Awaken, Wake-Up! It Means to Knowledge! http://shaylehvgroup.wordpress.com its FREE! Copy it, Own it! It Belongs to All of Us Equally!!!
Setup Overview
This was done on a Contabo VPS (Single IP Address, Operating System: Debian 13 Trixie)
And Raspberry Pi 5 (Single IP Address, Raspberry Pi OS: Debian 13 Trixie).
The Purpose of Intention is for: Hestia Control Panel, Webserver and Docker and Portainer Containers.
This is Covering Preparations of Networking: ifupdown2, DNS: resolvconf, hosts file settings before installing Proxmox 9.1 and the installation of Proxmox 9.1.
CVPS Proxmox 9.1 Installation
On the Host Computer
Preparations Before Installing Proxmox 9.1
CVPS Debian 13 Trixie Netplan original settings:
network:
version: 2
renderer: NetworkManager
ethernets:
eth0:
match:
macaddress: "00:50:56:5d:ae:35"
addresses:
- "66.94.124.242/21"
- "2605:a141:2286:5037:0000:0000:0000:0001/64"
nameservers:
addresses:
- 209.126.70.51
- 209.126.70.52
- 2605:a141:5028::1:53
search: []
set-name: "eth0"
routes:
- to: "default"
via: "66.94.120.1"
- on-link: true
to: "default"
via: "fe80::1" Original /etc/hosts file (GNU nano 8.4):
Your system has configured ‘manage_etc_hosts’ as True. As a result, if you wish for changes to this file to persist then you will need to either:
a.) make changes to the master file in /etc/cloud/templates/hosts.debian.tmpl
b.) change or remove the value of ‘manage_etc_hosts’ in /etc/cloud/cloud.cfg or cloud-config from user-data
#
127.0.1.1 vmi2865037.contaboserver.net vmi2865037
127.0.0.1 localhost
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters Change /etc/hosts to:
sudo nano /etc/hosts
127.0.0.1 localhost
66.94.124.242 cvpspmox.netfreund.com cvpspmox Next time I’ll leave it with:66.94.124.242 vmi2865037.contaboserver.net vmi2865037
Change the Static Hostname
sudo hostnamectl set-hostname cvpspmox Prevent Cloud-Init from Managing /etc/hosts
sudo nano /var/lib/cloud/instance/user-data.txt Change: manage_etc_hosts: true
To: manage_etc_hosts: false
In sudo nano /etc/cloud/cloud.cfg edit:
disable_root: false
ssh_pwauth: true Uncomment: manage_etc_hosts: true
The modules that run in the ‘init’ stage — Uncomment:
- update_etc_hosts Master Cloud Config File
sudo nano /etc/cloud/templates/hosts.debian.tmpl
127.0.0.1 localhost
66.94.124.242 cvpspmox.netfreund.com cvpspmox resolvconf Settings
sudo nano /etc/resolv.conf
domain cvpspmox.netfreund.com
search cvpspmox.netfreund.com
nameservers 1.1.1.1 1.0.0.1
nameservers 209.126.70.51 209.126.70.52
nameservers 2605:a141:5028::1:53 Optional: Disable IPv6 on the Proxmox Node
sudo nano /etc/sysctl.d/disable-ipv6.conf
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1 ifupdown2 /etc/network/interfaces Settings
The loopback network interface:
auto lo
auto eth0
iface eth0 inet static
address 66.94.124.242/21
netmask 255.255.248.0
gateway 66.94.124.1
dns-nameservers 1.1.1.1 1.0.0.1
dns-nameservers 209.126.70.51 209.126.70.52
dns-nameservers 2605:a141:5028::1:53
dns-domain netfreund.com Proxmox bridge:
auto vmbr0
iface vmbr0 inet static
address 192.168.1.1/24
bridge-ports none
bridge-stp off
bridge-fd 0
# Rules to forward and masquerade the traffic of the VMs
post-up echo 1 > /proc/sys/net/ipv4/ip_forward
post-up iptables -t nat -A POSTROUTING -s '192.168.1.0/24' -o eth0 -j MASQUERADE
post-down iptables -t nat -D POSTROUTING -s '192.168.1.0/24' -o eth0 -j MASQUERADE
post-up iptables -t raw -I PREROUTING -i fwbr+ -j CT --zone 1
post-down iptables -t raw -D PREROUTING -i fwbr+ -j CT --zone 1 HCP Container Port Forwarding:
post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 2083 -j DNAT --to 192.168.1.2:2083
post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to 192.168.1.2:80
post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j DNAT --to 192.168.1.2:443
post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 143 -j DNAT --to 192.168.1.2:143
post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 993 -j DNAT --to 192.168.1.2:993
post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 110 -j DNAT --to 192.168.1.2:110
post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 25 -j DNAT --to 192.168.1.2:25
post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 465 -j DNAT --to 192.168.1.2:465
post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 587 -j DNAT --to 192.168.1.2:587
post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 53 -j DNAT --to 192.168.1.2:53
post-up iptables -t nat -A PREROUTING -i eth0 -p udp --dport 53 -j DNAT --to 192.168.1.2:53
post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 21 -j DNAT --to 192.168.1.2:21
post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 22 -j DNAT --to 192.168.1.2:22 NPM Container Port Forwarding:
post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 81 -j DNAT --to 192.168.1.3:81
post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 82 -j DNAT --to 192.168.1.3:80
post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 444 -j DNAT --to 192.168.1.3:443 post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 5354 -j DNAT --to 192.168.1.3:53
post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 5354 -j DNAT --to 192.168.1.3:53
post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 67 -j DNAT --to 192.168.1.3:67
post-up iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 84 -j DNAT --to 192.168.1.3:80 Update ifupdown2
ifreload -a On the VM set the following Network Settings:
IP: 192.168.1.2/24
GATEWAY: 192.168.1.1
NETMASK: 255.255.255.0 Test if ports are open:
tcpdump -eni vmbr0 port 80 Is any service listening on port number?
sudo ss -tuln | grep :80
sudo ss -tuln | grep :443 Try to connect and receive a file:
nc -l -p 80 > nc_.txt Now Ready to Install Proxmox
Proxmox 9.1 Installation
Install Repository, Kernel, and Reboot
sudo apt update
&& sudo apt install wget -y
&& sudo wget https://enterprise.proxmox.com/debian/proxmox-release-trixie.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-trixie.gpg
&& sudo echo "deb [arch=amd64] http://download.proxmox.com/debian/pve trixie pve-no-subscription"
| sudo tee /etc/apt/sources.list.d/pve-install-repo.list
&& sudo apt update
&& sudo apt full-upgrade -y
&& sudo apt install -y proxmox-default-kernel
&& sudo reboot Install Packages and Remove Old Kernel
sudo apt install -y proxmox-ve postfix open-iscsi chrony
&& sudo apt remove linux-image-amd64 'linux-image-6.12*' -y
&& sudo update-grub
&& sudo apt remove os-prober -y Log In to Proxmox
Proxmox Login Info:
Username: root
Password: HLoVe2012NowLive#
Now Ready for Installing Containers and VMs
Allow Unconfined AppArmor Access
sudo nano /etc/pve/lxc/100.conf # hcp Hestia Control Panel, Webserver Container settings.
sudo nano /etc/pve/lxc/101.conf # dp Docker, Portainer Container settings.
sudo nano /etc/pve/lxc/102.conf # npm NginX Proxy Manager Container settings.
sudo nano /etc/pve/lxc/103.conf # pihole Pi-Hole Container settings. Add:
lxc.apparmor.profile: unconfined
lxc.cgroup.devices.allow: a
lxc.cap.drop:
var_keyctl=0 Extra Stuff + Troubleshooting
How to Change NODE Host Name
mkdir /etc/pve/nodes/cvpspmox
mv /etc/pve/nodes/hcp/* /etc/pve/nodes/cvpspmox/ If error: can’t move because directory is not empty,- use:
cp -r /etc/pve/nodes/hcp/ /etc/pve/nodes/cvpspmox/
rm -rf /etc/pve/nodes/hcp If using postfix for mail, update sudo nano /etc/postfix/main.cf
If you have specific storage configurations, check sudo nano /etc/pve/storage.cfg for references to the old name and update them.
systemctl restart pveproxy
reboot Update SSL Certificate:
pvecm updatecerts -f Done.
On the Ubuntu LXC/Container
If the below error happens, solution for it:
Error:
run-parts: /etc/update-motd.d/98-fsck-at-reboot exited with return code 2 Solution:
sudo chmod 600 /etc/update-motd.d/98-fsck-at-reboot Change DNS Settings via Terminal:
nmcli connection show --active
sudo nmcli connection modify "eth0" ipv4.dns "192.168.1.6" # pihole Proxmox eth0 static local IP.
sudo nmcli connection modify "eth0" ipv4.dns "192.168.1.6 1.1.1.1"