I am currently running Windows Server 2012 R2 in a virtual machine on an iMac. The server is serving a site using IIS as of now and I would also like to host an email server with it.
Now, the problem I am having is that many ports are blocked on my home internet, like port 80, ftp, smtp and more. This is unacceptable for running the server as I need full remote access to the system.
I have a few small cloud servers from RamNode and DigitalOcean which run Ubuntu (but can be reinstalled). My question is, would it be possible for me to host a proxy which would directly pass the connection to the cloud server to the Windows Server VM?
A brief overview of what it would look like in operation is:
Person 0.0.0.0 connects to www.example.com which is handed to 184.108.40.206 (DigialOcean IP) -> packets are sent via an unblocked port to 220.127.116.11 (Windows Server VM) similar to how OpenVPN works -> 18.104.22.168 sends the information requested back to 22.214.171.124 and then it is served to user 0.0.0.0
So basically connecting to port 25 on 126.96.36.199 will give access to port 25 on 188.8.131.52 except it's transmitted over an unblocked port.
Is this possible? Latency is not an issue (I play games over a DigitalOcean VPN and my ping is <60) but speed may be an issue (I only have 3-5Mbps upload) so a caching server like squid running on the VPN would be useful if possible.
Thanks in advance.