Acabei resolvendo esse problema implementando um proxy reverso no servidor A que modificava os cabeçalhos de solicitação antes de encaminhar o pedido para o servidor B.
Minha situação é a seguinte: Eu tenho um servidor (A) configurado com uma conexão VPN para um servidor de terceiros (B). Eu tenho uma coleção de outros servidores (C, D, E ...) que compartilham a mesma rede privada que o meu servidor VPN-conectado (A).
O servidor de terceiros (B) fornece uma API RESTful acessível por HTTP. Por exemplo, do servidor A, posso solicitar um URL:
$ curl http://<server-B-vpn-ip-address>/path/to/whatever
E eu receberei uma resposta JSON com os dados apropriados.
Eu quero ser capaz de acessar a API do servidor B de qualquer servidor (C, D, E ...) fazendo uma chamada para o servidor A. Por exemplo:
$ curl http://<server-A-private-ip-address>/path/to/whatever
O servidor A deve então encaminhar essa solicitação para o servidor B, e deve retornar a resposta JSON para qualquer servidor solicitado inicialmente.
Eu olhei algumas maneiras possíveis para resolver isso com iptables sem sucesso, mas honestamente eu não sei qual é a ferramenta certa para o trabalho neste caso. Alguém tem alguma ideia?
Acabei resolvendo esse problema implementando um proxy reverso no servidor A que modificava os cabeçalhos de solicitação antes de encaminhar o pedido para o servidor B.
Tags networking vpn