squid.conf [RESOLVIDO]

1. squid.conf [RESOLVIDO]

Fabrício Lisbôa Franco
fabregas

(usa Outra)

Enviado em 06/07/2012 - 09:13h

Pessoal, estou tentando configurar um servidor proxy squid no meu Ubuntu. Preciso que ele bloqueie apenas alguns sites, e o resto é liberado.
Não estou conseguindo bloquear nada. Acho que é a posição das instruções que está errada. Por favor me ajudem se possível. Aqui vai o meu squid.conf:

#minha rede local
acl localhost src 10.0.2.0/24

#lista com os sites bloqueados
acl bloqueados url_regex -i "/etc/squid/block.txt"

#lista com os sites liberados(no caso deixei vazia pois todos poderão abrir #menos os bloqueados)
acl liberados url_regex -i "/etc/squid/unblock.txt"


http_access deny bloqueados !liberados

http_access allow localhost

http_access deny all


  


2. Re: squid.conf [RESOLVIDO]

johnny borges
johnnyb

(usa Fedora)

Enviado em 08/07/2012 - 15:26h

qual e a versão que voce utiliza
vc usa proxy transparente e lembre-se de redirecionar a porta 80 para a porta do squid
caso nao use ele deve ser setado no navegador
se for a ultima tente use esse squid.conf

#se o proxy não for transparente retire da linha abaixo a palavra "transparent"
http_port 3128 transparent

cache_mem 100 MB

hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY

cache_swap_low 90
cache_swap_high 95

#tamanho máximo para gravação no cache Squid
maximum_object_size 100 MB

#tamanho mínimo para gravação no cache Squid
minimum_object_size 1 MB

# Tamanho máximo dos objetos mantidos em memória.
maximum_object_size_in_memory 900 kb

cache_dir ufs /var/spool/squid 2048 16 256
coredump_dir /var/spool/squid

pid_filename /var/run/squid.pid
error_directory /usr/share/squid/errors/pt-br
visible_hostname servidor.Codiub
cache_mgr Biblioteca@Codiub.com.br

# Add any of your own refresh_pattern entries above these.
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320

dns_nameservers 8.8.8.8
dns_nameservers 8.8.4.4

acl localnet src 10.0.2.0/24

acl SSL_ports port 443
acl Safe_ports port 80 8080 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT

http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

### livres
acl site url_regex -i "/etc/squid/livres.txt"
### bloqueio por palavra
acl palavra url_regex -i "/etc/squid/palavra.txt"
### bloqueio de site
acl site dstdomain -i "/etc/squid/site.txt"

http_access deny palavra site !livre
http_access allow localnet
http_access allow localhost
http_access deny all


### lembre-se de criar os diretorios


3. RE: squid.conf

Fabrício Lisbôa Franco
fabregas

(usa Outra)

Enviado em 09/07/2012 - 15:45h

Pois então, dei conta de resolver meu squid.conf. Só que eu queria colocar ele como Transparente. No caso eu teria que adicionar a palavra 'transparent' na frente de http_port 3128 apenas???


4. fabregas

johnny borges
johnnyb

(usa Fedora)

Enviado em 11/07/2012 - 10:19h

#se o proxy não for transparente retire da linha abaixo a palavra "transparent"
http_port 3128 transparent

fabregas 1° voce tem que redirecionar a porta 80 para a 3128 no firewall.
Acrescente a seguinte regra no seu firewall iptables

### Aceite entrada de pacotes na porta 3128 se suas politicas forem drop ###
iptables -A INPUT -p tcp -i <coloque a interface interna> --dport 3128 -j ACCEPT

### a regra abaixo faz Redirecionamento de portas
iptables -t nat -A PREROUTING -i IFACE_LOCAL -p tcp --dport 80 -j REDIRECT --to-port 3128
### Ou
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3128


depois você adiciona a palavra transparent deixando dessa forma

http_port 3128 transparent


e so lembrando que com o squid transparente ele nao escuta a porta 443 e se vc redirecionar ela
para o squid vc tera erros de certificados

poste seu firewall caso alguma coisa de errado blz


