Proxy Transparente com Squid e PF

1. Proxy Transparente com Squid e PF

Clemilton
clemylton

(usa Slackware)

Enviado em 08/10/2008 - 18:58h

Tutorial retirado do OpenBSD-BR

http://www.openbsd-br.org/index.php?q=node/15
-----------------------------------------------

Instalando o Squid

Instale o squid a partir da árvore de ports do OpenBSD. Se você não tem familiaridade com o sistema de ports do OpenBSD leia isto antes.

# cd /usr/ports/www/squid
# env FLAVOR=transparent make install

Configurando o Squid

O arquivo de configuração do squid fica em /etc/squid/squid.conf, você necessitará fazer ao menos as seguintes mudanças na configuração padrão.

http_port 127.0.0.1:3128
http_access deny to_localhost
acl our_networks src 10.0.0.0/8
http_access allow our_networks
visible_hostname insomnia.benzedrine.cx
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on

Inicie o squid primeiramente com a opção -z para que sejam criados os diretórios de swap.

# squid -z
2006/01/03 16:26:13| Creating Swap Directories

Depois disso você pode iniciar o squid sem parâmetro algum.

# squid

Quando você faz mudanças no arquivo de configuração, deve avisar ao squid para reler o arquivo:

# squid -k reconfigure

Configurando o PF

A configuração do pf fica em /etc/pf.conf. Este arquivo é documentado em pf.conf(5). Este é um exemplo mínimo de uma regra rdr.

int_if="gem0"
ext_if="kue0"

rdr on $int_if inet proto tcp from any to any port www -> 127.0.0.1 port 3128

pass in on $int_if inet proto tcp from any to 127.0.0.1 port 3128 keep state
pass out on $ext_if inet proto tcp from any to any port www keep state

Note que o squid precisa abrir /dev/pf para consulta o filtro de pacotes. A permição padrão para este arquivo é de acesso somente para o root. O squid roda como user_squid, grupo _squid. Então para que o squid tenha permição para acessar o /dev/pf faça o seguinte:

# chgrp _squid /dev/pf
# chmod g+rw /dev/pf

Autor
João Salvatti / salvatti@gmail.com
Principal


  






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts