Fórum Ubuntu Linux - PT

Suporte Técnico => Servidores => Tópico iniciado por: _ubuntu_ em 27 de Julho de 2011, 17:49

Título: squid
Enviado por: _ubuntu_ em 27 de Julho de 2011, 17:49
seguinte galera, tenho um squid configurado certinho ja para bloquear alguns sites, tudo funcionando certinho.


masssssssssssssss......

1º se for simples e alguem ai tiver afim de me explicar como tornar ele um squid transparente... "pois agora eu tenho que colocar o ip do servidor nas maquinas que eu quero controlar atravez do squid." se as maquinas nao tiver o ip la no proxy, meu squid nao serve de nada e os usuarios tem acesso total a internet.

2º se for mais simples, como faço para que fiquei no modo NÃO transparente e para que os usuarios sejam obrigados a colocar o proxy nos computadores para que funcione a internet, caso contrario nao funcione...


ja tentei muito e de varias formas mexer com iptables...para fazer o esquema de transparente..porem nao obtive sucesso...

se tiver faltando alguma coisa que voces nao entenderam, por favor me avise....obrigado.]




fico no aguardo.
Título: Re: squid
Enviado por: zekkerj em 28 de Julho de 2011, 16:57
Pra transformar em proxy transparente, você tem que ir ao gateway de sua rede e configurar para direcionar todo tráfego vindo da rede interna e destinado à internet, na porta 80, para o seu servidor proxy. Supondo que o gateway de sua rede seja também o servidor proxy, você vai usar comandos parecidos com estes:

REDE_INTERNA=192.168.1.0/24
iptables -t nat -A PREROUTING -p tcp -s $REDE_INTERNA --dport 80 -j REDIRECT --to-port 3128
iptables -A INPUT -p tcp --dport 3128 -s $REDE_INTERNA -j ACCEPT

Obviamente, você vai trocar o endereço da rede interna pra faixa que você usa.

Se o gateway de sua rede não for o servidor proxy, mas for uma máquina Linux, você vai usar os comandos abaixo:

REDE_INTERNA=192.168.1.0/24
SERVIDOR_PROXY=192.168.1.2
iptables -t nat -A PREROUTING -p tcp -s $SERVIDOR_PROXY --dport 80 -j RETURN
iptables -t nat -A PREROUTING -p tcp -s $REDE_INTERNA --dport 80 -j DNAT --to $SERVIDOR_PROXY:3128

Se o gateway não for uma máquina Linux, você tem que ver com o suporte técnico do sistema como fazer esse redirecionamento. Dependendo do equipamento, pode ser que simplesmente não seja possível fazer.
Título: Re: squid
Enviado por: zekkerj em 28 de Julho de 2011, 17:21
Pra obrigar os clientes a usar o seu proxy, a forma mais simples é (supondo novamente que o servidor proxy seja também o gateway) desabilitar o compartilhamento da internet:

sudo sysctl net.ipv4.ip_forward=0

Mas isso pode causar efeitos colaterais importantes (programas como Outlook, Thunderbird, ping, traceroute/tracert e outros que não podem usar o seu servidor proxy simplesmente vão parar de funcionar). A alternativa é bloquear a passagem de qualquer porta relacionada com o tráfego web:

iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m multiport -p tcp -s $REDE_INTERNA --dport 80,81,82,443,444,8080,8000,8008,8443 -j REJECT
iptables -A FORWARD -s $REDE_INTERNA -j ACCEPT
iptables -A FORWARD -j DROP

Claro que isso deixa uma brecha pra que seus usuaŕios naveguem usando um servidor proxy externo numa das portas não bloqueadas.

Uma alternativa mais efetiva é bloquear todas as portas, e liberar só as necessárias:

iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCCEPT
iptables -A FORWARD -m multiport -p tcp -s $REDE_INTERNA --dport 25,53,110,143,123 -j ACCEPT
iptables -A FORWARD -m multiport -p udp -s $REDE_INTERNA --dport 53,123 -j ACCEPT
iptables -A FORWARD -p icmp -s $REDE_INTERNA -j ACCEPT
iptables -A FORWARD -j DROP

Caso você use alguma aplicação que não possa passar pelo proxy (e.g. Conectividade Social da Caixa Econômica), vc precisa definir regras adicionais de exceção.
Ainda é possível fugir do seu proxy usando um proxy externo em uma das portas liberadas; a única forma efetiva de impedir isso seria usar um firewall de camada 7, o que não é nada simples de implementar.
Título: Re: squid
Enviado por: _ubuntu_ em 28 de Julho de 2011, 17:55
Pra obrigar os clientes a usar o seu proxy, a forma mais simples é (supondo novamente que o servidor proxy seja também o gateway) desabilitar o compartilhamento da internet:

sudo sysctl net.ipv4.ip_forward=0

Mas isso pode causar efeitos colaterais importantes (programas como Outlook, Thunderbird, ping, traceroute/tracert e outros que não podem usar o seu servidor proxy simplesmente vão parar de funcionar). A alternativa é bloquear a passagem de qualquer porta relacionada com o tráfego web:

iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m multiport -p tcp -s $REDE_INTERNA --dport 80,81,82,443,444,8080,8000,8008,8443 -j REJECT
iptables -A FORWARD -s $REDE_INTERNA -j ACCEPT
iptables -A FORWARD -j DROP

Claro que isso deixa uma brecha pra que seus usuaŕios naveguem usando um servidor proxy externo numa das portas não bloqueadas.

Uma alternativa mais efetiva é bloquear todas as portas, e liberar só as necessárias:

iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCCEPT
iptables -A FORWARD -m multiport -p tcp -s $REDE_INTERNA --dport 25,53,110,143,123 -j ACCEPT
iptables -A FORWARD -m multiport -p udp -s $REDE_INTERNA --dport 53,123 -j ACCEPT
iptables -A FORWARD -p icmp -s $REDE_INTERNA -j ACCEPT
iptables -A FORWARD -j DROP

Caso você use alguma aplicação que não possa passar pelo proxy (e.g. Conectividade Social da Caixa Econômica), vc precisa definir regras adicionais de exceção.
Ainda é possível fugir do seu proxy usando um proxy externo em uma das portas liberadas; a única forma efetiva de impedir isso seria usar um firewall de camada 7, o que não é nada simples de implementar.


caraca, a partir de hoje vc é o mestre cuca pra mim...kkkkk

muito obrigado mesmo, vou tentar dessa forma que vc me passou, eu queria saber... "se nao for pedir de mais"...

o que preciso para que funcione o proxy transparente, obs"ja segui varios tutoriais." porem nenhum funcionou.. :(

acho que o problema esta no iptables... atualmente uso ubuntu 10.04...e a ultima versao do squid estável.

obrigado por tudo.
Título: Re: squid
Enviado por: zekkerj em 28 de Julho de 2011, 19:36
Vide minha primeira resposta...
Título: Re: squid
Enviado por: _ubuntu_ em 28 de Julho de 2011, 19:54
Vide minha primeira resposta...

putz...foi mal cara...ja era + de 18:00 e eu tava com pressa saindo do trampo..dai nao li...apenas olhei por cima...

mas de toda forma...muuuuuuuuuuuuuuuuito obrigado...fsd agora vou fazer os testes ja e posto aqui o resultado..vlw =]
Título: Re: squid
Enviado por: _ubuntu_ em 01 de Agosto de 2011, 00:54
resolvido, muito obrigado.

se alguem tiver afim de saber como eu fiz, entre em contato que terei o maior prazer em contar detalhadamente =]