Está en la página 1de 8

Instalar y configurar Servidor Proxy Transparente

Squid es un servidor proxy y el daemon de cach


web. Cuenta con una amplia variedad de usos: el
almacenamiento en cach de web, el trfico de filtrado,
almacenamiento en cach de DNS y otras bsquedas de
la red de ordenadores de un grupo de personas que
comparten los recursos de red.
Squid est diseado principalmente para ejecutarse
en Unix-como sistemas, sino que tambin se ejecuta en
los sistemas basados en Windows. En este tutorial te
mostrar cmo instalar y configurar el servidor proxy
squid para funcionar bajo Linux y FreeBSD.
Un software de servidor proxy se basa en el protocolo TCP
/ IP. Efectuar un seguimiento de un puerto especial,
como 3128 o 8080. Un equipo que dirige un software de
servidor proxy se llama un servidor proxy. Si otro equipo
quiere conectarse a Internet a travs del servidor proxy,
debe conocer la direccin IP del servidor proxy y el puerto
proxy.
1. Instalacin Squid
Cdigo fuente Squid est disponible en las instrucciones
de calamar cache.org.Installation estn disponibles en el
archivo Lame en el fichero tar fuente. Tambin hay
paquetes binarios para CentOS, Fedora, Red Hat
Enterprise Linux, Ubuntu, Debian, FreeBSD y NetBSD.
Para instalar Squid bajo CentOS / Fedora / Red Hat
Enterprise Linux, introduzca:
1 am instalar squid

Para instalar Squid en Debian / Ubuntu, escriba:


1 sudo apt-get instalar squid

Para instalar Squid bajo FreeBSD, entran


(asegrese SQUID_PF y SQUID_AUFS se comprueba):
1 cd / usr / ports / www / squid
2 hacer instalar limpia

Ahora, crear la memoria cach y logs y establecer los


permisos adecuados:
1 mkdir / squid
2 mkdir / var / log / squid
3 chown -R squid: squid / squid

4 chown -R squid: squid / var / log / squid

2. configuracin de Squid
El archivo de configuracin por lo general se encuentra en
/ etc / squid / squid.conf (Linux) y / usr / local / etc /
squid / squid.conf (FreeBSD).
Modificar o aadir siguientes directivas de calamar a la
squid.conf como sigue:
001 # Establezca el puerto que desea actuar como apoderado
002 http_port 192.168.0.1:3128 transparente
003
004 # Hostname Squid
005 visible_hostname squidproxy.example.com
006
007 # Administrador de correo electrnico
008 cache_mgr sysadmin@example.com
009
010 Servidores DNS # (no es necesario)
# Utilice esta opcin si desea especificar una lista de servidores
011
de nombres DNS para utilizar en lugar de los
012 # Determinada en su archivo / etc / resolv.conf.
013 # Dns_nameservers 127.0.0.1 192.168.0.1
014
015 # de registro de Squid
016 cache_access_log / var / log / squid / access.log
017 cache_log / var / log / squid / cache.log
018 cache_store_log / var / log / squid / store.log
019
020 # Define un formato de registro de acceso.
LogFormat personalizado% {% Y-% m-% d% H:% M:% S} tl% 03tu%> a
021
% tr % ul% ui% Hs% mt% rm % ru% rv% er% Sh% Ss
022
# El cach puede emular el formato de archivo de registro que
utilizan muchos "programas httpd.
# Para desactivar / activar esta emulacin, configure
024
emulate_httpd_log en 'off' o 'on'.
# El valor por omisin es utilizar el formato de registro nativo,
025 ya que incluye informacin til analizadores de registros Squid
especficos utilizan.
023

026 # Emulate_httpd_log off


027
028 # Rotar los archivos de registro
# Logfile_rotate especifica el nmero de rotaciones del archivo de
029
registro para que al escribir 'squid-k rotate'.
030 # El valor por defecto es 10, que rotar con extensiones de 0 a 9.

031

# Configuracin logfile_rotate a 0 desactivar el nombre del


archivo de rotacin.

032 # Logfile_rotate 10
033
034 # PID nombre del archivo (no es necesario)
035 # Pid_filename / var / run / squid.pid
036 # Pid_filename / var / squid / logs / squid.pid
037
038 # El usuario y grupo para Squid
039 calamar cache_effective_user
040 calamar cache_effective_group
041
042 # Directorio de cach
# Se puede especificar varias lneas de cache_dir para ampliar la
043
memoria cach entre las diferentes particiones de disco.
# 20000 MB, 64 directorios, 128 subdirectorios para cada
044
directorio
045 cache_dir aufs / squid 20000 64 128
046
047

