Squid [RESOLVIDO]

37. Re: Squid [RESOLVIDO]

givago
givago

(usa Ubuntu)

Enviado em 28/10/2013 - 17:09h

squid

#Squid.conf

visible_hostname 3128 Servidor
http_port 3128 transparent
error_directory /usr/share/squid/errors/Portuguese

# -------------------CACHE ------------------

# Lista de palavras que, se encontradas em uma URL, irão carregar
# diretamente do cache local
hierarchy_stoplist cgi-bin ?

# Lista de palavras que nunca devem ser salvas em cache
acl QUERY urlpath_regex cgi-bin \?
no_cache deny

# Quantidade de mémoria dedicada ao servidor cache
cache_mem 512 MB

# Tamanho minimo para reposição dos objetos armazenados e máximo
cache_swap_low 85
cache_swap_high 90

# Determina o tamanho o tamanho máximo da memória de cache no HD
maximum_object_size 2000 kb

# Determina o tamanho o tamanho minimo da memória de cache no HD
minimum_object_size 0 kb

# Arquivo onde será salvo o log de acesso
access_log /var/log/squid3/access.log

# Utilizado o diskd para melhor performace da procura do cache
# Tamanho máximo diretorio - máximo pastas - máximo pastas do segundo
cache_dir diskd /var/squid3/cache/1 400 10 100 Q1=30 Q2=30
cache_dir diskd /var/squid3/cache/2 400 10 100 Q1=30 Q2=30


#--------------------Bloqueia-----------------

acl redelocal src 10.1.1.0/24

htto_access allow localhost



acl bloqueio url_regex "/etc/squid3/black_list"
acl sites url_regex "/etc/squid3/sites.txt"

http_access deny all
http_access deny bloqueio
http_access deny sites


e o rc.local é:

#Compartilha a conexão

#Eth2 é a placa conectada diretamente ao modem

#Carrega os modulos
modprobe iptable_nat
modprobe iptables

#compartilha internet
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3$
iptables -t nat -A POSTROUTING -s 10.1.1.0/24 -j MASQUERADE


#Abre para a rede local:
iptables -a INPUT -p tcp --syn -s 10.1.1.10/255.255.255.0 -j ACCEPT

#Fecha o resto da rede
iptables -A INPUT -p tcp -sn -j DROP

exit 0


________________________

tive que mudar para configuração anterior porque quando fiz o que disse não funcionou mais internet no servidor.


  


38. Re: Squid [RESOLVIDO]

Buckminster
Buckminster

(usa Debian)

Enviado em 28/10/2013 - 22:04h

Deixe como abaixo teu squid.conf, pode copiar e colar. Mas antes execute squid -v ou squid --version para ver a versão. Se for versão 3.0 deixe transparent, se for versão 3.1 ou acima troque transparent por intercept.

http_port 3128 transparent << ou intercept.
visible_hostname Servidor
#
acl SSL_ports port 443 # https
acl Safe_ports port 80 # 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 z39.50
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 localhost manager
http_access deny manager
#
http_access deny !Safe_ports
#
http_access deny CONNECT !SSL_ports
#
http_access deny to_localhost
#
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
#
# Lista de palavras que nunca devem ser salvas em cache
acl QUERY urlpath_regex cgi-bin \?
no_cache deny

# Quantidade de mémoria dedicada ao servidor cache
cache_mem 512 MB

# Tamanho minimo para reposição dos objetos armazenados e máximo
cache_swap_low 85
cache_swap_high 90

# Determina o tamanho o tamanho máximo da memória de cache no HD
maximum_object_size 2000 kb

# Determina o tamanho o tamanho minimo da memória de cache no HD
minimum_object_size 0 kb

# Arquivo onde será salvo o log de acesso
access_log /var/log/squid3/access.log

# Utilizado o diskd para melhor performace da procura do cache
# Tamanho máximo diretorio - máximo pastas - máximo pastas do segundo
cache_dir diskd /var/squid3/cache/1 400 10 100 Q1=30 Q2=30
cache_dir diskd /var/squid3/cache/2 400 10 100 Q1=30 Q2=30
#
#--------------------Bloqueia-----------------

acl redelocal src 10.1.1.0/24
acl bloqueio url_regex "/etc/squid3/black_list"
acl sites url_regex "/etc/squid3/sites.txt"

http_access deny bloqueio
http_access deny sites
http_access allow redelocal
http_access allow localhost
http_access deny all



E para o Iptables faça o seguinte, como root.

Crie um arquivo vazio (script) em /etc/init.d:

# vim /etc/init.d/firewall.sh << eu usei o vim, você usa o teu editor de texto preferido e pode colocar outro nome para o script (aconselhável).

Coloque o conteúdo abaixo dentro do arquivo, pode copiar e colar.

#!/bin/bash
#
##Apagando e restaurando as chains e tabelas
############################################
iptables -Z # Zera as regras das chains
iptables -F # Remove as regras das chains
iptables -X # Apaga as chains
#
#Carregando os módulos.
#######################
modprobe ip_tables
modprobe iptable_nat
modprobe iptable_filter
modprobe iptable_mangle
#
##Definindo políticas padrões
#############################
iptables -P INPUT DROP # iptables a política padrão da chain INPUT é proibir tudo
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
#
##Liberando a Loopback
######################
iptables -A INPUT -i lo -j ACCEPT # adiciona regra na chain INPUT para liberar a loopback
#
##Regras de segurança na internet e de aceitação de pacotes
###########################################################
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state NEW ! -i eth2 -j DROP # << Interface de entrada da internet
iptables -A FORWARD -m state --state NEW ! -i eth2 -j DROP
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A FORWARD -m state --state INVALID -j DROP
#
# Compartilhamento, mascaramento e redirecionamento
###################################################
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A POSTROUTING -o eth2 -j MASQUERADE

Salve e saia do arquivo.

Dê permissão de execução:
# chmod +x /etc/init.d/firewall.sh

Apague todas regras do Iptables que você tem dentro do rc.local e coloque antes de 'exit 0' somente a seguinte linha, assim:

/etc/init.d/firewall.sh start << se você mudar o nome do arquivo, mude aqui também.

exit 0

Salve e saia do arquivo.
Reinicie o servidor.

Dessa maneira o Iptables inicia junto com o sistema e você pode iniciar, parar e reiniciar no terminal com o comando:
# /etc/init.d/firewall.sh start, stop ou restart

Teste assim e veja se funciona.

E posta aqui todo o conteúdo do arquivo /etc/network/interfaces.


39. Re: Squid [RESOLVIDO]

givago
givago

(usa Ubuntu)

Enviado em 29/10/2013 - 18:41h

tá ai o interfaces :


auto lo
iface lo inet loopback

auto eth1
iface eth1 inet static
address 10.1.1.254
netmask 255.255.255.0
broadcast 10.1.1.255
network 10.1.1.0

auto eth2
auto iface inet dhcp

e agora não compartilha mais nem internet
e arrumei para o intercept
e não funcionou mesmo assim

e modifiquei a placa assim:

iptables -t nat -a PREROUTIN -p tcp --dport80 -j REDIRECT --TO-port 3128

Distribui internet mas não bloqueia o squid


40. Re: Squid [RESOLVIDO]

Buckminster
Buckminster

(usa Debian)

Enviado em 29/10/2013 - 22:36h

givago escreveu:

tá ai o interfaces :


auto lo
iface lo inet loopback

auto eth1
iface eth1 inet static
address 10.1.1.254
netmask 255.255.255.0
broadcast 10.1.1.255
network 10.1.1.0

auto eth2
auto iface inet dhcp

e agora não compartilha mais nem internet
e arrumei para o intercept
e não funcionou mesmo assim

e modifiquei a placa assim:

iptables -t nat -a PREROUTIN -p tcp --dport80 -j REDIRECT --TO-port 3128

