Como encaminhar a solicitação http para um servidor proxy?

1

Eu tenho um servidor Linux da Internet e meu computador cliente (executando janelas) acessa a Internet através de um túnel SSH para o servidor.

Agora, por algum motivo, este servidor só pode acessar a Internet por um proxy http com a porta 8118 (em execução em outro servidor). Como resultado, meu computador cliente perdeu sua conexão com a Internet.

Eu tentei redirecionar a porta 80 para 8118 adicionando uma regra OUTPUT na tabela nat (iptables), mas isso não funciona.

Como tornar meu computador cliente on-line?

    
por Devymex 10.12.2014 / 07:32

1 resposta

1

Você deve poder usar o iptables para isso, mas provavelmente só quer encaminhar todo o tráfego 80 para o proxy com uma regra de encaminhamento. Tente isto:

Primeiro, verifique se o encaminhamento é permitido:

cat /proc/sys/net/ipv4/ip_forward

Ele deve retornar 1 , se não, como root:

echo 1 > /proc/sys/net/ipv4/ip_forward

Agora você precisa configurar regras para a tabela NAT, você precisa encaminhar a porta e o mascarado certos.

iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination [server_ip]:8118
iptables -t nat -A POSTROUTING -p tcp -d [server_ip] --dport 8118 -j MASQUERADE

Você também precisa adicionar uma regra para encaminhamento:

 iptables -A FORWARD -p tcp -d [server_ip] --dport 80 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
    
por 12.12.2014 / 15:27