# La cantidad ideal de memoria que se utiliza para los objetos en


trnsito, Hot objetos y los objetos-negativos en cach

048 cache_mem 96 MB
049
# Objetos mayores de este tamao no se trataron de mantenerse en
la memoria cach.
# Esto debe ser lo suficientemente alto como para mantener los
051 objetos de acceso frecuente en la memoria para mejorar el
rendimiento
050

052 maximum_object_size_in_memory 32 KB
053
054 # Objetos ms grandes que este tamao no se guardar en el disco.
055 # El valor se especifica en kilobytes.
056 maximum_object_size 32,768 KB
057
# El tamao, marcas de baja, y el agua de alta para la cach de
IP.
059 ipcache_size 4096
058
060
061 # El nmero mximo de entradas de la cach FQDN.
062 fqdncache_size 4096
063
064 # No registrar consultas ICP a access.log.
# Es posible que desee deshabilitar esta no si su carga ICP es muy
065 alto para acelerar las cosas o para simplificar el anlisis de
registros.

066 log_icp_queries off


067
# Habilitar compatibilidad conexin persistente para clientes y
servidores.
# Por defecto, Squid utiliza conexiones persistentes (cuando se
069
permite) con sus clientes y servidores.
068

070 server_persistent_connections sobre


071 client_persistent_connections sobre
072
073 Tiempos de espera # Set
074

Controles # dead_peer_timeout cunto tiempo Squid espera para


declarar una cach de pares como "muerto".

075 dead_peer_timeout 30 segundos


076

# Peer_connect_timeout especifica el tiempo de espera para una


conexin abierta a un cach de pares.

077 peer_connect_timeout 30 segundos


# Normalmente Squid determinar automticamente un valor de tiempo
de espera ICPquery ptima basada en el tiempo de ida y vuelta de
078 las consultas recientes ICP. Si desea anular el valor determinado
por Squid, ajuste este 'icp_query_timeout' a un valor distinto de
cero (milisegundos).
079 # Icp_query_timeout 5000
080
081

# El nmero de puerto donde Squid enva y recibe consultas ICP


hacia y desde cachs vecinas.

082 # Cero para desactivar


083 icp_port 0
084
085 # No almacenar en cach los archivos dinmicos y dstdomains
086 hierarchy_stoplist conf php asp cgi-bin?
acl CONSULTA urlpath_regex cgi-bin \? \. Php $ \. Asp $ \. Shtml $
\. Pcm $ \. Cfml $ \. Phtml $ \. Php3 $ \. Conf $
acl nocache dominios dstdomain. mail.yahoo.com. login.yahoo.com.
088
gmail.com
087

089
090 no_cache negar CONSULTA
091 no_cache negar nocache dominios
092
093 acl m dst 127.0.0.1 192.168.0.1
094 always_direct permitirme
095
096 always_direct permitir nocache dominios
097 always_direct permitir CONSULTA
098

099 otros # settings


100

# Slo si usted quiere que su cuadro de Squid para almacenar en


cach agresiva, no recomendado

101
# Refresh_pattern-i kh.google 1,440 20% 10,080 override-expireoverride lastmod recarga-en-ims ignore-reload
# Refresh_pattern-i keyhole.com 1,440 20% 10,080 override-expire103
override lastmod recarga-en-ims ignore-reload
102

104
105 # Refresh_pattern ^ ftp:1440 20% 10 080
106
107
108
109

#
#
#
#

Refresh_pattern ^
Refresh_pattern-i
Refresh_pattern-i
Refresh_pattern-i

gopher: 1440 0% 1440


\. Gif $ 10080 100% 43200
\. Jpg $ 10080 100% 43200
\. JPEG $ 10080 100% 43200

110 # Refresh_pattern-i \. Png $ 10080 100% 43200


111
112
113
114
115
116
117

#
#
#
#
#
#
#

Refresh_pattern-i
Refresh_pattern-i
Refresh_pattern-i
Refresh_pattern-i
Refresh_pattern-i
Refresh_pattern-i
Refresh_pattern-i

\.
\.
\.
\.
\.
\.
\.

Bmp $
Mid $
WAV $
Ico $
Yim $
Jar $
Ldict

10080 100% 43200


10080 100% 43200
10080 100% 43200
10080 100% 43200
10080 100% 43200
10080 100% 43200
$ 10080 100% 43200

118 # Refresh_pattern-i \. Swf $ 10080 100% 43200


