I did so with 2 NIC’s but here was the run down although 2NIC’s are not a requirement.
So I can say cloudmin works on Debian 12 finally its just lacking a crap ton of functionality like 80% of the menu options to control your server or see it VIA VNC or install virtualmin or webmin all of this stuff doesn’t work @ ALL … WHEW! What a job to recall all I did with networking thats another story.
Install Cloudmin I suggest using PRO skip GPL all together just use the link they provide you it inserts your serial number and downloads and installs it.
First I setup a pool of IP’s from 192.168.1.170-180 in cloudmin
Then I downloaded the images to for KVM that I might use in my case Debian 11 was available.
Next I installed bridge utils from the terminal as root. Then qemu-system then libvirt-daemon-system
apt install bridge-utils
apt install qemu-system
apt install libvirt-daemon-system
Next I disabled suspend mode for good measure
sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target
Also note I used X11 rather than Wayland as Wayland has issues with screen recording down on the lower right hand corner when you login for me I wanted the Desktop and GNOME X11 for other people it may vary. But just a good hint in case others want to use Desktop on their server as well. I had no choice the Terminal seems to be a mess using cloudmin at least on Debian 12.
There is no text input shown on screen and text output is all over the screen its kind of like bad visual basic output I used to get trying to output webpages on my ESP8266 if you didn’t add special formatting to it. But anyways I had to fire up desktop just to use a terminal that looked decent. And didn’t randomly freeze like the one in cloudmin. Your travels and results may vary.
So when you su on desktop make sure you su --login so it puts you in the right file path. I notices something odd if you don’t su --login the file path seems to stay as if you are the user.
so don’t just use su or su root use su --login on Debian 12 at least
Well now that we got cloudmin and the extras installed that we will need to run KVM … Heres what I did next.
I know I grabbed my MAC ID
ip address show dev enp4s0 | awk '$1=="link/ether" {print $2}'
enp4s0 should be replaced with your NIC connection name depending upon what that is as a note for new folks.
For [performance and security reasons], disable netfilter for bridges. Create /etc/sysctl.d/bridge.conf
with these contents:
net.bridge.bridge-nf-call-ip6tables=0
net.bridge.bridge-nf-call-iptables=0
net.bridge.bridge-nf-call-arptables=0
Next I Create /etc/udev/rules.d/99-bridge.rules
with the following contents. This udev rule applies the sysctl settings above when the bridge module is loaded. (If using Linux kernel 3.18 or later, change KERNEL=="bridge"
to KERNEL=="br_netfilter"
.) That has this info:
ACTION=="add", SUBSYSTEM=="module", KERNEL=="bridge", RUN+="/sbin/sysctl -p /etc/sysctl.d/bridge.conf"
Next I created my bridge in etc/network/interfaces to look like this.
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# If unsure what 'netmask' or 'gateway' should be, ask your hosting provider.
iface enp4s0 inet manual
auto 0 br0 conf eth0
iface br0 inet static
address 192.168.1.172
netmask 255.255.255.0
network 192.168.1.0
bridge_ports enp4s0
bridge_stp off
# Use the MAC address identified above.
# If you want to turn on Spanning Tree Protocol, ask your hosting
# provider first as it may conflict with their network.
# If STP is off, set to 0. If STP is on, set to 2 (or greater).
iface br0 inet6 static
pre-up /sbin/modprobe -q ipv6 ; /bin/true
address 2001:db8::1
netmask 64
iface eth0 inet static
address 192.168.1.170
netmask 255.255.255.0
network 192.168.1.0
Run the following:
ip address flush enp4s0 scope global && ifup br0
After doing so I setup my KVM server. And Spun up a KVM
After I got SSH access on it I set the network to connect to br0 under system settings and network interfaces for the VM not the KVM server.
Active now looks like:
Name Type IPv4 address Netmask IPv6 address Status
br0 Bridge 192.168.1.172 255.255.255.0 2001:db8::1 Up
enp3s0 Ethernet 192.168.1.228 255.255.255.0
Up
enp4s0 Ethernet No address configured None
Up
lo Loopback 127.0.0.1 255.0.0.0 ::1 Up
tap0 Unknown No address configured None fe80::88f4:b5ff:fe92:416c Up
Then Activated At Boot looks like:
Name Type IPv4 address Netmask IPv6 address Active
br0 Bridge 192.168.1.172 255.255.255.0 2001:db8::1 Yes
enp4s0 Ethernet No address configured None
No
eth0 Ethernet 192.168.1.170 255.255.255.0
Yes
Set act as router yes Under Routing and gateways with enp4s0 selected
My Active configuration looks like:
Destination Gateway Netmask Interface
default 192.168.1.2
enp3s0
192.168.1.0
255.255.255.0 br0
192.168.1.0
255.255.255.0 enp3s0
So once all that is verified as working and you have SSH
I had to go to my KVM in cloudmin from the dropdown that says SSH by it.
I had to use System Operations → Run Commands
I ran this command first to download virtualmin as it wasn’t preinstalled like it was supposed to be.
wget https://software.virtualmin.com/gpl/scripts/virtualmin-install.sh
next I installed it with the -f option
sh install virtualmin-install.sh -f
There will be some barking and yelling about errors just give it time let it do its thing right now is piss and a pop time. If you gave it a good while don’t pay attention to what it says just think how much time it takes to install there will be -t errors galore but just ignore them for now and just give it sometime.
Now that you gave it time you should be able to login to Virtualmin using the IP in my case I opened up a browser and fired up 192.168.1.170:10000 cause thats my eth0 address and golden I got my first VM up and running.
I can’t wait to see a more intuitive process when some of the other features start working hopefully soon here. Well the more people that purchase cloudmin the more funds they’ll have to keep people live working on stuff around the clock to get it up and running. I can get some of it running but a lot of things require Java so well…
But almost nothing from cloudmin is functional thank goodness I realized execute command still worked!
Anyways thats how I got it going with two NIC’s One Working as a bridge the other working as a host machine NIC.
Enjoy maybe this will help someone.
Although this is no solution long term it is a workaround to get things firing for folks!
MERRY CHRISTMAS FOLKS!