Está en la página 1de 24

Integrantes:

1. Software de Proxy
Existe una variedad de paquetes de software de proxy para Linux. Algunos son a nivel de aplicacin (como SQU!" y otros son a nivel de
sesin (como S#$%S". Squid es un proxy a nivel de aplicacin para &''() &''(S y *'(. 'am+i,n puede e-ecutar peticiones !.S +astate
m/s r/pido de lo que puede 0acerlo la mayor1a del software cliente. SQU! es ideal para acelerar el acceso a www) y para controlar el
acceso a sitios we+ (utili2ando paquetes como squid3uard".
Squid es el servidor (roxy m/s popular y extendido entre los sistemas operativos +asados so+re U.45. Es muy confia+le) ro+usto y
vers/til. Al ser software libre) adem/s de estar disponi+le el cdigo fuente) est/ li+re del pago de costosas licencias por uso o con
restriccin a un uso con determinado n6mero de usuarios.
Entre otras cosas) Squid puede 0acer (roxy y cac0e con los protocolos &''() *'() 3#(&E7 y 8AS) (roxy de SSL) cac0e
transparente) 88$() aceleracin &''() cac0e de consultas !.S y m/s.
2. Cmo configurar Squid: Servidor Proxy.
Software requerido.
(ara poder llevar la ca+o los procedimientos descritos en este manual y documentos relacionados) usted necesitar/ tener instalado al menos
lo siguiente9
squid:;.<.S'A=LE>
ipta+les:>.;.<
?ernel:;.<.@
'mese en consideracin que) de ser posi+le) se de+e utili2ar la versin esta+le m/s reciente de todo el software que vaya a instalar al
reali2ar los procedimientos descritos en este manual) a fin de contar con los parc0es de seguridad necesarios. .inguna versin de Squid
anterior a la ;.<.S'A=LE> se considera como apropiada de+ido a fallas de seguridad de gran importancia) y ning6n administrador
competente utili2ar1a una versin inferior a la
;.<.S'A=LE>. (or favor visite el sito 8e+ de su distri+ucin predilecta para estar al tanto de cualquier aviso de actuali2aciones de
seguridad. E-emplo9
para 7ed &at Linux A.> y A.; 0ay paqueter1a de actuali2acin en los siguientes enlaces9
ftp9BBupdates.red0at.comBA.>BenBosBiCDEB) si posee alguna distri+ucin +asada so+re 7ed &at('F" Linux A.>
ftp9BBupdates.red0at.comBA.;BenBosBiCDEB) si posee alguna distri+ucin +asada so+re 7ed &at('F" Linux A.;
nstalacin del software necesario.
7egularmente Squid no se instala de manera predeterminada a menos que especifique o contrario durante la instalacin del sistema
operativo) sin em+argo
viene incluido en casi todas las distri+uciones actuales. El procedimiento de instalacin es exactamente el mismo que con cualquier otro
software9
mount BmntBcdromB
rpm :Uv0
BmntBcdromBGB7(FSBsquid:
G.iCDE.rpm e-ect
pta+les se utili2ar/ para un guin de Enmascaramiento de (. Se instala por defecto en todas las distri+uciones actuales que utilicen
?ernel:;.<.
Es importante tener actuali2ado el ?ernel por diversas cuestiones de seguridad. .o es recomenda+le utili2ar versiones del ?ernel anteriores a
la ;.<.@. En el manual H$mo actuali2ar el %ernel a partir de paquetes 7(F5H se descri+e a detalle lo necesario.
Antes de continuar
'enga en cuenta que este manual 0a sido compro+ado varias veces y 0a funcionado en todos los casos y si algo no fucniona solo significa
que ustesd no lo
ley a detalle y no sigui correctamente las indicaciones.
Evite de-ar espacios vacios en lugares inde+idos. El siguiente es un e-emplo de como no de+e descomentarse un par/metro.
Fal
I #pcin
incorrectamente
descomentada
0ttpJaccess C>;D
El siguiente es un e-emplo de como si de+e descomentarse un par/metro.
=ien
I #pcin
correctamente
descomentada
0ttpJaccess C>;D
$o
nfi
gur
aci
n
+/s
ica
.
Squid utili2a el fic0ero de configuracin locali2ado en /etc/squid/squid.conf) y podr/ tra+a-ar so+re este utili2ando su editor de texto
preferido. Existen un
gran n6mero de par/metros) de los cuales recomendamos configurar los siguientes9
0ttpJport
cac0eJmem
ftpJuser
ftpJpassive
cac0eJdir
Al menos una Lista de Control de Acceso
Al menos una Regla de Control de Acceso
cac0eJmgr
0ttpdJaccelJ0ost
0ttpdJaccelJport
0ttpdJaccelJwit0Jproxy
(ar/metro 0ttpJport9 KQue puerto utili2ar para SquidL
Squid por defecto utili2ar/ el puerto C>;D para atender peticiones) sin em+argo se puede especificar que lo 0aga en cualquier otro puerto o
+ien que lo 0aga
en varios puertos a la ve2.
En el caso de un Proxy Transparente) regularmente se utili2ar/ el puerto DM y se valdr/ del re:direccionamiento de peticiones de modo tal
que no 0a+r/
necesidad alguna de modificar la configuracin de los navegadores 8e+ para utili2ar el servidor (roxy. +astar/ con utili2ar como puerta de
enlace al
servidor. Es importante recordar que los servidores 8e+) como Apac0e) tam+i,n utili2an dic0o puerto) por lo que ser/ necesario
reconfigurar el servidor
8e+ para utili2a otro puerto disponi+le) o +ien desinstalar o des0a+ilitar el servidor 8e+.
&oy en d1a ya no es del todo pr/ctico el utili2ar un Proxy Transparente ) a menos que se trate de un servicio de Caf nternet u oficina
pequeNa) siendo que
uno de los principales pro+lemas con los que lidian los administradores es el mal uso yBo a+uso del acceso a nternet por parte del personal.
Es por esto que
puede resultar m/s conveniente configurar un servidor (roxy con restricciones por contraseNa) lo cual no puede 0acerse con un Proxy
Transparente) de+ido
a que se requiere un di/logo de nom+re de usuario y contraseNa.
7egularmente algunos programas utili2ados com6nmente por los usuarios suelen traer por defecto el puerto DMDM !ser"icio de cac#eo
$$$! para utili2arse
al configurar que servidor proxy utili2ar. Si queremos aprovec0ar esto en nuestro favor y a0orrarnos el tener que dar explicaciones
innecesarias al usuario)
podemos especificar que Squid escuc0e peticiones en dic0o puerto tam+i,n. Siendo as1 localice la seccin de definicin de #ttp%port) y
especifique9
I
I Oou may specify multiple soc?et addresses on multiple lines.
I
I !efault9 0ttpJport C>;D
0ttpJport C>;D
0ttpJport DMDM
(ar
/me
tro
cac
0eJ
me
m
El par/metro cac0eJmem esta+lece la cantidad ideal de memoria para lo siguiente9
#+-etos en tr/nsito.
#+-etos &ot.
#+-etos negativamente almacenados en el cac0,.
Los datos de estos o+-etos se almacenan en +loques de < %+. El par/metro cac0eJmem especifica un l1mite m/ximo en el tamaNo total de
+loques acomodados) donde los o+-etos en tr/nsito tiene mayor prioridad. Sin em+argo los o+-etos &ot y aquellos negativamente
almacenados en el cac0, podr/n utili2ar la memoria no utili2ada 0asta que esta sea requerida. !e ser necesario) si un o+-eto en tr/nsito es
mayor a la cantidad de memoria especificada)
Squid exceder/ lo que sea necesario para satisfacer la peticin.
(or defecto se esta+lecen D F=. (uede especificarse una cantidad mayor si as1 se considera necesario) dependiendo esto de los 0/+itos de
los usuarios o
necesidades esta+lecidas por el administrador.
Si se posee un servidor con al menos >;D F= de 7AF) esta+le2ca >E F= como valor para este par/metro9
cac0eJmem >E F=
(ar/metro cac0eJdir9 K$uanto desea almacenar de nternet en el disco duroL
Este par/metro se utili2a para esta+lecer que tamaNo se desea que tenga el cac0e en el disco duro para Squid. (ara entender esto un poco
me-or) responda a
esta pregunta9 'Cuanto desea almacenar de nternet en el disco duro( (or defecto Squid utili2ar/ un cac0e de >MM F=) de modo tal que
encontrar/ la
s
iguiente l1nea9
cac0eJdir ufs BvarBspoolBsquid >MM >E ;PE
Se puede incrementar el tamaNo del cac0e 0asta donde lo desee el administrador. Fientras m/s grande el cac0e) m/s o+-etos de
almacenar/n en ,ste y
por lo tanto se utili2ar/ menos el anc0o de +anda. La siguiente l1nea esta+lece un cac0e de AMM F=9
cac0eJdir ufs BvarBspoolBsquid AMM >E ;PE
Los n6meros )* y +,* significan que el directorio del cac0e contendr/ >E su+directorios con ;PE niveles cada uno. .o modifique esto
n6meros) no 0ay necesidad de 0acerlo.
Es muy importante considerar que si se especifica un determinado tamaNo de cac0e y este excede al espacio real disponi+le en el
disco duro) Squid se +loquear/ inevita+lemente. Sea cauteloso con el tamaNo de cac0e especificado.
(ar/metro ftpJuser
Al acceder a un servidor *'( de manera annima) por defecto Squid enviar/ como contraseNa Squid -. Si se desea que el acceso annimo
a los servidores
*'( sea m/s informativo) o +ien si se desea acceder a servidores *'( que validan la autenticidad de la direccin de correo especificada
como contraseNa)
puede especificarse la direccin de correo electrnico que uno considere pertinente.
ftpJuser proxyQsu:dominio.net
(ar
/m
etro
ftpJ
pas
sive
Si se tiene un muro contrafuegos que no permite acceder a servidores *'( m/s que de modo pasivo) de+e 0a+ilitarse ftp%passi"e
con el valor on. ftpJpassive on
$
o
nt
ro
le
s
de
ac
ce
so
.
Es necesario esta+lecer Listas de Control de Acceso que definan una red o +ien ciertas maquinas en particular. A cada lista se le asignar/
una Regla de
Control de Acceso que permitir/ o denegar/ el acceso a Squid. (rocedamos a entender como definir unas y otras.
Listas de control de acceso.
7egularmente una lista de control de acceso se esta+lece siguiendo la siguiente sintaxis9
acl Rnom+re de la listaS src Rlo que compone a la listaS
Si uno desea esta+lecer una lista de control de acceso que defina sin mayor tra+a-o adicional a toda la red local definiendo la ( que
corresponde a la red y la m/scara de la su+:red. (or e-emplo) si se tienen una red donde las m/quinas tienen direcciones ( >@;.>ED.>.n con
m/scara de su+:red ;PP.;PP.;PP.M)
podemos
acl miredlocal src >@;.>ED.>.MB;PP.;PP.;PP.M
'am+i,n puede definirse una Lista de Control de Acceso invocando un fic0ero locali2ado en cualquier parte del disco duro) y en el cual
se en cuenta una lista de direcciones (. E-emplo9
acl permitidos HBetcBsquidBpermitidosH
El fic0ero /etc/squid/permitidos contendr1a algo como siguiente9
>@;.>ED.>.>
>@;.>ED.>.;
>@;.>ED.>.C
>@;.>ED.>.>P
>@;.>ED.>.>E
>@;.>ED.>.;M
>@;.>ED.>.<M
Lo anterior estar1a definiendo que la Lista de Control de Acceso denominada permitidos estar1a compuesta por las direcciones (
incluidas en el fic0ero
/
7eglas de $ontrol de Acceso
Estas definen si se permite o no el acceso a Squid. Se aplican a las Listas de Control de Acceso. !e+en colocarse en la seccin de reglas de
control de
acceso definidas por el administrador) es decir) a partir de donde se locali2a la siguiente leyenda9
I
I .SE7' O#U7 #8. 7ULE(S" &E7E '# ALL#8 A$$ESS *7#F O#U7 $LE.'S
I
La sintaxis
+/sica es la
siguiente9
0ttpJaccess Rdeny o allowS Rlista de control de accesoS
En el siguiente e-emplo consideramos una regla que esta+lece acceso permitido a Squid a la Lista de Control de Acceso denominada
permitidos9
0ttpJaccess allow permitidos
'am+i,n pueden definirse reglas vali,ndose de la expresin T) la cual significa excepci.n . (ueden definirse) por e-emplo) dos listas de
control de acceso)
una denominada lista) y otra denominada lista+) en la misma regla de control de acceso) en donde se asigna una expresin a una de
estas. La siguiente
esta+lece que se permite el acceso a Squid a lo que comprenda lista) excepto aquello que comprenda lista+9
0ttpJaccess allow lista> Tlista;
Este tipo de reglas son 6tiles cuando se tiene un gran grupo de ( dentro de un rango de red al que se de+e permitir acceso) y otro grupo
dentro de la misma
red al que se de+e
Aplicando Listas y 7eglas de control de acceso.
Una ve2 comprendido el funcionamiento de la Listas y las 7egla de $ontrol de Acceso) procederemos a determinar cuales
utili2ar para nuestra configuracin.
$aso >
$onsiderando como e-emplo que se dispone de una red >@;.>ED.>.MB;PP.;PP.;PP.M) si se desea definir toda la red local) utili2aremos la
siguiente l1nea en la seccin de Listas de Control de Acceso9
acl todalared src >@;.>ED.>.MB;PP.;PP.;PP.M
&a+iendo 0ec0o lo anterior) la seccin de listas de control de acceso de+e quedar m/s o menos del siguiente modo9
Listas de $ontrol de Acceso9 definicin de una red local completa
I
I 7ecommended minimum configuration9
acl all src M.M.M.MBM.M.M.M
acl manager proto cac0eJo+-ect
acl local0ost src >;A.M.M.>B;PP.;PP.;PP.;PP
acl todalared src >@;.>ED.>.MB;PP.;PP.;PP.M
A continuacin procedemos a aplicar la regla de control de acceso9
0ttpJaccess allow todalared
&a+iendo 0ec0o lo anterior) la 2ona de reglas de control de acceso de+er1a quedar m/s o menos
de este modo9 7eglas de control de acceso9 Acceso a una Lista de $ontrol de Acceso.
I
I .SE7' O#U7 #8. 7ULE(S" &E7E '# ALL#8 A$$ESS *7#F O#U7 $LE.'S
I
0ttpJaccess
allow
local0ost
0ttpJaccess
allow
todalared
0ttpJaccess
deny all
La regla 0ttpJaccess allow todalared permite el acceso a Squid a la Lista de Control de Acceso denominada todalared) la cual est/
conformada por
>@;.>ED.>.MB;PP.;PP.;PP.M. Esto significa que cualquier m/quina desde >@;.>ED.>.> 0asta >@;.>ED.>.;P< podr/ acceder a
Squid.
$aso ;
Si solo se desea permitir el acceso a Squid a ciertas direcciones ( de la red local) de+eremos crear un fic0ero que contenga dic0a lista.
3enere el fic0ero
/etc/squid/lista) dentro del cual se incluir/n solo aquellas direcciones ( que desea confirmen la Lista de $ontrol de acceso. E-emplo9
>@;.>ED.>.>
>@;.>ED.>.;
>@;.>ED.>.C
>@;.>ED.>.>P
>@;.>ED.>.>E
>@;.>ED.>.;M
>@;.>ED.>.<M
!enominaremos a esta lista de control de acceso como redlocal9
acl redlocal src HBetcBsquidBlistaH
&a+iendo 0ec0o lo anterior) la seccin de listas de control de acceso de+e quedar m/s o menos del
siguiente modo9 Listas de $ontrol de Acceso9 definicin de una red local completa
I
I 7ecommended minimum configuration9
acl all src M.M.M.MBM.M.M.M
acl manager proto cac0eJo+-ect
acl local0ost src >;A.M.M.>B;PP.;PP.;PP.;PP
acl redlocal src HBetcBsquidBlistaH
A continuacin procedemos a aplicar la regla de control de acceso9
0ttpJaccess allow redlocal
&a+iendo 0ec0o lo anterior) la 2ona de reglas de control de acceso de+er1a quedar m/s o
menos de este modo9 7eglas de control de acceso9 Acceso a una Lista de $ontrol de
Acceso.
I
I .SE7' O#U7 #8. 7ULE(S" &E7E '# ALL#8 A$$ESS *7#F O#U7 $LE.'S
I
0ttpJacc
ess allow
local0ost
0ttpJacc
ess allow
redlocal
0ttpJacc
ess deny
all
La regla 0ttpJaccess allow redlocal permite el acceso a Squid a la Lista de Control de Acceso denominada redlocal) la cual est/
conformada por las direcciones ( especificadas en el fic0ero /etc/squid/lista. esto significa que cualquier m/quina no incluida en
/etc/squid/lista no tendr/ acceso a Squid.
(ar/metro cac0eJmgr.
(or defecto) si algo ocurre con el $ac0e) como por e-emplo que muera el procesos) se enviar/ un mensa-e de aviso a la cuenta webmaster
del servidor.
(uede especificarse una distinta si acaso se considera conveniente.
cac0eJmgr -osepere2Qmidominio.net
$ac0
e con
acele
raci
n.
$uando un usuario 0ace peticin 0acia un o+-eto en nternet) este es almacenado en el cac0e de Squid. Si otro usuario 0ace peticin 0acia el
mismo o+-eto)
y este no 0a sufrido modificacin alguna desde que lo accedi el usuario anterior) Squid mostrar/ el que ya se encuentra en el cac0e en
lugar de volver a
descargar
lo desde
nternet.
Esta funcin permite navegar r/pidamente cuando los o+-etos ya est/n en el cac0e de Squid y adem/s optimi2a enormemente la
utili2acin del anc0o de
+
a
n
d
a
.
En la seccin &TTP/!ACC0L0RAT1R 1PT123 de+en 0a+ilitarse los siguientes par/metros9
(roxy Acelerado9 #pciones para (roxy $onvencional.
0ttpdJac
celJ0ost
virtual
0ttpdJac
celJport
M
0ttpdJac
celJwit0
Jproxy
on
Si se trata de un (roxy transparente !Squid escuc#ando peticiones en el puerto 45!) de+e 0acerse con las siguientes
opciones9
Proxy Acelerado: !ciones !ara Proxy "rans!arente.
0ttpdJaccelJ0o
st virtual
0ttpdJaccelJpo
rt DM
0ttpdJaccelJwi
t0Jproxy on
0ttpdJaccelJus
esJ0ostJ0eader
on
(or defecto el par/metro #ttpd%accel%wit#%proxy viene con el valor off) es importante no olvidar cam+iar
este valor por on. Esta+leciendo el idioma por defecto.
Squid incluye traduccin a distintos idiomas de las distintas p/ginas de error e informativas que son desplegadas en un momento dado.
!ic0as traducciones
se pueden encontrar en /usr/lib/squid/errors/. (ara poder 0acer uso de las p/ginas de error traducidas al espaNol) es necesario cam+iar un
enlace sim+lico
locali2ado en BetcBsquidBerrors para que apunte 0acia /usr/lib/squid/errors/3panis# en lugar de 0acerlo 0acia /usr/lib/squid/errors/0nglis#.
Elimine primero el enlace sim+lico actual9
rm :f BetcBsquidBerrors
$oloque un nuevo enlace sim+lico apuntando 0acia
/usr/lib/squid/errors/3panis#. ln :s BusrBli+BsquidBerrorsBSpanis0
BetcBsquidBerrors
niciando) reiniciando y aNadiendo el servicio al
arranque del sistema. Una ve2 terminada la configuracin) e-ecute el siguiente comando para
iniciar por primera ve2 Squid9
BetcBrc.dBinit.dBsquid start
Si necesita reiniciar para pro+ar cam+ios 0ec0os en la configuracin) e-ecute lo siguiente9
BetcBrc.dBinit.dBsquid restart
Si desea que Squid inicie de manera autom/tica la prxima ve2 que inicie el sistema) e-ecute lo siguiente9
Bs+inBc0?config ::level C<P squid on
Lo anterior 0a+ilitar/ a Squid en los niveles de corrida C) < y P.
.ota para los novatos9 Usted .# tiene porque editar cosa alguna en /etc/rc.d/rc.local o /etc/inittab para que Squid !as6 como cualquier otro
ser"icio! inicie
en el arranque del sistema. Fientras usted sea novato) por favor) olvide que existen esos fic0eros y exclame una fuerte amena2a y ale-ese de
quien le indique
que desde a01 de+e
A-ustes para el muro contrafuegos o guin de Enmascaramiento de (.
A continuacin comentaremos algunos a-ustes que pueden aNadirse o editarse en el guin de el muro contrafuegos) como el generado
por 0erramientas como *irestarer) o +ien un simple guin de Enmascaramiento de (.
Sugerimos utili2ar *irestarer de+ido a que permite configurar tanto el enmascaramiento de ( como el muro contrafuegos y la
importancia que tiene la presencia de ,ste 6ltimo en un servidor que sirve como puerta de enlace para la red local.
pta+les en lugar de ipc0ains.
!esde el ?ernel ;.<) 3.UBLinux utili2a .etfilter) el cual se configura a trav,s de iptables. La sintaxis cam+ia con respecto a ipc#ains) y a
fin de permitir a
los administradores darse tiempo de adaptarse) distri+uciones como 7ed &at ('F" incluyeron soporte para ipc#ains a manera de
aplicaci.n de legado .
(udiendo utili2arse iptables no tiene sentido mantener instalado ipc#ains) que a6n es utili2ado por defecto en 7ed &at Linux ('F" A.> y A.;.
Se recomienda
desinstalar ipc0ains y los paquetes que dependan de este.
Es importante utili2ar la m/s reciente versin de iptables para la distri+ucin utili2ada. .inguna versin de ipta+les anterior a la >.;.< se
considera como
apropiada de+ido a fallas de seguridad de gran importancia) y ning6n administrador competente utili2ar1a una versin inferior a la >.;.<.
(or favor visite el
sito 8e+ de su distri+ucin predilecta para estar al tanto de cualquier aviso de actuali2aciones de seguridad. E-emplo9 para 7ed &at Linux
A.> y A.; 0ay
paqueter1a de actuali2acin en los siguientes enlaces9
ftp9BBupdates.red0at.comBA.>BenBosBiCDEB) si posee alguna distri+ucin +asada so+re 7ed &at('F" Linux A.>
ftp9BBupdates.red0at.comBA.;BenBosBiCDEB) si posee alguna distri+ucin +asada so+re 7ed &at('F" Linux A.;
Antes de desinstalar ipc#ains) primero de+e eliminarse cualquier regla que pudiese existir.
Bs+inBipc0ains :4
Bs+inBipc0ains :*
Bs+inBipc0ains :U
A continuacin de+e removerse el mdulo de ipc#ains para permitir la carga del mdulo ip%tables.
Bs+inBrmmod ipc0ains
Bs+inBmodpro+e ipJta+les
(ara terminar) se desinstala ipc#ains y toda la paqueter1a que
dependa de ,ste. rpm :e ipc0ains lo??it gnome:lo??it firewall:config
Esto a-ustes de+en poder permitir utili2ar iptables en lugar de ipc#ains sin
mayor pro+lema. 7e:direccionamiento de peticiones.
En un momento dado se requerir/ tener salida transparente 0acia nternet para ciertos servicios) pero al mismo tiempo se necesitar/ re:
direccionar
peticiones 0acia servicio 8e+) 8e+ SSL) ftp) gop0er o 8AS 0acia el el puerto donde escuc0a peticiones Squid (C>;D") de modo que no 0aya
salida alguna
0acia alguno de estos protocolos sin que ,sta pase antes por Squid.
El re:direccionamiento lo 0acemos a trav,s de iptables. $onsiderando para este e-emplo que la red local se accede a trav,s de una interfa2
e0tM) el
siguiente esquema e-emplifica un re:direccionamiento9
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport DM :- 7E!7E$' ::to:port
C>;D
Lo anterior 0ace que cualquier peticin 0acia el puerto DM (servicio &''(" 0ec0a desde la red local 0acia el exterior) se re:direccionar/
0acia el puerto
C>;D del servidor.
$onsiderando lo anterior) con el fin de re:direccionar peticiones 0acia los puertos ;M (*'(:data") ;> (*'(") AM (3#(&E7") DM (&''(") ;>M
(8AS" y <<C
(&''(S") podemos aNadir al guin del muro contrafuegos lo siguiente9
7e:direccionamiento de servicios ordinarios con ipta+les.
I *'(:data
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport ;M :- 7E!7E$' ::to:port
C>;D
I *'(
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport ;> :- 7E!7E$' ::to:port
C>;D
I 3#(&E7
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport AM :- 7E!7E$' ::to:port
C>;D
I &''(
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport DM :- 7E!7E$' ::to:port
C>;D
I 8AS
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport ;>M :- 7E!7E$' ::to:port
C>;D
I &''(S
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport <<C :- 7E!7E$' ::to:port
C>;D
(uede aNadirse re:direccionamiento 0acia otros puertos menos usuales pero que llegan ser utili2ados para acceder 0acia alg6n servicio) com
por e-emplo el
D>) utili2ado en ocasiones como alternativo para &''() y el PEC) utili2ado para ..'( so+re SSL.
'am+i,n se pueden re:direccionar los puertos utili2ados por los clientes de mensa-er1a instant/nea) siempre que estos permitan 0acer uso
de un servidor proxy) ya que de lo contrario quedar1an +loqueados) como ser1a el caso del protocolo $Q) mismo que no tiene soporte
para servidor proxy.
AF9 puertos @D@D) P>@M al P>@C.
Oa0ooT Fessenger9 puertos PMPM u DM para mensa-es) PMMM al PM>M para conversaciones por vo2 y P>MM para v1deo.
FS. Fessenger9 puerto >DEC) y DM si no puede usarse el primero.
7e:direccionamiento de otros servicios con ipta+les.
I A veces utili2ado para &''(
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport D> :- 7E!7E$' ::to:port
C>;D
I ..'( so+re SSL
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport PEC :- 7E!7E$' ::to:port
C>;D
I AF
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport @D@D :- 7E!7E$' ::to:port
C>;D
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport P>@M9P>@C :- 7E!7E$'
::to:port C>;D
I Oa0ooT Fessenger
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport PMMM9PM>M :- 7E!7E$'
::to:port C>;D
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport PMPM :- 7E!7E$' ::to:port
C>;D
I FS. Fessenger
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport >DEC :- 7E!7E$' ::to:port
C>;D
3uin e-emplo de Enmascaramiento de ( con ipta+les.
El guin que mostramos en la ta+la a continuacin considera que se dispone de dos interfaces9 et0M y et0>. (ara nuestro e-emplo la red
local se accede por
la interfa2 et0M y la salida 0acia nternet de 0ace por la interfa2 et0>. Utilice *irestarer para configurar el enmascaramiento y muro
contrafuegos siempre que
sea posi+le. Este guin .# es sustituto para un guin de muro contrafuegos.
3uin +/sico de Enmascaramiento de (.
ITB+inBs0
I cargamos los mdulos del ?ernel necesarios9
Bs+inBmodpro+e ipJconntrac?
Bs+inBmodpro+e ipJconntrac?Jftp
Bs+inBmodpro+e ipJconntrac?Jirc
Bs+inBmodpro+e iptJ7EVE$'
Bs+inBmodpro+e iptJ7E!7E$'
Bs+inBmodpro+e iptJ'#S
Bs+inBmodpro+e iptJFASQUE7A!E
Bs+inBmodpro+e iptJL#3
Bs+inBmodpro+e ipta+leJmangle
Bs+inBmodpro+e ipta+leJnat
Bs+inBmodpro+e ipJnatJftp
Bs+inBmodpro+e ipJnatJirc
I &a+ilitamos el reenv1o de direcciones (
if R :e
BprocBsysBnetBipv<BipJfor
ward SW t0en ec0o M X
BprocBsysBnetBipv<BipJfor
ward
fi
I Esta+leciendo pol1tica de reenv1o del enmascaramiento
Bs+inBipta+les :t filter :( *#78A7! !7#(
I 7eenv1o de trafico intento:externo y externo:interno
Bs+inBipta+les :t filter :A *#78A7! :d MBM :s >@;.>ED.>.MB;PP.;PP.;PP.M :o et0M :-
A$$E('
Bs+inBipta+les :t filter :A *#78A7! :d >@;.>ED.>.MB;PP.;PP.;PP.M :- A$$E('
I Enmascaramiento de todo el trafico saliente
I .#'A9 recordemos que la salida 0acia nternet es por
I la interfa2 et0M
Bs+inBipta+les :t nat :A (#S'7#U'.3 :o et0> :- FASQUE7A!E
I .o enmascararemos tr/fico externo
Bs+inBipta+les :t nat :A (#S'7#U'.3 :o et0> :d MBM :- A$$E('
I (ermitir al tr/fico de la red interna ir a donde sea
Bs+inBipta+les :t filter :A .(U' :s >@;.>ED.>.MB;PP.;PP.;PP.M ' :d MBM :- A$$E('
Bs+inBipta+les :t filter :A #U'(U' :s >@;.>ED.>.MB;PP.;PP.;PP.M :d MBM :- A$$E('
Bs+inBipta+les :t filter :A #U'(U' :p icmp :s >@;.>ED.>.MB;PP.;PP.;PP.M :d MBM :- A$$E('
I 7e:direccionamiento 0acia el puerto C>;D (donde Squid escuc0a
I peticiones" para cualquier peticin originada desde la red
I local 0acia servicios que utilicen protocolo 0ttp) 0ttps y ftp
I (ueden aNadirse m/s re:direccionamientos a discrecin del
I administrador.
I .#'A >9 recordemos que la red local se accede con la interfa2 et0>
I .#'A ;9 Si se utili2a un (roxy transparente) de+er/ cam+iarse
I ::to:port C>;D por ::to:port DM
I *'(:data
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport ;M :- 7E!7E$' ::to:port
C>;D
I *'(
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport ;> :- 7E!7E$' ::to:port
C>;D
I 3#(&E7
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport AM :- 7E!7E$' ::to:port
C>;D
I &''(
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport DM :- 7E!7E$' ::to:port
C>;D
I 8AS
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport ;>M :- 7E!7E$' ::to:port
C>;D
I &''(S
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport <<C :- 7E!7E$' ::to:port
C>;D
I A veces utili2ado para &''(
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport D> :- 7E!7E$' ::to:port
C>;D
I ..'( so+re SSL
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport PEC :- 7E!7E$' ::to:port
C>;D
I AF
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport @D@D :- 7E!7E$' ::to:port
C>;D
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport P>@M9P>@C :- 7E!7E$'
::to:port C>;D
I Oa0ooT Fessenger
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport PMMM9PM>M :- 7E!7E$'
::to:port C>;D
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport PMPM :- 7E!7E$' ::to:port
C>;D
I FS. Fessenger
Bs+inBipta+les :t nat :A (7E7#U'.3 :i et0M :p tcp ::dport >DEC :- 7E!7E$' ::to:port
C>;D
#. Cmo configurar Squid: $estriccin de acceso a sitios %e&.
ntroduccin.
!enegar el acceso a ciertos sitos 8e+ permite 0acer un uso m/s racional del anc0o de +anda con el que se dispone. El funcionamiento es
verdaderamente
simple) y consiste en denegar el acceso a som+res de dominio o direcciones 8e+ que contengan patrones en com6n.
Este manual considera que usted ya 0a le1do previamente) a detalle y en su totalidad el manual H$omo configurar Squid9 Servidor (roxyH y
que 0a
configurado exitosamente Squid como servidor proxy.
Software requerido.
(ara poder llevar la ca+o los procedimientos descritos en este manual y documentos relacionados) usted necesitar/ tener instalado al menos
squid:;.<S'A=LE>.
!efiniendo patrones comunes.
Lo primero ser/ generar una lista la cual contendr/ direcciones 8e+ y pala+ras usualmente utili2adas en nom+res de ciertos dominios.
E-emplos9
www.siti
oporno.c
om
www.otr
ositiopor
no.com
sitioindes
ea+le.co
m
otrositioi
ndesea+l
e.com
napster
s
e
x

p
o
r
n

m
p
C

x
x
x

a
d
u
l
t

w
a
r
e
2
Esta lista) la cual de+er/ ser completada con todas las pala+ras (muc0as de est/ son pala+ras o+scenas en distintos idiomas" y
direcciones 8e+ que el administrador considere pertinentes) la guardaremos como /etc/squid/sitios!
denegados.
(ar/metros en BetcBsquidBsquid.conf
!e+emos definir una Lista de Control de Acceso que as u ve2 defina al fic0ero /etc/squid/sitios!denegados. Esta lista la denominaremos
como denegados.
!e modo tal) la l1nea correspondiente quedar1a del siguiente modo9
acl negados urlJregex HBetcBsquidBsitios:denegadosH
&a+iendo 0ec0o lo anterior) de+eremos tener en la seccin de Listas de Control de Acceso algo como lo siguiente9
I
I 7ecommended minimum configuration9
acl all src M.M.M.MBM.M.M.M
acl manager proto cac0eJo+-ect
acl local0ost src
>;A.M.M.>B;PP.;PP.;PP.;
PP acl redlocal src
>@;.>ED.>.MB;PP.;PP.;P
P.M acl password
proxyJaut0 7EQU7E!
acl negados urlJregex HBetcBsquidBsitios:denegadosH
A continuacin especificaremos una regla de control de acceso para dic0a Lista de Control de Acceso9
0ttpJaccess deny negados
.ote que esta de+e ir antes de cualquier otra regla que permita el acceso a cualquier
otra lista. E-emplo9 7eglas de control de acceso9 denegacin de sitios.
I
I .SE7' O#U7 #8. 7ULE(S" &E7E '# ALL#8 A$$ESS *7#F O#U7 $LE.'S
I
0ttpJacc
ess deny
negados
0ttpJacc
ess allow
local0ost
0ttpJaccess allow
redlocal password
0ttpJaccess deny
all
Si por e-emplo el incluir una pala+ra en particular afecta el acceso a un sitio 8e+) puede generarse una lista de dominios o pala+ras que
contengan un patrn pero que consideraremos como apropiados.
$omo e-emplo9 vamos a suponer que en la lista de sitios denegados est/ la pala+ra sex. esta denegar1a el acceso a cualquier nom+re de
dominio que incluya dic0a cadena de caracteres) como extremesex.com. Sin em+argo tam+i,n estar1a +loqueando a sitios como
sexualidad-ovel.cl) el cual no tiene que ver en lo a+soluto con pornograf1a) sino orientacin sexual para la -uventud. (odemos aNadir este
nom+re de dominio en un fic0eros que denominaremos
/
etc/squi
d/sitios!
inocent
es.
Este fic0ero ser/ definido en una Lista de $ontrol de Acceso del mismo modo en que se 0i2o anteriormente con el fic0ero que contiene
dominios y pala+ras
d
enegadas.
acl inocentes urlJregex HBetcBsquidBsitios:inocentesH
(ara 0acer uso de el fic0ero) solo +astar/ utili2ar la expresin T en la misma l1nea utili2ada para la Regla de Control de Acceso esta+lecida
para denegar el mismo.
0ttpJaccess deny negados Tinocentes
La regla anterior especifica que se denegar/ el acceso a todo lo que comprenda la Lista de Control de Acceso denominada denegados
excepto lo que comprenda la Lista de Control de Acceso denominada inocentes. es decir) se podr/ acceder sin dificultad a
www.sexualidad-oven.cl manteniendo la restriccin para la cadena de caracteres sex.
*inalmente) solo +astar/ reiniciar Squid para que tomen efecto los cam+ios y podamos 0acer prue+as.
BetcBrc.dBinit.dBsquid restart
'. Cmo configurar Squid: Acceso !or Autenticacin.
ntroduccin.
Es muy 6til el poder esta+lecer un sistema de autenticacin para poder acceder 0acia nternet) pues esto permite controlar quienes si y
quienes no acceder/n
a nternet sin importar desde que m/quina de la red local lo 0agan. Sera de modo tal que tendremos un do+le control) primero por
direccin ( y segundo
por nom+re de usuario y contraseNa.
(ara tal fin nos valdremos de un programa externo para autenticar) como es ncsa%aut#) de la .$SA (.ational $enter for Supercomputing
Applications") y
que ya viene incluido como parte del paquete principal de Squid en la mayor1a de las distri+uciones actuales.
Este manual considera que usted ya 0a le1do previamente) a detalle y en su totalidad el manual H$omo configurar Squid9 Servidor (roxyH y
que 0a
configurado exitosamente Squid como servidor proxy.
Software requerido.
(ara poder llevar la ca+o los procedimientos descritos en este manual y documentos relacionados) usted necesitar/ tener instalado al menos
lo siguiente9
squid:;.<.S'A=LE>
apac0e:>.C.;;
(rocedimientos
$reacin del fic0ero de contraseNas.
Se requerir/ la creacin previa de un fic0ero que contendr/ los nom+res de usuarios y sus correspondientes contraseNas (cifradas". El
fic0ero puede
locali2arse en cualquier lugar del sistema) con la 6nica condicin que sea asequi+le para el usuario squid.
!e+e procederse a crear un fic0ero /etc/squid/squid!passwd9
touc0 BetcBsquidBsquid:passwd
$omo medida de seguridad) este fic0ero de+e 0acerse le1+le y escri+i+le solo para el usuario squid9
c0mod EMM BetcBsquidBsquid:passwd
c0own squid9squid BetcBsquidBsquid:passwd
A continuacin de+eremos dar de alta las cuentas que sean necesarias) utili2ando el comando #tpasswd !mismo que "iene
incluido en el paquete apac#e!).7.++!. E-emplo9
0tpasswd BetcBsquidBsquid:passwd -osepere2
Lo anterior solicitar/ teclear una nueva contraseNa para el usuario 8osepere9 y confirmar tecleando ,sta de nuevo. 7epita con el resto de
las cuentas que requiera dar de alta.
'odas las cuentas que se den de alta de este modo son independientes a las ya existentes en el sistema. Al dar de alta una cuenta o cam+iar
una contraseNa lo estar/ 0aciendo exclusivamente para el acceso al servidor (roxy. Las cuentas son independientes a las que se tengan
existentes en el sistema como ser1an
s#ell) correo y Sam+a.
(. )i&liograf*a
0ttp9BBwww.linuxp
aratodos.com
0ttp9BB+ulmalug.n
et
0ttp9BBsquid.nlanr.
netB
0ttp9BBwww.opens
ourcefirewall.com
0ttp9BBwww.p0pnu
?e:espanol.org