119 # Refresh_pattern-i \. La clase $ 10080 100% 43200
120 # Refresh_pattern-i \. Taxi de $ 10080 100% 43200
121
122 # Refresh_pattern. 0 20% 4,320
123
124 negative_ttl 5 minutos
125 positive_dns_ttl 6 horas
126 negative_dns_ttl 1 minuto
127
128 connect_timeout 60 segundos
129 request_timeout 3 minutos
130 persistent_request_timeout 1 minuto
131 read_timeout 15 minutos
132 client_lifetime 1 da
133 half_closed_clients off
134 pconn_timeout 2 minutos
135 shutdown_lifetime 1 segundo
136
137

# Configurar la descarga de solicitudes, incluso despus de


abortado.

138 quick_abort_min 0 KB
139 quick_abort_max 0 KB

140
141 # Lista de control de acceso
142 acl todos src 0.0.0.0/0.0.0.0
143 acl localhost src 127.0.0.1/255.255.255.255
144 acl LAN src 192.168.0.0/255.255.255.0
145 acl VPN src 192.168.2.0/255.255.255.0
146 usuario acl src 192.168.1.1 192.168.2.1
147
148 puerto acl SSL_ports 443 563 5190 5050
acl Safe_ports puerto 80 21 443 563 210 1025 -65 535 280 488 591
149
777
150 mtodo de purga acl PURGA
151 acl CONNECT mtodo CONNECT
152
153 spammers acl dstdomain. example1.com. example2.com
154 acl urls url_regex http://www.example3.?
155 # Acl fileext url_regex-i. Xyz. Zyx
156
157 spammers deny_info TCP_RESET
158 deny_info TCP_RESET urls
159
160 http_access deny spammers
161 http_access deny urls
162 # Http_access deny fileext
163
164 http_access deny purga
165 http_access deny! Safe_ports
166 http_access deny CONNECT! SSL_ports
167
168
169
170
171

http_access
http_access
http_access
http_access

allow
allow
allow
allow

localhost
LAN
VPN
usuario

172 http_access deny all


173
174 # Http_reply_access permitir al usuario
175 # Http_reply_access negar todo
176
177 # Icp_access permite al usuario
178 # Icp_access niega todo
179

180 # Miss_access permite al usuario


181 # Miss_access niega todo

Haga clic aqu para descargar squid.conf.


En este ejemplo, la direccin IP que Squid se configura
para escuchar es 192.168.0.1 utilizando el nmero de
puerto 3128.La opcin transparente se utiliza para
informar a los calamares que esta IP y el puerto debe ser
escuchado como un proxy transparente. Esto completa la
configuracin de Squid como un servidor proxy
transparente (echa un vistazo a las reglas de ACL y
ajustes genricos y cambiarlos a su gusto).
Despus de realizar cambios en cualquier archivo de
configuracin, debe hacer que el calamar releer sus
archivos de configuracin usando
1 squid-k reconfigure

3. Configuracin del cortafuegos para proxy


transparente
Linux e iptables
A continuacin, agregue las siguientes reglas para
reenviar todas las peticiones http (prximos al puerto 80)
al puerto del servidor Squid 3128:
1

iptables-t nat-A PREROUTING-i eth1-p tcp - dport 80-j DNAT - to


192.168.0.1:3128

FreeBSD y PF
Agregue la siguiente lnea a / etc / pf.conf :
1

rdr en rl0 proto tcp inet de 192.168.1.0/24 a cualquier puerto www


-> 192.168.0.1 puerto 3128

NOTA: Es posible que tenga que cambiar las interfaces


de red (eth0, eth1, xl0), addreses IP y puertos de acuerdo
a la configuracin del sistema.
4. Acabado ajustes y probar el proxy
Habilitar calamar al cargarse el sistema escribiendo:
CentOS, Fedora, Red Hat Enterprise Linux:
1 chkconfig squid en

Debian / Ubuntu:
1 sudo update-rc.d calamar permiten

FreeBSD:
1 echo "squid_enable = YES" >> / etc / rc.conf

Comience calamares con opcin -z , por primera vez,


para crear los directorios de intercambio:
1 squid-z

Si todo est bien, iniciar el servicio Squid escribiendo:


CentOS, Fedora, Red Hat Enterprise Linux /
Debian / Ubuntu:

1 inicio service squid

FreeBSD:
1 / Usr / local, / etc / rc.d / squid inicio

Ahora puede probar si el proxy funciona accediendo


http://checker.samair.ru.
Vers algo como esto:

Proxy transparente SQUID

Compruebe siempre cache.log por cualquier error.


NOTA: Para la depuracin, ejecute squid-NDCd1

También podría gustarte