Configurar uma VPN SSL / TLS ou VPN IPsec é uma boa solução. Basta definir seu aplicativo para usar um IP privado e ele não será publicamente roteado. Além disso, seus usuários podem apenas se conectar à VPN através de um atalho e fornecer um nome de usuário e senha. Usando algumas entradas de hosts no servidor VPN, você pode direcionar o tráfego de um domínio para o IP local que atende ao aplicativo. Implemente Infra-estrutura de Chave Pública e seus usuários só poderão autenticar se tiverem uma chave.