Slackware com Squid

O Squid é um servidor de proxy, ou seja um intermediador entre o cliente e o acesso a Internet. Com ele é possível realizar certos controles como bloqueio de sites, liberação por horários, etc.

Faça o download do squid em http://www.squid-cache.org/Versions/

Descompacte-o em /usr/local

$ cd /usr/local/squid
$ ./configure –prefix:/usr/local/squid
$ make
$ su
# make install

Depois disso, crie os seguintes diretórios e acerte as permissões:

# mkdir /var/spool/squid/
# chown -R nobody.nobody /var/spool/squid/
# mkdir /var/log/squid/
# chown -R nobody.nobody /var/log/squid/
# chown -R nobody.nobody /usr/local/squid/var/logs/
# mkdir /etc/squid

Segue um exemplo de configuração do squid:

http_port 3128
visible_hostname slack_-server
cache_effective_user nobody e cache_effective_group nobody

error_directory /usr/local/squid/share/errors/Portuguese

cache_mem 64 MB
maximum_object_size_in_memory 64 KB
maximum_object_size 512 MB
minimum_object_size 0 KB
cache_swap_low 90
cache_swap_high 95
cache_dir ufs /var/spool/squid 2048 16 256
cache_access_log /var/log/squid/access.log
refresh_pattern ^ftp: 15 20% 2280
refresh_pattern ^gopher: 15 20% 2280
refresh_pattern .: 15 20% 2280

acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 21 80 443 563 70 210 280 488 59 777 901 1025-65535
acl purge method PURGE
acl CONNECT method CONNECT

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

acl bloqueados dstdomain orkut.com http://www.orkut.com
http_access deny bloqueados

# exemplo de bloqueio do orkut
acl bloqueados dstdomain orkut.com http://www.orkut.com
http_access deny bloqueados

acl rede_local src 192.168.1.0/24
http_access allow localhost
http_access allow rede_local
http_access deny all

Copie o arquivo de configuração acima para /etc/squid/squid.conf

Utilize a opção -z na primeira execução para criar os diretórios de cache do squid, e a opção -D para fazer testes de DNS.

# /usr/local/squid/sbin/squid -f /etc/squid/squid.conf -z -D

Caso não ocorra nenhum erro, seu squid está no ar. Para acessá-lo configure no seu browser o ip e porta correspondente ao serviço.

Abaixo segue um exemplo de rc.squid que pode ser utilizado

#!/bin/sh
# Start/stop/restart squid.

# Start squid:
squid_start() {
if [ -x /usr/local/squid/sbin/squid ]; then
echo “Starting SQUID…”
/usr/local/squid/sbin/squid -f /etc/squid/squid.conf
fi
}

# Stop squid:
squid_stop() {
killall squid
}

# Restart squid:
squid_restart() {
squid_stop
sleep 1
squid_start
}

case “$1” in
‘start’)
squid_start
;;
‘stop’)
squid_stop
;;
‘restart’)
squid_restart
;;
*)
echo “usage $0 start|stop|restart”
esac

fonte: http://www.vivaolinux.com.br/artigo/Instalando-e-configurando-o-Squid-no-Slackware/?pagina=3


About this entry