Distribui internet mas não bloqueia o squid


Ok.

Com queles configurações deveria funcionar.

Somente a título de informação, você o serviço de DHCP nesse sevidor também?

Mas acredito que o problema está na nomenclatura das placas de rede. Deveria ser eth0 e eth1.

Posta aqui o conteúdo do arquivo /etc/udev/rules.d/70-persistent-net.rules.
Esse arquivo é onde estão as configurações das placas de rede de acordo com o endereço MAC e seu respectivo driver.


41. Re: Squid [RESOLVIDO]

givago
givago

(usa Ubuntu)

Enviado em 29/10/2013 - 22:54h

# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.

# PCI device 0x8086:/sys/devices/pci0000:00/0000:00:03.0 (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:9a:92:c1", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# PCI device 0x8086:/sys/devices/pci0000:00/0000:00:08.0 (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:ec:0b:8e", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

# PCI device 0x1022:/sys/devices/pci0000:00/0000:00:03.0 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:f9:bc:42", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth2"

ai a configuração.
e pelo que entendi tá certo a nomenclatura , tanto que está com internet e a comunicação entre as máquinas, só não bloqueia. :/

tem DHCP , mas não fiz quase nada.


42. Re: Squid [RESOLVIDO]

Thiago Henrique F. Margonar
thiagomargonar

(usa CentOS)

Enviado em 29/10/2013 - 23:04h

cara só uma duvida...
a rota dessa maquina está correta?
tipo...
ping www.uol.com.br

pinga normalmente?


43. Re: Squid [RESOLVIDO]

Buckminster
Buckminster

(usa Debian)

Enviado em 29/10/2013 - 23:09h

Faça o seguinte agora:

com aquele squid.conf que te enviei pare o Squid e execute squid -z

e reinicie o squid.

Você criou o script do Iptables como eu sugeri?

Caso não resolva te aconselho a fazer um bachup do squid.conf, desinstalar o Squid e instalá-lo de novo.

Qual é a versão do teu Squid?


44. Re: Squid [RESOLVIDO]

Rodney
rotaviano

(usa CentOS)

Enviado em 30/10/2013 - 13:05h

Buckminster escreveu:

Só um adendo.
Pode comentar essa linha abaixo, ela deixa o Squid lento:

dns_nameservers 8.8.8.8 8.8.4.4


acho que nao...pelo contrario

tive que colocar esse comando para melhorar o desempenho do meu squid

o ip pode ate ser mas a principio tb esse ip é do google e utilizo.

depois q adotei dessa forma nao tive mais problemas.

rodney


45. Re: Squid [RESOLVIDO]

Buckminster
Buckminster

(usa Debian)

Enviado em 30/10/2013 - 17:05h

rotaviano escreveu:

Buckminster escreveu:

Só um adendo.
Pode comentar essa linha abaixo, ela deixa o Squid lento:

dns_nameservers 8.8.8.8 8.8.4.4


acho que nao...pelo contrario

tive que colocar esse comando para melhorar o desempenho do meu squid

o ip pode ate ser mas a principio tb esse ip é do google e utilizo.

depois q adotei dessa forma nao tive mais problemas.

rodney


Então você está com problema de DNS e não no Squid.
Fixando o DNS no Squid fará com que ele consulte os servidores DNSs a cada conexão.

Se você quer fixar o DNS faça-o no DHCP do modem ou do servidor DHCP (se você tiver um).

E verifique o DHCP e o teu arquivo /etc/resolv.conf. Os IPs de DNSs devem ser os mesmos.

Funciona assim: o servidor com Squid consulta os servidores DNSs que estão no DHCP (do modem ou do servidor DHCP da tua rede [se tiver um]) e configura eles através do resolv.conf.
Se você precisou fixar o DNS no Squid para funcionar é porque o Squid não estava conseguindo encontrar os DNSs na tua rede.


46. Re: Squid [RESOLVIDO]

