sniproxy
. Prepare one third VM running this tool and forward incoming connections on port 80/443 to this one. It will distribute as many incoming requests depending on the DNS-Name in the Service-Name-Indication field to as many destination VMs with independent web servers as necessary.I have 1 onlyDo you have several public IPs so you can assign one for each VM?
that's rightjust guessing: you ask how to run several web servers for http://www.aaa.com and www.bbb.com whith only one public IP?
Look forsniproxy
. Prepare one third VM running this tool and forward incoming connections on port 80/443 to this one. It will distribute as many incoming requests depending on the DNS-Name in the Service-Name-Indication field to as many destination VMs with independent web servers as necessary.
cool, can you tell me the settings? step by step... Thanks...If you only got one public IP but several domains that should point to different webservers you need to setup a reverse proxy, like UdoB already said. For this you need to create a single additional VM that runs a reverse proxy like sniproxy, HAproxy, nginxproxymanager, nginx, apache and so on. You tell your router to forward every incoming HTTP/HTTPS traffic to this VM running your reverse proxy. The reverse proxy will look at the domain name and forward that traffic again to the VMs you configured (for example VM1 if it is aaa.com or VM2 if it is bbb.com).
If you don't got a good firewall to isolate your proxmox server or VMs you could also run OPNsense inside a VM to handle all incoming traffic. OPNsense has some plugins like HAproxy that can work as a reverse proxy. This way you could also use filtering, VPN, intrusion prevention and so on.