Proxy reverso do Squid, DMZ, como encaminhar qualquer pedido não-http

0

Na verdade, estou enfrentando um problema com algum problema relacionado ao protocolo de rede.

Eu tenho meu próprio domínio, um proprietário da DMZ e usuários externos. Na minha DMZ, eu tenho um proxy reverso que lida muito bem com a conexão HTTP. Meu usuário externo pode acessar meu servidor interno perfeitamente.

No entanto, eu gostaria de saber se é possível para o meu Squid fazer o mesmo com um pedido MSSQL / PGSQL (ou, além disso, qualquer tipo de conexão).

Como meu cliente externo, atingindo meu proxy reverso, que será apenas cache_peer para meu servidor real?

Atenciosamente.

    
por Kaël 18.11.2015 / 21:25

1 resposta

1

Devido ao ambiente, minha única escolha foi fazer um encaminhamento bruto usando o iptables.

Como não tínhamos DPI, tudo estava à frente, dependendo de três filtros:

  • Fonte
  • Destino
  • Porta

Além disso, como tinha que ser transparente, tínhamos que usar o arquivo host para definir o domínio de destino como nosso servidor proxy. Para o destino, nenhuma mudança é necessária.

# My SQL try to contact the dest. SQL (who is in fact, my proxy) so I changed the destination to the real one
iptables -t nat -A PREROUTING -i eth0 -s [YOUR_INTERNAL_SERVER] -p tcp --dport 15432 -j DNAT --to-destination [YOUR_DESTINATION_SERVER]

# Little restriction
iptables -t filter -A FORWARD -p tcp --dport 15432 -m state --state NEW -j ACCEPT
iptables -t filter -A FORWARD -p tcp --dport 15432 -m state --state ESTABLISHED -j ACCEPT
iptables -t filter -A FORWARD -p tcp --sport 15432 -m state --state ESTABLISHED -j ACCEPT

# If they contact my SQL, I set the source as my relay so my server could reply back.
iptables -t nat -A POSTROUTING -o eth0 -d [YOUR_INTERNAL_SERVER] -p tcp --dport 15432 -j SNAT --to-source [YOUR_PROXY]
    
por 05.09.2016 / 07:56