Server behind Nginx Proxy Manager, custom TLD, Unraid

I’m trying to figure out how this is possible and it’s driving me crazy. I’ve done a ton of searching but haven’t had luck for my specific use. So here’s my setup…

  • I have an Unraid server that is running a VM with MineOS on it. The MineOS VM has access to the local network.

  • I have nginx proxy manager handling reverse proxy to some other VM’s. I use an A record that updates using cloudflare DDNS, and CNAME records that point to the A record. I have everything working just fine - I am able to access multiple services.

  • I am able to access the MineOS admin dashboard using mcadmin.mydomain.tld!

I would like to access my server by using vanilla.mydomain.tld - however…

My problem is I can’t figure out how to connect to the minecraft servers I create within MineOS. I’ve tried to do a proxy host and stream within Nginx Proxy manager… But I can’t quite figure out how to get my minecraft client to connect to the server using my TLD! Any tips?

Do I need to set the server IP to the TLD? I’ve tried setting the IP to my local ip (192.168…:25565) and letting Nginx Proxy manager try to point there. Is that wrong?

It’s super frustrating because I can access the admin panel via my browser without a problem.

EDIT: Below is a diagram of the network. I’m specifically having problems with connecting to the MC server.

I’m not sure what it is you’re trying to accomplish with this setup. It sounds like you have an unRaid running a VM that is behind a reverse proxy connecting to another VM network for the client(s) to connect. To me, it is a bit over complicated.

But something to check out is the iptables. If you are using uncommon ports for the world servers, then those also need to be opened in MineOS. Make sure that the proxy allows the content to pass, as well.

If all those systems are necessary, then you may need to look into setting up a VPN… (Not sure how to go about that, myself.)

I may not have explained this the best. Below is a diagram.

All connections hit the Reverse proxy on either port 80 or 443.

For some reason I just can’t get the MC portion to work.

I don’t know if it has to do with the way nginx proxy manager handles the request, the way cloudflare handles it, or a combination of the two.

From the looks of things, it might just be the proxy isn’t port for the server to go through. I’m thinking that there are more ports for you to configure than just 25565. These ports can be set in the server.properties.

Have you tried using SRV-records?

Minecraft supports acces via SRV records: https://www.noip.com/support/knowledgebase/how-to-add-a-srv-record-to-your-minecraft-server-remove-the-port-on-the-end-of-the-url/

But frmo your setup, I think your problem is that by accessing your proxy with 80 or 8443 you are only allowing web (http / https) based requests. Minecraft tries to connect on its specified port (25565) unless you specify otherwise. in your minecraft client, you could try to add :80 or :8443 to the server address to see if you could get a connection.

I have a setup with serveral minecraft servers running on one MineOS server, running on a virtualbox, on a windows server. I went the SRV-record way to let Minecraft access each server using its servername url (servername.domain.no) in stead of having to use “servername.no:#portnumber”. I think you will have more success accsessing minecraft using that method, rather than trying to tunnell throug a web-port.

1 Like