givago
givago

(usa Ubuntu)

Enviado em 30/10/2013 - 17:53h

desculpa demora.

Fiz tudo novamente como dito e quando mexi no firewall como falou ele não distribui a internet e no squid -z deu isso

2013/10/30 17:49:59| aclParseAclList: ACL name 'localhost' not found.
FATAL: Bungled squid.conf line 17: http_access allow localhost manager
Squid Cache (Version 3.1.19): Terminated abnormally.
CPU Usage: 0.028 seconds = 0.008 user + 0.020 sys
Maximum Resident Size: 15104 KB
Page faults with physical i/o: 0



47. Re: Squid [RESOLVIDO]

Buckminster
Buckminster

(usa Debian)

Enviado em 30/10/2013 - 19:16h

givago escreveu:

desculpa demora.

Fiz tudo novamente como dito e quando mexi no firewall como falou ele não distribui a internet e no squid -z deu isso

2013/10/30 17:49:59| aclParseAclList: ACL name 'localhost' not found.
FATAL: Bungled squid.conf line 17: http_access allow localhost manager
Squid Cache (Version 3.1.19): Terminated abnormally.
CPU Usage: 0.028 seconds = 0.008 user + 0.020 sys
Maximum Resident Size: 15104 KB
Page faults with physical i/o: 0


Está dizendo que a ACL localhost não foi encontrada.

Teu Squid é versão 3.1, essa versão cria automaticamente a ACl localhost bastando somente permití-la com http_access allow localhost.

Se ele não está criando a acl automaticamente é porque está com algum problema.

Você poderia até criar a acl localhost manualmente (acl localhost src 127.0.0.1/32), mas isso seria um paliativo e poderia ter novos problemas futuramente.

Aconselho você a fazer um backup do squid.conf, remover o Squid e instalá-lo de novo.


E quanto ao firewall, você está errando em alguma coisa.
Depois de reinstalar o Squid refaça os passos com calma e crie o arquivo do Iptables como te mostrei no comentário 38.

Primeiro teste o Iptables com somente essas regras dentro do arquivo:

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

Com essas três regras acima ele tem que obrigatoriamente fazer o compartilhamento e redirecionar para o Squid.

Depois de conseguir isso, acrescente as outras regras.


48. Re: Squid [RESOLVIDO]

givago
givago

(usa Ubuntu)

Enviado em 30/10/2013 - 20:59h

#Squid.conf

visible_hostname 3128 Servidor
http_port 3128 intercept

# -------------------CACHE ------------------

# Lista de palavras que, se encontradas em uma URL, irão carregar
# diretamente do cache local
hierarchy_stoplist cgi-bin ?

# Lista de palavras que nunca devem ser salvas em cache
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY

# Quantidade de mémoria dedicada ao servidor cache
cache_mem 512 MB

# Tamanho minimo para reposição dos objetos armazenados e máximo
cache_swap_low 85
cache_swap_high 90

# Determina o tamanho o tamanho máximo da memória de cache no HD
maximum_object_size 2000 kb

# Determina o tamanho o tamanho minimo da memória de cache no HD
minimum_object_size 0 kb

# Arquivo onde será salvo o log de acesso
access_log /var/log/squid3/access.log

# Utilizado o diskd para melhor performace da procura do cache
# Tamanho máximo diretorio - máximo pastas - máximo pastas do segundo
cache_dir diskd /var/squid3/cache/1 400 10 100 Q1=30 Q2=30
cache_dir diskd /var/squid3/cache/2 400 10 100 Q1=30 Q2=30


#--------------------Bloqueia-----------------

acl localhost src 10.1.1.0/24

http_access allow localhost


acl bloqueio url_regex "/etc/squid3/black_list.txt"
acl sites url_regex "/etc/squid3/sites.txt"


http_access deny bloqueio
http_access deny sites


fiz modificações no meu e tá mesma coisa parou de dar erros agr erro é do cache -.
como arrumo?






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts