Não tenho certeza se entendi, mas vou tentar.
Pelo que entendi, você tem A executando NGINX ouvindo: 80 (talvez: 443) e A ou B (não sei se o IIS está sendo executado na mesma máquina, embora eu acredite não, já que os usuários parecem estar capaz de alcançá-lo diretamente) executando IIS ouvindo: 20000.
Se A estiver executando ambos, você está sem sorte, não é possível conectar o NGINX e o IIS à mesma porta para que você não possa fazer isso através do NGINX. No entanto, você pode usar o seu firewall para ter solicitações feitas para: 20000 que não vêm do host local para serem passadas para: 80. Isso também funciona no segundo caso, se você quiser seguir esse caminho.
Se A estiver executando o NGINX enquanto o B estiver executando o IIS, você sempre pode configurar para dizer ao NGINX para escutar: 20000 e passá-lo para o IIS.
Em qualquer caso, se o IIS não for acessado por outros meios além do NGINX, você deve ter uma regra de firewall que impeça o acesso a ela de fora.