Oi pessoal
Tudo blz?
tenho um problema que eh o seguinte:
preciso redirecionar todo o meu trafego da porta 80 para 443 (para conexoes com a internet) de forma que quando o usuario digitar http://meusite, ele seja redirecionado para https://meusite.
Estou usando o squid no modo accelerator.
tentei com o ipfw e nat mas nao esta dando certo.
eis minhas regras:
Trafego de entrada
$ipfw_cmd add divert natd tcp from not 10.0.0.0:255.255.240.0 to me 80 via en0 in
$ipfw_cmd add divert natd udp from not 10.0.0.0:255.255.240.0 to me 80 via en0 in
Trafego de saida
$ipfw_cmd add divert natd tcp from not 10.0.0.0:255.255.240.0 to me 80 via en0 out
$ipfw_cmd add divert natd udp from not 10.0.0.0:255.255.240.0 to me 80 via en0 out
regras de nat:
interface en0
dynamic yes
use_sockets yes
redirect_port tcp 192.168.0.73:443 80
redirect_port udp 192.168.0.73:443 80
192.168.0.73 eh o meu ip.
jah tentei inverter os argumentos colocar 443 no lugar de 80 e vice versa, mas nao funciona. Quando aplico estas regras soh o https funciona.
A rede 10.0.0.0 eh onde estao os servidores reais de http e eh a minha rede interna. Eles nao falam https.
O esquema atual esta assim:
_______(http)_________(http)
cliente----------> squid -----------> servidor 1 (2, 3 ...n)
E eu preciso deixa-lo assim:
_______(https)_________(http)
cliente-----------> squid -----------> servidor 1 (2, 3 ...n)
O que estah acontecendo eh que na estrutura anterior (sem as regras dp ipfw e nat), quando um dos servidores respondem pro squid em http (o que eh desejavel) ele repassa para o cliente em http de novo e nao em https que eh o que deve ser.
Lembrando que o cliente esta na internet, o squid tem conexao direta com a internet (na verdade ele esta atras de um firewall, mas nao ha restricoes quanto aos servicos http e https) e tudo isso deve ser transparente pro usuario (cliente).
ufa! acho que eh isso!
Estou usando um Darwin (Mac OS X) (baseado em BSD 4.4).
Se alguem puder me ajudar agradeco.
Valeu!!