Eu concordo w / pjz-- parece que você está procurando por uma VPN.
O OpenVPN é um ótimo método, sem custo, de começar com VPNs. Ele está estável e pronto para uso em produção, mas mesmo que você não o use, é uma boa ferramenta para se familiarizar com as VPNs. É muito fácil de configurar com chaves estáticas (para brincar) e apenas marginalmente mais difícil de configurar com certificados (para uso em produção).
- link - Mini-HOWTO de chave estática. Não recomendado para segurança, mas uma ótima maneira de entender como o OpenVPN funciona antes de mergulhar em uma PKI simples.
- link
Você diz "tráfego da Internet" em sua pergunta, mas não está claro se isso significa apenas navegar em sites da Web ou, literalmente, todo o tráfego IP para a Internet. Você pode passar uma rota de "gateway padrão" para o cliente com OpenVPN, de forma que o tráfego da Internet redirecionará o "canal" do OpenVPN para o servidor, que poderia então colocá-lo na Internet.
Se você quiser que o HTTP / HTTPS seja roteado para baixo no OpenVPN (ou seja, se eles PING, executar o Skype, etc, que o tráfego pode ir direto para a Internet), você pode considerar a implantação de algo como o Squid Cache também configurar navegadores clientes para usar esse servidor proxy de forma que o tráfego para o proxy fosse roteado para o "canal" do OpenVPN apenas (isto é, colocar o proxy em um endereço IP acessível por VPN, mas deixar o gateway padrão do cliente sozinho). (Você poderia até mesmo fazer um 'push' dhcp-opção 252 ... 'para empurrar para fora uma URL de autoconfiguração proxy para clientes via OpenVPN, eu acredito.)
Você tem algumas opções, dependendo do que deseja fazer.
re: seu comentário para pjz sobre o acesso ao site da Intranet
Você vai ter que "pagar o preço" disso de alguma forma.
Se você estiver apenas encaminhando todo o tráfego da Internet para a VPN por meio de um gateway padrão, qualquer tráfego para servidores da Web dentro da sub-rede ainda será "direto". No entanto, se o servidor da Web da Intranet estivesse em uma sub-rede diferente, o tráfego para essa sub-rede passaria pelo canal do OpenVPN em vez de pelo roteador no local. Isso seria ruim.
Se você fez minha sugestão acima de empurrar para baixo um script de configuração automática de proxy para clientes via OpenVPN (ou algum outro meio) você poderia colocar "exceções" naquele arquivo para fazer com que os clientes "fossem diretos". Eu normalmente faço isso em arquivos de autoconfiguração de proxy com:
if ( isPlainHostName(host) ) { return "DIRECT"; }
Isso faz com que os nomes de host sem pontos sejam acessados diretamente.
Se você conhece um determinado host (ou padrão de correspondência de curinga) que precisa ser acessado diretamente:
if ( shExpMatch(url,"http://*.customer.com")) { return "DIRECT"; }
if ( shExpMatch(url,"http://known-intranet-server.customer.com")) { return "DIRECT"; }
Se você sabe onde seus usuários iriam trabalhar, você pode colocar exceções no arquivo proxy-autoconfiguração antes do fato. Se não, porém, você terá que reagir de maneira reativa a esses problemas. Se você não sabe de antemão, você está pedindo uma solução que possa "fazer a coisa certa" automaticamente. Infelizmente, os computadores fazem um trabalho horrível com isso. > sorriso <
Aproveito o tempo extra com o que você implanta para usar arquivos de configuração automática de proxy. Ele fornece um método centralizado (que pode ser atualizado "on the fly" sem tocar em computadores clientes) para controlar o desvio do tráfego HTTP para um servidor proxy ou deixá-lo ir diretamente para a Internet. Eles são incrivelmente úteis para este tipo de aplicação.