5. squid.conf

Fabrício Lisbôa Franco
fabregas

(usa Outra)

Enviado em 11/07/2012 - 11:13h

Certo, já deixei minhas políticas como DROP. Isso tudo que você falou tem que ser feito só por linha de comando ? Ou tem que editar algum arquivo? Isso resolve o meu problema ?


6. Re: squid.conf [RESOLVIDO]

johnny borges
johnnyb

(usa Fedora)

Enviado em 11/07/2012 - 13:53h

faz assim poste seu firewall aqui pra mim te ajudar a reformular
o caso da politica drop e so caso você queira bloquear
o ultrasurf, e uso de proxy que nao seja o seu blz

e no caso das regras e sim cada uma em uma linha pois cada regra faz uma coisa diferente

posta seu firewall que nois deixa ele redondinho :D blz


7. RE: squid.conf

Fabrício Lisbôa Franco
fabregas

(usa Outra)

Enviado em 11/07/2012 - 16:33h

Meu caro, fiz as seguintes modificações:

Criei um script(redirecionar.sh), que faz o redirecionamento automático durante o boot do pc. Conteudo do script:

#!/bin/bash

modprobe iptable_nat
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128


Em seguida alterei as permissões com o: chmod -v 755 /etc/init.d/redirecionar.sh .

Depois dei o seguinte comando, para que ele inicie durante o boot:

# update-rc.d seuscript defaults

O que mais eu tenho que fazer ??? Cara me explica certinho o que eu tenho que fazer por que onde eu pesquisei falou que eu tinha que fazer isso apenas. ate +


8. Re: squid.conf [RESOLVIDO]

johnny borges
johnnyb

(usa Fedora)

Enviado em 11/07/2012 - 17:48h

pelo que intendi seu firewall ja sobi automatico blz intao aquela regra apenas compartilha a conexão
mais para vc navegar vc tem que especificar quem pode entrar na sua rede intao segue abaixo o fire que eu uso. apenas troque pelo seu e substitua o range de ip e o nome das placas blz mais embaixo tem uma legenda detalhada. e quando coloca no seu retire a legenda ela e apenas informativo blz
substitua o seu atual por esse

#!/bin/sh

echo "Iniciando Firewall....................................[ OK ]"
### Limpando as regras ###
iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
iptables -F POSTROUTING -t nat
iptables -F PREROUTING -t nat
iptables -F -t nat
echo "Limpando as regras ...................................[ OK ]"

### Mascarando Conecão ###
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth1 -s 192.168.3.0/24 -j MASQUERADE
echo "Habilitando Navegação.................................[ OK ]"

### Carregando Politicas Padrao ###
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
echo "Inplatando Politica Padrao Drop.......................[ OK ]"

### Regras Input ###
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -s 192.168.3.0/24 -j ACCEPT
iptables -A INPUT -p tcp -i em1 --dport 3128 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -A INPUT -p tcp -m tcp --syn --dport 143 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --syn --dport 443 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --syn --dport 465 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --syn --dport 783 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -i eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT
echo "Regras De Entrada de Pacote...........................[ OK ]"

### Aceita Ping ###
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
echo "Aceitando Ping........................................[ OK ]"

### Iniciando Regras Forward ####
### Especial Conectividade ###
iptables -t filter -A FORWARD -i em1 -d 200.201.174.0/24 -j ACCEPT
iptables -t nat -A PREROUTING -i em1 -d 200.201.174.0/24 -j ACCEPT
echo "Especial Conectividade................................[ OK ]"

### Portas Liberadas Dns ###
iptables -A FORWARD -p udp -m udp -s 192.168.3.0/24 --dport 53 -d 0/0 -j ACCEPT
iptables -A FORWARD -p tcp -m tcp -s 192,168.3.0/24 --dport 53 -d 0/0 -j ACCEPT
echo "Consulta Dns Liberada Para Rede Local.................[ OK ]"

