Proxy reverso para uma porta não padrão com ddns (eu gosto do ddns gratuito do google em seu registrador) ou vpn ou mesmo túnel ipv6 tunnelbroker.net (você obtém um bloco ipv6 estático que você pode usar para o backend)
O Nginx faz bem com isso, mas você pode usar haproxy, Apache, F5, A10, outros ...
Se você tem mais de um IP público, você pode fazer tunelamento ssh ou iptables.