Suggestions for client/server setup

I have a custom DOS/linux backend-like operating system that will act as the server for clients. The clients need to be able to communicate with the server and visa versa.

The server is currently hosted on the internet.
The clients will need to be able to PXE boot from the server over the internet. The client will be retrieving and sending data to the server.

This sounds like a site-to-site vpn setup and I have been looking at pfsense and openvpn. What I have does so far is setup a pfsense box with the server being in a private lan on the internet and then from my windows computer at home connect in via the openvpn client. The VPN client can see that lan network, but that lan network cannot communicate with the tunnel vpn client.

However, I am not sure the easiest way to go about setting this up. I want to be able to have anyone that I let in be able to easily connect in somehow.

Please advise, thanks

Not clear on your goal for PXE boot, but another option that would to use which would allow for easy 2 way communications.

My initial thought would be to have an underlying OS (windows/mac) and then use something like VirtualBox to run the OS required for the work. Then you could get the vpn working from the main OS and boot the VM from PXE over vpn. After that, I’m not smart enough to make it work or not understanding the goal.

As long as I can get the server and clients communicating bidirectionally over the internet, I think I can go from there. Sounds like they would all need to be in a private network for pxe to work.

@LTS_Tom Zerotier might work. I won’t be able to install the zerotier client software easily on the server machine as it’s a custom dos like OS.

Could I run a windows machine with the server in a vmware instance?

I need the server to be part of the network somehow . I’m not able to install any software on the server.

You need an ip helper to get you across the subnets, a little info for you here