### Portas de Email ###
iptables -A FORWARD -m multiport -p tcp --dports 25,67,68,110,443,993,995,465,587,631,2083,2631,3007,3456,5582,8080 -j ACCEPT
iptables -A FORWARD -m multiport -p udp --dports 67,68,443,631 -j ACCEPT
echo "Portas de Serviços Liberadas..........................[ OK ]"

### Libera o Retorno dos Serviços iniciados ###
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
echo "Firewall configurado Boa Navegacao....................[ OK ]"

Legenda
eth1-----rede externa
em1------rede interna
192.168.3.0/24-------- coloque o range da sua rede



9. Re: squid.conf [RESOLVIDO]

johnny borges
johnnyb

(usa Fedora)

Enviado em 11/07/2012 - 17:51h

na hora que vc for testar depois do boot rode o firewall manual caso aja algum problema ai nao se esqueça do transparent no squid ;) qualquer coisa post aqui blz


10. RE: squid.conf

Fabrício Lisbôa Franco
fabregas

(usa Outra)

Enviado em 12/07/2012 - 09:26h

Vlw cara vou testar aqui qualquer coisa eu te falo.


11. Re: squid.conf [RESOLVIDO]

johnny borges
johnnyb

(usa Fedora)

Enviado em 12/07/2012 - 09:46h

qualquer erro, ou duvida que voce tiver fala ai blz


12. RE: squid.conf

Fabrício Lisbôa Franco
fabregas

(usa Outra)

Enviado em 13/07/2012 - 19:16h

Kra, você fez a legenda certinho pra mim. No caso da interface interna (em1) eu coloco o que no lugar dela??? Dá uma olhada ai coloquei baseado nas minhas faixas de ip, modifiquei ele. Coloquei o meu DNS, que é o da CTBC (200.225.197.34).

Ta ai :

#!/bin/bash

echo "Iniciando Firewall....................................[ OK ]"
### Limpando as regras ###
iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
iptables -F POSTROUTING -t nat
iptables -F PREROUTING -t nat
iptables -F -t nat
echo "Limpando as regras ...................................[ OK ]"

### Mascarando Conexão ###
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -s 10.0.2.15/24 -j MASQUERADE
echo "Habilitando Navegação.................................[ OK ]"

### Carregando Politicas Padrao ###
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
echo "Inplatando Politica Padrao Drop.......................[ OK ]"

### Regras Input ###
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -s 10.0.2.15/24 -j ACCEPT
iptables -A INPUT -p tcp -i em1 --dport 3128 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -A INPUT -p tcp -m tcp --syn --dport 143 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --syn --dport 443 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --syn --dport 465 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --syn --dport 783 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
echo "Regras De Entrada de Pacote...........................[ OK ]"

### Aceita Ping ###
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
echo "Aceitando Ping........................................[ OK ]"

### Não responde ping ###
iptables -A INPUT -p icmp --icmp-type echo-replay -j REJECT
echo "Dando Ping........................................[ OK ]"


### Iniciando Regras Forward ####
### Especial Conectividade ###
iptables -t filter -A FORWARD -i em1 -d 200.225.197.34/24 -j ACCEPT
iptables -t nat -A PREROUTING -i em1 -d 200.225.197.34/24 -j ACCEPT
echo "Especial Conectividade................................[ OK ]"

### Portas Liberadas Dns ###
iptables -A FORWARD -p udp -m udp -s 10.0.2.15/24 --dport 53 -d 0/0 -j ACCEPT
iptables -A FORWARD -p tcp -m tcp -s 10.0.2.15/24 --dport 53 -d 0/0 -j ACCEPT
echo "Consulta Dns Liberada Para Rede Local.................[ OK ]"

### Portas de Email ###
iptables -A FORWARD -m multiport -p tcp --dports 25,67,68,110,443,993,995,465,587,631,2083,2631,3007,3456,5582,8080 -j ACCEPT
iptables -A FORWARD -m multiport -p udp --dports 67,68,443,631 -j ACCEPT
echo "Portas de Serviços Liberadas..........................[ OK ]"

### Libera o Retorno dos Serviços iniciados ###
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
echo "Firewall configurado Boa Navegacao....................[ OK ]"


Se estiver algo errado me avise aqui !







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts