Академический Документы
Профессиональный Документы
Культура Документы
Red Loca: cuaquer tpo de consuta haca domnos externos y ocaes (es decr, www.yahoo.com,
www.googe.com, acancebre.org, adems de *ido*inio.co*).
Resto de mundo: so puede hacer consutas para a zona de *ido*inio.co*
De este modo se mpde que haya consutas recursvas y con esto mpedr a posbdad de
sufrr/partcpar de un ataque DDoS.
592
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
options \
directory +/var/named+V
dump!"ile +/var/named/data/cache.dump@db+V
statistics!"ile +/var/named/data/named.stats@txt+V
memstatistics!"ile +/var/named/data/named.mem.stats@txt+V
"orarders \186@165@$@1V ]V
"orard "irstV
dnssec!enable yesV
dnssec!validation yesV
dnssec!lookaside autoV
bindkeys!"ile +/etc/named@iscdlv@key+V
]V
logging \
channel de"ault.debug \
"ile +data/named@run+V
severity dynamicV
]V
]V
controls \
inet 167@$@$@1 allo \ 167@$@$@1V ] keys \ +rndc!key+V ]V
]V
include +/etc/rndc@key+V
vie +publico+ \
match!clients \ anyV ]V
recursion noV
Cone +@+ (, \
type hintV
"ile +named@ca+V
]V
Cone +midominio.com+ \
type masterV
"ile +data/midominio.com@Cone+V
allo!update \ noneV ]V
allo!trans"er \ 6$$@76@159@696V 6$$@76@159@691V ]V
]V
]V
vie +local+ \
match!clients \
167@$@$@$/5V
1$@$@$@$/5V
176@16@$@$/16V
186@165@$@$/16V
]V
recursion yesV
include +/etc/named@r"c1816@Cones+V
Cone +@+ (, \
type hintV
"ile +named@ca+V
]V
Cone +miredlocal+ \
type masterV
"ile +data/miredlocal@Cone+V
allo!update \ noneV ]V
allo!trans"er \ 186@165@$@6V ]V
]V
]V
593
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Un DDo> (Dstrbuted Dena of >ervce) es una ampacn de ataque Do>, se efecta con a
nstaacn de varos agentes remotos en muchas computadoras que pueden estar ocazadas en
dferentes puntos de mundo. E atacante consgue coordnar esos agentes para as, de forma
masva, ampfcar e voumen de saturacn de nformacn (food), pudendo darse casos de un
ataque de centos o mares de computadoras drgdo a una mquna o red ob|etvo. Esta tcnca
se ha reveado como una de as ms efcaces y sencas a a hora de coapsar servdores, a
tecnooga dstrbuda ha do hacendo ms sofstcada hasta e punto de otorgar poder de causar
daos seros a personas con escaso conocmento tcnco.
La faa reportada por a herramenta en nea de DNS Report, para un servdor DNS que permte
consutas recursvas, ndcar ago como o sguente:
2,AA1A) 1ne or more of your nameservers reports tat it is an open &?$ server. Tis usually means tat anyone in te (orld can query it for
domains it is not autoritative for @it is possible tat te &?$ server advertises tat it does recursive loo'ups (en it does not, but tat
souldnGt appenC. Tis can cause an e4cessive load on your &?$ server. Alos, it is strongly discouraged to ave a &?$ server be bot
autoritative for your domain and be recursive @even if it is not openC, due to te potential for cace poisoning @(it no recursion, tere is no
cace, and it is impossible to poison itC. Alos, te bad guys could use your &?$ server as part of an attac', by forging teir 0F address3
Sgnfca que e servdor DNS puede permtr a cuaquera reazar consutas recursvas. S se trata
de un DNS que se desea pueda ser consutado por cuaquera, como puede ser e caso de DNS de
un ISP, esto es norma y esperado. S se trata de un servdor que so debe consutar a red oca, o
ben que se utza para propagar domnos ao|ados de manera oca, s es convenente tomar
meddas a respecto.
Soucn a probema es modfcar e archvo named.con&, donde se aade en a seccn de vsta
oca (vew "oca") a opcn recursion yesf y una o ms neas que defnan a red o as redes que
tendrn permtdo reazar todo tpo de consutas.
594
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
options \
directory +/var/named+V
dump!"ile +/var/named/data/cache.dump@db+V
statistics!"ile +/var/named/data/named.stats@txt+V
memstatistics!"ile +/var/named/data/named.mem.stats@txt+V
"orarders \ 186@165@7$@1V ]V
"orard "irstV
dnssec!enable yesV
dnssec!validation yesV
dnssec!lookaside autoV
bindkeys!"ile +/etc/named@iscdlv@key+V
]V
logging \
channel de"ault.debug \
"ile +data/named@run+V
severity dynamicV
]V
]V
controls \
inet 167@$@$@1 allo \ 167@$@$@1V ] keys \ +rndc!key+V ]V
]V
include +/etc/rndc@key+V
vie +local+ \
match!clients \
167@$@$@$/5V
1$@$@$@$/5V
176@16@$@$/16V
186@165@$@$/16V
]V
recursion yesV
include +/etc/named@r"c1816@Cones+V
Cone +@+ (, \
type hintV
"ile +named@ca+V
]V
]V
Lo anteror hace que so se puedan reazar todo tpo de consutas en e DNS desde 127.0.0.0/8,
10.0.0.0/8, 172.16.0.0/12 y 192.168.0.0/16, ya sea para un nombre de domno ao|ado de manera
oca y otros domnos resuetos en otros servdores (e|empo: (((.yaoo.com, (((.google.com,
(((.alcancelibre.org, etc). E resto de mundo so podr reazar consutas sobre os domnos
ao|ados de mane|a oca y que estn confgurado para permtro.
En a sguente confguracn de e|empo, se pretende ograr o sguente:
Red Loca: cuaquer tpo de consuta haca domnos externos y ocaes (es decr,
www.yahoo.com, www.googe.com, acancebre.org, adems de *ido*inio.co*).
Resto de mundo: so puede hacer consutas para a zona de *ido*inio.co*
De este modo se mpde que haya consutas recursvas y con esto mpedr a posbdad de
sufrr/partcpar de un ataque DDoS.
595
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
options \
directory +/var/named+V
dump!"ile +/var/named/data/cache.dump@db+V
statistics!"ile +/var/named/data/named.stats@txt+V
memstatistics!"ile +/var/named/data/named.mem.stats@txt+V
"orarders \186@165@$@1V ]V
"orard "irstV
dnssec!enable yesV
dnssec!validation yesV
dnssec!lookaside autoV
bindkeys!"ile +/etc/named@iscdlv@key+V
]V
logging \
channel de"ault.debug \
"ile +data/named@run+V
severity dynamicV
]V
]V
controls \
inet 167@$@$@1 allo \ 167@$@$@1V ] keys \ +rndc!key+V ]V
]V
include +/etc/rndc@key+V
vie +publico+ \
match!clients \ anyV ]V
recursion noV
Cone +@+ (, \
type hintV
"ile +named@ca+V
]V
Cone +midominio.com+ \
type masterV
"ile +data/midominio.com@Cone+V
allo!update \ noneV ]V
allo!trans"er \ 6$4@1?@648@79V 6$5@75@68@79V 81@185@66@79V ]V
]V
]V
vie +local+ \
match!clients \
167@$@$@$/5V
1$@$@$@$/5V
176@16@$@$/16V
186@165@$@$/16V
]V
recursion yesV
include +/etc/named@r"c1816@Cones+V
Cone +@+ (, \
type hintV
"ile +named@ca+V
]V
Cone +miredlocal+ \
type masterV
"ile +data/miredlocal@Cone+V
allo!update \ noneV ]V
allo!trans"er \ 186@165@$@6V ]V
]V
]V
596
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
9+.3.5. >eguridad adicional en D)> para uso e2clusivo en red local.
S se va a tratar de un servdor de nombres de domno para uso excusvo en red oca, y se
queren evtar probemas de segurdad de dferente ndoe, puede utzarse e parmetro alloP(
#uery, e cua servr para especfcar que so certas dreccones podrn reazar consutas a
servdor de nombres de domno. Se pueden especfcar drectamente dreccones IP, redes
competas o stas de contro de acceso que debern defnrse antes de cuaquer otra cosa en e
archvo =etc=named.con&.
597
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
9+.3.5.+. Arc$ivo =etc=named.con&
options \
directory +/var/named/+V
dump!"ile +/var/named/data/cache.dump@db+V
statistics!"ile +/var/named/data/named.stats@txt+V
memstatistics!"ile +/var/named/data/named.mem.stats@txt+V
"orarders \
5@5@5@5V
5@5@4@4V
]V
"orard "irstV
dnssec!enable yesV
dnssec!validation yesV
dnssec!lookaside autoV
bindkeys!"ile +/etc/named@iscdlv@key+V
]V
logging \
channel de"ault.debug \
"ile +data/named@run+V
severity dynamicV
]V
]V
controls \
inet 167@$@$@1 allo \ 167@$@$@1V ] keys \ +rndc!key+V ]V
]V
include +/etc/rndc@key+V
vie +local+ \
match!clients \
167@$@$@$/5V
1$@$@$@$/5V
176@16@$@$/16V
186@165@$@$/16V
]V
recursion yesV
include +/etc/named@r"c1816@Cones+V
Cone +@+ (, \
type hintV
"ile +named@ca+V
]V
Cone +red!local+ \
type masterV
"ile +data/red!local@Cone+V
allo!update \ noneV ]V
]V
Cone +1@165@186@in!addr@arpa+ \
type masterV
"ile +data/1@165@186@in!addr@arpa@Cone+V
allo!update \ noneV ]V
]V
]V
598
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
9+.3.6. as 8onas esclavas.
Las zonas escavas se referen a aqueas hospedadas en servdores de nombres de domno
secundaros y que hacen as funcones de redundar as zonas maestras en os servdores de
nombres de domno prmaros. E contendo de archvo de zona es e msmo que en servdor
prmaro. La dferenca est en a seccn de texto utzada en named.con&, donde as zonas se
defnen como escavas y defnen os servdores donde est hospedada a zona maestra.
9+.3.6.+. Arc$ivo named.con& >ervidor D)> secundario.
vie +publico+ \
match!clients \ anyV ]V
recursion noV
Cone +@+ (, \
type hintV
"ile +named@ca+V
]V
Cone +dominio@com+ \
$y'e s)#*eY
"ile +dominio@com@Cone+V
9#s$ers X 4<2.438.4.25EY ZY
]V
]V
vie +local+ \
match!clients \
167@$@$@$/5V
1$@$@$@$/5V
176@16@$@$/16V
186@165@$@$/16V
]V
recursion yesV
include +/etc/named@r"c1816@Cones+V
Cone +@+ (, \
type hintV
"ile +named@ca+V
]V
Cone +red!local+ \
$y'e s)#*eY
"ile +data/red!local@Cone+V
9#s$ers X 4<2.438.4.25EY ZY
]V
Cone +1@165@186@in!addr@arpa+ \
$y'e s)#*eY
"ile +data/1@165@186@in!addr@arpa@Cone+V
9#s$ers X 4<2.438.4.25EY ZY
]V
]V
Adconamente, s desea ncrementar segurdad y desea especfcar en el >ervidor D)>
<rimario que servdores tendrn permtdo ser servdores de nombres de domno secundaro, es
decr, hacer transferencas, puede utzar e parmetro alloP(trans&er de sguente modo:
599
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
9+.3.6.*. Arc$ivo named.con& >ervidor D)> <rimario.
vie +publico+ \
match!clients \ anyV ]V
recursion noV
Cone +@+ (, \
type hintV
"ile +named@ca+V
]V
Cone +dominio@com+ \
type masterV
"ile +dominio@com@Cone+V
allo!update \ noneV ]V
#))o?-$r#ns+er X
2//.33.4E3.24=Y
2//.33.4E3.2/<Y
ZY
]V
]V
vie +local+ \
match!clients \
167@$@$@$/5V
1$@$@$@$/5V
176@16@$@$/16V
186@165@$@$/16V
]V
recursion yesV
include +/etc/named@r"c1816@Cones+V
Cone +@+ (, \
type hintV
"ile +named@ca+V
]V
Cone +red!local+ \
type masterV
"ile +data/red!local@Cone+V
allo!update \ noneV ]V
#))o?-$r#ns+er X
4<2.438.4.45Y
4<2.438.4.43Y
ZY
]V
Cone +1@165@186@in!addr@arpa+ \
type masterV
"ile +data/1@165@186@in!addr@arpa@Cone+V
allo!update \ noneV ]V
#))o?-$r#ns+er X
4<2.438.4.45Y
4<2.438.4.43Y
ZY
]V
]V
9+.3.7. >eguridad adicional para trans&erencias de 8ona.
Cuando se gestonan domnos a travs de redes pbcas, es mportante consderar que s se
tenen esquemas de servdores maestros y esclavos, sempre ser ms convenente utzar una
clave ci&rada en ugar de una dreccn IP, debdo a que esta tma puede ser fasfcada ba|o
certas crcunstancas.
600
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Comnmente se defnen as dreccones IP desde as cuaes se permtr transferencas de zonas,
utzando una confguracn en e archvo =var=named=c$root=etc=named.con& como a
e|empfcada a contnuacn, donde os servdores escavos corresponden a os servdores con
dreccones IP 192.168.1.11 y 192.168.1.12:
Cone +mi!dominio@org+ \
type masterV
"ile +data/mi!dominio@org@Cone+V
allo!update \ noneV ]#
allo!trans"er \ 186@165@1@11V 186@165@1@16V ]V
]V
Lo anteror permte a transferenca de zona para os servdores con dreccones IP 192.168.1.11 y
192.168.1.12, os cuaes utzan a sguente confguracn en e archvo
=var=named=c$root=etc=named.con&, e|empfcada a contnuacn, donde e servdor prmaro
(zonas maestras) corresponde a servdor con dreccn IP 192.168.1.1:
Cone +mi!dominio@org+ \
type slaveV
"ile +data/mi!dominio@org@Cone+V
masters \ 186@165@1@1V ]V
]V
E nconvenente de esquema anteror es que es fc fasfcar as dreccones IP. A fn de evtar
que esto ocurra, e mtodo recomendado ser utzar una cave cfrada que ser vadada en ugar
de a dreccn IP. La ave se crea con e mandato dnssec(Leygen, especfcando un agortmo,
que puede ser '>A:D5 o '>A, D>A, DE (Dffe Eeman) o E:AC(:D5, e tamao de a ave en
octetos (bts), e tpo de a ave, que puede ser ZONE, HOST, ENTITY o USER y e nombre especfco
para a cave cfrada. DSA y RSA se utzan para D)> >eguro (D)>>"C), en tanto que E:AC(
:D5 se utza para @>%? (@ransfer >%?nature o transferenca de frma). Lo ms comn es utzar
@>%?. En e sguente e|empo, se generar en e drectoro de traba|o actua a cave mi(
dominio.org, utzando =dev=random como fuente de datos aeatoros, un agortmo E:AC(:D5
tpo E0>@ de 128 octetos (bts):
dnssec!keygen !r /dev/random !a 2-4)!-%9 !b 165 !n 2/S0 mi!dominio@org
Lo anteror devueve una sada smar a a sguente:
Hmi!dominio@org@N197N?6?66
A msmo tempo se generaran dos archvos en e drectoro =var=named=c$root=var=named=, que
corresponderan a Kmi(dominio.org.H+57H3*3**.Ley y Kmi(dominio.org.
H+57H3*3**.private. Kmi(dominio.org.H+57H3*3**.Ley deber tener un contendo como e
sguente, e cua corresponde a regstro que se aade dentro de archvo de zona:
mi!dominio@org@ (, H&; 916 ? 197 ,<u,uxvG4Mtd?mriuyg05l**
Kmi(dominio.org.H+57H3*3**.private deber tener un contendo como e sguente:
<rivate!key!"ormat# v1@6
4lgorithm# 197 (2-4).-%9)
Hey# ,<u,uxvG4Mtd?mriuyg05l**
601
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
En ambos casos, )<u)u2v[A.td3mriuyg@9BRR corresponde a a cave cfrada. Ambos deben
tener a msma cave.
Los dos archvos so deben tener atrbutos de ectura para e usuaro named.
chmod 4$$ Hmi!dominio@org@N197N?6?66@K
chon named@named Hmi!dominio@org@N197N?6?66@K
A fn de poder ser utzados, ambos archvos deben ser movdos haca e drectoro
=var=named=c$root=var=named=data=.
mv Hmi!dominio@org@N197N?6?66@K /var/named/chroot/var/named/data/
A contnuacn, restaure os atrbutos predetermnados para estos archvos utzando e mandato
restorecon, de sguente modo:
restorecon !R /var/named/chroot/var/named/data/
En e servdor prmaro (zonas maestras), se aade a sguente confguracn en e archvo
=var=named=c$root=etc=named.con&:
key mi!dominio@org \
algorithm 2-4)!-%9V
secret +,<u,uxvG4Mtd?mriuyg05l**+V
]V
Cone +mi!dominio@org+ \
type masterV
"ile +data/mi!dominio@org@Cone+V
allo!update \ noneV ]V
allo!trans"er \ key mi!dominio@orgV ]V
]V
Los servdores escavos utzaran a sguente confguracn en e archvo
=var=named=c$root=etc=named.con&, en donde se defne a cave y que sta ser utzada para
reazar conexones haca e servdor prmaro (zonas maestras) (192.168.1.1, en e e|empo):
7ey 9%--o9%n%o.or X
#)or%$h9 IMAC-MD5Y
se&re$ "NA.N.C*KAH$-39r%.yT8[=="Y
ZY
ser*er 4<2.438.4.4 X
7eys X 9%--o9%n%o.orY ZY
ZY
Cone +mi!dominio@org+ \
type slaveV
masters \ 186@165@1@1V ]V
]V
602
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
9+.3.7.+. Compro!aciones.
Tanto en e servdor prmaro (zonas maestras) como en os servdores escavos, utce e mandato
tail para ver a sada de archvo =var=log=messages, pero so aqueo que contenga a cadena
de caracteres named:
tail !" /var/log/messages Zgrep named
A rencar e servco named en servdor prmaro (zonas maestras), se debe mostrar una sada
smar a a sguente cuando un servdor escavo reaza una transferenca:
Sep 1$ $1#97#4$ servidor namedD6$46E# listening on (<v4 inter"ace eth$B 186@165@1@64A9?
Sep 1$ $1#97#4$ servidor namedD6$46E# command channel listening on 167@$@$@1A89?
Sep 1$ $1#97#4$ servidor namedD6$46E# Cone $@in!addr@arpa/(,# loaded serial 46
Sep 1$ $1#97#4$ servidor namedD6$46E# Cone $@$@167@in!addr@arpa/(,# loaded serial 1887$667$$
Sep 1$ $1#97#4$ servidor namedD6$46E# Cone 699@in!addr@arpa/(,# loaded serial 46
Sep 1$ $1#97#4$ servidor namedD6$46E# Cone
$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@ip6@arpa/(,# loaded serial 1887$667$$
Sep 1$ $1#97#4$ servidor namedD6$46E# Cone localdomain/(,# loaded serial 46
Sep 1$ $1#97#4$ servidor namedD6$46E# Cone localhost/(,# loaded serial 46
Sep 1$ $1#97#4$ servidor namedD6$46E# Cone mi!dominio@org/(,# loaded serial 6$$8$81$$1
Sep 1$ $1#97#4$ servidor named# (niciaciRn de named succeeded
Sep 1$ $1#97#4$ servidor namedD6$46E# running
Sep 1$ $1#97#4$ servidor namedD6$46E# Cone mi!dominio@org/(,# sending noti"ies (serial 6$$8$81$$1)
Se' 4/ /4D5<DE< ser*%-or n#9e-"3/E2(D &)%en$ 4<2.438.4.44T3284=D $r#ns+er o+ B9%--o9%n%o.or8FNBD
AXFR s$#r$e-
A rencar e servco named en os servdores escavos, se debe mostrar una sada smar a a
sguente:
Sep 1$ $1#95#19 servidor namedD9$5$E# listening on (<v4 inter"ace eth$B 186@165@1@69?A9?
Sep 1$ $1#95#19 servidor namedD9$5$E# command channel listening on 167@$@$@1A89?
Sep 1$ $1#95#19 servidor namedD9$5$E# Cone $@in!addr@arpa/(,# loaded serial 46
Sep 1$ $1#95#19 servidor namedD9$5$E# Cone $@$@167@in!addr@arpa/(,# loaded serial 1887$667$$
Sep 1$ $1#95#19 servidor namedD9$5$E# Cone 699@in!addr@arpa/(,# loaded serial 46
Sep 1$ $1#95#19 servidor namedD9$5$E# Cone
$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@$@ip6@arpa/(,# loaded serial 1887$667$$
Sep 1$ $1#95#19 servidor namedD9$5$E# Cone localdomain/(,# loaded serial 46
Sep 1$ $1#95#19 servidor namedD9$5$E# Cone localhost/(,# loaded serial 46
Sep 1$ $1#95#19 servidor namedD9$5$E# running
Sep 1$ $1#95#19 servidor named# (niciaciRn de named succeeded
Se' 4/ /4D58D45 ser*%-or n#9e-"5/8/(D :one 9%--o9%n%o.or8FND $r#ns+erre- ser%#) 2//</<4//4
Se' 4/ /4D58D45 ser*%-or n#9e-"5/8/(D $r#ns+er o+ B9%--o9%n%o.or8FNB +ro9 4<2.438.4.4T53D en- o+
$r#ns+er
Se' 4/ /4D58D45 ser*%-or n#9e-"5/8/(D :one 9%--o9%n%o.or8FND sen-%n no$%+%es 1ser%#) 2//</<4//45
9+.3.9. 'einiciar servicio y depuracin de con&iguracin.
A termnar de edtar todos os archvos nvoucrados, so bastar rencar e servdor de nombres
de domno.
service named restart
S queremos que e servdor de nombres de domno quede aaddo entre os servcos en e
arranque de sstema, deberemos reazar o sguente a fn de habtar named |unto con e
arranque de sstema:
chkcon"ig named on
Reace prueba de depuracn y verfque que a zona haya cargado con nmero de sere:
603
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
tail !5$ /var/log/messages Zgrep named
Lo anteror, s est funconando correctamente, debera devover ago parecdo a o mostrado a
contnuacn:
Sep 1$ $6#19#19 servidor namedD?$615E# starting :(,% 8@6@6 !u named
Sep 1$ $6#19#19 servidor namedD?$615E# using 1 )<>
Sep 1$ $6#19#19 servidor named# (niciaciRn de named succeeded
Sep 1$ $6#19#19 servidor namedD?$666E# loading con"iguration "rom U/etc/named@con"U
Sep 1$ $6#19#19 servidor namedD?$666E# no (<v6 inter"aces "ound
Sep 1$ $6#19#19 servidor namedD?$666E# listening on (<v4 inter"ace loB 167@$@$@1A9?
Sep 1$ $6#19#19 servidor namedD?$666E# listening on (<v4 inter"ace eth$B 186@165@1@1A9?
Sep 1$ $6#19#19 servidor namedD?$666E# command channel listening on 167@$@$@1A89?
Sep 1$ $6#19#16 servidor namedD?$666E# Cone $@$@167@in!addr@arpa/(,# )o#-e- ser%#) 3
Sep 1$ $6#19#16 servidor namedD?$666E# Cone 1@165@186@in!addr@arpa/(,# )o#-e- ser%#) 2//</<4//4
Sep 1$ $6#19#16 servidor namedD?$666E# Cone localhost/(,# )o#-e- ser%#) 4
Sep 1$ $6#19#16 servidor namedD?$666E# Cone mi!dominio@com@mx/(,# )o#-e- ser%#) 2//</<4//4
Sep 1$ $6#19#16 servidor namedD?$666E# running
Sep 1$ $6#19#16 servidor namedD?$666E# Cone 1@165@186@in!addr@arpa/(,# sending noti"ies (serial
6$$8$81$$1)
Sep 1$ $6#19#16 servidor namedD?$666E# Cone mi!dominio@com@mx/(,# sending noti"ies (serial
6$$8$81$$1)
604
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
9*. Con&iguracin de >#uid- <ar;metros
!;sicos.
Autor: "oel Barrios &ue!as
Correo electrnico: dar)#hra*+g*ail.co*
#itio de Red: http://www.alcancelibre.org/
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. b) No puede utzar esta obra para fnes comercaes. c) S atera o
transforma esta obra, o genera una obra dervada, so puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o
dstrbur a obra, tene que de|ar ben caro os trmnos de a cenca de esta obra. Aguna de estas condcones puede no apcarse s se
obtene e permso de ttuar de os derechos de autor. Los derechos dervados de usos egtmos u otras mtacones no se ven afectados por o
anteror. La nformacn contenda en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn
responsabdad aguna s e usuaro o ector hace ma uso de stos.
9*.+. %ntroduccin.
9*.+.+. Bu es >ervidor %ntermediario M<ro2yN?
E trmno en nges I<ro2yJ tene un sgnfcado muy genera y a msmo tempo ambguo,
aunque nvarabemente se consdera un snnmo de concepto de I%ntermediarioJ. Se suee
traducr, en e sentdo estrcto, como delegado o apoderado (e que tene e que poder sobre
otro).
Un >ervidor %ntermediario se defne como una computadora o dspostvo que ofrece un servco
de red que consste en permtr a os centes reazar conexones de red ndrectas haca otros
servcos de red. Durante e proceso ocurre o sguente:
1. Cente se conecta haca un >ervidor <ro2y.
2. Cente socta una conexn, archvo u otro recurso dsponbe en un servdor dstnto.
3. Servdor Intermedaro proporcona e recurso ya sea conectndose haca e servdor
especfcado o srvendo ste desde un cach.
4. En agunos casos e >ervidor %ntermediario puede aterar a soctud de cente o
ben a respuesta de servdor para dversos propstos.
Los >ervidores <ro2y generamente se hacen traba|ar smutneamente como muro cortafuegos
operando en e )ivel de 'ed, actuando como ftro de paquetes, como en e caso de ipta!les, o
ben operando en e )ivel de Aplicacin, controando dversos servcos, como es e caso de @C<
brapper. Dependendo de contexto, e muro cortafuegos tambn se conoce como B<D o Border
<rotecton Devce o smpemente &iltro de pa#uetes.
Una apcacn comn de os >ervidores <ro2y es funconar como cach de contendo de Red
(prncpamente HTTP), proporconando en a proxmdad de os centes un cach de pgnas y
archvos dsponbes a travs de a Red en servdores HTTP remotos, permtendo a os centes de
a red oca acceder haca stos de forma ms rpda y confabe.
Cuando se recbe una petcn para un recurso de Red especfcado en un ,' (,nform 'esource
ocator) e >ervidor %ntermediario busca e resutado de ,' dentro de cach. S ste es
encontrado, e >ervidor %ntermediario responde a cente proporconado nmedatamente e
contendo soctado. S e contendo soctado no estuvera dsponbe en e cach, e >ervidor
%ntermediario o traer desde servdor remoto, entregndoo a cente que o soct y
guardando una copa en e cach. E contendo en e cach es emnado uego a travs de un
agortmo de expracn de acuerdo a a antgedad, tamao e hstora de respuestas a
solicitudes (hts) (e|empos: ',, F,DA y ?D>F).
605
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Los >ervidores <ro2y para contendo de Red (Web Proxes) tambn pueden actuar como ftros
de contendo servdo, apcando potcas de censura de acuerdo a crteros arbtraros.
9*.+.*. Acerca de >#uid.
>#uid es un >ervidor %ntermediario de ato desempeo que se ha vendo desarroando desde
hace varos aos y es hoy en da un muy popuar y ampamente utzado entre os sstemas
operatvos como GNU/Lnux y dervados de Unx. Es muy confabe, robusto y verst y se
dstrbuye ba|o os trmnos de a Lcenca Pbca Genera GNU (?),=?<). Sendo equpamento
gco li!re, est dsponbe e cdgo fuente para quen as o requera.
Entre otras cosas, >#uid puede funconar como >ervidor %ntermediario y cac$ de contenido
de 'ed para os protocoos E@@<, F@<, ?0<E"' y bA%>, Proxy de >>, cach transparente,
bbC<, aceeracn E@@<, cach de consutas DNS y otras muchas ms como ftracn de
contendo y contro de acceso por IP y por usuaro.
>#uid consste de un programa prncpa como servdor, un programa para bsqueda en
servdores D)>, programas opconaes para reescrbr soctudes y reazar autentcacn y
agunas herramentas para admnstracn y y herramentas para centes. A ncar >#uid da
orgen a un nmero confgurabe (5, de modo predefndo a travs de parmetro dnsQc$ildren)
de procesos de bsqueda en servdores D)>, cada uno de os cuaes reaza una bsqueda nca
en servdores D)>, reducendo a cantdad de tempo de espera para as bsquedas en servdores
D)>.
)ota.
>#uid no de!e ser utili8ado como >ervidor %ntermediario M<ro2yN para protocoos como >:@<,
<0<3, @")"@, >>E, %'C, etc. S se requere ntermedar para cual#uier protocolo distinto a E@@<,
E@@<>, F@<, ?0<E"' y bA%> se requerr mpementar obgatoramente un enmascaramento de IP
o )A@ ()etwork Address @ransaton) o ben hacer uso de un servdor >0CK> como Dante
(http://www.net.no/dante/).
URL: http://www.squd-cache.org/
9*.+.*.+. Algoritmos de cac$ utili8ados por >#uid.
A travs de un parmetro (cac$eQreplacementQpolicy) >#uid ncuye soporte para os sguentes
agortmos para e cach:
',
Acrnmo de east 'ecenty ,sed, que traduce como :enos 'ecientemente ,tili8ado.
En este agortmo os ob|etos que no han sdo acceddos en mucho tempo son emnados
prmero, mantenendo sempre en e cach a os ob|etos ms recentemente soctados.
lsta poltica es la utili8ada por >#uid de modo prede&inido.
F,DA
Acrnmo de east Frequenty ,sed wth Dynamc Agng, que se traduce como :enos
Frecuentemente ,tili8ado con "nve.ecimiento Din;mico. En este agortmo os
ob|etos ms soctados permanecen en e cach sn mportar su tamao optmzando a
e&iciencia (ht rate) por octetos (Bytes) a expensas de a efcenca msma, de modo que
un ob|eto grande que se socte con mayor frecuenca mpedr que se pueda hacer cach
de ob|etos pequeos que se socten con menor frecuenca.
?D>F
Acrnmo de ?reedyDua >ze Frequency, que se traduce como Frecuencia de tamao
,reed/0ual (codicioso dual), que es e agortmo sobre e cua se basa ?D>F. Optmza a
e&iciencia (ht rate) por ob|eto mantenendo en e cach os ob|etos pequeos ms
frecuentemente soctados de modo que hay me|ores posbdades de ograr respuesta a
una solicitud (ht). Tene una efcenca por octetos (Bytes) menor que e agortmo
F,DA debdo a que descarta de cach ob|etos grandes que sean soctado con
frecuenca.
606
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
9*.*. "#uipamiento lgico necesario.
Para poder evar a cabo os procedmentos descrtos en este y otros documentos reaconados,
usted necestar tener nstaado a menos o sguente:
A menos squd-2.5.STABLE6
@odos os parches de segurdad dsponbes para a versn de sstema operatvo que
est utzando.
Un muro cortafuegos confgurado con system(con&ig(securitylevel, Firestarter, o
>$orePall.
Debe tomarse en consderacn que, de ser posbe, se debe utzar siempre as versones
estabes ms recentes de todo equpamento gco que vaya a ser nstaado para reazar os
procedmentos descrtos en este manua, a fn de contar con os parches de segurdad necesaros.
)inguna versin de >#uid anterior a la *.5.>@AB"6 se considera como apropiada debdo
a faas de segurdad de gran mportanca.
>#uid no se nstaa de manera predetermnada a menos que especfque o contraro durante a
nstaacn de sstema operatvo, sn embargo vene ncudo en cas todas as dstrbucones
actuaes. E procedmento de nstaacn es exactamente e msmo que con cuaquer otro
equpamento gco.
9*.*.+. %nstalacin a travs de yum.
S cuenta con un sstema con CentOS o Whte Box Enterprse Lnux 3 o versones posterores,
e|ecute o sguente y se nstaar todo o necesaro |unto con sus dependencas:
yum !y install sJuid
9*.3. >"inu2 y el servicio s#uid.
A fn de que SELnux permta a servco s#uid que os centes se conecten desde cuaquer
dreccn IP, e|ecutar o sguente.
setsebool !< sJuid.connect.any 1
)ota.
En Cent0> 5 y 'ed Eat "nterprise inu2 5, se pude utzar una potca adcona. Para que SELnux
permta a servco s#uid funconar normamente, hacendo que todo o anterormente descrto en esta
seccn perda sentdo, utce e sguente mandato:
setsebool !< sJuid.disable.trans 1
9*.4. Antes de continuar.
Evte de|ar espacios vacos en ugares ndebdos. E sguente e|empo muestra a manera
ncorrecta de habtar un parmetro.
Ma
A /pciRn %n&orre&$#9en$e habilitada@
h$$'_'or$ 5$5$
607
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
E sguente e|empo muestra a manera correcta de habtar un parmetro.
Ben
A /pciRn &orre&$#9en$e habilitada@
h$$'_'or$ 5$5$
9*.5. Con&iguracin !;sica.
>#uid utza e archvo de confguracn ocazado en =etc=s#uid=s#uid.con&, y podr traba|ar
sobre este utzando su edtor de texto smpe preferdo. Exsten un gran nmero de parmetros,
de os cuaes recomendamos confgurar os sguentes:
A menos una ista de Control de Acceso
A menos una 'egla de Control de Acceso
http_port
cache_dr
error_drectory
E resto de os parmetros, menconados en este documento, son opconaes.
9*.5.+. Controles de acceso.
Es necesaro estabecer istas de Control de Acceso que defnan una red o ben certas
mqunas en partcuar. A cada sta se e asgnar una 'egla de Control de Acceso que
permtr o denegar e acceso a >#uid. Procedamos a entender como defnr unas y otras.
9*.5.+.+. istas de control de acceso.
De modo predetermnado en Cent0> 6, y 'ed Eat "nterprise inu2 6, Squd habta e acceso
a todas as redes ocaes, defndas en e RFC1918. Es decr, permte e acceso a 10.0.0.0/8,
172.16.0.0/12, 192.168.0.0/16, fc00::/7, y fe80::/10.
A &xample rule alloing access "rom your local netorks@
A 4dapt to list your (internal) (< netorks "rom here brosing
A should be alloed
acl localnet src 1$@$@$@$/5 A R=)1815 possible internal netork
acl localnet src 176@16@$@$/16 A R=)1815 possible internal netork
acl localnet src 186@165@$@$/16 A R=)1815 possible internal netork
acl localnet src "c$$##/7 A R=) 418? local private netork range
acl localnet src "e5$##/1$ A R=) 4681 link!local (directly plugged) machines
Deshabte todo o anteror, coocando una amoada (# a nco de cada nea.
A &xample rule alloing access "rom your local netorks@
A 4dapt to list your (internal) (< netorks "rom here brosing
A should be alloed
A acl localnet src 1$@$@$@$/5 A R=)1815 possible internal netork
A acl localnet src 176@16@$@$/16 A R=)1815 possible internal netork
A acl localnet src 186@165@$@$/16 A R=)1815 possible internal netork
A acl localnet src "c$$##/7 A R=) 418? local private netork range
A acl localnet src "e5$##/1$ A R=) 4681 link!local (directly plugged) machines
Reguarmente una sta de contro de acceso se estabece con a sguente sntaxs:
608
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
acl Dnombre de la listaE src Dlo Jue compone a la listaE
S se desea estabecer una sta de contro de acceso que abarque a toda a red oca, basta defnr
a IP correspondente a a red y a mscara de a sub-red. Por e|empo, s se tene una red donde as
mqunas tenen dreccones IP 192.168.70.n con mscara de sub-red de 24 bt, podemos utzar
o sguente:
acl localnet src 186@165@7$@$/64
Tambn puede defnrse una ista de Control de Acceso especfcando un archvo ocazado en
cuaquer parte de dsco duro, y a cua contene una sta de dreccones IP. E|empo:
acl permitidos src +/etc/sJuid/listas/permitidos+
E archvo =etc=s#uid=listas=permitidos tendra un contendo smuar a sguente:
186@165@7$@1
186@165@7$@6
186@165@7$@?
186@165@7$@19
186@165@7$@16
186@165@7$@6$
186@165@7$@4$
Lo anteror estara defnendo que a ista de Control de Acceso denomnada permitidos
estara compuesta por as dreccones IP ncudas en e archvo =etc=s#uid=listas=permitidos.
9*.5.+.*. 'eglas de Control de Acceso.
Estas defnen s se permte o no e acceso haca >#uid. Se apcan a as istas de Control de
Acceso. Deben coocarse en a seccn de regas de contro de acceso defndas por e
admnstrador, es decr, a partr de donde se ocaza a sguente eyenda:
A
A (,S&R0 ;/>R /3, R>1&(S) 2&R& 0/ 411/3 4))&SS =R/- ;/>R )1(&,0S
A
La sntaxs bsca de una rega de contro de acceso es a sguente:
http.access Ddeny o alloE Dlista de control de accesoE
En e sguente e|empo se consdera una rega que estabece acceso permtdo a >#uid a a ista
de Control de Acceso denomnada permitidos:
http.access allo permitidos
Tambn pueden defnrse regas vandose de a expresn `, a cua sgnfca no. Pueden
defnrse, por e|empo, dos stas de contro de acceso, una denomnada lista+ y otra denomnada
lista*, en a msma rega de contro de acceso, en donde se asgna una expresn a una de estas.
La sguente estabece que se permte e acceso a >#uid a o que comprenda lista+ excepto
aqueo que comprenda lista*:
609
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
http.access allo lista1 hlista6
Este tpo de regas son tes cuando se tene un gran grupo de IP dentro de un rango de red a que
se debe permitir acceso, y otro grupo dentro de a msma red a que se debe denegar e acceso.
9*.5.*. Aplicando istas y 'eglas de control de acceso.
Una vez comprenddo e funconamento de a Lstas y as Rega de Contro de Acceso,
procederemos a determnar cuaes utzar para nuestra confguracn.
9*.5.*.+. Caso +.
Consderando como e|empo que se dspone de una red 192.168.70.0/24, s se desea defnr toda
a red oca, utzaremos a sguente nea en a seccn de istas de Control de Acceso:
acl localnet src 186@165@7$@$/64
Habendo hecho o anteror, a seccn de stas de contro de acceso debe quedar ms o menos de
sguente modo:
istas de Control de Acceso- de&inicin de una red local completa
A
A Recommended minimum con"iguration#
acl all src $@$@$@$/$
acl manager proto cache.obMect
acl localhost src 167@$@$@1/5
#&) )o&#)ne$ sr& 4<2.438.=/./82E
A contnuacn procedemos a apcar a rega de contro de acceso:
http.access allo localnet
Habendo hecho o anteror, a zona de regas de contro de acceso debera quedar de modo smar
a sguente:
'eglas de control de acceso- Acceso a una ista de Control de Acceso.
A
A (,S&R0 ;/>R /3, R>1&(S) 2&R& 0/ 411/3 4))&SS =R/- ;/>R )1(&,0S
A
http.access allo localhost
h$$'_#&&ess #))o? )o&#)ne$
http.access deny all
La rega $ttpQaccess alloP localnet permte e acceso a >#uid a a ista de Control de
Acceso denomnada localnet, a cua est conformada por 192.168.70.0/24. Esto sgnfca que
cuaquer mquna desde 192.168.70.1 hasta 192.168.70.254 podr acceder a >#uid.
610
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
9*.5.*.*. Caso *.
S so se desea permtr e acceso a >#uid a certas dreccones IP de a red oca, deberemos
crear un archvo que contenga dcha sta. Genere e archvo =etc=s#uid=listas=localnet, dentro
de cua se ncurn so aqueas dreccones IP que desea confrmen a Lsta de Contro de
acceso. E|empo:
186@165@7$@1
186@165@7$@6
186@165@7$@?
186@165@7$@19
186@165@7$@16
186@165@7$@6$
186@165@7$@4$
Denomnaremos a esta sta de contro de acceso como localnet:
acl localnet src +/etc/sJuid/listas/localnet+
Habendo hecho o anteror, a seccn de stas de contro de acceso debe quedar ms o menos de
sguente modo:
istas de Control de Acceso- de&inicin de una red local completa
A
A Recommended minimum con"iguration#
acl all src $@$@$@$/$
acl manager proto cache.obMect
acl localhost src 167@$@$@1/699@699@699@699
#&) )o&#)ne$ sr& "8e$&8s,.%-8)%s$#s8)o&#)ne$"
A contnuacn procedemos a apcar a rega de contro de acceso:
http.access allo localnet
Habendo hecho o anteror, a zona de regas de contro de acceso debera quedar de modo smar
a sguente:
'eglas de control de acceso- Acceso a una ista de Control de Acceso.
A
A (,S&R0 ;/>R /3, R>1&(S) 2&R& 0/ 411/3 4))&SS =R/- ;/>R )1(&,0S
A
http.access allo localhost
h$$'_#&&ess #))o? )o&#)ne$
http.access deny all
La rega $ttpQaccess alloP localnet permte e acceso a >#uid a a ista de Control de
Acceso denomnada localnet, a cua est conformada por as dreccones IP especfcadas en e
archvo =etc=s#uid=listas=localnet. Esto sgnfca que cuaquer mquna no ncuda en
=etc=s#uid=listas=localnet no tendr acceso a >#uid.
611
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
9*.5.3. <ar;metro cac$eQmgr.
Este parmetro es de carcter nformatvo. De modo predefndo, s ago ocurre con e cach, como
por e|empo que muera e procesos, se envar un mensa|e de avso a a cuenta Pe!master de
servdor. Puede especfcarse una dstnta s acaso se consdera convenente.
cache.mgr MosepereCXmidominio@net
9*.5.4. <ar;metro $ttpQport.
Este parmetro es utzado para ndcar e puerto a travs de cua escuchar petcones Squd. EL
vaor predetermnado es 3128, es decr, Squd escuchar petcones a travs de puerto 3128/tcp.
http.port ?165
E puerto estndar desgnado para servdores de cach de Internet (webcache) es e puerto 8080.
http.port 5$5$
E parmetro permte estabecer tambn s se quere utzar una dreccn IP en partcuar. Esto
aade mayor segurdad a servco, pues s se tene dos tar|etas de red, una con una dreccn IP
pbca, y otra con una dreccn IP prvada, se puede estabecer que Squd soo permta
conexones desde a dreccn IP prvada.
http.port 186@165@5$@1#5$5$
S se necesta confgurar un servdor proxy en modo transparente, soo es necesaro aadr a
opcn intercept, msma que desde a versn 3.1 de Squd reempaza a a opcn transparent.
http.port 186@165@5$@1#5$5$ %n$er&e'$
)ota.
Para confgurar un servdor proxy en modo transparente en CentOS 5, y Red Hat EnterprseLnux 5, y
versones anterores, utce a opcn transparente:
http.port 186@165@5$@1#5$5$ $r#ns'#ren$
9*.5.5. <ar;metro cac$eQdir.
Este parmetro se utza para estabecer que tamao se desea que utce Squd para
amacenamento de cach en e dsco duro. De modo predefndo Squd utzar un cach de 100
MB, dvddo en |erarquas de 16 drectoros subordnados, hasta 256 nvees cada uno:
cache.dir u"s /var/spool/sJuid 1$$ 16 696
Se puede ncrementar e tamao de cach hasta donde o desee e admnstrador. Mentras ms
grande sea e cach, ms ob|etos se amacenarn en ste y por o tanto se consumr menos e
ancho de banda. La sguente nea estabece un cach de 2 GB:
cache.dir u"s /var/spool/sJuid 2/E8 16 696
612
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
9*.5.6. <ar;metro cac$eQmem.
E parmetro cac$eQmem estabece a cantdad dea de memora para o sguente:
Ob|etos en trnsto.
Ob|etos frecuentemente utzados (.ot).
Ob|etos negatvamente amacenados en e cach.
Los datos de estos ob|etos se amacenan en boques de 4 Kb. E parmetro cac$eQmem especfca
un mte mxmo en e tamao tota de boques acomodados, donde os ob|etos en trnsto tenen
mayor prordad. Sn embargo os ob|etos frecuentemente utzados (.ot), y aqueos
negatvamente amacenados en e cach, podrn utzar a memora sn utzar hasta que esta sea
requerda. De ser necesaro, s un ob|eto en trnsto es mayor a a cantdad de memora
especfcada, >#uid exceder o que sea necesaro para satsfacer a petcn.
De modo predetermnado, desde a versn 3.1 de Squd, se estabecen 256 MB, que es ms que
sufcente para e 99% de as necesdades. S se dspone de cantdad sufcente de RAM en e
servdor (a menos 2 GB RAM), puede especfcarse una cantdad mayor, o ben, s se dspone de
una cantdad menor de RAM en e servdor (menos de 1 GB RAM), puede especfcar una cantdad
menor.
cache.mem 916 -:
)ota.
En CentOS 5, y Red Hat EnterprseLnux 5, y versones anterores, e vaor predetermnado de
cac$eQmem son 8 Mb, por o cua puede ncrementar este vaor hasta donde se consdere pertnente.
cache.mem 32 MB
9*.5.7. <ar;metro cac$eQpeer- cac$es padres y $ermanos.
E parmetro cache_peer se utza para especfcar otros >ervidores <ro2y con cach en una
|erarqua como padres o como $ermanos. Es decr, defnr s hay un >ervidor %ntermediario
adeante o en paraeo. La sntaxs bsca es a sguente:
cache.peer servidor tipo http.port icp.port opciones
".emplo- S su cach va a estar traba|ando detrs de otro servdor cache, es decr un cach padre,
y consderando que e cach padre tene una IP 192.168.70.1, escuchando petcones E@@< en e
puerto 8080 y petcones ICP en puerto 3130 Mpuerto utili8ado de modo prede&inido por
>#uidN ,especfcando que no se amacenen en cach os ob|etos que ya estn presentes en e
cach de >ervidor %ntermediario padre, utce a sguente nea:
cache.peer 186@165@7$@1 parent 5$5$ ?1?$ proxy!only
Cuando se traba|a en redes muy grandes donde exsten varos Servdores Intermedaros (Proxy)
hacendo cach de contendo de Internet, es una buena dea hacer traba|ar todos os cach entre
s. Confgurar caches vecnos como si!ling (hermanos) tene como benefco e que se consutarn
estos caches ocazados en a red oca antes de acceder haca Internet y consumr ancho de
banda para acceder haca un ob|eto que ya podra estar presente en otro cach vecno.
613
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
".emplo- S su cach va a estar traba|ando en paraeo |unto con otros caches, es decr caches
hermanos, y consderando os caches tenen IP 10.1.0.1, 10.2.0.1 y 10.3.0.1, todos escuchando
petcones E@@< en e puerto 8080 y petcones ICP en puerto 3130, especfcando que no se
amacenen en cach os ob|etos que ya estn presentes en os caches hermanos, utce as
sguentes neas:
cache.peer 1$@1@$@1 sibling 5$5$ ?1?$ proxy!only
cache.peer 1$@6@$@1 sibling 5$5$ ?1?$ proxy!only
cache.peer 1$@?@$@1 sibling 5$5$ ?1?$ proxy!only
Pueden hacerse combnacones que de manera ta que se podran tener caches padres y hermanos
traba|ando en con|unto en una red oca. E|empo:
cache.peer 1$@$@$@1 parent 5$5$ ?1?$ proxy!only
cache.peer 1$@1@$@1 sibling 5$5$ ?1?$ proxy!only
cache.peer 1$@6@$@1 sibling 5$5$ ?1?$ proxy!only
cache.peer 1$@?@$@1 sibling 5$5$ ?1?$ proxy!only
En os casos anterores, a resoucn de nombres se hace de manera oca. S se desea hacer que
a resoucn de nombres se reace en e servdor padre, se puede utzar ago smar a o
sguente:
cache.peer 1$@$@$@1 parent 5$5$ ?1?$ no!Juery no!digest de"ault
9*.6. "sta!leciendo el idioma de los mensa.es mostrados por
de >#uid $acia el usuario.
>#uid ncuye traduccn a dstntos domas de as dstntas pgnas de error e nformatvas que
son despegadas en un momento dado durante su operacn. Dchas traduccones se pueden
encontrar en =usr=s$are=s#uid=errors=. Para poder hacer uso de as pgnas de error traducdas a
espao, so es necesaro cambar e vaor de parmetro errorQdirectory de
=usr=s$are=s#uid=errors=en, a =usr=s$are=s#uid=errors=es.
error.directory /usr/share/sJuid/errors/es
)ota.
En CentOS 5, y Red Hat Enterprse >Lnux 5, y versones anterores, e vaor predetermnado de
parmetro errorQdirectory es =usr=s$are=s#uid=errors="nglis$, y debe ser cambado por e vaor
=usr=s$are=s#uid=errors=>panis$:
error.directory /usr/share/sJuid/errors/Spanish
9*.7. %niciandoF reiniciando y aadiendo el servicio al
arran#ue del sistema.
Una vez termnada a confguracn, e|ecute e sguente mandato para ncar por prmera vez
>#uid:
service sJuid start
614
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S necesta vover a cargar a confguracn para probar cambos reazados, sn detener e servco,
e|ecute o sguente:
service sJuid restart
S necesta rencar para probar cambos hechos en a confguracn, consderando que este
proceso puede egar a demorar agunos mnutos, e|ecute o sguente:
service sJuid restart
S desea que >#uid nce de manera automtca a prxma vez que nce e sstema, e|ecute o
sguente:
chkcon"ig sJuid on
Lo anteror habtar a >#uid en todos os nvees de e|ecucn.
9*.9. Depuracin de errores
Cuaquer error a nco de >#uid so sgnfca que hubo errores de sntaxs, errores de dedo o
ben se estn ctando ncorrectamente as rutas haca os archvos de as istas de Control de
Acceso.
Puede reazar dagnstco de probemas ndcndoe a >#uid que vueva a eer confguracn, o
cua devover os errores que exstan en e archvo =etc=s#uid=s#uid.con&.
service sJuid re)o#-
Cuando se trata de errores graves que no permten ncar e servco, puede examnarse e
contendo de archvo =var=log=s#uid=s#uid.out con e mandato less, more o cuaquer otro vsor
de texto:
tail !5$ /var/log/sJuid/sJuid@out
9*.S. A.ustes para el muro corta(&uegos.
S se tene poca experenca con guones de cortafuegos a travs de ptabes, sugermos utzar
Firestarter. ste permte confgurar fcmente tanto e enmascaramento de IP como e muro
corta-fuegos. S se tene un poco ms de experenca, recomendamos utzar >$orePall para e
msmo fn puesto que se trata de una herramenta ms robusta y competa.
Firestarter: http://www.fs-securty.com/
Shorewa: http://www.shorewa.net/
615
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
'e(direccionamiento de peticiones a travs de ipta!les.
En un momento dado se requerr tener sada transparente haca Internet para certos servcos,
pero a msmo tempo se necestar re-drecconar petcones haca servco E@@< para pasar a
travs de e puerto donde escucha petcones >#uid, como proxy transparente, es decr e puerto
8000/tcp, de modo que no haya sada aguna haca aguna haca servdores E@@< en e exteror
sn que sta pase antes por >#uid. No se puede hacer >ervidor %ntermediario Transparente
para os protocoos E@@<>, F@<, ?0<E"' n bA%>, por o que dchos protocoos tendrn que ser
ftrados a travs de )A@.
E re-drecconamento se hace a travs de ipta!les. Consderando para este e|empo que a red
oca se accede a travs de una nterfaz eth0, e sguente esquema e|empfca un re-
drecconamento:
iptables !t nat !4 <R&R/>0(,I !i eth$ !p tcp !!dport 5$ !M R&%(R&)0 !!to!port 5$$$
Lo anteror re#uiere un guin de corta&uegos &uncional en un sistema con dos inter&aces
de red. Se encarga de que cuaquer petcn haca e puerto 80 (servco HTTP) hecha desde a
red oca haca e exteror, se re-drecconar haca e puerto 8000 de servdor.
Utzando Firestarter, a rega anterormente descrta se aade en e archvo
=etc=&irestarter=user(post.
9*.S.+. 'e(direccionamiento de peticiones a travs de la opcin
'"D%'"C@ en >$orePall.
La accn '"D%'"C@ en >$orePall permte redrgr petcones haca protocoo E@@< para
haceras pasar a travs de >#uid. En e sguente e|empo as petcones hechas desde a zona que
corresponde a a red oca sern redrgdas haca e puerto 8000 de cortafuegos, en donde est
confgurado >#uid confgurado como >ervidor <ro2y (Proxy) transparente.
R&%(R&)0 loc 5$$$ tcp 5$
9*.S.+.+. "2clusin de sitios.
En e caso de stos que se quera excur de ser utzados con Squd, es decr, stos probemtcos,
se puede confgurar en Shorewa que e acceso sea drecto, con una confguracn smar a a de
sguente e|empo, donde se excuye de pasar por Squd as petcones drgdas a as redes
201.144.108.0/24 (IMSS.gob.mx), y 200.33.74.0/24 (SAT.gob.mx), y se abre e paso drecto desde
a red oca haca esta red:
R&%(R&)0 loc 5$$$ tcp 5$ ! h6$1@144@1$5@$/64B6$$@??@74@$/64
4))&<0 loc net#6$1@144@1$5@$/64 all
4))&<0 loc net#6$$@??@74@$/64 all
616
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
93. Con&iguracin de >#uid- Acceso por
autenticacin
Autor: "oel Barrios &ue!as
Correo electrnico: dar)#hra*+g*ail.co*
#itio de Red: http://www.alcancelibre.org/
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. b) No puede utzar esta obra para fnes comercaes. c) S atera o
transforma esta obra, o genera una obra dervada, so puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o
dstrbur a obra, tene que de|ar ben caro os trmnos de a cenca de esta obra. Aguna de estas condcones puede no apcarse s se
obtene e permso de ttuar de os derechos de autor. Los derechos dervados de usos egtmos u otras mtacones no se ven afectados por o
anteror. La nformacn contenda en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn
responsabdad aguna s e usuaro o ector hace ma uso de stos.
93.+. %ntroduccin.
Es muy t e poder estabecer un sstema de autentcacn para poder acceder haca Internet,
pues esto permte controar quenes s y quenes no accedern a Internet sn mportar desde que
mquna de a red oca o hagan. Sera de modo ta que tendremos un dobe contro, prmero por
dreccn IP y segundo por nombre de usuaro y cave de acceso.
Este documento consdera que se ha edo prevamente, a detae, y en su totadad e documento
ttuado Confguracn de Squd: Servdor Proxy, y que ha confgurado extosamente Squd como
servdor proxy.
93.*. "#uipamiento lgico necesario.
Para poder evar a cabo os procedmentos descrtos en este manua y documentos reaconados,
se necestar tener nstaado a menos o sguente:
squd-2.5.STABLE3
httpd-2.0.x (Apache) (opcona)
opendap-servers-2.2.x (opcona)
"ligiendo el mdulo de autenticacin.
Este manua consdera poder autentcar a travs de un archvo de texto smpe con caves de
acceso creadas con htpasswd, o ben a travs de un servdor LDAP (una soucn ms robusta).
93.*.+. Autenticacin a travs del mdulo DA<.
Consderando que se ha confgurado extosamente OpenLDAP como servdor de autentcacn, so
se necesta defnr e drectoro (o subdrectoro) y e servdor LDAP a utzar.
La sntaxs utzada para squd_dap_auth es a sguente:
sJuid.ldap.auth !b +%irectorio!a!utiliCar+ servidor!ldap!a!utiliCar
E|empo:
617
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
sJuid.ldap.auth !b +ou*<eopleBdc*dominioBdc*tld+ 167@$@$@1
Edte e archvo /etc/squd/squd.conf:
vim /etc/sJuid/sJuid@con"
Aada a sguente confguracn, msma que consdera que squidKldapKaut se ocaza en
*usr*lib*squid*ncsaKaut:
auth.param basic program /usr/lib/sJuid/sJuid.ldap.auth !b +ou*<eopleBdc*dominioBdc*tld+ 167@$@$@1
Lo anteror conecta a drectoro dc=su-red-oca,dc=td en e servdor LDAP en 127.0.0.1.
93.*.*. Autenticacin a travs del mdulo )C>A
Squd puede utzar e mduo ncsaKaut, de a NCSA (Natona Center for Supercomputng
Appcatons), y que ya vene ncudo como parte de paquete prncpa de Squd en a mayora de
as dstrbucones actuaes. Este mduo provee una autentcacn muy senca a travs de un
archvo de texto smpe cuyas caves de acceso fueron creadas con htpasswd.
93.*.*.+. Creacin del arc$ivo de claves de acceso.
Se requerr a creacn preva de un archvo que contendr os nombres de usuaros y sus
correspondentes caves de acceso (cfradas). E archvo puede ocazarse en cuaquer ugar de
sstema, con a nca condcn que sea aseqube para e usuaro squid.
Debe procederse a crear un archvo *etc*squid*claves:
touch /etc/sJuid/claves
Savo que vaya a utzarse un gun a trav de servdor web para admnstrar as caves de
acceso, como medda de segurdad, este archvo debe hacerse ebe y escrbbe so para e
usuaro squid:
chmod 6$$ /etc/sJuid/claves
chon sJuid#sJuid /etc/sJuid/claves
A contnuacn deberemos dar de ata as cuentas que sean necesaras, utzando e mandato
tpass(d 6mismo que viene incluido en el paquete ttpd6H.8.46. E|empo:
htpassd /etc/sJuid/claves MosepereC
Lo anteror soctar tecear una nueva cave de acceso para e usuaro joseperez y confrmar
teceando ta de nuevo. Repta con e resto de as cuentas que requera dar de ata.
Todas as cuentas que se den de ata de este modo son ndependentes a as ya exstentes en e
sstema. A dar de ata una cuenta o cambar una cave de acceso o estar hacendo
"DC,>%GA:")@" para e acceso a servdor Proxy. Las cuentas son ndependentes a as que se
tengan exstentes en e sstema como seran sell, correo y Samba.
618
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Edte e archvo /etc/squd/squd.conf:
vim /etc/sJuid/sJuid@con"
Lo sguente ser especfcar que programa de autentcacn se utzar. Locace a seccn que
corresponde a a etqueta autKparam basic program. De modo predetermnado, esta opcn est
desactvada, y carece de vaores. Consderando que ncsaKaut se ocaza en
*usr*lib*squid*ncsaKaut, procederemos a aadr e sguente parmetro:
auth.param basic program /usr/lib/sJuid/ncsa.auth /etc/sJuid/claves
*usr*lib*squid*ncsaKaut corresponde a a ocazacn de e programa para autentcar y
*etc*squid*claves a archvo que contene as cuentas y sus caves de acceso.
93.3. istas y reglas de control de acceso.
E sguente paso corresponde a a defncn de una %ista de #ontrol de Acceso. Especfcaremos
una denomnada pass(d a cua se confgurar para utzar obgatoramente a autentcacn para
poder acceder a Squd. Debe ocazarse a seccn de %istas de #ontrol de Acceso y aadrse a
sguente nea:
acl passord proxy.auth R&l>(R&%
Habendo hecho o anteror, deberemos tener en a seccn de %istas de #ontrol de Acceso ago
smar a o sguente:
Lstas de Contro de Accesos: autentcacn.
A
A Recommended minimum con"iguration#
acl all src $@$@$@$/$
acl manager proto cache.obMect
acl localhost src 167@$@$@1/5
acl localnet src 186@165@1@$/64
#&) '#ss?or- 'roCy_#.$h RE[UFRED
Se procede entonces a modfcar a rega de contro de accesos que ya tenamos para permtr e
acceso a Internet. Donde antes tenamos o sguente:
http.access allo localnet
Le aadmos pass(d, a defncn de a %ista de #ontrol de Acceso que requere utzar cave de
acceso, a nuestra rega actua, de modo que quede como mostramos a contnuacn:
http.access allo localnet passord
Habendo hecho o anteror, a zona de regas de contro de acceso debera quedar de modo smar
a sguente:
Regas de contro de acceso: Acceso por cave de acceso.
619
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A
A (,S&R0 ;/>R /3, R>1&(S) 2&R& 0/ allo 4))&SS =R/- ;/>R )1(&,0S
A
http.access allo localhost
h$$'_#&&ess #))o? )o&#)ne$ '#ss?or-
http.access deny all
93.3.+. Finali8ando procedimiento.
Fnamente, so bastar recargar a confguracn de Squd para que tomen efecto os cambos, y
se puedan reazar pruebas.
service sJuid reload
620
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
94. Con&iguracin de >#uid- 'estriccin de
acceso a >itios de %nternet.
Autor: "oel Barrios &ue!as
Correo electrnico: dar)#hra*+g*ail.co*
#itio de Red: http://www.alcancelibre.org/
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. b) No puede utzar esta obra para fnes comercaes. c) S atera o
transforma esta obra, o genera una obra dervada, so puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o
dstrbur a obra, tene que de|ar ben caro os trmnos de a cenca de esta obra. Aguna de estas condcones puede no apcarse s se
obtene e permso de ttuar de os derechos de autor. Los derechos dervados de usos egtmos u otras mtacones no se ven afectados por o
anteror. La nformacn contenda en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn
responsabdad aguna s e usuaro o ector hace ma uso de stos.
94.+. %ntroduccin.
Denegar e acceso a certos Stos de Red permte hacer un uso ms racona de ancho de banda
con e que se dspone. E funconamento es verdaderamente smpe, y consste en denegar e
acceso a nombres de domno o dreccones de Internet que contengan patrones en comn.
Este documento consdera que se ha edo prevamente, a detae, y en su totadad e documento
ttuado Confguracn de Squd: Servdor Proxy, y que ha confgurado extosamente Squd como
servdor proxy.
94.*. 'estriccin por e2presiones regulares.
Se debe crear un archvo donde se defnr a sta de expresones reguares.
vim /etc/sJuid/listas/expreg!denegadas
Esta sta puede contener cuaquer expresn reguar que se consdere sea usuamente utzadas
en as dreccones de certos stos.
adult
celebri
mp?
otrositioindeseable@com
playstation
porn
sex
sitioindeseable@com
taringa
torrent
areC
ii
Esta sta, a cua deber ser competada con todas as paabras (muchas de ests son paabras
obscenas en dstntos domas) y dreccones de Internet que e admnstrador consdere
pertnentes, a guardaremos como *etc*squid*listas*e4preg6denegadas.
Edte e archvo /etc/squd/squd.conf:
621
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
vim /etc/sJuid/sJuid@con"
Aada una sta de contro, denomnada expreg-denegadas, de acceso tpo ur_regex (expresones
reguares de URL), que defna a a sta en e archvo /etc/squd/stas/expreg-denegadas:
acl expreg!denegadas url.regex +/etc/sJuid/listas/expreg!denegadas+
Habendo hecho o anteror, deberemos tener en a seccn de %istas de #ontrol de Acceso ago
smar a o sguente:
A
A Recommended minimum con"iguration#
acl all src $@$@$@$/$
acl manager proto cache.obMect
acl localhost src 167@$@$@1/5
acl localnet src 186@165@1@$/64
acl passord proxy.auth R&l>(R&%
#&) eC're--ene#-#s .r)_reeC "8e$&8s,.%-8)%s$#s8eC're--ene#-#s"
A contnuacn especfcaremos modfcaremos una Aegla de #ontrol de Acceso exstente
agregando con un smboo de W que se denegar e acceso a a %ista de #ontrol de Acceso
denomnada e4preg6denegadas:
http.access allo localnet hexpreg!denegadas
La rega anteror permte e acceso a a %ista de #ontrol de Acceso denomnada localnet, pero e
nega e acceso a todo o que concda con o especfcado en a %ista de #ontrol de Acceso
denomnada e4preg6denegadas.
E|empo apcado a una Aegla de #ontrol de Acceso combnando e mtodo de autentcacn
expcado en e documento Confguracn de Squd: Acceso por Autentcacn:
Regas de contro de acceso: denegacn de stos.
A
A (,S&R0 ;/>R /3, R>1&(S) 2&R& 0/ allo 4))&SS =R/- ;/>R )1(&,0S
A
http.access allo localhost
h$$'_#&&ess #))o? )o&#)ne$ '#ss?or- ceC're--ene#-#s
http.access deny all
94.3. 'estriccin por e2presiones regulares.
Para restrngr e acceso por domnos, se crea un archvo con sta con domnos.
vim /etc/sJuid/listas/dominios!denegados
Los nombres pueden ser nombres de domno especfcos:
@"acebook@com
@titter@com
plus@google@com
622
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
O ben puede defnrse todo e domno competo, ncuyendo sub-domnos:
@"acebook@com
@titter@com
)ota.
S defne .domno.com, es nnecesaro defnr www.domno.com, o ma.domno.com, o
ftp.domno.com, etc., pues todos son subdomnos de .domno.com:
O ben se pueden defnr domnos de nve superor genrcos, o geogrfcos.
@co@Mp
@com@cn
@im
@tv
@xxx
O ben una combnacn de todo o anteror.
@co@Mp
@com@cn
@"acebook@com
plus@gogle@com
@tv
@titter@com@im
@xxx
Edte e archvo /etc/squd/squd.conf.
vim /etc/sJuid/sJuid@con"
Aada una sta de contro, denomnada domnos-denegados, de acceso tpo dstdoman (domnos
de destno), que defna a a sta en e archvo /etc/squd/stas/domnos-denegados.
acl dominios!denegados dstdomain +/etc/sJuid/listas/dominios!denegados+
Aada una rega de contro de acceso que denegue e acceso a stos que estn ncudos en a
sta de domnos.
http.access allo localnet hexpreg!denegadas hdominios!denegados
94.3.+. <ermitiendo acceso a sitios inocentes incidentalmente
!lo#ueados.
S por e|empo, e ncur una expresn reguar en partcuar, en a sta de expresones reguares
denegadas, afecta ncdentamente e acceso a un sto de Internet en partcuar, tambn puede
generarse una sta de domnos que sern excudos de as restrccones.
Utce e edtor de texto para crear e archvo /etc/squd/domnos-nocentes.
vim /etc/sJuid/dominios!inocentes
623
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
E contendo puede ser una sta de domnos, o ben domnos de nve superor, que se consdere
deban ser acceddos por a red oca en cuaquer momento, y sn restrccones.
@alcancelibre@org
@edu
@edu@mx
@eluniversal@com@mx
@gob@mx
@gov
@milenio@com
@org
@org@mx
@unam@mx
@google@com
@google@com@mx
Este archvo ser defndo en una %ista de #ontrol de Acceso de msmo modo en que se hzo
anterormente con e archvo que contene domnos y paabras denegadas.
acl dominios!inocentes dstdomain +/etc/sJuid/dominios!inocentes+
Para hacer uso de e archvo, so bastar utzar a expresn ` en a msma nea utzada para a
Aegla de #ontrol de Acceso estabecda para denegar e msmo.
http.access allo all dominios!inocentes
La rega anteror especfca que se permtr e bre acceso, en todo momento, a os domnos
ncudos en a sta de contro de acceso denomnada dominios6inocentes.
94.3.*. Finali8ando procedimiento.
Fnamente, so bastar recargar a confguracn de Squd para que tomen efecto os cambos, y
se puedan reazar pruebas.
service sJuid reload
624
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
95. Con&iguracin de >#uid- 'estriccin de
acceso a contenido por e2tensin.
Autor: "oel Barrios &ue!as
Correo electrnico: dar)#hra*+g*ail.co*
#itio de Red: http://www.alcancelibre.org/
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. b) No puede utzar esta obra para fnes comercaes. c) S atera o
transforma esta obra, o genera una obra dervada, so puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o
dstrbur a obra, tene que de|ar ben caro os trmnos de a cenca de esta obra. Aguna de estas condcones puede no apcarse s se
obtene e permso de ttuar de os derechos de autor. Los derechos dervados de usos egtmos u otras mtacones no se ven afectados por o
anteror. La nformacn contenda en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn
responsabdad aguna s e usuaro o ector hace ma uso de stos.
95.+. %ntroduccin.
Denegar e acceso a certos tpos de extensones de archvo permte hacer un uso ms racona de
ancho de banda con e que se dspone. E funconamento es verdaderamente smpe, y consste en
denegar e acceso a certos tpos de extensones que concdan con o estabecdo en una %ista de
#ontrol de Acceso.
Este documento consdera que se ha edo prevamente, a detae, y en su totadad e documento
ttuado Confguracn de Squd: Servdor Proxy, y que ha confgurado extosamente Squd como
servdor proxy.
95.*. De&iniendo elementos de la ista de Control de Acceso.
Lo prmero ser generar una sta a cua contendr dreccones de Internet y paabras usuamente
utzadas en nombres de certos domnos. E|empos:
625
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
O@aviF
O@mp4F
O@mp?F
O@mp4F
O@mpgF
O@mpegF
O@movF
O@raF
O@ramF
O@rmF
O@rpmF
O@vobF
O@maF
O@mvF
O@avF
O@docF
O@xlsF
O@mbdF
O@pptF
O@ppsF
O@aceF
O@batF
O@exeF
O@lnkF
O@pi"F
O@scrF
O@sysF
O@CipF
O@rarF
Esta sta, a cua deber ser competada con todas as extensones de archvo que e admnstrador
consdere pertnentes, a guardaremos como *etc*squid*listas*e4tensiones.
Edte e archvo /etc/squd/squd.conf:
vim /etc/sJuid/sJuid@con"
Se debe defnr una %ista de #ontrol de Acceso que a su vez defna a archvo
*etc*squid*listas*e4tensiones. Esta sta a denomnaremos como Je4tensionesJ. De modo ta, a
nea correspondente quedara de sguente modo:
acl extensiones urlpath.regex +/etc/sJuid/listas/extensiones+
Habendo hecho o anteror, se debe aadr en a seccn de %istas de #ontrol de Acceso ago
smar a o sguente:
A
A Recommended minimum con"iguration#
acl all src $@$@$@$/$
acl manager proto cache.obMect
acl localhost src 167@$@$@1/5
acl localnet src 186@165@1@$/64
acl passord proxy.auth R&l>(R&%
acl expregs url.regex +/etc/sJuid/listas/expregs+
#&) eC$ens%ones .r)'#$h_reeC "8e$&8s,.%-8)%s$#s8eC$ens%ones"
626
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A contnuacn especfcaremos modfcaremos una Aegla de #ontrol de Acceso exstente
agregando con un smboo de W que se denegar e acceso a a %ista de #ontrol de Acceso
denomnada e4tensiones:
http.access allo localnet hextensiones
La rega anteror permte e acceso a a %ista de #ontrol de Acceso denomnada localnet, pero e
nega e acceso a todo o que concda con o especfcado en a %ista de #ontrol de Acceso
denomnada e4tensiones.
E|empo apcado a una Aegla de #ontrol de Acceso combnando e mtodo de autentcacn
expcado en e documento Cmo confgurar Squd: Acceso por Autentcacn y e de denegacn
haca Sto de Red expcado en e documento Cmo confgurar Squd: Restrccn de acceso a Sto
de Red:
Regas de contro de acceso: denegacn de extensones.
A
A (,S&R0 ;/>R /3, R>1&(S) 2&R& 0/ allo 4))&SS =R/- ;/>R )1(&,0S
A
http.access allo localhost
h$$'_#&&ess #))o? )o&#)ne$ '#ss?or- ceC'res ceC$ens%ones
http.access deny all
95.*.+. Finali8ando procedimiento.
Fnamente, so bastar recargar a confguracn de Squd para que tomen efecto os cambos, y
se puedan reazar pruebas.
service sJuid reload
627
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
96. Con&iguracin de >#uid- 'estriccin de
acceso por $orarios.
Autor: "oel Barrios &ue!as
Correo electrnico: dar)#hra*+g*ail.co*
#itio de Red: http://www.alcancelibre.org/
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. b) No puede utzar esta obra para fnes comercaes. c) S atera o
transforma esta obra, o genera una obra dervada, so puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o
dstrbur a obra, tene que de|ar ben caro os trmnos de a cenca de esta obra. Aguna de estas condcones puede no apcarse s se
obtene e permso de ttuar de os derechos de autor. Los derechos dervados de usos egtmos u otras mtacones no se ven afectados por o
anteror. La nformacn contenda en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn
responsabdad aguna s e usuaro o ector hace ma uso de stos.
96.+. %ntroduccin.
Denegar e acceso a certos en certos horaros permte hacer un uso ms racona de ancho de
banda con e que se dspone. E funconamento es verdaderamente smpe, y consste en denegar
e acceso en horaros y das de a semana.
Este documento consdera que se ha edo prevamente, a detae, y en su totadad e documento
ttuado Confguracn de Squd: Servdor Proxy, y que ha confgurado extosamente Squd como
servdor proxy.
96.*. <rocedimientos
Edte e archvo /etc/squd/squd.conf:
vim /etc/sJuid/sJuid@con"
La sntaxs para crear %istas de control de acceso que defnan horaros, es a sguente:
acl Dnombre del horarioE time Ddeas de la semanaE hh#mm!hh#mm
Los das de a semana se defnen con etras, as cuaes corresponden a a prmera etra de nombre
en ng, de modo que se utzarn de sguente modo:
> - Domngo
: - Lunes
@ - Martes
b - Mrcoes
E - |ueves
F - Vernes
A - Sbado
E|empo:
acl semana time -032= $8#$$!61#$$
628
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Esta rega defne a a sta semana, a cua comprende un horaro de 09:00 a 21:00 horas desde e
Lunes hasta e Vernes.
Este tpo de stas se apcan en as Aeglas de #ontrol de Acceso con una mecnca smar a a
sguente: se permte o denega e acceso en e horaro defndo en a %ista de #ontrol de Acceso
denomnada I para as entdades defndas en a %ista de #ontrol de Acceso denomnada X. Lo
anteror expresado en una Aegla de #ontrol de Acceso, quedara de sguente modo:
http.access Dallo Z denyE Dnombre del horarioE Dlista de entidadesE
E|empo: Se quere estabecer que os membros de a %ista de #ontrol de Acceso denomnada
localnet tengan permtdo acceder haca Internet en un horaro que denomnaremos como
matutino, y que comprende de unes a vernes de 09:00 a 15:00 horas.
La defncn para e horaro correspondera a:
acl localnet src 186@165@1@$/64
acl matutino time -032= $8#$$!19#$$
La defncn de a Aegla de #ontrol de Acceso sera:
http.access allo matutino localnet
Lo anteror, en resumen, sgnfca que quenes conformen localnet podrn acceder a Internet de
Lunes a Vernes de 09:00-15:00 horas.
96.*.+. :;s e.emplos.
96.*.+.+. 'estringiendo el tipo de contenido.
es posbe denegar acceso a certo tpo de contendo de acuerdo a su extensn. Se requere una
%ista de #ontrol de Acceso, y una Aegla de #ontrol de Acceso
S se necesta una sta denomnada e4tensiones que defna a todos os archvos con extensn
.mp3, utzaramos o sguente:
acl localnet src 186@165@1@$/64
acl extensiones urlpath.regex O@mp?F
S queremos denegar e acceso a todo contendo con extensn .mp3, a rega quedara de
sguente modo:
http.access allo localnet hextensiones
96.*.+.*. Com!inando reglas de tiempo y contenido.
S por e|empo queremos restrngr parcamente e acceso a certo tpo de contendo a certos
horaros, pueden combnarse dstntos tpos de regas.
629
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
acl localnet src 186@165@1@$/64
acl matutino time -032= $8#$$!19#$$
acl extensiones urlpath.regex @mp?F
http.access allo matutino localnet hextensiones
La Aegla de #ontrol de Acceso anteror especfca acceso permitido, en e horaro defndo como
matutino, a quenes ntegran a %ista de #ontrol de Acceso denomnada localnet, para acceder
haca todo tpo de contendo, e2cepto a os contendos que concdan con os defndos en a %ista
de #ontrol de Acceso denomnada e4tensiones.
96.*.*. Finali8ando procedimiento.
Fnamente, so bastar recargar a confguracn de Squd para que tomen efecto os cambos, y
se puedan reazar pruebas.
service sJuid reload
630
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
97. Cmo con&igurar s#uid con soporte para
direcciones :AC.
Autor: "oel Barrios &ue!as
Correo electrnico: dar'sram en gmail punto com
Sitio de Red: ttp)**(((.alcancelibre.org*
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. b) No puede utzar esta obra para fnes comercaes (ncuyendo su
pubcacn, a travs de cuaquer medo, por entdades con fnes de ucro). c) S atera o transforma esta obra, o genera una obra dervada, so
puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o dstrbur a obra, tene que de|ar ben caro os trmnos de a
cenca de esta obra. Aguna de estas condcones puede no apcarse s se obtene e permso de ttuar de os derechos de autor. Los derechos
dervados de usos egtmos u otras mtacones no se ven afectados por o anteror. Lcenca competa en casteano. La nformacn contenda
en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn responsabdad aguna s e usuaro o ector
hace ma uso de stos.
97.+. %ntroduccin.
97.+.+. Acerca de >#uid.
>#uid es un >ervidor %ntermediario (Fro4y) de ato desempeo que se ha vendo desarroando
desde hace varos aos y es hoy en da un muy popuar y ampamente utzado entre os sstemas
operatvos como GNU/Lnux y dervados de Unx. Es muy confabe, robusto y verst y se
dstrbuye ba|o os trmnos de a Lcenca Pbca Genera GNU (?),=?<). Sendo equpamento
gco li!re, est dsponbe e cdgo fuente para quen as o requera. de modo predetermnado
no est ncudo e soporte para stas de contro de acceso basadas sobre dreccones :AC (:eda
Access Contro).
97.*. "#uipamiento lgico necesario.
97.*.+. %nstalacin a travs de yum.
A partr de CentOS 5.6 y Red Hat Enterprse Lnux 5.6, e paquete de Squd ya ncuye soporte para
dreccones MAC. Soo es necesaro e|ecutar o sguente:
yum !y install sJuid
97.3. <rocedimientos
Este documento consdera que se ha edo a detae e documento #/mo configurar $quid)
Farmetros bsicos para servidor de intermediaci/n @Fro4yC. Se requere se hayan confgurado a
menos os sguentes parmetros:
$ttpQport, e|empo: http.port 5$5$ transparent
cac$eQdir, e|empo: cache.dir u"s /var/spool/sJuid 1$64 16 696
errorQdirectory, e|empo: error.directory /usr/share/sJuid/errors/Spanish
Se requere adems determnar os vaores as sguentes varabes que debern ser reempazadas
por datos reaes:
631
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Las dreccones :AC especfcadas en os e|empos.
as dreccones :AC de todos os equpos de a A) se pueden obtener, s se est
reazando as operacones desde un servdor que srve de puerta de enace, utzando e
mandato arp con a opcn -n, es decr: arp (n.
Aternatvamente, a dreccn :AC desde una estacn traba|o con Wndows se puede
obtener a dreccn :AC utzando e mandato ipcon&ig con a opcn /all: ipcon"ig /all
Aternatvamente, a dreccn :AC desde una estacn traba|o con Lnux se puede obtener
a dreccn :AC utzando e mandato i&con&ig.
Arc$ivo =etc=s#uid=listas=macsredlocal.
Crear un archvo denomnado /etc=s#uid=listas=macsredlocal
vi /etc/sJuid/listas/macsredlocal
Donde e contendo ser una sta de dreccones :AC a a cua se apcarn regas de contro de
acceso. E|empo:
$$#$1#5$#41#8)#54
$$#$5#41#54#15#4%
$$#16#&?#8%#)%#77
$$#$4#79#44#6%#41
$$#18#%6#6:#41#49
$$#1?#1$#5%#44#&&
$$#18#61#14#8:#$%
97.3.+. Arc$ivo =etc=s#uid=s#uid.con&
Se edta e archvo /etc=s#uid=s#uid.con&:
vi /etc/sJuid/sJuid@con"
En ste se debe confgurar a sta de contro de acceso con un nombre que a dentfque y
dference caramente de as dems stas, asgnado e tpo de sta como arp. En e sguente
e|empo, se crea a sta de contro de acceso denomnada macsredlocal de tpo arp y cuyos
eementos que a conforman estn en e archvo /etc=s#uid=listas=macsredlocal:
acl macsredlocal arp +/etc/sJuid/listas/macsredlocal+
Se crea una rega de contro de acceso que permta a os membros de a sta de contro de acceso
hacer ago. En e sguente e|empo se defne que est permtdo e acceso a a sta macsredlocal:
http.access allo macsredlocal
S se creo aguna sta para mtar e acceso haca paabras y otra para extensones, como se
descrbe en os documentos #/mo configurar $quid) Aestricci/n de acceso a $itios de Aed y
#/mo configurar $quid) Aestricci/n de acceso a contenido por e4tensi/n, a rega de contro de
acceso podra quedar de a sguente manera:
632
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
http.access allo macsredlocal hporno hextensiones
S adems se creo aguna sta para mtar os horaros de acceso, como se descrbe en e
documento #/mo configurar $quid) Aestricci/n de acceso por orarios, a rega de contro de
acceso podra quedar de a sguente manera:
http.access allo matutino macsredlocal hporno hextensiones
Cuaquer otra forma de utzar a sta de contro de acceso con dreccones :AC depender de a
magnacn de admnstrador.
97.4. %niciarF detener y reiniciar el servicio s#uid.
Para e|ecutar por prmera vez e servco s#uid con as confguracones creadas, utce:
service sJuid start
Para hacer que os cambos hechos tras modfcar a confguracn surtan efecto, utce:
service sJuid restart
Para detener e servco s#uid utce:
service sJuid stop
Para hacer que e servco de s#uid est actvo con e sguente nco de sstema, en todos os
nvees de e|ecucn (2, 3, 4, y 5), se utza o sguente:
chkcon"ig sJuid on
633
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
99. Cmo instalar y con&igurar la $erramienta
de reportes >arg.
Autor: "oel Barrios &ue!as
Correo electrnico: dar)#hra*+g*ail.co*
#itio de Red: http://www.alcancelibre.org/
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. b) No puede utzar esta obra para fnes comercaes. c) S atera o
transforma esta obra, o genera una obra dervada, so puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o
dstrbur a obra, tene que de|ar ben caro os trmnos de a cenca de esta obra. Aguna de estas condcones puede no apcarse s se
obtene e permso de ttuar de os derechos de autor. Los derechos dervados de usos egtmos u otras mtacones no se ven afectados por o
anteror. La nformacn contenda en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn
responsabdad aguna s e usuaro o ector hace ma uso de stos.
99.+. %ntroduccin.
>arg (>qud Anayss 'eport Generator) es a ms competa y fc de utzar herramenta para a
generacn de reportes a partr de as btcoras de >#uid. Permte ver con detae a actvda de
todos os equpos y/o usuaros dentro de a red de rea oca, regstrada en a btcora de Squd.
URL: http://sarg.sourceforge.net/.
99.*. "#uipamiento lgico necesario.
Este documento fue dseado para ser puesto en prctca excusvamente en Cent0> 5, "lasti2
+.5, 'ed Eat "nterprise inu2 5 y b$ite!o2 "nterprise inu2 5 o sstemas operatvos
smares, basados sobre 'ed Eat "nterprise inu2 5.
Ingrese a sstema como e usuaro root.
Proceda a confgurar e depsto YUM de Acance Lbre que ncuye e paquete modfcado de squd
con soporte para dreccones MAC:
cd /etc/yum@repos@d/
get !, http#//@alcancelibre@org/al/server/41!Server@repo
cd !
Proceda a nstaar sarg utzando e sguente mandato.
yum !y install sarg httpd
99.3. <rocedimientos.
Confgure e soporte a espao para Sarg.
Edte con vm e archvo =etc=sarg=sarg.con&:
vim /etc/sarg/sarg@con"
Puse a teca %nsert.
634
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Locace a cadena de texto language "nglis$.
A Russian.koi5
A Russian.>=0!5
A Russian.indos1691
A Serbian
A Slovak
A Spanish
A 0urkish
A
)#n.#e En)%sh
A 04I# access.log "ile
A 3here is the access@log "ile
A sarg !l "ile
A
Aaccess.log /usr/local/sJuid/var/logs/access@log
access.log /var/log/sJuid/access@log
Reempace a cadena de texto con language >panis$.
A Russian.koi5
A Russian.>=0!5
A Russian.indos1691
A Serbian
A Slovak
A Spanish
A 0urkish
A
)#n.#e S'#n%sh
A 04I# access.log "ile
A 3here is the access@log "ile
A sarg !l "ile
A
Aaccess.log /usr/local/sJuid/var/logs/access@log
access.log /var/log/sJuid/access@log
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y uego a
teca = (")@"').
Edte con vm e archvo =etc=$ttpd=con&.d=sarg.con&:
vim /etc/httpd/con"@d/sarg@con"
Puse a teca %nsert.
Locace a nea alloP &rom +*7.O.O.+, a cua defne que soo se puede acceder haca e
drectoro =sarg= desde +*7.O.O.+ (es decr, soo puede ser acceddo como ttp)**:HU.8.8.:*sarg*).
4lias /sarg /var//sarg
a%irectory /var//sargL
%irectory(ndex index@html
order denyBallo
deny "rom all
#))o? +ro9 42=././.4
635
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
a/%irectoryL
Defna que tambn se puede acceder a drectoro =sarg= desde +S*.+69.+*3.O=*4,
reempazando por alloP &rom +*7.O.O.+ +S*.+69.+*3.O=*4.
4lias /sarg /var//sarg
a%irectory /var//sargL
%irectory(ndex index@html
order denyBallo
deny "rom all
#))o? +ro9 42=././.4 4<2.438.423./82E
a/%irectoryL
Defna que e acceso haca e drectoro =sarg= (que en adeante podr ser acceddo como
ttp)**pro1/.red&local.net*sarg* o ben ttp)**%23.%45.%36.%36*sarg*) se permtr soo a
usuaros autorzados que autentcarn a travs de archvo =var=PPP=claves(sarg.
4lias /sarg /var//sarg
a%irectory /var//sargL
%irectory(ndex index@html
order denyBallo
deny "rom all
allo "rom 167@$@$@1 4<2.438.423./82E
A.$hN#9e "So)o .s.#r%os #.$or%:#-os."
A.$hTy'e B#s%&
re,.%re *#)%--.ser
A.$hUserF%)e 8*#r8???8&)#*es-s#r
a/%irectoryL
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y uego a
teca = (")@"').
Genere con e mandato touc$ e archvo =var=PPP=claves(sarg:
touch /var//claves!sarg
Utce e mandato c$mod para defnr que e archvo =var=PPP=claves(sarg soo tendr permsos
de ectura y escrtura para a case de usuaro:
chmod $6$$ /var//claves!sarg
Utce e mandato c$oPn para defnr que e archvo =var=PPP=claves(sarg pertenece a usuaro
apache y grupo apache:
chon apache#apache /var//claves!sarg
Utce e mandato $tpassPd sobre e archvo =var=PPP=claves(sarg para crear e usuaro vrtua
administrador y asgnar a ste una cave de acceso que soo deber conocer e admnstrador de
servdor:
htpassd /var//claves!sarg administrador
636
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Ince (o smpemente rence, s es necesaro) e servco $ttpd.
service httpd start
S e servco $ttpd nca normamente, proceda con e sguente paso. S hay faas o errores,
regrese en os pasos que sean necesaros y corr|a os posbes errores antes de contnuar.
S e servco $ttpd nc sn errores, utce e mandato c$Lcon&ig para que e servco $ttpd
nce automtcamente a prxma vez que arranque e sstema.
chkcon"ig httpd on
Permta a a red de rea oca generar actvdad en e servdor durante agunos mnutos y e|ecute
e mandato sarg.
sarg
Podr ver en reporte generado manuamente en a dreccn ttp)**pro1/.red&
local.net*sarg*1?,6$.1T* o ben ttp)**%23.%45.%36.%36*sarg*1?,6$.1T*.
Podr ver un reporte generado automtcamente todos os das en a dreccn ttp)**pro1/.red&
local.net*sarg*daily* o ben ttp)**%23.%45.%36.%36*sarg*daily*.
Los reportes de amacenarn en =var=PPP=sarg=, y pueden mpcar una cantdad consderabe de
datos. Perdcamente ngrese a os subdrectoros en e nteror de ste, prncpamente e
subdrectoro daily y emne os reportes antguos o que sean de poca utdad, a fn de evtar se
agote e espaco en dsco duro.
637
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
9S. Apndice- istas y reglas de control de
acceso para >#uid
Autor: "oel Barrios &ue!as
Correo electrnico: dar)#hra*+g*ail.co*
#itio de Red: http://www.alcancelibre.org/
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. b) No puede utzar esta obra para fnes comercaes. c) S atera o
transforma esta obra, o genera una obra dervada, so puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o
dstrbur a obra, tene que de|ar ben caro os trmnos de a cenca de esta obra. Aguna de estas condcones puede no apcarse s se
obtene e permso de ttuar de os derechos de autor. Los derechos dervados de usos egtmos u otras mtacones no se ven afectados por o
anteror. La nformacn contenda en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn
responsabdad aguna s e usuaro o ector hace ma uso de stos.
9S.O.+. 'eglas aplicadas
A 1ista Jue de"ine mftodo de autenticaciRn#
acl passord proxy.auth R&l>(R&%
A 1istas de control de acceso por de"ecto#
acl all src $@$@$@$/$@$@$@$
acl localhost src 167@$@$@1/699@699@699@699
A 1istas Jue de"inen conMuntos de maJuinas
acl redlocal src +/etc/sJuid/redlocal+
acl privilegiados src +/etc/sJuid/privilegiados+
acl restringidos src +/etc/sJuid/restringidos+
acl administrador src 186@165@1@694
A 1istas Jue de"inen palabras contenidas en un >R1
acl porno url.regex +/etc/sJuid/porno+
A )ontenido#
A
A sex
A porn
A girl
A celebrit
A extasis
A drug
A playboy
A hustler
A 1ista de sitios inocentes Jue accidentealmente sean bloJueados
acl noporno url.regex +/etc/sJuid/noporno+
A )ontenido#
A
A missingheart
A irelessexcite
A msexchange
A msexcel
A "reeton
A geek!girls
A adulteducation
A 1istas Jue de"inen tipos de extensiones
A %e"ine una lista estricta de extensiones prohibidas
acl multimedia urlpath.regex +/etc/sJuid/multimedia+
638
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A )ontenido#
A
A O@mp?F
A O@aviF
A O@movF
A O@mpgF
A O@batF
A O@pi"F
A O@sysF
A O@lnkF
A O@scrF
A O@exeF
A %e"ine una lista moderada de extensiones prohibidas
acl peligrosos urlpath.regex +/etc/sJuid/peligrosos+
A )ontenido#
A
A O@batF
A O@pi"F
A O@sysF
A O@lnkF
A O@scrF
A O@exeF
A %e"ine una sola extensiRn
acl realmedia urlpath.regex O@rmF
A Reglas de control de acceso
A Regla por de"ecto#
http.access allo localhost
A &Memplos de reglas de control de acceso
http.access allo restringidos passord hporno hmultimedia
http.access allo redlocal passord hporno hpeligrosos
http.access allo privilegiados passord hpeligrosos
http.access allo administrador
http.access allo noporno all
A Regla por de"ecto#
http.access deny all
639
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
SO. Cmo con&igurar un muro corta&uegos con
>$orePall y tres inter&aces de red
Autor: "oel Barrios &ue!as
Correo electrnico: dar)#hra*+g*ail.co*
#itio de Red: http://www.alcancelibre.org/
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. b) No puede utzar esta obra para fnes comercaes. c) S atera o
transforma esta obra, o genera una obra dervada, so puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o
dstrbur a obra, tene que de|ar ben caro os trmnos de a cenca de esta obra. Aguna de estas condcones puede no apcarse s se
obtene e permso de ttuar de os derechos de autor. Los derechos dervados de usos egtmos u otras mtacones no se ven afectados por o
anteror. La nformacn contenda en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn
responsabdad aguna s e usuaro o ector hace ma uso de stos.
SO.+. %ntroduccin.
SO.+.+. Acerca de >$orePall.
>$orePall (Shorene Frewa) es una robusta y extensbe $erramienta de alto nivel para la
con&iguracin de muros corta&uego. >$orePall soo necesta se e proporconen agunos datos
en agunos archvos de texto smpe y ste crear as regas de cortafuegos correspondentes a
travs de ipta!les. >$orePall puede permtr utzar un sstema como muro cortafuegos
dedcado, sstema de mtpes funcones como puerta de enlaceF dispositivo de
encaminamiento y servidor.
URL: http://www.shorewa.net/
SO.+.*. Acerca de %pta!les y )et&ilter.
)et&ilter es un con|unto de gancos (EooLs, es decr, tcncas de programacn que se empean
para crear cadenas de procedmentos como mane|ador) dentro de nceo de GNU/Lnux y que son
utzados para nterceptar y manpuar paquetes de red. E componente me|or conocdo es e
cortafuegos, e cua reaza procesos de ftracn de paquetes. Los gancos son tambn utzados
por un componente que se encarga de )A@ (acrnmo de )etwork Address @ransaton o
Traduccn de dreccn de red). Estos componentes son cargados como mduos de nceo.
%pta!les es e nombre de a herramenta de espaco de usuaro (,ser >pace, es decr, rea de
memora donde todas as apcacones, en modo de usuaro, pueden ser ntercambadas haca
memora vrtua cuando sea necesaro) a travs de a cua os admnstradores crean regas para
cada ftrado de paquetes y mduos de )A@. %pta!les es a herramenta estndar de todas as
dstrbucones modernas de GNU/Lnux.
URL: http://www.netfter.org/
SO.+.3. Acerca de %proute.
%proute es una coeccn de herramentas (fcfg, p, rtmon y tc) para GNU/Lnux que se utzan
para controar e estabecmento de a red @C<=%<, as como tambn e contro de trfco. Aunque
i&con&ig sgue sendo a herramenta de confguracn de red estndar en as dstrbucones de
GNU/Lnux, iproute tende a sustturo a proveer soporte para a mayora de as tecnoogas
modernas de red (ncuyendo IP versones 4 y 6), permtendo a os admnstradores confgurar os
parmetros de red y e contro de trfco.
640
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
URL: http://nux-net.osd.org/ndex.php/Iproute2
SO.+.4. 'e#uisitos.
Un sstema GNU/Lnux con todos os parches de segurdad correspondentes nstaados.
>$orePall 3.O.9 o versiones posteriores.
Tres nterfaces de red:
Interfaz para acceso haca Internet.
Interfaz para acceso haca una D:[, tras a cua se podrn coocar servdores.
Interfaz para acceso haca a A) (acrnmo de oca Area )etwork o Area de
Red Loca).
SO.*. Conceptos re#ueridos.
SO.*.+. Bu es una 8ona desmilitari8ada?
Una zona desmtarzada (D:[), es parte de una red que no est dentro de a red nterna (A))
pero tampoco est drectamente conectada haca Internet. Podra resumrse como una red que se
ocaza entre dos redes. En trmnos ms tcncos se refere a un rea dentro de cortafuegos
donde os sstemas que a componen tenen acceso haca as redes nterna y externa, sn embargo
no tenen acceso competo haca a red nterna y tampoco acceso competamente aberto haca a
red externa. Los cortafuegos y dspostvos de encamnamento (routers) protegen esta zona con
funconadades de ftrado de trfco de red.
Dagrama de una Zona Desmtarzada.
Imagen de domno pbco tomada de Wkpeda y modfcada con e Gmp.
641
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
SO.*.*. Bue es una 'ed <rivada?
Una 'ed <rivada es aquea que utza dreccones IP estabecdas en e RFC 1918. Es decr,
dreccones IP reservadas para 'edes <rivadas dentro de os rangos 10.0.0.0/8 (desde 10.0.0.0
hasta 10.255.255.255), 172.16.0.0/12 (desde 172.16.0.0 hasta 172.31.255.255) y 192.168.0.0/16
(desde 192.168.0.0 hasta 192.168.255.255).
SO.*.3. Bu es un )A@?
)A@ (acrnmo de )etwork Address @ransaton o Traduccn de dreccn de red), tambn
conocdo como enmascaramento de IP, es una tcnca medante a cua as dreccones de orgen
y/o destno de paquetes IP son reescrtas mentras pasan a travs de un dspostvo de
encamnamento (router) o muro cortafuegos. Se utza para permtr a mtpes anftrones en
una 'ed <rivada con dreccones IP para 'ed <rivada para acceder haca una Internet utzando
una soa dreccn IP pbca.
SO.*.4. Bu es un D)A@?
D)A@, (acrnmo de Destnaton )etwork Address @ransaton o traduccn de dreccn de red de
destno) es una tcnca medante a cua se hace pbco un servco desde una 'ed <rivada. Es
decr permte redrgr puertos haca dreccones IP de 'ed <rivada. E uso de esta tcnca puede
permtr a un usuaro en Internet acanzar un puerto en una 'ed <rivada (dentro de una A))
desde e exteror a travs de un encamnados (router) o muro cortafuegos donde ha sdo habtado
un )A@.
SO.3. "#uipamiento lgico necesario.
ptabes: Controa e cdgo de nceo de GNU/Lnux para ftracn de paquetes de red.
proute: Con|unto de utdades dseadas para utzar as capacdades avanzadas de
gestn de redes de nceo de GNU/Lnux.
shorewa: Shorene Frewa.
Shorewa puede descargarse en formato RPM desde http://www.shorewa.net/.
S dspone de un servdor con Cent0> 5 y 6 o 'ed Eath "nterprise inu2 5 o 6, puede utzar
e e amacn YUM de Alcance i!re para servdores en produccn, descargando e archvo
$ttp-==PPP.alcanceli!re.org=al=server=A(>erver.repo dentro de
drectoro /etc=yum.repos.d=:
cd /etc/yum@repos@d/
get !, http#//@alcancelibre@org/al/server/41!Server@repo
cd
Este archvo, que se guarda como /etc=yum.repos.d=A(>erver.repo, debe tener e sguente
contendo:
D41!ServerE
name*41 Server para &nterprise 1inux Freleasever
mirrorlist*http#//@alcancelibre@org/al/elFreleasever/al!server
gpgcheck*1
gpgkey*http#//@alcancelibre@org/al/41!R<-!H&;
642
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
La nstaacn a travs de mandato yum requere utzar o sguente:
yum !y install shoreall
SO.4. <rocedimientos.
SO.4.+. Con&iguracin de >"inu2.
Con as versones ms recentes de con|unto de potcas de SELnux, Shorewa es ncapaz de
ncar debdo a que SEnux mpde a ste e|ecutar componentes ocazados en /usr=. E sguente
procedmento detaa cmo crear una potca en SELnux que permta a Shorewa operar de
manera norma.
SO.4.+.+. <rocedimiento para crear poltica.
Crear e drectoro /usr=s$are=selinu2=pacLages=s$orePall:
mkdir /usr/share/selinux/packages/shoreall
Cambarse a drectoro /usr=s$are=selinu2=pacLages=s$orePall:
cd /usr/share/selinux/packages/shoreall
Descargar desde Alcance i!re e archvo
$ttp-==PPP.alcanceli!re.org=linu2=secrets=s$orePall.te:
get http#//@alcancelibre@org/linux/secrets/shoreall@te
Edtar e archvo s$orePall.te:
vim shore?#)).$e
Verfcar que e archvo s$orePall.te tenga e sguente contendo:
module shoreall 1@$V
reJuire \
type shoreall.tV
type usr.tV
class "ile \ execute execute.no.trans ]V
]
A************* shoreall.t **************
allo shoreall.t usr.t#"ile \ execute execute.no.trans ]V
Crear e archvo de mduo s$orePall.mod a partr de archvo s$orePall.te:
checkmodule !- !m !o shoreall@mod shoreall@te
Crear e archvo de potca s$orePall.pp a partr de archvo s$orePall.mod
643
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
semodule.package !o shoreall@pp !m shoreall@mod
Incur a potca a sstema:
semodule !i /usr/share/selinux/packages/shoreall/shoreall@pp
SO.4.*. Arc$ivo de con&iguracin =etc=s$orePall=s$orePall.con&
En ste se defnen, prncpamente, dos parmetros. >@A'@,<Q")AB"D y CA:<:>>.
>@A'@,<Q")AB"D se utza para actvar Shorewa. De modo predefndo est desactvado, soo
se necesta cambar )o por Xes.
S04R0><.&,4:1&%*;es
CA:<:>> se utza en conexones tpo PPP (PPTP o PPPoE) y srve para mtar e :>> (acrnmo
de :axmum >egment >ze que sgnfca Mxmo Tamao de Segmento). Cambando e vaor )o
por Xes, Shorewa cacuar e :>> ms apropado para a conexn. S se es osado, puede
tambn especfcarse un nmero en paquetes SYN. La recomendacn es estabecer Xes s se
cuenta con un enace tpo PPP.
)14-<-SS*;es
SO.4.3. Arc$ivo de con&iguracin =etc=s$orePall=8ones
Este archvo se utza para defnr as zonas que se admnstrarn con Shorewa y e tpo de zona
(frewa, pv4 o psec). La zona &P est presente en e archvo /etc=s$orePall.con& como
confguracn predefnda. En e sguente e|empo se regstrarn as zonas de Internet (net), Red
Loca (oc) y Zona Desmtarzada (dmz):
AG/,& %(S<14; /<0(/,S
" "ireall
net ipv4
loc ipv4
dmC ipv4
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
SO.4.4. Arc$ivo de con&iguracin =etc=s$orePall=inter&aces
En ste se estabecen cuaes sern as nterfaces para as tres dferentes zonas. Se estabecen as
nterfaces que corresponden a a Internet, Zona Desmtarzada D:[ y Red Loca. En e sguente
e|empo, se cuenta con una nterfaz ppp0 para acceder haca Internet, una nterfaz eth0 para
acceder haca a A) y una nterfaz eth1 para acceder haca a D:[, y en todas se socta se
cacue automtcamente a dreccn de transmsn (Broadcast):
AG/,& (,0&R=4)& :R/4%)4S0 /<0(/,S I40&34;
net ppp$ detect
loc eth$ detect
dmC eth1 detect
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
644
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
En e sguente e|empo, se cuenta con una nterfaz et$O para acceder haca Internet, una nterfaz
eth1 para acceder haca a A) y una nterfaz et$* para acceder haca a D:[, y en todas se
socta se cacue automtcamente a dreccn de transmsn (Broadcast):
AG/,& (,0&R=4)& :R/4%)4S0 /<0(/,S I40&34;
net eth$ detect
loc eth1 detect
dmC eth6 detect
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
Hay una cuarta zona mpcta que corresponde a cortafuegos msmo y que se denomna &P.
S acaso hubera un servco de DEC<, sea como cente, como servdor o como ntermedaro, en
aguna de as nterfaces, se debe aadr a opcn d$cp para permtr a comuncacn requerda
para este servco. En e sguente e|empo e anftrn donde opera e muro cortafuegos obtene su
dreccn IP, para a nterfaz ppp0, a travs de servco DEC< de %><; en este msmo anftrn
opera smutneamente un servdor DEC<, e cua es utzado en a red de rea oca para asgnar
dreccones IP; por todo o anteror se debe actvar a opcn DEC< para as nterfaces pppO y
et$+, que correspondentemente son utzadas por a zona de Internet y a red de rea oca, pero
no es necesaro hacero para a nterfaz et$* que es utzada para a zona de a D:[:
AG/,& (,0&R=4)& :R/4%)4S0 /<0(/,S I40&34;
net ppp$ detect -h&'
loc eth1 detect -h&'
dmC eth6 detect
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
SO.4.5. Arc$ivo de con&iguracin =etc=s$orePall=policy
En este archvo se estabece como se acceder desde una zona haca otra y haca a zona de
Internet.
AS/>R)& %&S0 </1(); 1/I 1(-(0#:>RS0
loc net 4))&<0
dmC net 4))&<0
" net 4))&<0
net all %R/< in"o
all all R&^&)0 in"o
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
Lo anteror hace o sguente:
1. La zona de a red oca puede acceder haca a zona de Internet.
2. La zona de a DMZ puede acceder haca a zona de Internet.
3. E cortafuegos msmo puede acceder haca a zona de Internet.
4. Se mpden conexones desde Internet haca e resto de as zonas.
5. Se estabece una potca de rechazar conexones para todo o que se haya omtdo.
Todo o anteror permte e paso entre as dversas zonas haca Internet, lo cual no es desea!le s
se quere mantener una potca estrcta de segurdad. La recomendacn es cerrar todo haca todo
e r abrendo e trfco de acuerdo a como se vaya requrendo. Es decr, utzar ago como o
sguente:
645
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
AS/>R)& %&S0 </1(); 1/I 1(-(0#:>RS0
net all %R/< in"o
all all R&^&)0 in"o
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
Lo anteror boquea todo e trfco desde donde sea a donde sea. S es necesaro reazar pruebas
de dagnstco desde e cortafuegos haca Internet para probar conectvdad y acceso haca
dversos protocoos, se puede utzar o sguente:
AS/>R)& %&S0 </1(); 1/I 1(-(0#:>RS0
" net 4))&<0
net all %R/< in"o
all all R&^&)0 in"o
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
Lo anteror permte a propo cortafuegos acceder haca a zona de Internet. Esta sera a potca
ms rea|ada que se pudera recomendar para mantener un nve de segurdad aceptabe.
SO.4.6. Arc$ivo de con&iguracin =etc=s$orePall=mas#
Se utza para defnr que a travs de que nterfaz o nterfaces se habtar enmascaramento, o
)A@, y para que nterfaz o nterfaces o redes se apcar dcho enmascaramento. En e sguente
e|empo, se reazar enmascaramento a travs de a nterfaz ppp0 para as redes que acceden
desde as nterfaces eth0 y eth1:
A(,0&R=4)& S>:,&0 4%%R&SS <R/0/ </R0(S) (<S&)
ppp$ eth$
ppp$ eth1
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
En e sguente e|empo, se reazar enmascaramento a travs de a nterfaz eth0 para as redes
192.168.0.0/24 y 192.168.1.0/24:
A(,0&R=4)& S>:,&0 4%%R&SS <R/0/ </R0(S) (<S&)
eth$ 186@165@$@$/64
eth$ 186@165@1@$/64
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
Tambn es posbe hacer )A@ soamente haca una IP en partcuar y para un soo protocoo en
partcuar. En e sguente e|empo se hace )A@ a travs de a nterfaz ppp0 para a dreccn
192.168.3.25 que accede desde a nterfaz eth1 y soo se e permtr hacer )A@ de os protocoos
smtp y pop3. Los nombres de os servcos se asgnan de acuerdo a como estn stados en e
archvo /etc=services.
A(,0&R=4)& S>:,&0 4%%R&SS <R/0/ </R0(S) (<S&)
ppp$ eth1 186@165@?@69 tcp 69B11$
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
SO.4.7. Arc$ivo de con&iguracin =etc=s$orePall=rules
Todos os puertos estn cerrados de modo predefndo, y es en este archvo donde se habtan os
puertos necesaros. Hay dversas funcones que pueden reazarse.
646
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
SO.4.7.+. ACC"<@
La accn ACCEPT se hace para especfcar s se permten conexones desde o haca una(s) zona (s)
un protocoo(s) y puerto(s) en partcuar. En e sguente e|empo se permten conexones desde
Internet haca e puerto 80 (www), 25 (smtp) y 110 (pop3). Los nombres de os servcos se asgnan
de acuerdo a como estn stados en e archvo /etc=services.
A4)0(/, S/>R)& %&S0 <R/0/ %&S0
A </R0
4))&<0 net " tcp 5$B69B11$
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
SO.4.7.*. '"D%'"C@
La accn REDIRECT permte redrgr petcones haca un puerto en partcuar. Muy t cuando se
queren redrgr petcones para E@@< (puerto 80) y se quere que estas pasen a travs de un
>ervidor %ntermediario (Proxy) como Squd. En e sguente e|empo as petcones hechas desde
a red oca y desde a D:[ sern redrgdas haca e puerto 8080 de cortafuegos, en donde hay
un >ervidor %ntermediario (Proxy) confgurado de modo transparente.
A4)0(/, S/>R)& %&S0 <R/0/ %&S0
A </R0
R&%(R&)0 loc 5$5$ tcp 5$
R&%(R&)0 dmC 5$5$ tcp 5$
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
SO.4.7.3. D)A@
La accn D)A@ se utza para reenvar petcones desde un puerto de cortafuegos haca una IP y
puerto en partcuar tanto en a red oca como en a D:[. Cabe destacar que para que e D)A@
funcon se necesta que:
Est habtado e reenvo de paquetes en /etc=syscon&ig=sysctl.c&g
y /etc=s$orePall=s$orePall.con&
Los equpos haca os que se est hacendo D)A@ utcen como puerta de enace a cortafuegos
desde sus correspondentes zonas.
En e sguente e|empo, se hace D)A@ desde a zona de Internet para E@@< (puerto 80), >:@<
(puerto 25) y <0<3 (puerto 110) por TCP y D)> (puerto 53) por @C< y ,D< haca a IP
10.10.10.28 ocazada en a zona de a Red Loca.
A4)0(/, S/>R)& %&S0 <R/0/ %&S0
A </R0
%,40 net dmC#1$@1$@1$@65 tcp 5$B69B11$B9?
%,40 net dmC#1$@1$@1$@65 udp 9?
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
SO.4.7.4. ".emplos diversos de reglas.
En e sguente e|empo se permte a a zona de Red Loca e acceso haca e puerto 22 (SSH) de
cuaquer equpo dentro de a D:[:
647
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A4)0(/, S/>R)& %&S0 <R/0/ %&S0
A </R0
4))&<0 loc dmC tcp 66
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
En e sguente e|empo se permte soo a a dreccn 192.168.2.34 de zona de Red Loca e acceso
haca e puerto 22 (SSH) de cuaquer equpo dentro de a D:[:
A4)0(/, S/>R)& %&S0 <R/0/ %&S0
A </R0
4))&<0 loc#186@165@6@?4 dmC tcp 66
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
En e sguente e|empo se permte soo a a dreccn 192.168.2.34 de zona de Red Loca e acceso
haca e puerto 22 (ssh) de a dreccn 10.10.10.5 que est dentro de a D:[:
A4)0(/, S/>R)& %&S0 <R/0/ %&S0
A </R0
4))&<0 loc#186@165@6@?4 dmC#1$@1$@1$@9 tcp 66
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
En e sguente e|empo se hace D)A@ desde a zona de Internet para os servcos de E@@<
(puerto 80), >:@< (puerto 25) y <0<3 (puerto 110) por @C< y D)> (puerto 53) por @C< y ,D<
haca dversos servdores ocazados D:[:
A4)0(/, S/>R)& %&S0 <R/0/ %&S0
A </R0
%,40 net dmC#1$@1$@1$@1 tcp 5$
%,40 net dmC#1$@1$@1$@6 tcp 69B11$
%,40 net dmC#1$@1$@1$@? tcp 9?
%,40 net dmC#1$@1$@1$@? udp 9?
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
En e sguente e|empo se hace D)A@ desde a zona de a Red Loca para os servcos de E@@<
(puerto 80), >:@< (puerto 25), <0<3 (puerto 110) y D)> (puerto 53) haca dversos servdores
ocazados D:[:
648
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A4)0(/, S/>R)& %&S0 <R/0/ %&S0
A </R0
%,40 loc dmC#1$@1$@1$@1 tcp 5$
%,40 loc dmC#1$@1$@1$@6 tcp 69B11$
%,40 loc dmC#1$@1$@1$@? tcp 9?
%,40 loc dmC#1$@1$@1$@? udp 9?
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
En e sguente e|empo se hace D)A@ desde a zona de Internet para os servcos de E@@<
(puerto 80), >:@< (puerto 25), <0<3 (puerto 110) y D)> (puerto 53) haca dversos servdores
ocazados D:[ y mtar a taza de conexones a dez por segundo con rfagas de hasta cnco
conexones para cada servco:
A4)0(/, S/>R)& %&S0 <R/0/ %&S0 S/>R)& /R(I(,41 R40&
A </R0 </R0(S) %&S0 1(-(0
%,40 net dmC#1$@1$@1$@1 tcp 5$ ! !
1$/sec#9
%,40 net dmC#1$@1$@1$@6 tcp 69B11$ ! !
1$/sec#9
%,40 net dmC#1$@1$@1$@? tcp 9? ! !
1$/sec#9
%,40 net dmC#1$@1$@1$@? udp 9? ! !
1$/sec#9
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
En e sguente e|empo as petcones hechas desde a red oca (A)) sern redrgdas haca e
puerto 8080 de cortafuegos, en donde hay un >ervidor %ntermediario (Proxy) confgurado de
modo transparente, mtando a taza de conexones a veinte por segundo con rfagas de hasta
cnco conexones. Esto es muy t para evtar ataques de Do> (acrnmo de Dena of >ervce que
se traduce como Denegacn de Servco) desde a red oca (A)).
A4)0(/, S/>R)& %&S0 <R/0/ %&S0 S/>R)& /R(I(,41 R40&
A </R0 </R0(S) %&S0 1(-(0
R&%(R&0 loc 5$5$ tcp 5$ ! ! 6$/sec#9
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
SO.5. %niciar el corta&uegos y aadirlo a los servicios de
arran#ue del sistema
Para e|ecutar por prmera vez e servco, utce:
service shoreall start
Para hacer que os cambos hechos a a confguracn surtan efecto, utce:
service shoreall restart
Para detener e cortafuegos, utce:
service shoreall stop
649
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Cabe seaar que detener e cortafuegos tambn detene todo trfco de red, ncuyendo e trfco
provenente desde a A). S se desea restaurar e trfco de red, sn a proteccn de un
cortafuegos, ser necesaro tambn utzar e gun de ipta!les.
service iptables stop
Lo ms convenente, en caso de ser necesaro detener e cortafuegos, es defnr que dreccones IP
o redes podrn contnuar accedendo cuando e cortafuegos es detendo, o cuando ste se
encuentra en proceso de renco. Esto se defne en e archvo /etc=s$orePall=routestopped,
defnendo a nterfaz, a travs de a cua se permtr a comuncacn, y a dreccn IP o red, en
un formato de sta separada por comas, de os anftrones que podrn acceder a cortafuegos.
E|empo:
A(,0&R=4)& 2/S0(S) /<0(/,S
eth$ 186@165@1@$/64
eth$ 186@165@6@?$B186@165@6@?1
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
Para aadr Shorewa a arranque de sstema, utce:
chkcon"ig shoreall on
650
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S+. Cmo con&igurar un servidor de 0penG<).
Autor: "oel Barrios &ue!as
Correo electrnico: dar)#hra*+g*ail.co*
#itio de Red: http://www.alcancelibre.org/
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. b) No puede utzar esta obra para fnes comercaes. c) S atera o
transforma esta obra, o genera una obra dervada, so puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o
dstrbur a obra, tene que de|ar ben caro os trmnos de a cenca de esta obra. Aguna de estas condcones puede no apcarse s se
obtene e permso de ttuar de os derechos de autor. Los derechos dervados de usos egtmos u otras mtacones no se ven afectados por o
anteror. La nformacn contenda en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn
responsabdad aguna s e usuaro o ector hace ma uso de stos.
S+.+. %ntroduccin.
S+.+.+. Acerca de 0penG<).
0penG<) es una soucn de conectvdad basada sobre equpamento gco (soft(are):
SSL(Secure Sockets Layer) VPN (Vrtua Prvate Network, o red vrtua prvada), OpenVPN ofrece
conectvdad punto-a-punto con vadacn, |errquca de usuaros y host conectados
remotamente, resuta una muy buena opcn en tecnoogas W-F (redes nambrcas EEI 802.11)
y soporta una ampa confguracn, entre stas e baanceo de cargas, entre otras muchas cosas
ms.
URL: http://openvpn.net
S+.+.*. Breve e2plicacin de lo #ue se lograr; con este documento.
Este documento descrbe a confguracn de una G<) tpo %ntranet.
Este tpo de redes es creado entre una ofcna centra (servdor) y una o varas ofcnas remotas
(centes). E acceso vene de exteror. Se utza este tpo de VPN cuando se necesta enazar a os
stos que son parte de una compaa, en nuestro caso ser compuesto por un servdor Centra que
conectar a muchos centes VPN entre s.
La nformacn y apcacones a as que tendrn acceso os drectvos mves en e VPN, no sern
as msmas que aqueas en donde pueden acceder os usuaros que efectan actvdades de
mantenmento y soporte, esto como un e|empo de o que se podr reazar con esta
confguracn.
Ademas de que podr conectarse a travs de @erminal >erver (en el ca#o de cliente# (inu1) a
termnaes Wndows de a red VPN as como de Centes Wndows a computadoras con e msmo
sstema operatvo (medante RDP).
)ota %mportante: Enfocado a esta confguracn .. Una vez que os centes (7indow#/(inu1) se
conecten a a red VPN quedarn automtcamente sn conexn a Internet, o cua NO podrn
acceder a a red munda. Esto puede ser modfcabe en e servdor VPN.
651
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Servdor de Pasarea OpenVPN con centes (Wndows/Lnux) remotos
E servdor VPN $ace de pasarela para que todos os centes (Wndows/Lnux) puedan estar
comunicados a travs de tne OpenVPN, estos a conectarse por medo de Internet a tne
automtcamente quedan sin lineaa a red munda quedando como una red local, esto caro esta
a travs de a VPN.
Cada cente se encuentra en ugares dferentes (cudad/estado/pas) con dferentes tpos de
segmento de red, a estar conectados medante e tne VPN se crea un red vrtua y se asgna un
nuevo segmento de red proporconada por e servdor prncpa en este caso con segmento (por
e|empo 10.10.0.0/255.255.255.0no 192.168.37.0/255.255.255.0).
S+.*. %nstalacin del e#uipamiento lgico necesario.
Fedora 9 en adeante ncuye e paquete openvpn en sus depstos Yum, por o que soo es
necesaro nstaaro desde a termna a travs de mandato yum. E sguente procedmento soo
es necesaro para Cent0> 5.
S+.*.+. %nstalacin en Cent0> 5.
Como e usuaro root, desde una termna, crear e archvo =etc=yum.repos.d=A(>erver.repo,
utzando cuaquer edtor de texto. En e sguente e|empo se utza vi.
vi /etc/yum@repos@d/41!Server@repo
652
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Aadr a este nuevo arc$ivo e sguente contendo:
D41!ServerE
name*41 Server para &nterprise 1inux Freleasever
mirrorlist*http#//@alcancelibre@org/al/elFreleasever/al!server
gpgcheck*1
gpgkey*http#//@alcancelibre@org/al/41!R<-!H&;
Importar a frma dgta de Alcance i!re e|ecutando o sguente desde a termna:
rpm !!import http#//@alcancelibre@org/al/41!R<-!H&;
Luego de mportar a frma dgta de Acance Lbre, nstaar e equpamento gco (soft(are)
necesaro con e mandato yum. Se requeren os paquetes RPM de OpenVPN, Shorewa y vm-
enhanced (a versn me|orada de V):
yum !y install openvpn shoreall vim!enhanced
S+.3. <rocedimientos.
S fuera necesaro, cambarse a usuaro root utzando e sguente mandato:
su !l
A fn de poder utzar nmedatamente a versn me|orada de Gi (nstaado con e paquete vim(
en$anced), e|ecutar desde a termna o sguente:
alias vi*+vim+
Cambarse a drectoro, desde a termna, e|ecutar o sguente para cambarse a drectoro
=etc=openvpn:
cd /etc/openvpn/
)0@A- Todos os procedmentos necesaros para confgurar un servdor con 0penG<) se reazan
sn sar de =etc=openvpn=. Por favor, evite cam!iar de directorio hasta haber fnazado os
procedmentos descrtos en este documento.
A fn de factar os procedmentos, se coparn dentro de drectoro =etc=openvpn= os archvos
openssl.cn&, P$ic$opensslcn&, pLitool y vars, que se ocazan en =etc=openvpn=easy(
rsa=*.O=:
cp /usr/share/openvpn/easy!rsa/6@$/openssl@cn" @/
cp /usr/share/openvpn/easy!rsa/6@$/hichopensslcn" @/
cp /usr/share/openvpn/easy!rsa/6@$/pkitool @/
cp /usr/share/openvpn/easy!rsa/6@$/vars @/
Utzar e edtor de texto y abrr e archvo =etc=openvpn=vars:
vi /etc/openvpn/vars
653
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
De este archvo, soamente edtar as tmas neas, que corresponden a o sguente:
export H&;.)/>,0R;*+>S+
export H&;.<R/'(,)&*+)4+
export H&;.)(0;*+San=rancisco+
export H&;./RI*+=ort!=unston+
export H&;.&-4(1*+meXmyhost@mydomain+
Reempazar por vaores reaes, como os de sguente e|empo:
export H&;.)/>,0R;*+-X+
export H&;.<R/'(,)&*+%=+
export H&;.)(0;*+-exico+
export H&;./RI*+servidor@mi!dominio@com+
export H&;.&-4(1*+"ulanitoXmi!dominio@com+
Se requere e|ecutar de sguente modo e archvo =etc=openvpn=vars a fn de que carguen as
varabes de entorno que se acaban de confgurar.
source /etc/openvpn/@/vars
Cada vez que se vayan a generar nuevos certfcados, debe e|ecutarse e mandato anteror a fn de
que carguen as varabes de entorno defndas.
Se e|ecuta e archvo =usr=s$are=openvpn=easy(rsa=*.O=clean(all a fn de mpar cuaquer frma
dgta que accdentamente estuvera presente.
sh /usr/share/openvpn/easy!rsa/6@$/clean!all
Lo anteror reaza un rm (&r (emnacn recursva) sobre e drectoro =etc=openvpn=Leys, por o
que se emnarn todas os certfcados y frmas dgtaes que huberan exstdo con anterordad.
A fn de crear e certfcado de servdor, se crea un certfcado:
sh /usr/share/openvpn/easy!rsa/6@$/build!ca
Se crea e archvo dh1024.pem, e cua contendr os parmetros de protocoo Dffe-Eeman, de
1024 bts:
sh /usr/share/openvpn/easy!rsa/6@$/build!dh
E protocoo Dffe-Eeman permte e ntercambo secreto de caves entre dos partes que sn que
stas hayan tendo contacto prevo, utzando un cana nseguro, y de manera annma (sn
autentcar). Se empea generamente como medo para acordar caves smtrcas que sern
empeadas para e cfrado de una sesn, como es e caso de una conexn VPN.
Para generar a frma dgta, se utzan e sguente mandato:
sh /usr/share/openvpn/easy!rsa/6@$/build!key!server server
654
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Fnamente se crean os certfcados para os centes. En e sguente3 e|empo se crean os
certfcados para cliente+, cliente*, cliente3, cliente4, cliente5, y cliente6:
sh /usr/share/openvpn/easy!rsa/6@$/build!key cliente1
sh /usr/share/openvpn/easy!rsa/6@$/build!key cliente6
sh /usr/share/openvpn/easy!rsa/6@$/build!key cliente?
sh /usr/share/openvpn/easy!rsa/6@$/build!key cliente4
sh /usr/share/openvpn/easy!rsa/6@$/build!key cliente9
sh /usr/share/openvpn/easy!rsa/6@$/build!key cliente6
A fn de utzar os certfcados y que se confgure e sstema, se crea con e edtor de texto e
archvo =etc=openvpn=servidorvpn(udp(++S4.con&, donde servidorvpn se reempaza por e
nombre de anftrn de sstema:
vi /etc/openvpn/servidorvpn!udp!1184@con"
Para a G<) se recomenda utzar una red prvada que sea poco usua, a fn de poder permtr a
os centes conectarse sn confctos de red. Un e|empo de una red poco utzada sera
192.168.37.0/255.255.255.0, o cua permtr conectarse a a G<) a 253 centes. Tomando en
cuenta o anteror, e contendo de archvo =etc=openvpn=servidorvpn(udp(++S4.con&, debe ser
e sguente:
port 1184
proto udp
dev tun
A!!!! Seccion de llaves !!!!!
ca keys/ca@crt
cert keys/server@crt
key keys/server@key
dh keys/dh1$64@pem
A!!!!!!!!!!!!!!!!!!!!!!!!!!!!
server 186@165@?7@$ 699@699@699@$
i"con"ig!pool!persist ipp@txt
keepalive 1$ 16$
comp!lCo
persist!key
persist!tun
status openvpn!status!servidorvpn!udp!1184@log
verb ?
Descrpcn de os parmetros anterores:
8ort: Especfca e puerto que ser utzado para que os centes vpn puedan conectarse a servdor.
8roto: tpo de protocoo que se empear en a conexn a travs de VPN
de9: Tpo de nterfaz de conexn vrtua que se utzar e servdor openvpn.
ca: Especfca a ubcacn exacta de archvo de Autordad Certfcadora |.ca|.
cert: Especfca a ubcacn de archvo |.crt| creado para e servdor.
)e/: Especfca a ubcacn de a ave |.key| creada para e servdor openvpn.
dh: Ruta exacta de archvo |.pem| e cua contene e formato de Dffe Heman (requrerdo para
((tls(serversoamente).
#er9er: Se asgna e rango IP vrtua que se utzar en a red de tne VPN.
:conig&pool&per#i#t: Archvo en donde quedarn regstrado as dreccones IP de os centes que se
encuentran conectados a servdor OpenVPN.
655
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
;eepali9e %$ %3$ : Enva os paquetes que se mane|an por a red una vez cada 10 segundos; y
asuma que e acopamento es aba|o s nnguna respuesta ocurre por 120 segundos.
co*p&lzo: Especfca os datos que recorren e tne vpn ser compactados durante a trasferenca de
estos paquetes.
per#i#t&)e/: Esta opcn soucona e probema por aves que perssten a travs de os rea|ustes
SIGUSR1, as que no necestan ser reedos.
8er#i#t&tun: Permte que no se cerre y re-abre os dspostvos TAP/TUN a correr os guones up/down
#tatu#: archvo donde se amacenar os eventos y datos sobre a conexn de servdor |.og|
9erb: Nve de nformacn (defaut=1). Cada nve demuestra todo e Info de os nvees anterores. Se
recomenda e nve 3 s usted desea un buen resumen de qu est sucedendo.
O ((No muestra una sada excepto errores fataes. + to 4 mRango de uso norma. 5 ((Sada 'y
bcaracteres en a consoa par os paquetes de ectura y escrtura, mayscuas es usada por paquetes
TCP/UDP mnscuas es usada para paquetes TUN/TAP.
S >"inu2 est actvo, es necesaro que e drectoro =etc=openvpn y sus contendos, tengan os
contextos apropados de esta mpementacn de segurdad
(system_u:ob|ect_r:openvpnQetcQrPQt para ipp.t2t y openvpn(status(servidorvpn(udp(
++S4.log y system_u:ob|ect_r:openvpnQetcQt para e resto de contendo de drectoro).
Se utza uego e mandato restorecon sobre e drectoro =etc=openvpn a fn de asgnar os
contextos adecuados.
restorecon !R /etc/openvpn/
Se crean os archvos ipp.t2t y openvpn(status(servidorvpn(udp(++S4.log:
cd /etc/openvpn/
touch ipp@txt
touch openvpn!status!servidorvpn!udp!1184@log
S se tene actvo SELnux, estos tmos dos archvos requeren se es asgne contexto de ectura y
escrtura (openvpnQetcQrPQt).
cd /etc/openvpn/
chcon !u system.u ipp@txt
chcon !u system.u openvpn!status!servidorvpn!udp!1184@log
chcon !r obMect.r ipp@txt
chcon !r obMect.r openvpn!status!servidorvpn!udp!1184@log
chcon !t openvpn.etc.r.t ipp@txt
chcon !t openvpn.etc.r.t openvpn!status!servidorvpn!udp!1184@log
Los anteror camba os contextos a usuaro de sstema (systemQu), ro de ob|eto (o!.ectQr) y tpo
confguracn de OpenVPN de ectura y escrtura (openvpnQetcQrPQt).
Para ncar e servco, se utza e mandato service de sguente modo:
service openvpn start
Para que e servco de OpenVPN est actvo en e sguente nco de sstema, se utza e mandato
c$Lcon&ig de a sguente forma:
656
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
chkcon"ig openvpn on
S+.3.+. Con&iguracin de muro corta&uegos con >$orePall.
E sguente procedmento consdera que se ha confgurado un muro cortafuegos apropadamente,
de acuerdo a as ndcacones descrtas en e documento ttuado Cmo con&igurar un muro
corta&uegos con >$orePall y tres inter&aces de red.
Independentemente de contendo, en e archvo =etc=s$orePall=8ones, se aade a zona rem
con e tpo ipv4, antes de a tma nea.
T O'en;AN ----
re9 %'*E
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
Independentemente de contendo, en e archvo =etc=s$orePall=inter&aces, se aade a zona
rem asocada a a nterfaz tunO, con a opcn detect, para detectar automtcamente e nmero
de dreccn %< de dfusn (broadcast) y a opcn d$cp. Tambn debe defnrse antes de a
tma nea de archvo.
T O'en;AN ----
re9 $.n/ -e$e&$ -h&'
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
Independentemente de contendo, en e archvo =etc=s$orePall=policy, se aade a potca
deseada para permtr e acceso de os membros de a G<) haca as zonas que se consderen
apropadas. En e sguente e|empo, se defne una potca que permte e acceso de as conexones
orgnadas desde a zona rem haca e cortafuegos, a red pbca y a red oca. Todo debe
defnrse antes de a tma nea de archvo.
" all 4))&<0
loc all 4))&<0
T O'en;'n ----
re9 +? ACCEAT
re9 ne$ ACCEAT
re9 )o& ACCEAT
T ------------
net all %R/< in"o
all all R&^&)0 in"o
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
Independentemente de contendo, en e archvo =etc=s$orePall=rules, se debe abrr en e
cortafuegos e puerto 1194 por UDP, para todas as zonas desde as cuaes se pretenda conectar
centes a a G<).
4))&<0 net " udp 1184
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
Fnamente, se edta e archvo =etc=s$orePall=tunnels a fn de defnr e tne SSL que ser
utzado para e servdor de G<) y que permta conectarse desde cuaquer ubcacn.
A0;<& G/,& I40&34; I40&34;
A G/,&
657
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
openvpnserver#1184 rem $@$@$@$/$
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
En ugar de O.O.O.O=O, se puede especfcar una dreccn IP o ben una red desde a cua se quera
estabecer as conexones G<).
Para apcar os cambos, es necesaro rencar s$orePall con e mandato service, de sguente
modo:
service shoreall restart
S+.3.*. Con&iguracin de clientes bindoPs.
S+.3.*.+. A travs de 0penG<) ?,%.
Instaar 0penG<) ?,% desde http://openvpn.se/. Se requere nstaar a versn de desarroo
+.O.3 de 0penG<) ?,%, compatbe con OpenVPN 2.1.x. E cente es esta!le, sempre que se
verfque que funcone adecuadamente a confguracn utzada antes de poner en marcha en un
entorno productvo.
Crear e archvo cliente+(udp(++S4.ovpn, con e sguente contendo, donde es mportante que
as rutas defndas sean as correctas, y as dagonaes nvertdas sean dobes:
658
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
client
dev tun
proto udp
remote dominio!o!ip@del@servidor@vpn 1184
"loat
resolv!retry in"inite
nobind
persist!key
persist!tun
A!!!!!! S&))(/, %& 114'&S !!!!!!!!
ca +)#OO4rchivos de <rogramaOO/pen'<,OOcon"igOOca@crt+
cert +)#OO4rchivos de <rogramaOO/pen'<,OOcon"igOOcliente1@crt+
key +)#OO4rchivos de <rogramaOO/pen'<,OOcon"igOOcliente1@key+
ns!cert!type server
A!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
comp!lCo
verb ?
Descrpcn de os parmetros anterores:
client: Especfca e tpo de confguracn, en este caso tpo cente OpenVPN.
8ort: Especfca e puerto que ser utzado para que os centes VPN puedan conectarse a servdor.
8roto: tpo de protocoo que se empear en a conexn a travs de VPN
de9: Tpo de nterfaz de conexn vrtua que se utzar e servdor openvpn.
remote: Host remoto o dreccn IP en e cente, e cua especfca a servdor OpenVPN.
E cente OpenVPN puede tratar de conectar a servdor con $ost-port en e orden especfcado de as
opcones de a opcn ((remote.
&loat: Este e dce a OpenVPN aceptar os paquetes autentcados de cuaquer dreccn, no soamente
a dreccn cu fue especfcado en a opcn ((remote.
resolv(retry: S a resoucn de nombre de anftrn (ostname) faa para (( remote, a resoucn
antes de faar hace una re-comprobacn de n segundos.
no!ind: No agrega bnd a a dreccn oca y a puerto.
ca: Especfca a ubcacn exacta de archvo de Autordad Certfcadora |.ca|.
cert: Especfca a ubcacn de archvo |.crt| creado para e servdor.
)e/: Especfca a ubcacn de a ave |.key| creada para e servdor OpenVPN.
re*ote: Especfca e domno o IP de servdor as como e puerto que escuchara as petcones para
servco VPN.
co*p&lzo: Especfca os datos que recorren e tne VPN ser compactados durante a trasferenca de
estos paquetes.
per#i#t&)e/: Esta opcn soucona e probema por aves que perssten a travs de os rea|ustes
SIGUSR1, as que no necestan ser reedos.
8er#i#t&tun: Permte que no se cerre y re-abre os dspostvos TAP/TUN a correr os guones up/down
9erb: Nve de nformacn (defaut=1). Cada nve demuestra toda a Informacn de os nvees
anterores. Se recomenda e nve 3 s usted desea un buen resumen de qu est sucedendo.
O ((No muestra una sada excepto errores fataes. + to 4 mRango de uso norma. 5 ((Sada 'y
bcaracteres en a consoa par os paquetes de ectura y escrtura, mayscuas es usada por paquetes
TCP/UDP mnscuas es usada para paquetes TUN/TAP.
659
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
E cente necestar que os archvos ca.crt, cliente+.crt, cliente+.Ley y cliente+(udp(
++S4.ovpn estn presentes en e drectoro /C-eArc$ivos de <rogramae0penG<)econ&ige/.
Estos archvos fueron creados, a travs de un procedmento descrto en este documento, dentro
de drectoro =etc=openvpn=Leys= de servdor.
S se quere que os centes de a G<) se puedan conectar a a red oca, es mportante consderar
as mpcacones de segurdad que esto coneva s aguno de os certfcados es robado, o ben e
cente se ve comprometdo en su segurdad por una ntrusn, vrus, troyano o gusano. Es
preferbe que a red de a G<) sea ndependente a a red oca y cuaquer otra red, unendo os
servdores y centes a a G<), ndependentemente de s stos estn en a red oca o una red
pbca.
S es mperatvo hacer que os centes de a G<) se conecten a a red oca, a red desde a cua se
conectan os centes debe ser dferente a a red utzada en a red oca. Por e|empo: s a red oca
detrs de servdor de G<) es 192.168.0.0/255.255.255.0, 10.0.0.0/255.0.0.0 o
172.16.0.0/255.255.0.0, os centes que se conecten a a G<) detrs de un modem ADSL o Cabe
e ntenten estabecer conexones con a red oca, muy seguramente tendrn confctos de red.
Para permtr a os centes de a G<) poder estabecer conexones haca a red oca, se aaden as
sguentes neas en e archvo de confguracn de OpenVPN para os centes, y que defnen a
ruta para a red oca y un servdor DNS que debe estar presente y confgurado para permtr
consultas recursivas a a red de a G<):
route 186@165@$@$ 699@699@699@$
dhcp!option %,S 186@165@$@1
Opconamente, tambn se puede defnr un servdor Wns.
dhcp!option 3(,S 186@165@66@1
E|empo, consderando que a red oca es +S*.+69.*6.O=*55.*55.*55.O:
client
dev tun
proto udp
remote dominio!o!ip@del@servidor@vpn 1184
"loat
resolv!retry in"inite
nobind
persist!key
persist!tun
ro.$e 4<2.438.23./ 255.255.255./
-h&'-o'$%on DNS 4<2.438.23.4
-h&'-o'$%on VFNS 4<2.438.23.4
A!!!!!! S&))(/, %& 114'&S !!!!!!!!
ca +)#OO4rchivos de <rogramaOO/pen'<,OOcon"igOOca@crt+
cert +)#OO4rchivos de <rogramaOO/pen'<,OOcon"igOOcliente1@crt+
key +)#OO4rchivos de <rogramaOO/pen'<,OOcon"igOOcliente1@key+
ns!cert!type server
A!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
comp!lCo
verb ?
660
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S+.3.3. Clientes ?),=inu2.
S+.3.3.+. A travs del servicio openvpn.
Este es e mtodo que funconar en prctcamente todas as dstrbucones de de GNU/Lnux
basadas sobre 'ed Eat, Cent0> y Fedora. Se requere nstaar e paquete openvpn:
yum !y install openvpn
Para Cent0> 5, se requere haber confgurado prevamente e depsto de A >erver, descrto
con anterordad en este msmo documento.
Para os centes con GNU/Lnux utzando e servco openvpn, bscamente se utza e msmo
archvo para 0penG<) ?,% para Wndows, pero defnendo rutas en e sstema de archvos de
GNU/Lnux. E|empo:
client
dev tun
proto udp
remote dominio!o!ip@del@servidor@vpn 1184
"loat
resolv!retry in"inite
nobind
persist!key
persist!tun
A!!!!!! S&))(/, %& 114'&S !!!!!!!!
ca /etc/openvpn/keys/ca@crt
cert /etc/openvpn/keys/cliente1@crt
key /etc/openvpn/keys/cliente1@key
ns!cert!type server
A!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
comp!lCo
verb ?
Este archvo se guarda como =etc=openvpn=cliente+(udp(++S4.ovpn. Requere que os
certfcados defndos en a confguracn estn en as rutas especfcadas dentro de drectoro
=etc=openvpn=Leys=.
Para ncar a conexn haca a G<), smpemente se nca e servco openvpn:
service openvpn start
Para que a conexn se estabezca automtcamente cada vez que se nce e sstema, se utza e
mandado c$Lcon&ig de a sguente manera:
chkcon"ig openvpn on
S+.3.3.*. A travs de )etPorL:anager.
)etPorL:anager es una mpementacn que permte a os usuaros confgurar nterfaces de red
de todos os tpos, sn necesdad de contar con prvegos de admnstracn en e sstema. Es a
forma ms fexbe, senca y prctca de conectarse a una red G<).
661
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Se requere que os centes Lnux tengan nstaado e paquete )etPorL:anager(openvpn,
msmo que debe estar ncudo en os depstos Yum de Fedora S en adeante y dstrbucones
recentes de GNU/Lnux. Cent0> 5 carece de soporte para utzar )etPorL:anager(openvpn,
por o que soo podr conectarse a a G<) a travs de mtodo anteror, con e servco openvpn.
Para nstaar a travs de mandato yum en dstrbucones basadas sobre Fedora S en adeante, se
hace de a sguente manera:
yum !y install ,etork-anager!openvpn
Se puede rencar e sstema para que tengan efectos os cambos, o smpemente rencar e
servco )etPorL:anager:
service ,etork-anager restart
Lo anteror cerrar y vover a estabecer as conexones de red exstentes.
A gua que e mtodo anteror, para os centes con GNU/Lnux con NetworkManager,
bscamente se utza e msmo archvo para 0penG<) ?,% para Wndows, pero defnendo rutas
en e sstema de archvos de GNU/Lnux. E|empo:
client
dev tun
proto udp
remote dominio!o!ip@del@servidor@vpn 1184
"loat
resolv!retry in"inite
nobind
persist!key
persist!tun
A!!!!!! S&))(/, %& 114'&S !!!!!!!!
ca /etc/openvpn/keys/ca@crt
cert /etc/openvpn/keys/cliente1@crt
key /etc/openvpn/keys/cliente1@key
ns!cert!type server
A!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
comp!lCo
verb ?
Este archvo se puede utzar con a nterfaz grfca de )etPorL:anager. Soo hay que hacer cc
sobre e cono en e nrea de noti&icacin de pane de GNOME y uego hacer cc en Con&igurar
G<).
662
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
En a ventana que abre a contnuacn, hay un botn que permte mportar e archvo de
confguracn.
S os certfcados y frma dgta son coocados en a ruta =etc=openvpn=Leys= con SELnux actvo,
stos funconarn adecuadamente. S os certfcados y frma dgta son amacenados dentro de
drectoro de nco de usuaros, es necesaro estabecer a potca openvpnQena!leQ$omedirs
con vaor + (que equvae a on, o actva):
setsebool !< openvpn.enable.homedirs 1
Personamente recomendo crear una confguracn nueva desde a nterfaz de )etPorL:anager.
Desde a ventana de redes VPN de a nterfaz de )etPorL:anager, hacer cc en Aadir.
663
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Aparecer un dogo donde se debe seecconar que se trata de una G<) con 0penG<).
En a sguente ventana de dogo, se defne e nombre de a conexn, dreccn IP o nombre de
servdor donde est nstaado OpenVPN, y os certfcados a utzar. S se sgueron os
procedmentos de ese documento, se de.a en !lanco e campo Contrasea de clave privada.
664
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Luego, se hace cc en Avan8ado para especfcar que se utzar compresn [0.
Para evtar confctos de conectvdad, se hace cc en a pestaa A.ustes %<G4, y se defne un
servdor DNS que permta a cente navegar a travs de Internet y dentro de a red de a G<).
665
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Se hace cc en 'utas para abrr otra ventana de dogo y se seecconan as casas de as
opcones %gnorar las rutas o!tenidas autom;ticamente y ,sar esta cone2in solo para los
recursos de su red. Opconamente se pueden aadr as rutas esttcas para tener conectvdad
con a red oca detrs de servdor de G<), tomando en cuenta que a red oca desde a cua se
est conectado e cente debe ser dferente a a de a red oca detrs de servdor de G<), a fn de
evtar confctos de red.
666
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Fnamente se hace cc en apcar. Para conectarse a a red G<), soo basta hacer cc sobre e
cono de )etPorL:anager en e nrea de noti&icacin de pane de GNOME y seecconar a red
G<) recn confgurada.
S+.4. Bi!iliogra&a.
Este documento se basa sobre os manuaes ttuados VPN en servdor Lnux y centes
Wndows/Lnux con OpenVPN + Shorewa |Parte 1| y VPN en servdor Lnux y centes
Wndows/Lnux con OpenVPN + Shorewa |Parte 2|, por billiam pe8 Jimne8, pubcados en
Alcance i!re, cumpendo cabamente con os trmnos de a cenca Creative Commons
Reconocmento-NoComerca-CompartrIgua 2.1.
667
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S*. Cmo con&igurar >):<.
Autor: "oel Barrios &ue!as
Correo electrnico: dar)#hra*+g*ail.co*
#itio de Red: http://www.alcancelibre.org/
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. b) No puede utzar esta obra para fnes comercaes. c) S atera o
transforma esta obra, o genera una obra dervada, so puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o
dstrbur a obra, tene que de|ar ben caro os trmnos de a cenca de esta obra. Aguna de estas condcones puede no apcarse s se
obtene e permso de ttuar de os derechos de autor. Los derechos dervados de usos egtmos u otras mtacones no se ven afectados por o
anteror. La nformacn contenda en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn
responsabdad aguna s e usuaro o ector hace ma uso de stos.
S*.+. %ntroduccin.
S*.+.+. Acerca de >):<.
>):< (>mpe )etwork :anagement <rotoco o Protocoo Smpe de admnstracn de red) es
uno protocoos de con|unto defndo por a Fuerza de Traba|o en Ingenera de Internet (%"@F o
%nternet "ngneerng @ask Force), casfcada en e nve de apcacn de modeo TCP/IP, y que
est dseado para factar e ntercambo de nformacn entre dspostvos de red y es
ampamente utzado en a admnstracn de redes para supervsar e desempeo, a saud y e
benestar de una red, equpo de computo y otros dspostvos.
URL: http://toos.etf.org/htm/rfc1157.
S*.+.*. Acerca de )et(>):<.
)et(>):<, e equpamento go utzado en este documento, es un con|unto de apcacones
utzados para mpementar SNMP v1, SNMP v2c y SNMP v3 utzando IPv4 y/o IPv6. E proyecto
fue ncado como un con|unto de herramentas SNMP por Steve Wadbusser en a C:, (Carnege
:eon ,nversty), Pttsburgh, Pennsyvana, EE.UU., en 1992. Tras ser abandonado, fue retomado
por Wes Hardaker en a ,CDavis (,nversty of Caforna, Davis), renombrado como ,CD(>):<
y me|orado para cubrr as necesdades de Departamento de Ingenera Ectrca de dcha
nsttucn. Tras de|ar a unversdad, Hardaker contnu e proyecto, cambando e nombre de ste
a )et(>):<.
URL: http://net-snmp.sourceforge.net/
S*.*. "#uipamiento lgico necesario.
S*.*.+. %nstalacin a travs de yum.
S utza Cent0> 4 y 5, 'ed Eat "nterprise inu2 5 o b$ite Bo2 "nterprise inu2 4 y 5, soo
se necesta reazar o sguente para nstaar o actuazar e equpamento gco necesaro:
yum !y install net!snmp net!snmp!utils
668
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S*.*.*. %nstalacin a travs de up*date.
S se utza 'ed Eath "nterprise inu2 4, soo bastar reazar o sguente para nstaar o
actuazar e equpamento gco necesaro:
up6date !i net!snmp net!snmp!utils
S*.3. <rocedimientos
Este documento consdera as sguentes varabes que debern ser reempazadas por vaores
reaes:
192.168.1.0/24: Dreccn de red y mscara de subred en bts que correspondan a os de a
red oca a a que se pertenece.
C4v3-d3-Acc3s0: Cuaquer cave de acceso o sufcentemente buena.
m064.acancebre.org: Nombre de anftrn de sstema donde se est confgurando e
servco.
fuano@agun-domno.net: Cuenta de correo de admnstrador de servdor.
192.168.1.254: Dreccn IP de servdor.
Arc$ivo de con&iguracin =etc=snmp=snmpd.con&.
E archvo =etc=snmp=snmpd.con& que se nstaa |unto con e paquete, y puede resutar para
agunos una verdadera maraa de comentaros y opcones de todo tpo. Lo ms recomendabe
ser crear un archvo nuevo y mpo de contendo para poder partr de ago ms smpe y
funcona.
cd /etc/snmp
mv snmpd@con" snmpd@con"!/1%
touch snmpd@con"
S*.3.+.+. istas de control de acceso.
Se deben crear as stas de contro de acceso (AC o Access Contro st) correspondentes en e
archvo =etc=snmp=snmpd.con&, as cuaes servrn para defnr o que tendr acceso haca e
servco snmpd. A una de estas stas se e otorgar permso de acceso de ectura y escrtura, para
o que sea necesaro en reacn con admnstracn, y a a otra de soo ectura. Por razones de
segurdad soo a nterfaz 127.0.0.1 estar en a sta de ectura escrtura. Se otorgar permso de
acceso de soo ectura a una red o ben a una dreccn IP en a otra sta de contro de acceso.
Consderando o anteror, se podran agregar un par de neas como as sguentes:
com6sec local 167@$@$@1/?6 )l4v?!d?!4cc?s$
com6sec miredlocal 186@165@1@$/64 )l4v?!d?!4cc?s$
669
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
En o anteror a prmera nea sgnfca que habr una sta de contro de acceso denomnada
2local3 y que corresponder soo a +*7.O.O.+=3*, asgnando #lNvM6dM6AccMs8 como cave de
acceso. La segunda nea hace o msmo pero defnendo a a red +S*.+69.+.O=*4. Se puede
defnr o que uno guste mentras no sea a cave de root, esto debdo a que dcha cave se
transmte a travs de a red en forma de texto smpe (es decr, sn cfrar).
S*.3.+.*. De&inicin de grupos.
Se crean a menos dos grupos: :y'b?roup y :y'0?roup. E prmero ser un grupo a que se
asgnarn ms adeante permsos de lectura escritura y e segundo ser un grupo a que
posterormente se asgnarn permsos de solo lectura. Por cada grupo se asgnan tres neas que
especfcan e tpo de acceso que se permtr en un momento dado a un grupo en partcuar. Es
decr, :y'b?roup se asoca a local y :y'0?roup a miredlocal.
ASe asigna local al grupo de )e&$.r# es&r%$.r#
group -yR3Iroup v1 local
group -yR3Iroup v6c local
group -yR3Iroup usm local
ASe asigna miredlocal al grupo de so)o )e&$.r#
group -yR/Iroup v1 miredlocal
group -yR/Iroup v6c miredlocal
group -yR/Iroup usm miredlocal
S*.3.+.3. 'amas permitidas.
Se especfcan as ramas que se van a permtr ver a travs de servco. Lo ms comn, para, por
e|empo, utzarse con :'@?, es o sguente:
AA name incl/excl subtree mask(optional)
vie all included @1 5$
S*.3.+.4. Asignacin de permisos a los grupos.
Se debe especfcar que permsos tendrn os dos grupos, :y'0?roup y :y'b?roup. Son de
especa nters as tmas coumnas.
AA group context sec@model sec@level pre"ix read rite noti"
access -yR/Iroup ++ any noauth exact all none none
access -yR3Iroup ++ any noauth exact all all all
S*.3.+.5. <ar;metros de car;cter in&ormativo.
Se defnen dos parmetros de carcter nformatvo para que cuando utcen apcacones cente
como :'@? se ncuya ago de nformacn acerca de que sstema se est accedendo.
syslocation Servidor 1inux en S>!S&R'(%/R@algun!dominio@net
syscontact 4dministrador ("ulanoXalgun!dominio@net)
670
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S*.3.*. ,n e.emplo &uncional de con&iguracin.
E e|empo que mostramos a contnuacn se utza en todas os equpos que posee e autor en
casa y en a ofcna. Soo hay que reempazar e vaor redlocal por o que uno consdere apropado
y reempazar e vaor +S*.+69.+.O=*4 por e vaor de la red o a dreccn IP desde donde se
requera acceder con un cente snmp, como :'@?.
A 1istas de control de acceso (4)1)
AA sec@name source community (alias clave de acceso)
com6sec local 167@$@$@1/?6 )l4v?!d?!4cc?s$
com6sec miredlocal 186@165@1@$/64 )l4v?!d?!4cc?s$
ASe asigna 4)1 al grupo de lectura escritura
group -yR3Iroup v1 local
group -yR3Iroup v6c local
group -yR3Iroup usm local
ASe asigna 4)1 al grupo de solo lectura
group -yR/Iroup v1 miredlocal
group -yR/Iroup v6c miredlocal
group -yR/Iroup usm miredlocal
A Ramas -(: Jue se permiten ver
AA name incl/excl subtree mask(optional)
vie all included @1 5$
A &stablece permisos de lectura y escritura
AA group context sec@model sec@level pre"ix read rite noti"
access -yR/Iroup ++ any noauth exact all none none
access -yR3Iroup ++ any noauth exact all all all
A (n"ormaciRn de )ontacto del Sistema
syslocation Servidor 1inux en m$64@alcancelibre@org
syscontact 4dministrador ("ulanoXalgun!dominio@net)
S es necesaro aadr ms equpos para que accedan a servco snmpd, soo hay que hacer o
sguente:
Agregar una ACL con un nombre nco. E|empo:
com6sec 9%&.e*# 186@165@1@691 )l4v?!d?!4cc?s$
Agregar un |uego regas que asgnen a grupo, en este caso micueva, con o sguente:
group o$ror.'o v1 local
group o$ror.'o v6c local
group o$ror.'o usm local
Agregar una nea donde se estabece que permsos tendr e grupo otrogrupo. En este e|empo,
va a ser de soo ectura:
access -yR/Iroup ++ any noauth exact all none none
S*.3.3. %niciarF detener y reiniciar el servicio snmpd.
Para e|ecutar por prmera vez e servco snmpd, utce:
671
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
service snmpd start
Para hacer que os cambos hechos tras modfcar a confguracn surtan efecto, utce:
service snmpd restart
Para detener e servco snmpd utce:
service snmpd stop
S*.3.4. Agregar el servicio snmpd al arran#ue del sistema.
Para hacer que e servco de snmpd est actvo con e sguente nco de sstema, en todos os
nvees de e|ecucn (2, 3, 4, y 5), se utza o sguente:
chkcon"ig snmpd on
S*.4. Compro!aciones.
Consderando, como e.emplo, que sea sgn como cave de acceso Cl4v3(d3(Acc3sO en un
sstema cuya dreccn IP es +S*.+69.+.*54, para probar s a confguracn funcona, soo hay
que e|ecutar os dos sguente mandatos a fn verfcar que devuevan nformacn acerca de
sstema consutado.
snmpalk !v 1 4<2.438.4.25E !c C)E*3--3-A&&3s/ system
snmpalk !v 1 4<2.438.4.25E !c C)E*3--3-A&&3s/ inter"aces
S*.5. :odi&icaciones necesarias en el muro corta&uegos.
S se utza un cortafuegos con potcas estrctas, como por e|empo >$orePall, es necesaro abrr
os puerto 161 y 162 por UDP (>):< y >):<@'A<, respectvamente).
Las regas para e archvo =etc=s$orePall=rules de >$orePall en un sstema con una zona (net),
correspondera a o sguente:
A4)0(/, S/>R)& %&S0 <R/0/ %&S0 S/>R)&
A </R0 </R0(S)1
4))&<0 net " udp 161B166
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
Las regas para e archvo =etc=s$orePall=rules de >$orePall en un sstema con dos zonas (net y
loc), donde soo se va a permtr e acceso a servco snmpd desde a red oca, correspondera a
o sguente:
A4)0(/, S/>R)& %&S0 <R/0/ %&S0 S/>R)&
A </R0 </R0(S)1
4))&<0 loc " udp 161B166
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
672
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S3. Cmo con&igurar :'@?.
Autor: "oel Barrios &ue!as
Correo electrnico: dar)#hra*+g*ail.co*
#itio de Red: http://www.alcancelibre.org/
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. b) No puede utzar esta obra para fnes comercaes. c) S atera o
transforma esta obra, o genera una obra dervada, so puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o
dstrbur a obra, tene que de|ar ben caro os trmnos de a cenca de esta obra. Aguna de estas condcones puede no apcarse s se
obtene e permso de ttuar de os derechos de autor. Los derechos dervados de usos egtmos u otras mtacones no se ven afectados por o
anteror. La nformacn contenda en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn
responsabdad aguna s e usuaro o ector hace ma uso de stos.
S3.+. %ntroduccin.
S3.+.+. Acerca de :'@?.
:'@? (:ut 'outer @raffc ?rapher) es una herramenta, escrta en C y Per por Tobas Oetker y
Dave Rand, que se utza para supervsar a carga de trfco de nterfaces de red. :'@? genera
os resutados en archvos HTML con grfcos, que proveen una representacn vsua de este
trfco.
:'@? utza >):< (>mpe )etwork :anagement <rotoco o Protocoo Smpe de admnstracn
de red) para recoectar os datos de trfco de un determnado dspostvo (dspostvos
encamnamento o servdores), por tanto es requsto contar con a menos un sstema a supervsar
con >):< funconando, y con dcho servco correctamente confgurado.
S3.*. "#uipamiento lgico necesario.
S3.*.+. %nstalacin a travs de yum.
S utza Cent0> 4 o b$ite Bo2 "nterprise inu2 4, soo se necesta reazar o sguente para
nstaar o actuazar e equpamento gco necesaro:
yum !y install mrtg
S3.*.*. %nstalacin a travs de up*date.
S se utza 'ed Eath "nterprise inu2 4, soo bastar reazar o sguente para nstaar o
actuazar e equpamento gco necesaro:
up6date !i mrtg
S3.3. <rocedimientos
Este documento consdera as sguentes varabes que debern ser reempazadas por vaores
reaes:
C4v3-d3-Acc3s0: Cuaquer cave de acceso o sufcentemente buena.
192.168.1.1: Dreccn IP de servdor.
673
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
192.168.1.2, 192.168.1.3, 192.168.1.4: Dreccones IP de otros servdores que estn
confgurados con SNMP y se quera supervsa con MRTG.
Accedendo a sstema como e usuaro root, se debe generar e drectoro de traba|o de MRTG de
sguente modo:
mkdir !p /var//mrtg/miredlocal
Debe respadarse e archvo de confguracn predetermnado, con e fn de poder restauraro en e
futuro s fuese necesaro:
cp /etc/mrtg/mrtg@c"g /etc/mrtg/mrtg@c"g!/1%
Para generar el arc$ivo de confguracn para supervsar una soa dreccn IP, utilice el
siguiente mandato, donde Cl4v3(d3(Acc3sO es a cave de acceso defnda en a confguracn
de >):< de sstema nvoucrado:
c"gmaker O
!!global +orkdir# /var//mrtg/miredlocal+ O
!!global +/ptionsD.E# bitsBgroright+ O
!!output /etc/mrtg/mrtg@c"g O
C)E*3--3-A&&3s/X186@165@1@1
Para generar el arc$ivo de confguracn para supervsar varas dreccones IP, utilice el
siguiente mandato, donde Cl4v3(d3(Acc3sO es a cave de acceso s esta fue defnda as en a
confguracn de >):< de todos os sstemas nvoucrados:
c"gmaker O
!!global +orkdir# /var//mrtg/miredlocal+ O
!!global +/ptionsD.E# bitsBgroright+ O
!!output /etc/mrtg/mrtg@c"g O
!!community*C)E*3--3-A&&3s/ O
186@165@1@1 O
186@165@1@6 O
186@165@1@? O
186@165@1@4
S3.4. Compro!aciones
E paquete de :'@? ncuye un gun para crond, e cua se nstaa en a ruta =etc=cron.d=mrtg,
de modo que ste e|ecute :'@?, de forma autom;tica, cada 5 mnutos. S se quere comprobar
a confguracn soo es necesaro esperar agunos mnutos y consutar os resutados. S se quere
generar un reporte a momento, utce e mandato mrtg de sguente modo:
env 14,I*) mrtg /etc/mrtg/mrtg@c"g
Se debe rencar e servco $ttpd (Apache) a fn de cargar a confguracn necesara y
especfcada en e archvo =etc=$ttpd=con&.d=mrtg.con&, a que permtr acceder haca os
reportes de :'@? a travs de nterfaz por protocoo $ttp.
service httpd restart
674
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Se pueden observaros resutados con cuaquer navegador grfco examnando e drectoro
=var=PPP=mrtg=miredlocal de dsco duro, o ben accedendo a travs de haca
ttp)**:HU.8.8.:*mrtg*miredlocal*%23.%45.%.%KH.tml, consderando, como e.emplo, que se
desea observar e reporte de e sstema con a dreccn IP 192.168.1.1.
675
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S4. Cmo con&igurar Freeradius con :y>B en
Cent0> 5.
Autor: "oel Barrios &ue!as
Correo electrnico: dar)#hra*+g*ail.co*
#itio de Red: http://www.alcancelibre.org/
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. b) No puede utzar esta obra para fnes comercaes. c) S atera o
transforma esta obra, o genera una obra dervada, so puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o
dstrbur a obra, tene que de|ar ben caro os trmnos de a cenca de esta obra. Aguna de estas condcones puede no apcarse s se
obtene e permso de ttuar de os derechos de autor. Los derechos dervados de usos egtmos u otras mtacones no se ven afectados por o
anteror. La nformacn contenda en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn
responsabdad aguna s e usuaro o ector hace ma uso de stos.
S4.+. %ntroduccin.
S4.+.+. Acerca de 'AD%,>.
'AD%,> ('emote Authentcaton Da-%n ,ser >ervce) es un protocoo de autentcacn,
autorzacn y mane|o de cuentas de usuaro orgnamente desarroado por Lvngston Enterprses
y pubcado en 1997 como os RFC 2058 y 2059. Es utzado para admnstrar e acceso remoto y a
movdad IP, como ocurre en servcos de acceso por modem, DSL, servcos nambrcos 802.11 o
servcos de Go%< (Goce over %< o Voz sobre IP). Este protocoo traba|a a travs de puerto 1812
por UDP.
La autentcacn gestonada por este protocoo se reaza a travs de ngreso de un nombre de
usuaro y una cave de acceso. Esta nformacn es procesada por un dspostvo )A> ()etwork
Access >erver) a travs de <<< (<ont-to-<ont <rotoco o Protocoo Punto-a-Punto) sendo
posterormente vadada por un servdor 'AD%,> a travs de protocoo correspondente
vandose de dversos esquemas de autentcacn, como <A< (<assword Authentcaton <rotoco
o Protocoo de Autentcacn de Cave de acceso), CEA< (Chaenge-Eandshake Authentcaton
<rotoco) o "A< ("xtensbe Authentcaton <rotoco), y permtendo e acceso a sstema.
URL: http://toos.etf.org/htm/rfc2058 y http://toos.etf.org/htm/rfc2059
S4.+.*. Acerca de Freeradius.
Freeradius, proyecto ncado en 1999 por Aan DeKok y Mque van Smoorenburg (quen coabor
anterormente en e desarroo de Cstron RADIUS), es una aternatva bre haca otros servdores
RADIUS, sendo uno de os ms competos y verstes gracas a a varedad de mduos que e
componenen. Puede operar tanto en sstemas con recursos mtados as como sstemas
atendendo mones de usuaros.
Freeradius nc como un proyecto de servdor RADIUS que permtera una mayor coaboracn
de a comundad y que pudera cubrr as necesdades que otros servdores RADIUS no podan.
Actuamente ncuye soporte para LDAP, SOL y otras bases de datos, as como EAP, EAP-TTLS y
PEAP. Actuamente ncuye soporte para todos os protocoos comunes de autentcacn y bases de
datos.
URL: http://www.freeradus.org/
676
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S4.+.3. Acerca de Daloradius.
Daloradius es una avanzada apcacn HTTP que srve de sstema de admnstracn para
RADIUS, y est dseada para ser utzada para admnstrar otspots (puntos calientes, es decr
zona de cobertura W-F, en e que un punto de acceso o varos proveen servcos de red a travs
de un Proveedor de Servcos de Internet Inambrco o WISP) y uso genera para a autentcacn
de Proveedores de Acceso a Internet (ISP). Incuye gestn de usuaros, reportes grfcos,
contabdad, motor de cobranza e ntegracn con GoogeMaps para Geoocazacn.
URL: http://daoradus.com/.
S4.*. <rocedimientos.
Instae os paquetes necesaros:
yum !y install "reeradius6 "reeradius6!mysJl "reeradius6!utils
yum !y install mysJl mysJl!server
Generar os certfcados predetermnados e|ecutando e mandato radiusd con a opcn (D:
radiusd !X
Lo anteror ncar e servco radiusd e ncar a generacn de os certfcados. Cuando e
dogo o pda, defnr os datos de pas, estado, nombre de anftrn y cuenta de correo de
admnstrador. A concur pusar C@'(C para termnar e servco y contnuar confguracn.
Ince e servco MySOL:
service mysJld start
Aada e servco MySOL a arranque de sstema:
service mysJld on
Asgne cave de acceso a usuaro root de MySOL:
mysJladmin !uroot passord U16?JeU
Genere una nueva base de datos denomnada radius:
mysJladmin !uroot !p16?Je create radius
Acceda a ntrprete de mandatos de MySOL:
mysJl !uroot !p16?Je
Desgne e usuaro y cava de acceso para acceder a a base de datos recn creada:
677
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
IR4,0 all /, radius@K 0/ radiusXlocalhost (%&,0(=(&% :; U16?JeUV
Saga de MySOL:
exitV
Utzando e usuaro radius, o e que haya desgnado para utzar a base de datos recn creada,
puebe a base de datos que acaba de crear con os esquemas ncudos con Freeradus:
mysJl !uradius !p16?Je radius a /etc/raddb/sJl/mysJl/cui@sJl
mysJl !uradius !p16?Je radius a /etc/raddb/sJl/mysJl/ippool@sJl
mysJl !uradius !p16?Je radius a /etc/raddb/sJl/mysJl/nas@sJl
mysJl !uradius !p16?Je radius a /etc/raddb/sJl/mysJl/schema@sJl
mysJl !uradius !p16?Je radius a /etc/raddb/sJl/mysJl/imax@sJl
Edte e archvo =etc=radd!=radiusd.con&:
vim /etc/raddb/radiusd@con"
Descomente a nea que dce Z%)C,D" s#l.con&, o cua se ocaza aproxmadamente arededor
de a nea 801:
F(,)1>%& sJl@con"
Edte e archvo =etc=radd!=s#l.con&:
vim /etc/raddb/sJl@con"
Defnr os vaores para acceder a a base de datos, o cua se ocaza aproxmadamente arededor
de a nea 35:
A )onnection in"o#
server * +localhost+
Aport * ??$6
login * +radius+
passord * +16?Je+
Descomente e parmetro readclients con vaor yes, o cua se ocaza aproxmadamente
arededor de a nea 100:
readclients * yes
Edte e archvo =etc=radd!=sites(ena!led=de&ault:
vim /etc/raddb/sites!enabled/de"ault
Descomente en a seccn aut$ori8e, o cua se ocaza aproxmadamente arededor de a nea
159:
678
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
sJl
Descomentar en a seccn accounting, o cua se ocaza aproxmadamente arededor de a nea
365:
sJl
Reegrese a smboo de sstema y acceda a MySOL para dar de ata un usuaro para probar:
mysJl !uradius !p16?Je radius
Desde e smboo de sstema de MySOL, e|ecute o sguente para dar de ata un usuaro de
pruebas (&ulano) con una cave de acceso (+*3#Pe en e e|empo):
(,S&R0 (,0/ radcheck (usernameB attributeB value) '41>&S (U"ulanoUB U<assordUB
U16?JeU)V
Lo anteror equvae a aadr &ulano Clearte2t(<assPord -R /+*3#Pe/ en e archvo
=etc=radd!=users.
Verfque que e usuaro se do de ata correctamente:
select K "rom radcheck here username*U"ulanoUV
Debe regresar ago smar a os sguente:
N!!!!N!!!!!!!!!!N!!!!!!!!!!!N!!!!N!!!!!!!!N
Z id Z username Z attribute Z op Z value Z
N!!!!N!!!!!!!!!!N!!!!!!!!!!!N!!!!N!!!!!!!!N
Z 6 Z "ulano Z <assord Z ** Z 16?Je Z
N!!!!N!!!!!!!!!!N!!!!!!!!!!!N!!!!N!!!!!!!!N
1 ro in set ($@$$ sec)
Saga de mysq:
exitV
Ince e servco radiusd:
service radiusd start
Aada e servco radiusd a os servcos de arranque de sstema:
chkcon"ig radiusd on
Verfque que e servco puede autentcar a travs de MySOL:
radtest "ulano 16?Je localhost 1516 testing16?
679
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Lo anteror debe devover ago smar como o sguente:
Sending 4ccess!ReJuest o" id 666 to 167@$@$@1 port 1516
>ser!,ame * +"ulano+
>ser!<assord * +16?Je+
,4S!(<!4ddress * 167@$@$@1
,4S!<ort * 1516
rad.recv# 4ccess!4ccept packet "rom host 167@$@$@1 port 1516B id*666B length*6$
A partr de este punto, soo podr autentcar usuaros de manera oca. Para poder conectar e
punto de acceso haca e servdor Freeradus, vueva a conectarse MySOL:
mysJl !uradius !p16?Je radius
E|ecute o sguente, defnendo a dreccn IP de punto de acceso, nombre corto, tpo de NAS
(ot$er, cisco, livingston, computon, ma24O22, multitec$, natserver, pat$ras, patton,
portslave, tc o usr$iper). S utza un pnto de acceso casero, defna e tpo ot$er.
(,S&R0 (,0/ nas (nasnameB shortnameB typeB secret) '41>&S (U4<2.438./.4UB UM%-
R.$e#-orUB Uo$herUB U423,?eU)V
Para verfcar, e|ecute desde e smboo de sstema de MySOL o sguente:
select K "rom nas here shortname*U-i!RuteadorUV
Lo anteror debe regresar ago smar a o sguente::
N!!!!N!!!!!!!!!!!!!!!N!!!!!!!!!!!N!!!!!!!N!!!!!!!N!!!!!!!!N!!!!!!!!!!!N!!!!!!!!!!!!!!!N
Z id Z nasname Z shortname Z type Z ports Z secret Z community Z description Z
N!!!!N!!!!!!!!!!!!!!!N!!!!!!!!!!!N!!!!!!!N!!!!!!!N!!!!!!!!N!!!!!!!!!!!N!!!!!!!!!!!!!!!N
Z ? Z 186@165@$@1 Z 3R094I Z other Z ,>11 Z 16?Je Z ,>11 Z R4%(>S )lient Z
N!!!!N!!!!!!!!!!!!!!!N!!!!!!!!!!!N!!!!!!!N!!!!!!!N!!!!!!!!N!!!!!!!!!!!N!!!!!!!!!!!!!!!N
1 ro in set ($@$$ sec)
Lo anteror equvae a edtar e archvo =etc=radd!=clients.con& y aadr a dreccn IP de punto
de acceso, una cave de acceso, nombre corto y tpo de NAS como ot$er.
client 4<2.438./.4 \
secret * &.#),.%er-&)#*e--e-#&&eso
shortname * VRT5EG
nastype * o$her
]
Para que surta efecto e cambo, hay que rencar e servco radiusd:
service radiusd restart
Para aadr otro punto de acceso, soo basta repetr as nea con os datos que correspondan:
(,S&R0 (,0/ nas (nasnameB shortnameB typeB secret) '41>&S (U4<2.438./.25EUB UO$ro-
R.$e#-orUB Uo$herUB U423,?eU)V
680
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Para reazar pruebas de conectvdad remota, aada un equpo sguendo e procedmento
anteror, y desde este equpo e|ecute e mandato radtest (ncudo en e paquete &reeradius*(
utils, s se utza CentOS 5 o Red Hat Enterprse Lnux 5, o ben &reeradius(utils, s se utza una
versn recente de Fedora) de a sguente forma, donde 2.2.2.2 corresponde a a dreccn IP de
servdor Freeradus:
radtest "ulano 16?Je C.C.C.C 1516 16?Je
Lo anteror debera devover ago smar a o sguente.
Sending 4ccess!ReJuest o" id 669 to C.C.C.C port 1516
>ser!,ame * +"ulano+
>ser!<assord * +16?Je+
,4S!(<!4ddress * 167@$@$@1
,4S!<ort * 1516
rad.recv# 4ccess!4ccept packet "rom host C.C.C.C port 1516B id*669B length*6$
S4.*.+. %nstalar Daloradius para administracin a travs de E@@<.
Se requere nstaar Apache, PHP y sus gaduras para MySOL, a bboteca GD y Pear-DB:
yum !y install httpd php php!mysJl php!gd php!pear php!pear!%:
Ince e servco $ttpd:
service httpd start
Aada e servco $ttpd a os servcos de arranque de sstema:
chkcon"ig httpd on
Cambe a drectoro =var=PPP=:
cd /var/
Descargue desde sourceforge.net/pro|ects/daoradus e archvo correspondente a a versn ms
recente de Daoradus:
get http#//cdnetorks!us!
1@dl@source"orge@net/proMect/daloradius/daloradius/daloradius!$@8!5/daloradius!$@8!
5@tar@gC
Descomprma e archvo descargado:
tar Cxv" daloradius!$@8!5@tar@gC
Cambe os permsos de todo e contendo de drectoro recn descomprmdo para que
pertenezcan a usuaro y grupo apac$e:
chon !R apache#apache daloradius!$@8!5
681
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Cambe a drectoro daloradius(O.S(9:
cd daloradius!$@8!5
cargue as tabas de Daloradius en a base de datos utzada por Freeradus.
mysJl !uradius !p16?Je a contrib/db/mysJl!daloradius@sJl
Edte e archvo li!rary=daloradius.con&.p$p:
vim library/daloradius@con"@php
Edte os vaores correspondentes a os necesaros para a conexn aa base de datos utzada por
Freeradus.
Fcon"ig'aluesDU)/,=(I.%:.2/S0UE * U167@$@$@1UV
Fcon"ig'aluesDU)/,=(I.%:.>S&RUE * UradiusUV
Fcon"ig'aluesDU)/,=(I.%:.<4SSUE * U16?JeUV
Fcon"ig'aluesDU)/,=(I.%:.,4-&UE * UradiusUV
Genere un nuevo archvo denomnado =etc=$ttpd=con&.d=daloradius.con&:
vim /etc/httpd/con"@d/daloradius@con"
Aada e sguente contendo, donde 2.2.2.2 (e|empo: 192.168.0.2) corresponde a a dreccn IP
de sstema desde e cua se reazar a admnstracn remota de Daloradius:
4lias /daloradius +/var//daloradius!$@8!5/+
/ptions ,one
order denyBallo
deny "rom all
allo "rom 167@$@$@1
allo "rom x@x@x@x
Rence e servco $ttpd:
service httpd restart
Acceda con cuaquer navegador moderno haca ttp)**direci/n6ip6servidor*radius*. Ingrese con e
usuaro Administrator y a cave de acceso radius. Desde esta nterfaz podr aadr y
admnstrar as cuentas de usuaros y admnstrar y aadr os puntos de acceso.
S4.3. Bi!liogra&a.
Settng Up A FreeRadus Based AAA Server Wth MySOL & Management Wth Daoradus.
Wkpeda.
682
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S5. Cmo instalar Java +.6 en Cent0> 5.
Autor: "oel Barrios &ue!as
Correo electrnico: dar)#hra*+g*ail.co*
#itio de Red: http://www.alcancelibre.org/
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. b) No puede utzar esta obra para fnes comercaes. c) S atera o
transforma esta obra, o genera una obra dervada, so puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o
dstrbur a obra, tene que de|ar ben caro os trmnos de a cenca de esta obra. Aguna de estas condcones puede no apcarse s se
obtene e permso de ttuar de os derechos de autor. Los derechos dervados de usos egtmos u otras mtacones no se ven afectados por o
anteror. La nformacn contenda en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn
responsabdad aguna s e usuaro o ector hace ma uso de stos.
S5.+. %ntroduccin.
De modo predetermnado, Cent0> 5 y 'ed Eath "nterprise inu2 5 ncuyen a versn 1.4.2 y
1.6.0 de 0penJDK, es a versn bre de a pataforma de desarroo |ava, que actuamente
pertenece a Orace, dstrbuda ba|o os trmnos de a cenca GNU/GPLv2. Sn embargo, agunos
desarroos, sobre todo apcacones comercaes para Apac$e @omcat, pueden requerr utzar
una versn dstnta de |ava. Este documento expca como nstaar JDK +.6.O, a mpementacn
|ava comerca y prvatva de 0racle, en Cent0> 5 y 'ed Eath "nterprise inu2 5.
S5.*. %nstalacin del e#uipamiento lgico necesario.
S5.*.+. %nstalacin a travs de yum.
S utza Cent0> 5 o Red Hat Enterprse Lnux 5, necesta reazar o sguente para nstaar o
actuazar os paquetes necesaros:
yum !y install rpm!build gcc gcc!cNN redhat!rpm!con"ig automake autocon"
yum !y install xorg!x11!"ont!utils chk"ontpath ttmk"dir
S5.3. <rocedimientos.
S5.3.+. Creacin de usuario para utili8ar rpm!uild.
Es poco convenente y representa un ato rego utzar rpmbud como root. Por o tanto es
recomendabe crear una cuenta de usuaro destnada excusvamente a utzar e mandato
rpm!uild.
su ! root
useradd rpmbuilduser
passd rpmbuilduser
S5.3.*. Creacin de estructura de directorios para rpm!uild.
A fn de poder traba|ar cmodamente, se crear como usuaro un con|uto de drectoros que sern
utzados para crear paquetera RPM.
su ! rpmbuilduser
mkdir !p Y/rpmbuild/\S/>R)&SBSR<-SBS<&)SBR<-SB0-<B:>(1%]
683
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Utzando vi, o cuaquer otro edtor detexto, confgure e archvo Y=.rpmmacros con e sguente
contendo:
T.topdir /home/rpmbuilduser/rpmbuild
T.tmppath T\.topdir]/0-<
T.unpackaged."iles.terminate.build $
Tpackager -i nombre
Tdistribution -i distribuciRn o irea de trabaMo@
Tvendor -i empresa@
Descargar e archvo .ava(+.6.O(sun(+.6.O.+4(+.pp.nosrc.rpm, o ben una versn posteror a a
edcn de este documento, ocazado en $ttp-==mirrors.dotsrc.org=.pacLage=6.O=generic=non(
&ree=>'<:>=.
A contnuacn, se debe descargar |DK de Orace, Inc. desde
www.orace.com/technetwork/|ava/|avase/downoads/ndex.htm (|dk-6u14-nux es a versn ms
recente soportada por |akarta)
S utza una arqutrectura x86, debe hacer e|ecutabe e archvo descargado utzando e
sguente mandato:
chmod Nx Mdk!6u14!linux!i956@bin
Y mover ste tmo dentro de Y=rpm!uild=>0,'C">=
mv Mdk!6u14!linux!i956@bin Y/rpmbuild/S/>R)&S/
S utza una arqutrectura x86_64, debe hacer e|ecutabe e archvo descargado utzando e
sguente mandato:
chmod Nx Mdk!6u14!linux!x64@bin
Y mover ste tmo dentro de Y=rpm!uild=>0,'C">=
mv Mdk!6u14!linux!x64@bin Y/rpmbuild/S/>R)&S/
Reconstrur e paquete .ava(+.6.O(sun(+.6.O.+4(+.pp.nosrc.rpm para generar os paquetges de
|ava 1.6.
rpmbuild !!rebuild Mava!1@6@$!sun!1@6@$@14!1Mpp@nosrc@rpm
S utza una arqutectura x86, o anteror generar os sguentes paquetes dentro de drectoro
Y=rpm!uild='<:>=i596=:
|ava-1.6.0-sun-1.6.0.14-1|pp.586.rpm
|ava-1.6.0-sun-asa-1.6.0.14-1|pp.586.rpm
|ava-1.6.0-sun-demo-1.6.0.14-1|pp.586.rpm
|ava-1.6.0-sun-deve-1.6.0.14-1|pp.586.rpm
|ava-1.6.0-sun-fonts-1.6.0.14-1|pp.586.rpm
|ava-1.6.0-sun-|dbc-1.6.0.14-1|pp.586.rpm
|ava-1.6.0-sun-pugn-1.6.0.14-1|pp.586.rpm
684
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
|ava-1.6.0-sun-src-1.6.0.14-1|pp.586.rpm
Para nstaar, cambarse a drectoro Y=rpm!uild='<:>=i596= e nstaar soo a paquetera
requerda. E|empo:
cd Y/rpmbuild/R<-S/i956/
su
rpm !>vh Mava!1@6@$!sun!1@6@$@14!1Mpp@i956@rpm Mava!1@6@$!sun!alsa!1@6@$@14!
1Mpp@i956@rpm Mava!1@6@$!sun!"onts!1@6@$@14!1Mpp@i956@rpm Mava!1@6@$!sun!plugin!
1@6@$@14!1Mpp@i956@rpm
exit
S utza una arqutectura x86_64, o anteror generar os sguentes paquetes dentro de
drectoro Y=rpm!uild='<:>=296Q64=:
|ava-1.6.0-sun-1.6.0.14-1|pp.x86_64.rpm
|ava-1.6.0-sun-asa-1.6.0.14-1|pp.x86_64.rpm
|ava-1.6.0-sun-demo-1.6.0.14-1|pp.x86_64.rpm
|ava-1.6.0-sun-deve-1.6.0.14-1|pp.x86_64.rpm
|ava-1.6.0-sun-fonts-1.6.0.14-1|pp.x86_64.rpm
|ava-1.6.0-sun-|dbc-1.6.0.14-1|pp.x86_64.rpm
|ava-1.6.0-sun-pugn-1.6.0.14-1|pp.x86_64.rpm
|ava-1.6.0-sun-src-1.6.0.14-1|pp.x86_64.rpm
Para nstaar, cambarse a drectoro Y=rpm!uild='<:>=296Q64= e nstaar soo a paquetera
requerda. E|empo:
cd Y/rpmbuild/R<-S/x56.64/
su
rpm !>vh Mava!1@6@$!sun!1@6@$@14!1Mpp@x56.64@rpm Mava!1@6@$!sun!alsa!1@6@$@14!
1Mpp@x56.64@rpm Mava!1@6@$!sun!"onts!1@6@$@14!1Mpp@x56.64@rpm Mava!1@6@$!sun!plugin!
1@6@$@14!1Mpp@x56.64@rpm
exit
De modo predetermnado, e sstema utza a versn 1.4.2 de GNU.org.Se puede defnr desde a
termna que versn de |ava utzar a travs demandato alternatives con a opcn ((con&ig
.ava.
/usr/sbin/alternatives !!con"ig Mava
Lo anteror devueve una sada smar a a sguente:
2ay 6 programas Jue proporcionan UMavaU@
SelecciRn )omando
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
KN 1 /usr/lib/Mvm/Mre!1@4@6!gcM/bin/Mava
6 /usr/lib/Mvm/Mre!1@6@$!sun/bin/Mava
<resione (ntro para mantener la selecciRn actualDNEB o escriba el
nbmero de la selecciRn#
Seeccone a versn +.6 de de >un :icrosystems pusando a teca de nmero 2 y uego a
teca ")@"'.
685
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Para verfcar que a versn de |ava 1.6 ha sdo nstaada correctamente, soo basta e|ecutar e
sguente mandato:
Mava !version
Para fnazar, s e sstema dspone de :o8illa Fire&o2, se puede confgurar e compemento |ava
(Pugn |ava) creando un enace smbco de =usr=li!=.vm=.ava(+.6.O(sun(
+.6.O.+4=.re=li!=\=li!.avapluginQ.ni.so dentro de =usr=li!=mo8illa=plugins= de a sguente
manera:
cd /usr/lib/moCilla/plugins/
ln !s /usr/lib/Mvm/Mava!1@6@$!sun!1@6@$@14/Mre/lib/K/libMavaplugin.Mni@so @/
686
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S6. Cmo con&igurar esc;ner en red
Autor: "oel Barrios &ue!as
Correo electrnico: dar)#hra*+g*ail.co*
#itio de Red: http://www.alcancelibre.org/
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. !N )o puede utili8ar esta o!ra para &ines comerciales. c) S atera o
transforma esta obra, o genera una obra dervada, so puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o
dstrbur a obra, tene que de|ar ben caro os trmnos de a cenca de esta obra. Aguna de estas condcones puede no apcarse s se
obtene e permso de ttuar de os derechos de autor. Los derechos dervados de usos egtmos u otras mtacones no se ven afectados por o
anteror. La nformacn contenda en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn
responsabdad aguna s e usuaro o ector hace ma uso de stos.
S6.+. %ntroduccin.
S6.+.+. Acerca de >A)".
>A)" (>canner Access )ow "asy) es un A<% (Appcaton <rogrammng %nterface o Interfaz de
Programacn de Apcacones) que proporcona un acceso estandarzado haca cuaquer
dspostvo de captura de mgenes.
Dfere de A<% @bA%), utzado en Mcrosoft Wndows y Mac OS, e cua gestona
smutneamente as nterfaz y as comuncacones con e dspostvo. >A)" est separado dos
partes: programas de cente y controadores de dspostvo. Un controador >A)" soo provee una
nterfaz con e sustento fsco y descrbe un determnado nmero opcones que cada dspostvo
puede utzar. Las opcones, a su vez, especfcan parmetros taes como a resoucn para
captura, tamao de rea a capturar, coores, brantes, contraste, etc. Una de as venta|as de esta
separacn es que es reatvamente fc de mpementar e servco en red, sn consderacones
partcuares tanto en os programas cente como controadores de dspostvos.
URL: http://www.sane-pro|ect.org/
S6.+.*. Acerca de Dsane.
Dsane es un programa cente para >A)". Utza a bboteca >A)" para reazar a comuncacn
con os dspostvos escner.
Dsane tene as sguentes capacdades con as mgenes adqurdas a travs de >A)":
Mostrar a magen capturada en un vsor.
Guardar una magen como archvo.
Hacer una fotocopa.
Crear un documento de mtpes pgnas.
Crear un fax.
Crear un mensa|e de correo eectrnco.
URL: http://www.xsane.org/
687
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S6.*. "#uipamiento lgico necesario.
S6.*.+. %nstalacin del servicio saned.
S6.*.+.+. %nstalacin a travs de yum.
S utza Cent0> 4 o b$ite Bo2 "nterprise inu2 4, soo se necesta reazar o sguente para
nstaar o actuazar e equpamento gco necesaro:
yum !y install sane!backends sane!"rontends xinetd
S6.*.+.*. %nstalacin a travs de up*date.
S se utza 'ed Eath "nterprise inu2 4, soo bastar reazar o sguente para nstaar o
actuazar e equpamento gco necesaro:
up6date !i sane!backends sane!"rontends xinetd
S6.*.*. %nstalacin del cliente Dsane.
S6.*.*.+. %nstalacin a travs de yum.
S utza Cent0> 4 o b$ite Bo2 "nterprise inu2 4, soo se necesta reazar o sguente para
nstaar o actuazar e equpamento gco necesaro:
yum !y sane!backends sane!"rontends xsane!gimp xsane sane!"rontends
S6.*.*.*. %nstalacin a travs de up*date.
S se utza 'ed Eath "nterprise inu2 4, soo bastar reazar o sguente para nstaar o
actuazar e equpamento gco necesaro:
up6date !i sane!backends sane!"rontends xsane!gimp xsane sane!"rontends
S6.3. <rocedimientos
S6.3.+. Con&iguracin del servicio saned.
Se debe verfcar que en e archvo =etc=sane.d=dll.con& est habtada a nea correspondente a
controador para escner a travs de red, es decr net.
A enable the next line i" you ant to allo access through the netork#
net
Se aade en e archvo =etc=sane.d=saned.con& a sta de dreccones IP que tendrn permtdo
conectarse a servco saned para escner en red. En e sguente e|empo se permte e acceso a
as dreccones IP 192.168.1.254, 192.168.1.253, 192.168.1.252, 192.168.1.251 y 192.168.1.250:
A
688
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A saned@con"
A
A 0he contents o" the saned@con" "ile is a list o" host
A names or (< addresses that are permitted by saned to
A use local S4,& devices in a netorked con"iguration@
A 0he hostname matching is not case!sensitive@
A
Ascan!client@somedomain@"irm
A186@165@$@1
186@165@1@694
186@165@1@69?
186@165@1@696
186@165@1@691
186@165@1@69$
Con a fnadad de que as dversas apcacones y servcos puedan proporconar una dentfcacn
para e servco, se edta e archvo =etc=services y se aade a sguente nea, donde 6566
corresponde a puerto correspondente a servco saned:
saned 6966/tcp saned A S4,& netork scanner daemon@
Debe crearse e archvo =etc=2inetd.d=saned con e sguente contendo, a fn de que e acceso a
servco sea gestonado sobre demanda a travs de e servco 2inetd:
service saned
\
socket.type * stream
server * /usr/sbin/saned
protocol * tcp
user * root
group * root
ait * no
disable * no
]
Una vez hecho todo o anteror, se especfca a actvacn de servco saned con e mandato
c$Lcon&ig, e cua a su vez notfcar a e servco 2inetd que nce automtcamente este a
recbr cuaquer petcn en e puerto 6566 de sstema:
chkcon"ig saned on
S todo ha do ben, se puede comprobar e funconamento de servco utzando e mandato
telnet drgdo haca e puerto 6566 de retorno de sstema.
telnet localhost 6966
Lo anteror debe devover ago como o sguente:
0rying 167@$@$@1@@@
)onnected to localhost@
&scape character is U[EU@
Para sar de ntrprete de mandato telnet, soo se debe ngresar Juit y pusar a teca ENTER.
689
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S6.3.*. Con&iguracin del cliente Dsane.
Se debe especfcar en e archvo =etc=sane.d=net.con& de os equpos cente con Dsane a
dreccn IP de servdor recn confgurado. En e sguente e|empo. se especfca que e servco
saned est en e sstema con dreccn IP 192.168.1.1:
A 0his is the net con"ig "ile@ &ach line names a host to attach to@
A (" you list +localhost+ then your backends can be accessed either
A directly or through the net backend@ Ioing through the net backend
A may be necessary to access devices that need special privileges@
186@165@1@1
Una vez hecho o anteror, a utzar Dsane en os centes, estos debern detectar
automtcamente e escner en e servdor 192.168.1.1. Es mportante recordar que soo se puede
acceder haca e escner con un soo cente por vez.
690
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S7. Cmo con&igurar un servidor de respaldos
con BacLup<C.
Autor: "oel Barrios &ue!as
Correo electrnico: dar)#hra*+g*ail.co*
#itio de Red: http://www.alcancelibre.org/
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. !N )o puede utili8ar esta o!ra para &ines comerciales. c) S atera o
transforma esta obra, o genera una obra dervada, so puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o
dstrbur a obra, tene que de|ar ben caro os trmnos de a cenca de esta obra. Aguna de estas condcones puede no apcarse s se
obtene e permso de ttuar de os derechos de autor. Los derechos dervados de usos egtmos u otras mtacones no se ven afectados por o
anteror. La nformacn contenda en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn
responsabdad aguna s e usuaro o ector hace ma uso de stos.
S7.+. %ntroduccin.
BackupPC es un sstema de respados y restauracn para entornos Unx/Lnux y MS Wndows,
basado sobre Per y con una nterfaz HTTP potente y reatvamente senca para su admnstracn.
BackupPC funcona a travs de os protocoos SMB y SSH+rsync.
Resuta una soucn menos robusta que Bacula, pero defntvamente es mucho ms senca y
fc de admnstrar, confgurar y mantener.
La versn estabe ms recente de BacLup<C es a 3.1.0, y es a recomendada para sstemas en
produccn.
,'. http://backuppc.sourceforge.net/.
S7.*. %nstalacin del e#uipamiento lgico necesario.
Fedora 9 en adeante ncuye e paquete BacLup<C en sus depstos YUM, por o que soo es
necesaro nstaaro desde a termna a travs de mandato yum. E sguente procedmento soo
es necesaro para Cent0> 5 y 'ed Eat "nterprise inu2 5, para 32bt o 64bt.
S7.*.+. %nstalacin en Cent0> 5.
Como e usuaro root, desde una termna, crear e archvo /etc=yum.repos.d=A(>erver.repo,
utzando cuaquer edtor de texto. En e sguente e|empo se utza vi.
vi /etc/yum@repos@d/41!Server@repo
Aadr a este nuevo arc$ivo e sguente contendo:
D41!ServerE
name*41 Server para &nterprise 1inux Freleasever
mirrorlist*http#//@alcancelibre@org/al/elFreleasever/al!server
gpgcheck*1
gpgkey*http#//@alcancelibre@org/al/41!R<-!H&;
Importar a frma dgta de Alcance i!re e|ecutando o sguente desde a termna:
691
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
rpm !!import http#//@alcancelibre@org/al/41!R<-!H&;
Instaar e equpamento gco (soft(are) necesaro, que consste en os paquetes RPM de
BackupPC, Apache, mod_per y samba-cent:
yum !y install :ackup<) httpd mod.perl samba!client
Lo anteror crear automtcamente e usuaro !acLuppc e nstaar os archvos necesaros con
os permsos correspondentes.
S7.3. <rocedimientos.
S7.3.+. Con&iguracin de Apac$e.
S es a prmera vez que se nca e servco $ttpd (Apache), ncar ste y agregaro a os servcos
de arranque de sstema:
/sbin/service httpd start
/sbin/chkcon"ig httpd on
S e servco $ttpd ya estaba funconado antes de os procedmentos descrtos en este
documento, rencar ste:
/sbin/service httpd restart
La nstaacn de e paquete BacLup<C ncuye e archvo /etc=$ttpd=con&.d=BacLup<C.con&.
Este vene confgurado para soo permtr conexones haca a herramenta de admnstracn de
BacLup<C desde a nterfaz de retorno de sstema (loopbac', 127.0.0.1). Convene edtar este
archvo y defnr que se permta e acceso a otros equpos a fn de permtr a admnstracn
remota de BacLup<C. aada |usto despus de alloP &rom +*7.O.O.+ a dreccn IP de equpo
desde e cua se reazar a admnstracn de BackupPC, o ben a red y mscara de subred (en
formato de bts) correspondente. En e sguente e|empo, se permtr e acceso desde cuaquer
equpo en 192.168.1.0/24:
a%irectory /usr/share/:ackup<)/sbin/L
A :ackup<) reJuires valid authentication in order "or the eb inter"ace to
A "unction properly@ /ne can vie the eb inter"ace ithout authentication
A though all "unctionality is disabled@
A
A htpassd !c /etc/:ackup<)/apache@users yourusername
A
order denyBallo
deny "rom all
allo "rom 167@$@$@1 186@165@1@$/64
4uth0ype :asic
4uth>ser=ile /etc/:ackup<)/apache@users
4uth,ame +:ackup<)
reJuire valid!user
a/%irectoryL
692
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
4lias /:ackup<)/images /usr/share/:ackup<)/html/
Script4lias /:ackup<) /usr/share/:ackup<)/sbin/:ackup<).4dmin
Recargue a confguracn en e servco $ttpd, a fn de que surtan efecto os cambos:
/sbin/service httpd reload
S7.3.*. Con&iguracin de BacLup<C.
Se deben asgnar os contextos correspondentes para SELnux a fn de que ste permta operar
normamente a BacLup<C:
chcon !R !t httpd.sys.content.t /etc/:ackup<)
chcon !R !t httpd.sys.script.r.t /etc/:ackup<)/pc
Antes de ncar e servco, es mportante crear un usuaro admnstrador para a nterfaz HTTP.
Utce e mandato $tpassPd para cerrar e archvo /etc/BackupPC/apache.users y crear un usuaro
vrtua que reazar as funcones de admnstrador. En e sguente e|empo, se crear e
archvo /etc=BacLup<C=apac$e.users y e usuaro denomnado administrador:
htpassd !c /etc/:ackup<)/apache@users administrador
Lo anteror devover un dogo para asgnar a cave de acceso para e usuaro denomnado
administrador, msma que deber confrmar para contnuar.
Utzando cuaquer edtor de texto, modfque e archvo /etc=BacLup<C=con&ig.pl:
vim /etc/:ackup<)/con"ig@pl
De este archvo soo es necesaro ocazar y modfcar os sguentes parmetros:
$Con&d>erverEostg: Se ocaza en a nea 44 de archvo /etc=BacLup<C=con&ig.pl.
Srve para defnr e nombre de anftrn (ostname) de sstema.
$Con&dCgiAdmin,sersg: Se ocaza en a nea 1918 de
archvo /etc=BacLup<C=con&ig.pl. Srve para defnr e usuaro admnstrador.
$Con&dCgi,'g: Se ocaza en a nea 1923 de archvo /etc=BacLup<C=con&ig.pl. Srve
para defnr e URL de a herramenta de admnstracn.
$Con&danguageg: Se ocaza en a nea 1934 de archvo /etc=BacLup<C=con&ig.pl.
Srve para defnr e doma a utzar en a nterfaz de a herramenta de admnstracn.
Consderando como e|empo que e servdor tene una dreccn IP 192.168.1.1, que hay un DNS en
a red oca que resueve esta dreccn IP con e nombre servidor.redlocal.net, y que se va a
utzar e doma espao para a nterfaz HTTP de a herramenta de admnstracn, estabezca os
sguentes vaores para os parmetros menconados arrba:
F)on"\Server2ost] * servidor@redlocal@net
F)on"\)gi4dmin>sers] * administrador
693
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
F)on"\)gi>R1] * http#//servidor@redlocal@net/:ackup<)
F)on"\1anguage] * es
S se carece en a red oca de un servdor DNS que resueva e nombre servidor.redlocal.net,
puede estabecerse e vaor de parmetro $Con&dCgi,'g como ttp)**direcci/n6ip6
servidor*Bac'upF#. En e sguente e|empo, consderando como e|empo que e servdor tene una
dreccn IP 192.168.1.1, se puede utzar o sguente:
F)on"\Server2ost] * servidor@redlocal@net
F)on"\)gi4dmin>sers] * administrador
F)on"\)gi>R1] * http#//186@165@1@1/:ackup<)
F)on"\1anguage] * es
Incar y agregar a os servcos de arranque de sstema a servco !acLuppc:
/sbin/service backuppc start
/sbin/chkcon"ig backuppc on
Ingresar con cuaquer navegador haca ttp)**servidor.redlocal.net*Bac'upF#, o ben
ttp)**:YH.:VT.:.:*Bac'upF#, y autentcar como e usuaro administrador. Hacer cc en "dit
$osts (Edtar anftrones) e ngresar agunas dreccones IP de equpos GNU/Lnux o Wndows a
respadar.
Aadendo anftrones para respadar en BackupPC.
S7.3.3. Con&iguracin de los sistemas ?),=inu2 a respaldar.
Desde a nterfaz de admnstracn de BacLup<C, edte a confguracn de anftrn remoto con
GNU/Lnux a respadar y confrme que se ha defndo como mtodo rsync. Defna tambn e
drectoro a respadar en e equpo remoto.
694
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Confgurando anftrn GNU/Lnux para respadar en BackupPC.
Los respados se reazan a travs de e mandato rsync en combnacn con e mandato ss$. Para
poder reazar cuaquer operacn es necesaro generar una frma dgta (idQdsa.pu!), sin clave
de acceso, para e usuaro !acLuppc de servdor que hospeda BacLup<C, a cua se copa en a
cuenta de usuaro root de equpo remoto a respadar, en e archvo -/.ss$=aut$ori8edQLeys,
archvo que deber tener permsos de soo ectura para e usuaro propetaro.
Cambe a usuaro !acLuppc especfcando /!in=!as$ como ntrprete de mandatos.
su !s /bin/bash !l backuppc
Genere e drectoro -/.ss$, con permsos de acceso excusvos para e usuaro:
mkdr -m 0700 -/.ssh/
Genere a frma dgta utzando e sguente mandato:
ssh!keygen !t dsa
Cuando se socte una cave de acceso, smpemente pusar a teca ")@'A' (,?T,A) sn ngresar
dato aguno.
Un e|empo de a sada de o anteror sera como a sguente:
Ienerating public/private dsa key pair@
&nter "ile in hich to save the key (/home/usuario/@ssh/id.dsa)#
&nter passphrase (empty "or no passphrase)#
&nter same passphrase again#
;our identi"ication has been saved in /home/usuario/@ssh/id.dsa@
;our public key has been saved in /home/usuario/@ssh/id.dsa@pub@
0he key "ingerprint is#
6c#7?#?$#"e#96#61#a9#56#75#48#97#cd#?7#a"#?6#d" usuarioXcliente
695
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Camba os permsos de todos os archvos recn creados a soo ectura y escrtura para root:
chmod 6$$ Y/@ssh/\id.dsaBid.dsa@pub]
Crear en a cuenta de usuaro root de equpo remoto a respadar e drectoro -/.ss$ y e archvo
-/.ss$=aut$ori8edQLeys, con premsos de soo ectura y escrtura para root.
ssh rootXeJuipo mkdir !m $7$$ Y/@ssh
ssh rootXeJuipo touch Y/@ssh/authoriCed.keys
ssh rootXeJuipo chmod 6$$ Y/@ssh/authoriCed.keys
Copar e contendo de -/.ss$=idQdsa.pu! dentro de archvo -/.ss$=aut$ori8edQLeys de a
cuenta de usuaro root de equpo a respadar:
cat Y/@ssh/id.dsa@pub Z ssh rootXeJuipo +cat LL Y/@ssh/authoriCed.keys+
A partr de este punto, soo bastar seecconar a equpo remoto a respadar desde a nterfaz de
admnstracn de BackupPC e ncar un prmer respado hacendo cc en e botn Comen8ar
copia de seguridad completa.
S7.3.4. Con&iguracin de los sistemas bindoPs a respaldar.
E mtodo ms smpe es reazar os respados de BacLup<C a travs de e protocoo SMB.
Ingresar a Wndows como admnstrador y confgurar e sstema para compartr carpetas e
mpresoras. A termnar, compartr a carpeta a respadar o ben e dsco duro competo (C-).
Desde a nterfaz de admnstracn de BacLup<C, edte a confguracn de anftrn remoto con
Wndows a respadar y defna como mtodo sm!. Defna tambn e nombre de recurso
compartdo a respadar en e equpo remoto y e nombre de usuaro y cave de acceso de
admnstrador de equpo Wndows remoto.
Confgurando anftrn Wndows para respadar en BackupPC.
696
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A partr de este punto, soo bastar seecconar a equpo remoto a respadar desde a nterfaz de
admnstracn de BackupPC e ncar un prmer respado hacendo cc en e botn Comen8ar
copia de seguridad completa.
E procedmento resumdo de respado de carpeta compartda desde Wndows, sera e sguente.
Prmeramente, comparta desde Wndows cuaquer carpeta. Defna un usuaro y cave de acceso
para sta.
Acceda con cuaquer navegador haca ttp)**servidor*Bac'upF#* y acceda como e usuaro
admnstrador.
Desde "dit Eosts, aada a dreccn IP de equpo a respadar, y defna un usuaro. A termnar,
haga cc sobre e botn >ave que se ocaza en a parte superor de a pgna.
Especfque e protocoo SMB para reazar os respados. Defna e nombre de recurso compartdo
desde Wndows, defna e usuaro y cave de acceso. A termnar, haga cc sobre e botn >ave
que se ocaza en a parte superor de a pgna.
697
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Puede defnr a frecuenca de os respados totaes y respados incrementales. De modo
predetermnado e vaor para os respados totaes es cada 7 das, y para os incrementales es cada
da. Se recomenda utzar un vaor geramente nferor a os das. Por e|empo, 6.97 se utza en
ugar de 7 das, y 0.97 se utza en ugar de 1 da. Esto se hace para me|orar a granuardad de
respado. A termnar, haga cc sobre e botn >ave que se ocaza en a parte superor de a
pgna
698
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A termnar todo o anteror, puede ncar e prmer respado hacendo cc sobre e botn de
Comen8ar copia de seguridad completa. S ocurren errores, stos sern regstrados y se
mostrar un mensa|e en a pgna prncpa de equpo. Por o genera os errores ms comunes se
deben a nombre de usuaro ncorrecto, cave de acceso ncorrecta o nombre de recurso ncorrecto.
699
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
700
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S9. Cmo con&igurar un racimo MclusterN de alta
disponi!ilidad con Eeart!eat en Cent0> 5.
Autor: "oel Barrios &ue!as
Correo electrnico: dar)#hra*+g*ail.co*
#itio de Red: http://www.alcancelibre.org/
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. !N )o puede utili8ar esta o!ra para &ines comerciales. c) S atera o
transforma esta obra, o genera una obra dervada, so puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o
dstrbur a obra, tene que de|ar ben caro os trmnos de a cenca de esta obra. Aguna de estas condcones puede no apcarse s se
obtene e permso de ttuar de os derechos de autor. Los derechos dervados de usos egtmos u otras mtacones no se ven afectados por o
anteror. La nformacn contenda en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn
responsabdad aguna s e usuaro o ector hace ma uso de stos.
S9.+. %ntroduccin.
Este documento descrbe os procedmentos de confguracn de un agrupamento (cluster) de
ata dsponbdad utzando Heartbeat.
Se asume que se dspone de dos equpos o mqunas vrtuaes, as cuaes sern os dos nodos de
agrupamento, y tene as sguentes caracterstcas:
)odo +:
Sstema operatvo: CentOS 5.4
Dreccn IP eth0: 192.168.1.101/255.255.255.0, conectado a a LAN o haca Internet, y con e nombre
de anftrn asocado a nombre.pubco.nodo2.com.
Dreccn IP eth1: 192.168.2.1/255.255.255.248, conectado con cabe cruzado o a un swtch o
concentrador dedcado excusvamente para os nodos de agrupamento, o ben nterfaz de Intranet en
VrtuaBox, y con e nombre de anftrn asocado a nombre.prvado.nodo1.com.
"l nom!re del an&itrin Mho#tna*eNF de&inido en el arc$ivo =etc=syscon&ig=netPorLF de!e ser
nom!re.privado.nodo+.com.
)odo *:
Sstema operatvo: CentOS 5.4
Dreccn IP eth0: 192.168.1.102/255.255.255.0, conectado a a LAN o haca Internet, y con e nombre
de anftrn asocado a nombre.pubco.nodo2.com.
Dreccn IP eth1: 192.168.2.2/255.255.255.248, conectado con cabe cruzado o ben haca un s(itc o
concentrador dedcado excusvamente para a comuncacn entre os nodos de agrupamento, o ben
nterfaz de Intranet en VrtuaBox, y con e nombre de anftrn asocado a nombre.prvado.nodo2.com.
"l nom!re del an&itrin Mho#tna*eNF de&inido en el arc$ivo =etc=syscon&ig=netPorLF de!e ser
nom!re.privado.nodo*.com.
Ambos nodos pueden ser dferentes en cuanto a arqutectura, capacdad y componentes.
Ambos nodos formarn un agrupamento (cluster) de ata dsponbdad que responder por a
dreccn IP 192.168.1.100/255.255.255.0, asocada a nombre nombre.pubco.custer.com.
S9.+.+. Acerca de Eeart!eat.
Heartbeat es un servco que provee servcos de nfraestructura de agrupamento (cluster) a
centes. Permte a os centes saber s uno de os nodos est presente o ausente, ntercambado
fcmente mensa|es entre stos. Est especfcamente dseado para funconar como
agrupamento de ata dsponbdad para cuaquer tpo de servco.
>itio de %nternet- http://www.nux-ha.org/
701
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S9.*. <rocedimientos.
S9.*.+. >ervicios #ue de!en desactivarse.
En ambos nodos, s estuvesen presentes, deben estar desactivados os servcos ava$i(daemon
y ava$i(dnscon&d, as como cuaquer otro servco que ntente utzar a nterfaz eth1, msma
que debe estar competamente dedcada a as comuncacones de Heartbeat.
service avahi!daemon stop
service avahi!dnscon"d stop
chkcon"ig avahi!daemon o""
chkcon"ig avahi!dnscon"d o""
Es mportante tambn desactvar e cortafuegos predetermnando de sstema en ambos nodos,
debdo a que ste nterfere con a comuncacn entre os nodos de $eart!eat:
service iptables stop
service ip6tables stop
chkcon"ig iptables o""
chkcon"ig ip6tables o""
E muro cortafuegos de ambos nodos puede ser fcmente gestonado a travs de >$orePall,
como se expca ms adeante.
S9.*.*. >"inu2 y Eeart!eat.
Lamentabemente, de modo predetermnado a mpementacn de SELnux ncuda en CentOS 5.x
carece de potcas que permtan funconar a servco $eart!eat, a menos que se generen
manuamente as necesaras o ben se ponga SELnux en modo permsvo o se desactve por
competo ste.
S9.*.*.+. Con&iguracin del sistema con >"inu2 activo.
Partcuarmente recomendo crear as potcas necesaras para SELnux. Es reatvamente smpe.
E sguente procedmento deber reazarse en ambos nodos.
Lo prmero es cambarse a drectoro =usr=s$are=selinu2=pacLages.
cd /usr/share/selinux/packages
Se crea un subdrectoro que ser denomnado $eart!eat:
mkdir heartbeat
Se camba a este nuevo subdrectoro:
cd heartbeat
Suponendo que se van a confgurar os servcos s$orePall (o ben ipta!les), $ttpd, named y
vs&tpd, descargue e archvo $eart!eat+.te desde Acance Lbre:
702
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
get !, http#//@alcancelibre@org/linux/secrets/heartbeat1@te
E edte e archvo $eart!eat+.te que se acaba de descargar:
vim heartbeat1@te
Y verfque que tenga e sguente contendo:
module heartbeat1 1@$V
reJuire \
type proc.tV
type urandom.device.tV
type "tpd.tV
type httpd.tV
type iptables.tV
type ndc.tV
type initrc.tV
type named.tV
class unix.stream.socket \ read rite ]V
class "ile readV
class chr."ile readV
]
A************* "tpd.t **************
allo "tpd.t initrc.t#unix.stream.socket \ read rite ]V
A************* httpd.t **************
allo httpd.t initrc.t#unix.stream.socket \ read rite ]V
A************* iptables.t **************
allo iptables.t initrc.t#unix.stream.socket \ read rite ]V
A************* named.t **************
allo named.t initrc.t#unix.stream.socket \ read rite ]V
A************* ndc.t **************
allo ndc.t initrc.t#unix.stream.socket \ read rite ]V
allo ndc.t proc.t#"ile readV
allo ndc.t urandom.device.t#chr."ile readV
Lo anteror, que fue obtendo de a sada de mandato dmesgjgrep auditjaudit*alloP (m
$eart!eat+]$eart!eat+.te en un sstema donde SELnux mpeda a Heartbeat ncar os
servcos anterormente menconados. En s, defne que se permte e modo de ectura y escrtura
cuando os servcos de drectoro =etc=init.d sean ncados por un zcao generado por
Eeart!eat.
A contnuacn, se genera un e archvo de mduo para SELnux ($eart!eat+.mod) utzando e
mandato c$ecLmodule de a sguente forma:
checkmodule !- !m !o heartbeat1@mod heartbeat1@te
Luego, se procede a empaquetar e archvo $eart!eat+.mod como e archvo $eart!eat+.pp:
semodule.package !o heartbeat1@pp !m heartbeat1@mod
703
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Fnamente se vncua e archvo $eart!eat+.pp obtendo con as potcas actuaes de SELnux y
se cargan stas en e nceo en e|ecucn:
semodule !i /usr/share/selinux/packages/heartbeat/heartbeat1@pp
Una vez cargadas as nuevas potcas, se pueden emnar os archvos $eart!eat+.te y
$eart!eat+.mod, pues so ser necesaro que exsta e archvo bnaro $eart!eat+.pp.
Todo o anteror se puede repetr utili8ando otro nom!re de arc$ivo distinto para poder aadr
ms servcos. Es decr, s se van a aadr ms servcos par a ser gestonados por Heartbeat,
confgurar stos en e archvo =etc=$a.d=$aresources, como se descrbe ms adeante en este
msmo documento, rencar e servco y reazar e sguente procedmento:
cd /usr/share/selinux/packages/heartbeat/
dmesgZgrep auditZaudit6allo !m heartbeat6Lheartbeat6@te
checkmodule !- !m !o heartbeat6@mod heartbeat6@te
semodule.package !o heartbeat6@pp !m heartbeat6@mod
semodule !i /usr/share/selinux/packages/heartbeat/heartbeat6@pp
rm !" heartbeat6@te heartbeat6@mod
service heartbeat restart
S9.*.*.*. Con&iguracin del sistema con >"inu2 en modo permisivo.
S se desea, puede ponerse SELnux en modo permsvo en ambos nodos con e fn de evtarse
tener que reazar os procedmentos anterores. Edte e archvo =etc=syscon&ig=selinu2:
vim /etc/syscon"ig/selinux
Cambe >"%),DRen&orcing por >"%),DRpermissive, a fn de mantener funconado SELnux,
y preservar todos os contextos de ste en e sstema de archvos, pero sn nterferr con e
funconamento de Heartbeat:
A 0his "ile controls the state o" S&1inux on the system@
A S&1(,>X* can take one o" these three values#
A en"orcing ! S&1inux security policy is en"orced@
A permissive ! S&1inux prints arnings instead o" en"orcing@
A disabled ! S&1inux is "ully disabled@
SELFNUX='er9%ss%*e
A S&1(,>X0;<&* type o" policy in use@ <ossible values are#
A targeted ! /nly targeted netork daemons are protected@
A strict ! =ull S&1inux protection@
S&1(,>X0;<&*targeted
A S&01/)41%&=S* )heck local de"inition changes
S&01/)41%&=S*$
Rence e sstema en ambos nodos.
reboot
Reamente es poco recomendabe desactvar por competo SELnux, sendo que as potcas
necesaras puderan aparecer en aguna actuazacn de paquete selinu2(policy(targeted, o
ben pudera ser necesaro recurrr a a proteccn que brnda esta mpementacn en un futuro a
fn de evtar potencaes ncdentes de segurdad que normamente se evtaran utzando SELnux.
704
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
En versones recentes de Fedora, es posbe evtar os probemas con SELnux, de manera fc,
e|ecutando o sguente para permtr a $eart!eat traba|ar en modo sn confnar:
semanage "context !a !t uncon"ined.exec.semanaget /usr/lib/heartbeat/heartbeat
E contexto uncon&inedQe2ecQsemanaget es nexstente en CentOS 5 y Red Hat Enterprse Lnux
5.
S9.*.3. Con&iguracin del )odo +
Ingresar como root o ben cambar a usuaro root.
su !l
Edtar e archvo =etc=$osts:
vim /etc/hosts
Y defnr os nombres asocados a a dreccn IP pbca de agrupamento (cluster) y as
dreccones IP de as nterfaces eth0, as cuaes corresponden a as nterfaces pubcas de os
nodos:
A %o not remove the "olloing lineB or various programs
A that reJuire netork "unctionality ill "ail@
167@$@$@1 localhost@localdomain localhost
##1 localhost6@localdomain6 localhost6
4<2.438.4.4// no9!re.'.!)%&o.&).s$er.&o9
4<2.438.4.4/4 no9!re.'.!)%&o.no-o4.&o9
4<2.438.4.4/2 no9!re.'.!)%&o.no-o2.&o9
Para compementar o anteror, debe haber un DNS que se encargue de resover estos nombres
para a red oca y/o haca Internet.
Edtar e archvo =etc=$osts y defnr os nombres asocados a as dreccones IP de as nterfaces
eth1, as cuaes corresponden a as nterfaces prvadas de custer, a travs de a cua se
comuncan os nodos:
A %o not remove the "olloing lineB or various programs
A that reJuire netork "unctionality ill "ail@
167@$@$@1 localhost@localdomain localhost
##1 localhost6@localdomain6 localhost6
186@165@1@1$$ nombre@publico@cluster@com
186@165@1@1$1 nombre@publico@nodo1@com
186@165@1@1$6 nombre@publico@nodo6@com
4<2.438.2.4 no9!re.'r%*#-o.no-o4.&o9
4<2.438.2.2 no9!re.'r%*#-o.no-o2.&o9
Instaar os servcos que se van a gestonar a travs de agrupamento (cluster):
yum !y install httpd php vs"tpd get
Utzando un edtor de texto smpe, crear e archvo =var=PPP=$tml=inde2.p$p:
705
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
vim /var//html/index@php
Y aadr e sguente contendo:
ahtmlL
aheadL
atitleL&ste es el nodo 1a/titleL
a/headL
abodyL
ah1L&ste es el nodo 1a/h1L
apL&ste es el servidor principal Jue se presenta normalmente@a/pL
a/bodyL
a/htmlL
Crear e archvo =etc=$ttpd=con&.d=cluster.con& con e sguente contendo:
A %e"inir valores con el nombre pbblico y la direcciRn
A (< pbblica del cluster
,ame'irtual2ost 186@165@1@1$$#5$
a'irtual2ost 186@165@1@1$$#5$L
Server,ame nombre@publico@cluster@com
%ocumentRoot /var//html
&rror1og logs/cluster!error.log
)ustom1og logs/cluster!access.log combined
Server4dmin alguienXalgo@com
a/'irtual2ostL
Utce cuaquer edtor de texto sobre e archvo =etc=vs&tpd=vs&tpd.con&:
vim /etc/vs"tpd/vs"tpd@con"
Y aadr a fna de ste o sguente:
"tpd.banner*:ienvenido al servicio =0< del ,odo 1@
chroot.local.user*;&S
chroot.list.enable*;&S
chroot.list."ile*/etc/vs"tpd/chroot.list
Genere con e mandato touc$ e archvo =etc=vs&tpd=c$rootQlist:
touch /etc/vs"tpd/chroot.list
Instae e depsto YUM de Alcance i!re que ncuye >$orePall:
cd /etc/yum@repos@d/
get http#//@alcancelibre@org/al/server/41!Server@repo
Instae Shorewa:
yum !y install shoreall
Cambe a drectoro =etc=s$orePall:
cd /etc/shoreall
706
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Edte con vm e archvo =etc=s$orePall=s$orePall.con& y cambe >@A'@,<Q")AB"DR)o por
>@A'@,<Q")AB"DRyes:
S04R0><.&,4:1&%*;es
A fn de que exsta una comuncacn sn restrccones entre ambos nodos cuando e cortafuegos
est detendo, defna e sguente contendo en e archvo =etc=s$orePall=routesstoped:
eth$ 186@165@1@1$6 critical
eth1 186@165@6@6 critical
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
Defna as zonas de mudo cortafuegos en e archvo =etc=s$orePall=8ones:
" "ireall
net ipv4
loc ipv4
A14S0 1(,& ! 4%% ;/>R &,0R(&S 4:/'& 02(S /,& ! %/ ,/0 R&-/'&
Defna que nterfaces de red corresponden a as zonas estabecdas en e archvo
=etc=s$orePall=inter&aces:
net eth$ detect dhcpBblacklist
loc eth1 detect
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
Defna as sguentes potcas en e archvo =etc=s$orePall=policy:
" all 4))&<0
loc " 4))&<0
loc net R&^&)0 in"o
net all %R/< in"o
A14S0 1(,& !! %/ ,/0 R&-/'&
Consderando que se estn confgurando os servcos s$orePall, vs&tpd y $ttpd, se
admnstrarn ambos servdores a travs de SSH, mtando os pings desde cuaquer zona a 5
conexones por segundo con rfagas de 2, defna as sguentes regas para e archvo
=etc=s$orePall=rules:
4))&<0 all " tcp 6$B61
4))&<0 all " tcp 5$B44?
4))&<0 all " tcp ??$6
4))&<0 all " tcp 66
4))&<0 all " icmp 5 ! ! 9/sec#6
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
Debdo a un error en e gun Vpre (pre-nstaacn) de os paquetes de $eart!eat que son
dstrbudos a travs de os depstos YUM de CentOS, es mportante crear prevamente e usuaro
y grupo que utzar $eart!eat, o de otro modo faar a nstaacn:
groupadd !g 486 haclient
useradd !- !g haclient !u 485 !d /var/lib/heartbeat/cores/hacluster hacluster
707
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Instaar e paquete $eart!eat. Se nstaarn automtcamente como dependencas os paquetes
$eart!eat(stonit$ y $eart!eat(pils:
yum !y install heartbeat
Cambarse a drectoro =etc=$a.d
cd /etc/ha@d
Copar os archvos de e|empo para confguracn de $eart!eat.
cp /usr/share/doc/heartbeat!K/ha@c" @/ha@c"
cp /usr/share/doc/heartbeat!K/haresources @/haresources
cp /usr/share/doc/heartbeat!K/authkeys @/authkeys
Aadr a fna de archvo aut$Leys ago smar a o sguente:
A %e"ine el esJuema de autenticaciRn por S241 y una clave de acceso@
#.$h 2
2 sh#4 '/n3r-#,.4-.nE-&)#*3--3-#&&eso-s3.rE
Puede generar e contendo de archvo =etc=$a.d=aut$Leys, con un crptograma adecuado,
utzando e sguente gun:
( echo !ne +auth 6On6 sha1 +V O
dd i"*/dev/urandom bs*916 count*1 Z openssl md9 ) L /etc/ha@d/authkeys
Por motvos de segurdad, este archvo so debe tener permsos de ectura y escrtura para e
usuaro root. Cambar e permso de ste e|ecutando o sguente:
chmod 6$$ authkeys
Edtar e archvo $a.c&:
vim ha@c"
Aadr a fna de archvo $a.c& o sguente:
708
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
)o+%)e 8*#r8)o8h#-)o
)o+#&%)%$y )o&#)/
7ee'#)%*e 2
A 0iempo de espera para iniciar servicios si nodo principal deMa de
A responder@ <uede aMustarse a cualJuier tiempo raConable@ &Memplo# 1$ segundos@
-e#-$%9e 2/
%n%$-e#- </
A inter"aC de comunicaciRn ente nodos
!&#s$ e$h4
.-''or$ 3<E
#.$o_+#%)!#&7 on
A ,ombres de los nodos Jue participarin en el cluster@
A %eben ser di"erentes a los nombres de an"itriRn utiliCados para las (<
A pbblicas de la las inter"aces eth$@ SRlo son para uso interno@
A 1os nombres deben estar resueltos en el archivo /etc/hosts
A con direcciones (< privadas en las inter"aces eth1B la cuales corresponden a
A las inter"aces privadas del clusterB a travfs de la cual se comunican los
A nodos del cluster@
no-e no9!re.'r%*#-o.no-o4.&o9
no-e no9!re.'r%*#-o.no-o2.&o9
Edtar e archvo $aresources:
vim haresources
Aadr a fna de archvo $aresources o sguente, donde se defne e nombre de nodo 1,
dreccn IP que utzar Heartbeat para servr os recursos, mscara de subred en formato de bts,
nombre de nterfaz de red donde se crear a nterfaz vrtua, dreccn de dfusn de a red
(broadcast) y os servcos a controar:
A &n el eMemplo a continuaciRn#
A nombre@privado@nodo1@com * nombre de an"itriRn del nodo principal
A 186@165@1@1$$ * direcciRn (< pbblica del cluster
A 64 * miscara en "ormato de bits
A eth$ * inter"aC pbblica del cluster
A 186@165@1@1$1 * direcciRn (< del nodo principal a supervisar
A vs"tpd httpd * servicios a brindar a travfs del cluster
no9!re.'r%*#-o.no-o4.&o9 4<2.438.4.4//82E8e$h/84<2.438.4.255 shore?#)) *s+$'- h$$'-
Desactvar os servcos que se van a gestonar a travs de agrupamento (cluster):
chkcon"ig httpd o""
chkcon"ig vs"tpd o""
chcon"ig shoreall o""
Incar e servco $eart!eat:
service heartbeat start
Aadr e servco heartbeat a arranque de sstema:
chkcon"ig heartbeat on
Los servcos s$orePall, $ttpd y vs&tpd ncarn automtcamente poco despus de ncar e
servco $eart!eat.
709
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S9.*.4. Con&iguracin del )odo *
Ingresar como root o ben cambar a usuaro root.
su !l
Instaar os servcos que se van a gestonar a travs de agrupamento (cluster):
yum !y install httpd php vs"tpd
Utzando un edtor de texto smpe, crear e archvo =var=PPP=$tml=inde2.p$p:
vim /var//html/index@php
Y aadr e sguente contendo:
ahtmlL aheadL atitleL&ste es el nodo 6a/titleL a/headL abodyL ah1L&ste es el nodo
6a/h1L apL&ste es el servidor secundario Jue se presenta cuando "alla o se apaga el
abLnodo 1a/bL@a/pL a/bodyL a/htmlL
A travs de SCP, copar desde e nodo + e archvo =etc=$ttpd=con&.d=cluster.con& dentro de
drectoro =etc=$ttpd=con&.d= oca:
scp !p 186@165@1@1$1#/etc/httpd/con"@d/cluster@con" /etc/httpd/con"@d/
Utce cuaquer edtor de texto sobre e archvo =etc=vs&tpd=vs&tpd.con&:
vim /etc/vs"tpd/vs"tpd@con"
Y aadr a fna de ste o sguente:
"tpd.banner*:ienvenido al servicio =0< del ,odo 6@
chroot.local.user*;&S
chroot.list.enable*;&S
chroot.list."ile*/etc/vs"tpd/chroot.list
Genere con e mandato touc$ e archvo =etc=vs&tpd=c$rootQlist:
touch /etc/vs"tpd/chroot.list
Instae Shorewa:
yum !y install shoreall
Cambe a drectoro =etc=s$orePall:
cd /etc/shoreall
710
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Edte con vm e archvo =etc=s$orePall=s$orePall.con& y cambe >@A'@,<Q")AB"DR)o por
>@A'@,<Q")AB"DRyes:
S04R0><.&,4:1&%*;es
A fn de que exsta una comuncacn sn restrccones entre ambos nodos cuando e cortafuegos
est detendo, defna e sguente contendo en e archvo =etc=s$orePall=routesstoped:
eth$ 186@165@1@1$1 critical
eth1 186@165@6@1 critical
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
Defna as zonas de mudo cortafuegos en e archvo =etc=s$orePall=8ones:
" "ireall
net ipv4
loc ipv4
A14S0 1(,& ! 4%% ;/>R &,0R(&S 4:/'& 02(S /,& ! %/ ,/0 R&-/'&
Defna que nterfaces de red corresponden a as zonas estabecdas en e archvo
=etc=s$orePall=inter&aces:
net eth$ detect dhcpBblacklist
loc eth1 detect
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
Defna as sguentes potcas en e archvo =etc=s$orePall=policy:
" all 4))&<0
loc " 4))&<0
loc net R&^&)0 in"o
net all %R/< in"o
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
Defna as sguentes regas para e archvo =etc=s$orePall=rules:
4))&<0 all " tcp 6$B61
4))&<0 all " tcp 5$B44?
4))&<0 all " tcp ??$6
4))&<0 all " tcp 66
4))&<0 all " icmp 5 ! ! 9/sec#6
A14S0 1(,& !! 4%% ;/>R &,0R(&S :&=/R& 02(S /,& !! %/ ,/0 R&-/'&
Crear e usuaro y grupo que utzar $eart!eat:
groupadd !g 486 haclient
useradd !- !g haclient !u 485 !d /var/lib/heartbeat/cores/hacluster hacluster
Instaar e paquete $eart!eat:
yum !y install heartbeat
A travs de SCP, copar desde e nodo + e archvo =etc=$osts para reempazar e archvo
=etc=$osts oca:
711
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
scp !p 186@165@1@1$1#/etc/hosts /etc/hosts
A travs de SCP, copar desde e nodo + e contendo competo de drectoro =etc=$a.d dentro de
=etc
scp !p 186@165@1@1$1#/etc/ha@d/K /etc/ha@d/
Desactvar os servcos que se van a gestonar a travs de agrupamento (cluster):
chkcon"ig httpd o""
chkcon"ig vs"tpd o""
chkcon"ig shoreall o""
Incar e servco $eart!eat:
service heartbeat start
Aadr e servco heartbeat a arranque de sstema:
chkcon"ig heartbeat on
Los servcos s$orePall, $ttpd y vs&tpd ncarn automtcamente so cuando $eart!eat
detecte que ha faado e nodo + o se ha perddo conectvdad con ste.
S9.*.5. Geri&icando el agrupamiento Mclu#terN.
La me|or forma de verfcar que todo funcona correctamente es acceder con e navegador haca
ttp)**nombre.publico.cluster.com* o ttp)**:YH.:VT.:.:88*, o ben acceder a travs de un cente
FTP haca nombre.publico.cluster.com o :YH.:VT.:.:88. Deber de responder e nodo +.
Apague e nodo + o detenga e servco $eart!eat en e nodo 1, espere 20 a 30 segundos e
ntente acceder haca as dreccones anterores. Deber de responder e nodo *. Vovendo a
encender e nodo + o ncando de nuevo e servco $eart!eat, espere 20 a 30 segundos e
ntente acceder nuevamente haca as dreccones. Deber de responder e nodo +.
S9.*.5.+. :antener sincroni8ados los directorios.
Es mportante resatar que as nterfaces eth1 de ambos nodos deben ser excudas para reazar
cuaquer actvdad. Deben ser utzadas excusvamente por e servco de $eart!eat. Utce as
nterfaces eth0 para reazar sncronzacn de datos.
En e caso de nodo *, se puede generar una tarea programada para que se e|ecute cada certo
tempo, utzando rsync y confgurando a cuenta de root de ambos nodos para utzar SSH sn
cave de acceso. En e sguente e|empo para entrada e archvo /etc/crontab, se sncronza cada
hora e =var=&tp=pu! de nodo *, a partr de drectoro =var=&tp=pu! de nodo +:
712
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S2&11*/bin/bash
<402*/sbin#/bin#/usr/sbin#/usr/bin
-4(10/*root
2/-&*/
A run!parts
$1 K K K K root run!parts /etc/cron@hourly
$6 4 K K K root run!parts /etc/cron@daily
66 4 K K $ root run!parts /etc/cron@eekly
46 4 1 K K root run!parts /etc/cron@monthly
// \ \ \ \ roo$ rsyn& -#*: d
--eC&).-e B\)oB --eC&).-e B\$9'8\B -e ssh ---e)e$e-#+$er d
roo$J4<2.438.4.4/4D8*#r8+$'8'.! 8*#r8+$'8'.!
En e caso de e nodo +, se asume que s este faa y es apagado, a ncar sncronza con e nodo
*, e cua estuvo traba|ando y funconando en ausenca de nodo +. Puede agregarse e sguente
e|empo a archvo =etc=rc.local, o que corresponde a a sncronzacn de datos de os drectoros
=var=&tp=pu! a partr de e nodo * haca e nodo + que se asume acaba de ncar:
Ah/bin/sh
A
A 0his script ill be executed Ka"terK all the other init scripts@
A ;ou can put your on initialiCation stu"" in here i" you donUt
A ant to do the "ull Sys ' style init stu""@
touch /var/lock/subsys/local
rsyn& -#*: d
--eC&).-e B\)oB --eC&).-e B\$9'8\B -e ssh ---e)e$e-#+$er d
roo$J4<2.438.4.4/2D8*#r8+$'8'.! 8*#r8+$'8'.!
713
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
SS. ,sando >martd para anticipar los desastres
de disco duro
Autor: "oel Barrios &ue!as
Correo electrnico: dar)#hra*+g*ail.co*
#itio de Red: http://www.alcancelibre.org/
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. !N )o puede utili8ar esta o!ra para &ines comerciales. c) S atera o
transforma esta obra, o genera una obra dervada, so puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o
dstrbur a obra, tene que de|ar ben caro os trmnos de a cenca de esta obra. Aguna de estas condcones puede no apcarse s se
obtene e permso de ttuar de os derechos de autor. Los derechos dervados de usos egtmos u otras mtacones no se ven afectados por o
anteror. La nformacn contenda en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn
responsabdad aguna s e usuaro o ector hace ma uso de stos.
SS.+. %ntroduccin
La mayora de as dstrbucones recentes ncuyen smartct y smartd (parte de smartmontoos
ncudo en e paquete kerne-uts), que son herramentas utzadas para supervsar a saud de os
dscos duros reazando pruebas para comprobar su buen funconamento. Mentras e dsco y a
tar|eta madre (soporte se actva en e BIOS) tengan capacdad para utzar S.M.A.R.T. (Sef-
Montorng, Anayss and Reportng Technoogy) es posbe antcpar as faas de un dsco duro.
Soo basta confgurar un archvo (/etc/smartd.conf) e ncar un servco (smartd).
SS.*. <rocedimientos
E archvo /etc/smartd@con" soo requere una nea de confguracn por cada dsco duro en e
sstema. E|empos:
/dev/hda !a !m alguienXdominio@com
/dev/sda !d scsi !a !m alguienXdominio@com
/dev/sdb !d scsi !a !m alguienXdominio@com
Lo anteror hace que se env un reporte competo y detaado de toda a nformacn S.M.A.R.T. y
as aertas pendentes. La opcn !a en dscos IDE equvae a:
/dev/hda !2 !i !c !4 !l error !l sel"test !l selective
Y en dscos SCSI equvae a:
/dev/sda !2 !i !4 !l error !l sel"test
Donde:
!I
Incuye en e reporte e estado de saud y aertas pendentes. S se quere envar reportes a un
tefono mv, esta sera a opcn nca a utzar.
!%
Incuye en e reporte e numero de modeo, nmero de sere, versn de Frmware e nformacn
adcona reaconada.
714
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
!&
Incuye en e reporte as capacdades S.M.A.R.T.
-A
Incuye en e reporte atrbutos S.M.A.R.T. especfcos de fabrcante de dsco.
!) error
Incuye en e reporte a btcora de errores de S.M.A.R.T.
!) se)+$es$
Incuye en e reporte a btcora de pruebas de S.M.A.R.T.
!) se)e&$%*e
Agunos dscos tpo ATA-7 (e|empo: Maxtor) ncuyen una btcora de pruebas seectvas.
!9
Cuenta de correo eectrnco a a cua se envarn reportes.
>i por e.emplo, soo nos nteresa recbr reportes de saud de /dev=$da, /dev=sda y /dev=sd!, en
una cuenta de correo eectrnco (que puede ser a que coresponda para recbr mensa|es en un
tefono mv), se utzaran o sguente en e archvo /etc=smartd.con&:
/dev/hda !2 !m alguienXdominio@com
/dev/sda !d scsi !2 !m alguienXdominio@com
/dev/sdb !d scsi !2 !m alguienXdominio@com
Hecho o anteror, soo se necesta agregar e servco a os servcos de arranque de sstema e
ncar (o rencar, segn e caso) smartd:
chkcon"ig smartd on
service smartd start
E servco se encarga de e|ecutar automtcamente en e tras fondo de sstema todas as pruebas
necesaras y soportadas por as undades de dsco duro presentes. E reporte se enva
automtcamente |unto con e mensa|e con e reporte de a btcora de sstema unos mnutos
despus de as 4:00 AM.
S se quere ver un reporte a momento, competo y detaado, suponendo que se trata de un dsco
duro en e IDE 1, basta e|ecutar:
smartctl !a /dev/hda
S se quere ver un reporte a momento que soo muestre e estado de saud de a undad,
suponendo que se trata de un dsco duro en e IDE 1, basta e|ecutar:
smartctl !2 /dev/hda
715
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
+OO. Cmo crear un disco con instalacin
personali8ada de Cent0> 5.
Autor: "oel Barrios &ue!as
Correo electrnico: dar)#hra*+g*ail.co*
#itio de Red: http://www.alcancelibre.org/
Creative Commons 'econocimiento()oComercial(Compartir%gual *.+
1999-2011 |oe Barros Dueas. Usted es bre de copar, dstrbur y comuncar pbcamente a obra y hacer obras dervadas ba|o as
condcones sguentes: a) Debe reconocer y ctar a autor orgna. !N )o puede utili8ar esta o!ra para &ines comerciales. c) S atera o
transforma esta obra, o genera una obra dervada, so puede dstrbur a obra generada ba|o una cenca dntca a sta. A reutzar o
dstrbur a obra, tene que de|ar ben caro os trmnos de a cenca de esta obra. Aguna de estas condcones puede no apcarse s se
obtene e permso de ttuar de os derechos de autor. Los derechos dervados de usos egtmos u otras mtacones no se ven afectados por o
anteror. La nformacn contenda en este documento y os dervados de ste se proporconan ta cua son y os autores no asumrn
responsabdad aguna s e usuaro o ector hace ma uso de stos.
+OO.+. %nstalacin de e#uipamiento lgico necesario.
Se requere a herramenta mLiso&s para poder crear mgenes ISO, a herramenta system-confg-
kckstart para crear un archvo de confguracn con parmetros personazados para e programa
de nstaacn, y e mandato createrepo para regenerar e depsto yum en caso de que se
aadan paquetes nuevos o actuazados a a nstaacn.
yum !y install mkiso"s system!con"ig!kickstart createrepo
La herramenta system(con&ig(LicLstart esta ncuda en todas as versones de Cent0>,
Fedora y 'ed Eat "nterprise inu2, as como as dstrbucones de GNU/Lnux dervadas de
stas.
+OO.*. <rocedimientos.
+OO.*.+. Creacin de arc$ivo de con&iguracin de instalacin
personali8ada.
Se utza e programa system(con&ig(LicLstart, que consste en un programa que smua as
opcones de confguracn de programa de nstaacn de CentOS 5. A fnazar, se guarda un
archvo, que puede ser nombrado como Ls.c&g,y que ser utzado posterormente en este
documento.
S se carece de system(con&ig(LicLstart o ben sta tene un ma funconamento, o sguente
corresponde a una confguracn de e|empo que estabece a nstaacn desde la unidad lectora
de CD=DGD, nstaacn en doma espaol, con tecado con dsposcn "spaol, nterfaz et$O
confgurada por DEC<, cave de acceso para e usuaro root ser +*3#Pe, cortafuegos habtado
con e puerto 22 por TCP aberto, SELnux funconar en modo en&orcing, zona horara de a
ciudad de :2ico, nstaacn de grub en =dev=sda, y a nstaacn de os grupos de paquetes
Core (nceo y componentes bscos de sstema operatvo), Base(herramentas bscas de
sstema operatvo), "ditors (edtores de texto), Fonts (tpografas), ?)0:" DesLtop (escrtoro
de GNOME), ?rap$ical %nternet (programas grfcos para Internet), Java (soporte para |ava),
0&&ice (OpenOffce.org y otros programas para documentos), <rinting (soporte para mpresn),
>ound and Gideo (programas para sonodo y vdeo) y >panis$ >upport (soporte a espao):
A Hickstart "ile automatically generated by anaconda@
install
716
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
cdrom
lang es.&S@>0=!5
keyboard es
netork !!device eth$ !!bootproto dhcp
rootp !!iscrypted F1F=vs?o>9cF4""58rio<b1&m^7/@lt%$
"ireall !!enabled !!port*66#tcp
authcon"ig !!enableshado !!enablemd9
selinux !!en"orcing
timeCone !!utc 4merica/-exico.)ity
bootloader !!location*mbr !!driveorder*sda
A 0he "olloing is the partition in"ormation you reJuested
A ,ote that any partitions you deleted are not expressed
A here so unless you clear all partitions "irstB this is
A not guaranteed to ork
Aclearpart !!linux
Apart /boot !!"stype ext? !!siCe*6$$ !!onpart*sda1
Apart / !!"stype ext? !!siCe*1$64 !!ondisk*sda6 !!gro !!maxsiCe*99$$$
Apart sap !!ondisk*sda? !!siCe*6$45
Tpackages
Xbase
Xcore
Xeditors
X"onts
Xgnome!desktop
Xgraphical!internet
XMava
Xo""ice
Xprinting
Xsound!and!video
Xspanish!support
Lo anteror soo de|a a confguracn de partcones como nco procedmento a reazar durante
a nstaacn. Se recomenda de|ar de este modo a fn de evtar emnacn accdenta de
partcones exstentes en e dsco duro.
+OO.*.*. Creacin del directorio de tra!a.o y contenido del mismo.
E prmer paso consste en crear un drectoro de traba|o donde haya espaco sufcente, es decr
aproxmadamente 3.6 GB para e drectoro de traba|o y otros 3.6 GB para crear a nueva magen
de DVD. Por tanto, se requere un mnmo de 7.2 GB de espaco bre en dsco duro. En e sguente
e|empo se utza Y=centos5(personal:
mkdir Y/centos9!personal
Se nserta e DVD de CentOS 5 y se de|a que e sstema asgne e punto de monta|e dentro de
/meda/ o ben se monta manuamente. S se monta manuamente, se puede utzar e sguente
procedmento:
mkdir /media/centos9
mount /dev/cdrom /media/centos9
Se copa competo e contendo de DVD de CentOS 5 en e drectoro de traba|o defndo
prevamente:
cp !r /media/centos9/K Y/centos9!personal/
717
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Tambn se debe copar tambn e archvo .discin&o que est en e DVD.
cp !r /media/centos9/@discin"o Y/centos9!personal/
Corregr e archvo .discin&o que se cop dentro de Y=centos5(personal=, con cuaquer edtor
de texto, y cambar =$ome=!uildcentos=C")@0>=5.*=en=i396=Cent0> por Cent0>=Cent0>
Copar e archvo Ls.c&g creado con system(con&ig(LicLstart dentro de drectoro de traba|o
Y=centos5(personal=:
cp /donde/este/ks@c"g Y/centos9!personal/
Edtar e archvo Y=centos5(personal=isolinu2=isolinu2.c&g y aadr e parmetro
LsRcdrom-=Ls.c&g a a defncn que se desee utzar por omsn. Por e|empo, se tene e
sguente contendo en sonux.cfg:
de"ault linux
prompt 1
timeout 6$$
display boot@msg
=1 boot@msg
=6 options@msg
=? general@msg
=4 param@msg
=9 rescue@msg
label linux
kernel vmlinuC
append initrd*initrd@img
label text
kernel vmlinuC
append initrd*initrd@img text
label ks
kernel vmlinuC
append ks initrd*initrd@img
label local
localboot 1
label memtest56
kernel memtest
append !
Soo se necesta aadr LsRcdrom-=Ls.c&g a a prmera nea de append, que corresponde a
arranque predetermnado de dsco de nstaacn.
de"ault linux
prompt 1
timeout 6$$
display boot@msg
=1 boot@msg
=6 options@msg
=? general@msg
=4 param@msg
=9 rescue@msg
label linux
kernel vmlinuC
#''en- %n%$r-=%n%$r-.%9 7s=&-ro9D87s.&+
label text
718
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
kernel vmlinuC
append initrd*initrd@img text
label ks
kernel vmlinuC
append ks initrd*initrd@img
label local
localboot 1
label memtest56
kernel memtest
append !
Puede resutar ms convenente aadr una nueva de&inicin de arran#ue, a fn de que se de|e
ntacto e arranque por defecto, y aternatvamente se pueda cargar e archvo Ls.c&g a nvocar
desde e daogo de !oot- esta defncn.
de"ault linux
prompt 1
timeout 6$$
display boot@msg
=1 boot@msg
=6 options@msg
=? general@msg
=4 param@msg
=9 rescue@msg
label linux
kernel vmlinuC
append initrd*initrd@img
label text
kernel vmlinuC
append initrd*initrd@img text
label ks
kernel vmlinuC
append ks initrd*initrd@img
label local
localboot 1
label memtest56
kernel memtest
append !
)#!e) 9%-#rr#n,.e
7erne) *9)%n.:
#''en- %n%$r-=%n%$r-.%9 7s=&-ro9D87s4.&+
Para utzar o anteror, a posterormente ncar e DVD de nstaacn personazado, en e dogo
de !oot- se ngresa:
boot# mi!arranJue
+OO.*.3. Aadir e#uipamiento lgico adicional.
S se desea aadr equpamento gco (soft(are) adcona, por e|empo as ms recentes
actuazacones, puede hacerse copando ste en e drectoro Y=centos5(personal=Cent0>, y
regenerando e depsto yum oca. A fn de respetar os grupos de paquetes y poder dsponer de
un archvo con as especfcacones de os grupos de paquetes, debe respadarse prmero e
archvo comps.2ml que est dentro de Y=centos5(personal=repodata.
mkdir !p Y/respaldos/
719
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
cp Y/centos9!personal/repodata/comps@xml Y/respaldos/
Este archvo puede ser modfcado con cuaquer edtor de texto para refe|ar os cambos de
paquetes nuevos que se quera ncur a a nstaacn.
Se aaden os paquetes adconaes o actuazados en Y=centos5(personal=Cent0>:
cp /donde/estfn/paJuetes/K@rpm Y/centos9!personal/)ent/S
A fn de evtar confctos con as frmas dgtaes y evtar tener que modfcar e programa de
nstaacn, soo se recomenda utzar paquetes RPM frmados por CentOS, es decr, os paquetes
RPM de as actuazacones de CentOS.
A fn de poder regenerar e depsto, se utza e mandato createrepo con a opcn (g para
ndcar a ruta de archvo comps.2ml que se respad prevamente, y a ruta de drectoro de
traba|o.
createrpo !g Y/respaldos/comps@xml Y/centos9!personal/
Lo anteror crea un nuevo drectoro Y=centos5(personal=repodata que ncur os sguentes
archvos:
comps.xm
fests.xm.gz
other.xm.gz
prmary.xm.gz
repomd.xm
S aguno de os anterores est ausente, se deben repetr e procedmento verfcando a sntaxs y
rutas utzadas con createrepo.
+OO.*.4. Creacin de la imagen %>0.
Una vez termnadas as modfcacones, se crea a magen ISO:
cd Y/centos9!personal/
mkiso"s !4 +)ent/S.9@6.=inal.<ersonal+ !o Y/mi!dvd!centos9@iso !b isolinux/isolinux@bin
!c isolinux/boot@cat !no!emul!boot !boot!load!siCe 4 !boot!in"o!table !R !^ !v !0
Y/centos9!personal
La magen ISO resutante en Y=mi(dvd(centos5.iso se puede grabar de nmedato desde
cuaquer herramenta grfca para este fn, como magen ISO, y |ams como archvo. Se puede
utzar K3!, DCDroast o ?)0:" @oaster.
S soo se dspone de una termna, a magen de DVD recn creada se puede grabar con
groPiso&s, de a sguente manera:
groiso"s !dvd!compat !G /dev/dvd*mi!dvd!centos9@iso
720
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
E programa de nstaacn utzado en CentOS 5 pudera faar debdo a as modfcacones hechas,
por o que es mportante reazar varas pruebas de nuevo dsco de nstaacn antes de utzaro
en agn sstema en produccn u otros fnes que nvoucren operacn crtca.
Es mportante recordar que s se va a comercazar o dstrbur esta magen ISO recn creada, se
deben respetar os derechos de autor, ogotpos y a marca de Cent0>. Las modfcacones
necesaras para e programa de nstaacn, que consste en reempazar as referencas de CentOS
y as mgenes de ogotpos, se detaarn en un documento que pubcaremos posterormente.
721
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
+O+. ".ercicios
+O+.+. ".ercicio )F>
+O+.+.+. %ntroduccin
Haga equpo con agn compaero de curso a fn de poder reazar e procedmento, pruebas y
depuracn entre s.
+O+.+.*. <rocedimientos
+O+.+.*.+. >ervidor
1. Como root genere e drectoro =var=n&s=pu!lico= y asgne a ste un permso 1777.
mkdir !p /var/n"s/publico
chmod 1777 /var/n"s/publico
2. Como root modi&i#ue =etc=e2ports y defna que se compartr =var=n&s=pu!lico a sstema de
compaero con e cua est hacendo equpo en modo de ectura y escrtura con el siguiente
contenido:
/var/n"s/publico 186@165@$@n(rBsync)
3. Como root inicie o reinicie e servco de nfs.
service n"s restart
+O+.+.*.*. Cliente
1. Como root genere e drectoro =mnt=pu!lico a fn de que posterormente sea utzado para
montar e voumen NFS de esta prctca.
2. Como root modfque =etc=&sta! y especfque que se montar e voumen =var=n&s=pu!lico= de
sstema de compaero con e que est hacendo equpo en e drectoro =mnt=pu!lico=,
utzando as opcones de montado no automtco (noauto), ectura y escrtura (rw), montado
con expracn (soft), contnuar en trasfondo de ser necesaro (bg), se pueda montar por e
usuaro (user) y permtr nterrumpr procesos (ntr).
186@165@$@n#/var/n"s/publico /mnt/publico n"s
noautoBrBso"tBbgBuserBintr $ $
3. Como usuaro (fuano) ntente montar e voumen NFS:
mount /mnt/publico
722
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
4. Como fuano cambe a drectoro =mnt=pu!lico= e ntente crear un archvo con cuaquer
contendo dentro de drectoro =mnt=pu!lico=.
cd /mnt/publico/
echo n2ola mundo+ L holamundo@txt
ls
723
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
+O+.*. ".ercicio >A:BA
Usted deber confgurar a travs de Samba un drectoro sobre e cua se quere permtr e ngreso
so a dos usuaros, |efe y contador, quenes pertenecen a grupo de contabdad. Dcho drectoro
deber contar con permsos de escrtura, de modo que tanto |efe como contador puedan traba|ar
en dcho drectoro con una apcacn admnstratva.
+O+.*.+. <rocedimientos
1. Defna que dreccn IP y mascara de subred tene e servdor utzando os sguentes
mandatos:
/sbin/i"con"ig eth$ Z grep inet Z cut !d # !" 6 Z cut !d O !" 1
/sbin/i"con"ig eth$ Z grep -as Z cut !d # !" 4
E prmer mandato donde aparece un \, debe haber dos espacios entre e y (& +, porque se
est especfcando una barra invertida como secuenca de escape para e espaco posteror.
Utzando man cut y man grep, expque que fue o que reazaron os dos mandatos
anterores en e reporte escrto de este e|ercco.
2. Instae samba, samba-cente y samba common de sguente modo:
yum !y install samba samba!client samba!common
3. Utzando como referenca e documento ttuado Cmo confgurar SAMBA., edte e archvo
=etc=sam!a=sm!.con& y confgure os sguentes parmetros de a seccn Tglo!alU donde
adems deber expcar en un reporte por escrito en pape qu es o que hace cada uno
de estos parmetros con os vaores que sern asgnados en e e|ercco:
orkgroup * cursolinux
hosts allo * 186@165@$@ 167@
inter"aces * loB eth$B 167@$@$@1/?6B 186@165@$@XXX/64
remote announce * 186@165@$@699/cursolinux
)0@A- 192.168.0.XXX se refere a a dreccn IP que posee e servdor y no teramente
192.168.0.XXX.
Saga de archvo.
4. Incar e servco recn confgurado.
service smb start
5. Aadr e servco sm! a arranque de sstema.
chkcon"ig smb on
6. Genere e nuevo drectoro =var=sam!a=conta!ilidad:
mkdir !p /var/samba/contabilidad
7. Confgure e drectoro para que SELnux permta utzaro como contendo que ser
compartdo a travs de Samba:
724
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
chcon !t samba.share.t /var/samba/contabilidad
8. Genere e grupo de traba|o:
groupadd contabilidad
9. Genere os usuaros |efe y contador de modo que no tengan acceso a ntrprete de
mandatos y tengan como grupo prmaro a contabdad. Asgne a stos contrasea
useradd !s /sbin/nologin !g contabilidad Me"e
useradd !s /sbin/nologin !g contabilidad contador
smbpassd !a Me"e
smbpassd !a contador
10.Asgne os permsos necesaros a =var=sam!a=conta!ilidad, de modo ta, que se permta
so a escrtura, ectura y e|ecucn a dcho drectoro a usuaro y a grupo contabdad, y
de modo que se preserven os permsos de contendo de dcho drectoro:
chmod 177$ /var/samba/contabilidad
chgrp contabilidad /var/samba/contabilidad
11.Modfque =etc=sam!a=sm!.con& y confgure o necesaro para compartr
=var=sam!a=conta!ilidad en modo ectura-escrtura con acceso soo para |efe y contador,
redundando os permsos que se asgnaron ocamente a dcho drectoro, y defnendo e
permso que deber tener por defecto todo archvo o documento nuevo en e nteror, a fn
de que soamente puedan ser edos y modfcados por |efe y contador:
DcontabilidadE
comment * )ontabilidad
path * /var/samba/contabilidad
ritable * yes
broseable * yes
public * no
printable * no
valid users * Me"e contador
directory mode * 177$
create mode * $66$
veto "iles * /K@mp?/K@ma/K@avi/K@mv/K@mpg/K@mpeg/K@mov/
725
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
12.Rence e servco de Samba:
service smb restart
13.Haga as pruebas pertnentes accedendo desde e admnstrador de archvos copando,
movendo o emnado ob|etos en e recurso que acaba de confgurar.
smbclient !, !1 167@$@$@1
smbclient //167@$@$@1/contabilidad !> Me"eT16?Je
14.Reace cuaquer tpo de transferenca utzando mget o mput desde e ntrprete smb. A
termnar, utce e2it para sar.
726
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
+O+.3. ".ercicio Apac$eC y G>F@<D
Usted deber smuar ser un proveedor de servco de hospeda|e y confgurar o sguente a travs
de apache y vsftpd:
Una sto de red vrtua denomnado PPP.mi(dominio.org asocado a a dreccn IP
192.168.+O.n., donde n corresponde a tmo octeto de su dreccn IP y en este
e|ercco ser un nmero entre e 1 y e 254.
E domno vrtua debe poder ser admnstrado a travs de una cuenta de usuaro
accedendo por medo de una conexn FTP.
E usuaro deber estar en|auado a travs de FTP y tener acceso a as btcoras
generadas por e anftrn vrtua, pero sn permtr a usuaro que pueda borrar
accdentamente e drectoro que contene a dchas btcoras.
+O+.3.+. <rocedimientos
1) Modfque e archvo =etc=$osts y proceda a resover de manera oca a dreccn IP y e nombre
que tendr e servdor en a red 192.168.10.0, aadendo o sguente, donde n corresponde a
tmo octeto de su dreccn IP:
186@165@1$@n ???@9%--o9%n%o.or 9#%).9%--o9%n%o.or 9%--o9%n%o.or
186@165@1$.n +$'.9%--o9%n%o.or -ns.9%--o9%n%o.or
2) Proceda a crear e archvo de confguracn de dspostvo vrtua en e archvo
=etc=syscon&ig=netPorL(scripts=i&c&g(et$O-+ con e sguente contendo:
%&'()&*e$h/D4
(<4%%R*186@165@1$@n
,&0-4SH*699@699@699@$
3) Rence e servco de red de sstema y compruebe que haya evantado a nterfaz vrtua
et$O-+ que acaba de confgurar:
service netork restart
i"con"ig e$h/D4
4) Genere e rbo de drectoros necesaro e|ecutando o sguente:
mkdir !m 1799 /var//mi!dominio
mkdir !m ?779 /var//mi!dominio/public.html
mkdir !m $799 /var//mi!dominio/\etcBlogsBmail]
5) Genera a cuenta de usuaro que ser utzada para admnstrar e anftrn vrtua:
useradd !s /sbin/nologin !d 8*#r8???89%--o9%n%o mi!dominio
usermod !c n4dministrador de mi!dominioo mi!dominio
passd mi!dominio
6) Confgure os permsos apropados a =var=PPP=mi(dominio y su contendo, e|ecutando o
sguente:
727
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
chon root#apache /var//mi!dominio
chon 9%--o9%n%o#apache /var//mi!dominio/public.html
chon 9%--o9%n%o#apache /var//mi!dominio/etc
chon mi!dominio#mi!dominio /var//mi!dominio/mail
chon mi!dominio#mi!dominio /var//mi!dominio/logs
chcon !t httpd.sys.content.t /var//mi!dominio/public.html
ln !s" @@/@@/@@/log/httpd/mi!dominio!error.log /var//mi!dominio/logs/error.log
ln !s" @@/@@/@@/log/httpd/mi!dominio!access.log /var//mi!dominio/logs/access.log
7) Confgure apache para poder acceder haca este sto de red vrtua hacendo uso de archvo
ocazado en a ruta =etc=$ttpd=con&.d=virtuales.con& con e sguente contendo:
,ame'irtual2ost 186@165@1$@n
a'irtual2ost 186@165@1$@nL
%ocumentRoot /var//mi!dominio/public.html
Server,ame @9%--o9%n%o.or
Server4lias 9%--o9%n%o.or
Server4dmin ebmasterX9%--o9%n%o.or
&rror1og logs/mi!dominio!error.log
)ustom1og logs/mi!dominio!access.log combined
a/'irtual2ostL
8) Rence apache y haga comprobacones y dagnstco s fuese necesaro.
service httpd restart
+O+.3.*. Compro!aciones
Rence Apache y pruebe pubcar un documento HTML utzando cuaquer herramenta para
pubcacn de red, como puede ser Buefsh, Komposer, Dreamweaver, Frontpage o cuaquer
edtor HTML y pubcando a travs de FTP, hacendo uso de a cuenta FTP de mi(dominio. Vsuace
desde e navegador que prefera e anftrn vrtua que se confgur.
S desea hacer todo desde modo termna, utce e sguente procedmento.
1. Acceda a sstema como usuaro oca (&ulano) o ben traba|e desde su escrtoro.
2. Genere un documento HTML denomnado inde2.$tml utzando e edtor de texto que prefera
con e sguente contendo:
ahtmlL
aheadL
atitleL:ienvenido a ???.9%--o9%n%o.ora/titleL
a/headL
abodyL
ah1L:ienvenido a ???.9%--o9%n%o.ora/h1L
apLciexclV2ola mundoha/pL
a/bodyL
a/htmlL
3. Pubque como e usuaro mi(dominio e documento anteror a travs de FTP, ya sea con
File8illa (s e servdor requere utzar TLS) o ben utzando e mandato ftp (s prescnde de
TLS):
728
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
"tp +$'.9%--o9%n%o.or
)onnected to amdk6 (186@165@1@1)@
66$ :ienvenido al servidor =0< de 4lcance 1ibre@
,ame (+$'.9%--o9%n%o.or#"ulano)#9%--o9%n%o
??1 <lease speci"y the passord@
<assord#
6?$ 1ogin success"ul@ 2ave "un@
Remote system type is >,(X@
>sing binary mode to trans"er "iles@
"tpL&- '.!)%&_h$9)
"tpL'.$ %n-eC.h$9)
"tpL!ye
4. Fnamente vsuace a pgna PPP.mi(dominio.org prncpa utzando enks.
elinks http#//???.9%--o9%n%o.or/
729
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
+O+.4. ".ercicio- Cuotas de discoF Apac$eF G>F@<D y D)>
Usted deber smuar ser un proveedor de servco de hospeda|e y confgurar o sguente a travs
de apache, bnd y vsftpd:
Deber confgurar a zona de reenvo para e DNS que se har cargo de resover os sub-
domnos www, dns, ma, y ftp de domno que se e especfque.
Un sto de red vrtua denomnado PPP.su(nom!re.com con aas su(
nom!re.com asocado a a dreccn IP 192.168.*O.n, donde n corresponde a tmo
octeto de su dreccn IP y en este e|ercco ser un nmero entre e 1 y e 254.
E domno vrtua debe poder ser admnstrado a travs de una cuenta de usuaro
accedendo por medo de una conexn FTP.
E usuaro deber estar en|auado a travs de FTP y tener acceso a as btcoras
generadas por e anftrn vrtua, pero sn permtr que e usuaro pueda borrar
accdentamente e drectoro que contene a dchas btcoras.
E usuaro deber tener asgnada una cuota de dsco de 300 MB.
+O+.4.+. <rocedimientos
1) Aada e sguente contendo en e archvo =etc=$osts a resoucn oca de nombre de domno
de anftrn vrtua asocado a a dreccn IP defnda para e msmo, donde n corresponde a
tmo octeto de su dreccn IP:
186@165@6$@n ???.s.-no9!re.&o9 9#%).s.-no9!re.&o9 +$'.s.-no9!re.&o9
186@165@6$@n -ns.s.-no9!re.&o9 s.-no9!re.&o9
2) Proceda a crear e archvo de confguracn ocazado en a ruta =etc=syscon&ig=netPorL(
scripts=i&c&g(et$O-* para e dspostvo et$O-* utzando e sguente contendo, aadendo o
sguente, donde n corresponde a tmo octeto de su dreccn IP:
%&'()&*e$h/D2
(<4%%R*186@165@6$@n
,&0-4SH*699@699@699@$
3) Rence e servco de red de sstema y compruebe que haya evantado a nterfaz vrtua
et$O-* que acaba de confgurar:
service netork restart
i"con"ig e$h/D2
4) Dentro de drectoro =var=named=c$root=var=named, genere e archvo su(
nom!re.com.zone, que servr para resover a zona de reenvo para e domno su(
nom!re.com con os sub-domnos www, dns, ma, y ftp:
730
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
F001 564$$
X (, S/4 &.rso@#)&#n&e)%!re.or@ usuario@9#%).&o9@ (
2//</8/3/4 V nbmero de serie
655$$ V tiempo re"resco
76$$ V tiempo entre reintentos
6$45$$ V expiraciRn
564$$ V tiempo total de vida
)
X (, ,S &.rso@alcancelibre@org@
X (, -X 1$ mail
X (, 0X0 nv*sp"1 a mx !allo
X (, 4 186@165@6$@n
(, 4 186@165@6$@n
mail (, 4 186@165@6$@n
dns (, 4 186@165@6$@n
"tp (, 4 186@165@6$@n
5) Modfque =var=named=c$root=etc=named.con& y aada a zona correspondente:
Cone ns.-no9!re.&o9e \
type masterV
"ile ns.-no9!re.&o9.:oneeV
allo!update \ noneV ]V
]V
6) Cambe a pertenenca de archvo de zona a usuaro named y os contextos de SELnux de
usuaro de sstema (systemQu), ro de ob|eto (o!.ectQr) y tpo zona de servco named
(namedQ8oneQt), e|ecutando o sguente:
cd/var/named/chroot/var/named/
chon named@named s.-no9!re.&o9@Cone
chcon !u system.u !r obMect.r !t named.Cone.t s.-no9!re.&o9@Cone
cd !
7) Rence e servco de servdor de nombres e|ecutando o sguente:
service named restart
8) Reace prueba de depuracn y verfque que a zona haya cargado con nmero de sere:
tail !5$ /var/log/messages Zgrep named
9) Compruebe que e domno resueve correctamente:
host s.-no9!re.&o9 42=././.4
dig X42=././.4 s.-no9!re.&o9
dig X42=././.4 s.-no9!re.&o9 -X
10) S e domno resueve correctamente, proceda a colocar como D)> primario a su propo
servdor en e archvo =etc=resolv.con&, smpemente defnendo ste como e prmer regstro
nameserver de este archvo, |usto deba|o de os regstros searc$:
731
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
V <arte superior del archivo /etc/resolv@con"
search #)&#n&e)%!re.or
search s.-no9!re.&o9
n#9eser*er 42=././.4
11) Genere e rbo de drectoros necesaro para e anftrn vrtua a travs de Apache utzando
os sguentes mandatos:
mkdir !m 1799 /var//su!nombre
mkdir !m ?799 /var//su!nombre/public.html
mkdir !m $799 /var//su!nombre/\logsBetcBmail]
chcon !t httpd.sys.content.t /var//su!nombre/public.html
12) Genere a cuenta de usuaro que ser utzada para admnstrar e anftrn vrtua:
useradd !s /sbin/nologin !d /var//su!nombre su!nombre
usermod !c nSu ,ombre )ompletoo su!nombre
passd su!nombre
13) Confgure os permsos apropados a =var=PPP=su(nom!re y os drectoros en su nteror
utzando lo siguientes mandatos:
chon root#apache /var//su!nombre
chon s.-no9!re#apache /var//su!nombre/public.html
chon s.-no9!re#apache /var//su!nombre/etc
chon s.-no9!re#s.-no9!re /var//su!nombre/mail
chon s.-no9!re#s.-no9!re /var//su!nombre/logs
ln !s" @@/@@/@@/log/httpd/su!nombre!error.log /var//su!nombre/logs/error.log
14) Confgure Apache para poder acceder haca este sto de red vrtua hacendo uso de archvo
ocazado en a ruta =etc=$ttpd=con&.d=virtuales.con& con e sguente contendo:
,ame'irtual2ost 186@165@6$@n
a'irtual2ost 186@165@6$@nL
%ocumentRoot /var//su!nombre/public.html
Server,ame ???@s.-no9!re.&o9
Server4lias s.-no9!re.&o9
Server4dmin ebmasterXs.-no9!re.&o9
&rror1og logs/error.log
)ustom1og logs/access.log combined
a/'irtual2ostL
15) Rence e servco de httpd (apache) y haga as comprobacones, a depuracn y e
dagnstco s fuese as necesaro.:
service httpd restart
16) Confgure os domnos vrtuaes para que Postfx pueda recbr correo para os msmos
aadendo su(nom!re.com en a archvo =etc=post&i2=virtual con e sguente contendo:
s.-no9!re.&o9 s.-no9!re.&o9
17) Genere a cuenta de correo vrtua denomnada webmaster@su(nom!re.com como aas de a
cuenta oca su-nombre, aadendo tambn a archvo =etc=post&i2=virtual o sguente:
732
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
ebmasterXs.-no9!re.&o9 su!nombre
18) A termnar, y a fn de que e usuaro vrtua sea reconocdo por e servco de Sendma, se
deber convertr e archvo =etc=post&i2=virtual en =etc=post&i2=virtual.d! e.ecutando o
sguente:
postmap /etc/post"ix/virtual
19)A fn de reescrbr como webmaster@su(nom!re.com a correo emtdo desde a cuenta oca
su(nom!re, modfcando e archvo =etc=post&i2=senderQcanonical de sguente modo:
su!nombre ebmasterXs.-no9!re.&o9
20) A termnar, y a fn de que e correo de usuaro rea se reescrba como a cuenta de correo de
usuaro vrtua, se deber convertr e archvo =etc=post&i2=senderQcanonical en
=etc=post&i2=senderQcanonical.d! e.ecutando o sguente:
postmap /etc/post"ix/sender.canonical
21) Rence e servco de postfx:
service post"ix restart
22) E|ecutando ed#uota su(nom!re, asgne una cuota de 300 MB (307200 kb) a usuaro su(
nom!re:
%isk Juotas "or user su!nombre (uid 9$5)#
=ilesystem blocks so"t hard inodes so"t hard
/dev/hda6 $ $ $ $ $ $
/dev/hda? 64 $ 3/=2// 1$ $ $
+O+.4.*. Compro!aciones
Rence Apache y pruebe pubcar un documento HTML utzando cuaquer herramenta para
pubcacn de red, como puede ser Buefsh, Komposer, Dreamweaver, Frontpage o cuaquer
edtor HTML y pubcando a travs de FTP, hacendo uso de a cuenta FTP de su(nom!re en e URL
&tp-==su(nom!reasu(nom!re.com=pu!licQ$tml=
Vsuace desde e navegador e anftrn vrtua que se confgur.
Pruebe envar correo a a cuenta vrtua Pe!masterasu(nom!re.com y eer dcho correo a
travs de POP3 o IMAP desde a cuenta de su(nom!re.
S desea hacer todo desde modo termna, utce e sguente procedmento.
1. Acceda a sstema como usuaro oca (&ulano) o ben traba|e desde su escrtoro.
2. Genere un documento HTML denomnado inde2.$tml utzando e edtor de texto que prefera
con e sguente contendo:
733
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
ahtmlL
aheadL
atitleL:ienvenido a ???.s.-no9!re.&o9a/titleL
a/headL
abodyL
ah1L:ienvenido a ???.s.-no9!re.&o9a/h1L
apLciexclV2ola mundoha/pL
a/bodyL
a/htmlL
3. Pubque como e usuaro #u&no*bre e documento anteror utzando Feza, s e servdor
FTP requere utzar TLS, o ben utzando e mandato &tp, s e servdor FTP prescnde de
utzar TLS:
"tp +$'.s.-no9!re.&o9
)onnected to amdk6 (186@165@1@1)@
66$ :ienvenido al servidor =0< de 4lcance 1ibre@
,ame (+$'.s.-no9!re.&o9#"ulano)#s.-no9!re
??1 <lease speci"y the passord@
<assord#
6?$ 1ogin success"ul@ 2ave "un@
Remote system type is >,(X@
>sing binary mode to trans"er "iles@
"tpL&- '.!)%&_h$9)
"tpL'.$ %n-eC.h$9)
"tpL!ye
4. Fnamente, vsuace a pgna PPP.su(nom!re.com prncpa de utzando e navegador
enks.
e)%n7s h$$'D88???.s.-no9!re.&o9/
5. Utce mutt y enve un mensa|e a usuaro Pe!masterasu(nom!re.com.
echo n-ensaMe de prueba+ Z mutt !s n-ensaMe de prueba+ ?e!9#s$erJs.-
no9!re.&o9
6. Verfque a cuenta de correo de su(nom!re a travs de cual#uier cente de correo
eectrnco o ben e correo con nterfaz HTTP.
elinks http#//@su!nombre@com8?e!9#%)8
734
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
)otas
735
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
)otas
736
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
)otas
737
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
)otas
738