Prite!acK: Hace que e sstema de archvos se comporte de manera smar a DF>. Sn preservar e
ordenamento a escrbr en e dsco, de modo que as consignaciones de cam!ios (commts) en
e regstro por daro puede ocurrr antes de a escrtura en e sstema de archvos. Este mtodo es
el m;s r;pido porque soo os metadatos se amacenan en e regstro por daro, pero puede hacer
que se muestren datos ve|os despus de una faa de sstema o nterrupcn de energa.
Write!acK solo se recomienda si se dispone de un sistema de respaldo de energa
con&ia!le, o ben s en a partcn confgurada con este formato de regstro por daro $ay
cam!ios poco &recuentes en los datos (como e caso de =!oot, =, =usr, =opt, =usr=local y en
agunos escenaros para =var=PPP), o ben partcones para temporaes o caches (como =tmp,
=var=tmp y =var=cac$e. Poco recomendado para partcones donde hay cambos frecuentes en os
datos amacenados, como ocurre con =$ome o =var, =var=li! o =var=spool.
En e sguente e|empo se confgurar en e archvo =etc=&sta! de un servdor E@@< y !ase de
datos a partcn =var=PPP con a opcn data con e vaor Prite!acK y a partcn =var=li! con
a opcn data y e vaor .ournal:
039%0)/var/www /var/www ext? de!aultsB5424=*r#2e!46: 1 5
039%0)/var/lib /var/lib ext? de!aultsB5424=Korn4) 1 5
Antes de desmontar y vover a montar o rencar e sstema, hay que convertr os regstros de
daros a Prite!acK o ben .ournal, dependendo e caso. Para ta fn se utza e mandato
tune*&s de sguente modo, en e caso donde se desea cambar a modo Prite!acK e regstro
por daro de a partcn AB"R=var=PPP:
tune5!s o Mournal-data-writeback 039%0)/var/www
En e caso donde se desea cambar a modo .ournal e regstro por daro de a partcn
AB"R=var=li!, se utza o sguente:
tune5!s o Mournal-data 039%0)/var/lib
Para revertr e cambo y vover a utzar e modo ordered, se puede utzar e mandato tune*&s
con a opcn (o .ournalQdata.
Para apcar os cambos, sn correr e resgo de rencar con errores de sntaxs en e archvo
=etc=&sta! que mpedran montar as partcones confguradas, se puede utzar e mandato
umount para desmontar a partcn a modfcar, y posterormente e mandato mount para vover
a desmontaras. E|empos:
umount /var/www
umount /var/lib
mount /var/www
mount /var/lib
Utzar e mandato mount con a opcn (o remount sempre devover un error de opcn
ncorrecta. Esta es a razn por a cua se desmontan y montan as partcones para cambar e tpo
de regstro por daro de as partcones.
111
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S o anteror devueve e smboo de sstema sn errores, sgnfca que as opcones se aplicaron
correctamente y que e sstema puede ser rencado con toda segurdad en e momento que se
consdere apropado.
Para regresar todo a como estaba orgnamente, se edta e archvo =etc=&sta! y se qutando as
opcones dataRvalor prevamente confguradas:
039%0)/var/www /var/www ext? de!aults 1 5
039%0)/var/lib /var/lib ext? de!aults 1 5
Se desmontan as partcones:
umount /var/lib
umount /var/www
Y con e mandato tune*&s se defne nuevamente e formato ordered:
tune5!s o Mournal-data-ordered 039%0)/var/lib
tune5!s o Mournal-data-ordered 039%0)/var/www
Y fnamente se vueven a montar as partcones:
mount /var/lib
mount /var/www
S o anteror devueve e smboo de sstema sn errores, sgnfca que as opcones &ueron
revertidas y aplicadas correctamente y que e sstema puede ser rencado con toda
segurdad en e momento que se consdere apropado.
+O.*.3. Convirtiendo particiones de "2t3 a "2t4.
En Cent0> 6 o 'ed Eat "nterprise inu2 6, e formato predetermnado en as partcones es
Ext4, por o cua es nnecesaro convertr de Ext3 a Ext4.
Ext4 ha demostrado ser un sstema de archvos con mucho me|or desempeo que su predecesor,
Ext3. S uno soo necesta hacer pruebas, es posbe montar una partcn Ext3 como Ext4
modfcando e archvo =etc=&sta!, pero carecer de muchas funcones propas de Ext4.
Instaando os paquetes correspondentes, CentOS 5.5, y versones posterores, ncuye e soporte
necesaro para convertr a formato Ext4 as partcones Ext3, preservando os datos orgnaes en
e sstema de archvos, con a nca restrccn de que |ams se deber convertr a Ext4 as
partcones que correspondan =!oot y =, debdo a que en CentOS 5 y Red Hat Enterprse Lnux 5 a
versn de Grub, e gestor de arranque, carece de soporte para ncar desde partcones Ext4.
"s muy importante reali8ar un respaldo de in&ormacin importante antes de procederL
por si acaso algo saliese mal.. Nuevamente, s se utza Cent0> 5 o 'ed Eat "nterprise
inu2 5, |ams se deben convertr a Ext4 as partcones que correspondan a =!oot o =.
En Cent0> 5 o 'ed Eat "nterprise inu2 5, para poder utzar e formato Ext4 en cuaquer otra
partcn, se requere que e sstema tenga nstaado e paquete e4&sprogs:
112
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
yum y install e>!sprogs
Este paquete ncuye as herramentas necesaras para gestonar partcones Ext4, como son
e4&scK, e4la!el, mKe4&s, mK&s.e2t4 y dumpe4&s, entre otras herramentas.
A partr de este punto, y con e ob|etvo de reazar pruebas, soo ser necesaro edtar e archvo
=etc=&sta! y modfcar a confguracn de cuaquer partcn (e2cepto las #ue correspondan
a =!oot y =) y cambar e2t3 por e2t4. Hasta aqu, es posbe revertr e cambo vovendo a edtar
e archvo =etc=&sta! y vovendo a defnr e2t3 como formato de a partcn modfcada.
Para convertr una partcn por competo a Ext4, lo cual $ara #ue de modo irreversi!le
.am;s se pueda volver a montar como "2t3, debe desmontarse prmero a partcn a
convertr y posterormente utzar e mandato tune4fs con as opcones (0
e2tentsLuninitQ!gLdirQinde2. En e sguente e|empo se apca e mandato tune4&s a a partcn
=dev=sda7, que correspondera a =tmp, para convertra a Ext4.
umount /tmp
tune>!s . extentsBuninit-bgBdir-index /dev/sda6
Lo anteror soo requere utzar en seguda e mandato &scK.e2t4 para verfcar a partcn, y
competar as os cambos necesaros en e sstema de archvos. E mandato &scK.e2t4 debe
utzarse con as opcones (&yD (forzar verfcacn, contestar s a todas as modfcacones
necesaras y optmzar drectoros).
!sck@ext> !y$ /dev/sda6
S a partcn est en uso, como sera e caso de as correspondentes a =usr y/o =var, ser
necesaro hacer o anteror desde un dsco vvo de Fedora, versn 13 en adeante. E modo de
rescate de dsco de nstaacn de CentOS, versn 5.5 en adeante, ncuye tambn soporte
bsco para Ext4, aunque carece de soporte para convertr partcones de Ext3 a Ext4 a travs de
mandato tune*&s, y carece de mandato tune4&s. Por tanto, e ntrprete de mandatos de modo
de rescate de dsco de nstaacn de CentOS 5.5 soo permtr verfcar y reparar partcones Ext4
a travs de mandato &scK.e2t4.
En e archvo =etc=&sta! se reempaza AB"R=tmp por e nombre rea de dspostvo, y e2t3 por
e2t4.
039%0)/ / ext? de!aults 1 1
039%0)/boot /boot ext? de!aults 1 5
+5e"+s54I +2/. e;2J 5e<4)2s - ,
tmp!s /dev/shm tmp!s de!aults # #
devpts /dev/pts devpts gid)8Bmode)65# # #
sys!s /sys sys!s de!aults # #
proc /proc proc de!aults # #
039%0)S23;hda? swap swap de!aults # #
Un punto mportante a consderar es que Ext4 utza ,,%D (Unversay Unque Identfer, o
Identfcador Unversamente nco) en ugar de etquetas. E ,,%D se puede determnar utzando
e mandato !lKid de sguente modo:
blkid /dev/sda6
113
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Lo cua devovera ago smar a o sguente:
/dev/sda6" 039%0)*/tmp* =='$)*5?4e8?5b58#c>a4#46a??aecc7618678* /:;%)*ext>*
Con esta nformacn, e archvo =etc=&sta! quedara de sguente modo:
039%0)/ / ext? de!aults 1 1
039%0)/boot /boot ext? de!aults 1 5
UULD=,38e53,!-,5$6-J48$-8I43-34e66%I-5I%5 +2/. e;2J 5e<4)2s - ,
tmp!s /dev/shm tmp!s de!aults # #
devpts /dev/pts devpts gid)8Bmode)65# # #
sys!s /sys sys!s de!aults # #
proc /proc proc de!aults # #
039%0)S23;hda? swap swap de!aults # #
+O.*.4. "liminando el registro por diario M.ournalN de "2t4.
+O.*.4.+. Advertencias.
Este procedmento apca excusvamente a as partcones con formato Ext4. "l &ormato "2t3
carece de soporte para &uncionar sin registro por diario.
Antes de comenzar, es mportante acarar que emnar por competo e regstro por daro mpca
perder una mportante funcn que garantza a ntegrdad de os datos de una partcn en caso de
una nterrupcn de energa o una faa genera de sstema. Soo se recomenda emnar e regstro
por daro en os casos donde se dspone de un buen respado de energa (utra-porttes, por
e|empo), un sstema operatvo estabe y/o se tenen partcones asgnadas a drectoros donde a
nformacn es poco reevante (como /tmp, /var/tmp o /var/cache). Este procedmento est
absoutamente contrandcado en servdores o donde se requera una garanta absouta de
ntegrdad de datos.
Hay que consderar adems que a me|ora obtenda puede ser apenas perceptbe y muy
probabemente soo amerte emnar e regstro por daro en partcones en undades de estado
sdo (SSD).
"s importante tam!in reali8ar un respaldo de in&ormacin importante antes de
procederL por si acaso algo saliese mal..
+O.*.4.*. <rocedimientos.
Asumendo que se dspone de una partcn /dev/sda7, que en e e|empo corresponde a =tmp, que
fue prevamente convertda a Ext4, utzando e mtodo descrto en este msmo documento, o
formateada en Ext4, se debe desmontar a partcn:
umount /tmp
Para emnar e regstro por daro de a partcn =dev=sda7 en Cent0> 5 o 'ed Eat "nterprise
inu2 5, se requere e|ecutar e mandato tune4&s, de a sguente forma:
tune>!s . Whas-Mournal /dev/sda6
114
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Para emnar e regstro por daro de a partcn =dev=sda7 en Cent0> 6 o 'ed Eat "nterprise
inu2 6, se requere e|ecutar e mandato tune*&s, de a sguente forma:
tune5!s . Whas-Mournal /dev/sda6
E smboo X (acento crcunfe|o) sgnfca que se emna una opcn. En este caso a opcn
emnada fue $asQ.ournal, que es as responsabe de regstro por daro.
sn mportar a versn de sstema operatvo, o anteror requere utzar en seguda e mandato
&scK, con as opcones (pD& (reparar automtcamente o que sea necesaro y que prescnda de
nteraccn humana, optmzar re-ordenando drectoros, y forzar verfcacn) a fn de reali8ar
correcciones importantes e indispensa!les en e sstema de archvos.
!sck@ext> p$! /dev/sda6
Emnar e regstro por daro de una partcn ext4 hace que rremedabemente se perda e
,,%D, por o cua nvarabemente hay que edtar e archvo =etc=&sta! y estabecer e nombre rea
de dspostvo en ugar de ,,%D:
039%0)/ / ext? de!aults 1 1
039%0)/boot /boot ext? de!aults 1 5
+5e"+s54I +2/. e;2J 5e<4)2s - ,
tmp!s /dev/shm tmp!s de!aults # #
devpts /dev/pts devpts gid)8Bmode)65# # #
sys!s /sys sys!s de!aults # #
proc /proc proc de!aults # #
039%0)S23;hda? swap swap de!aults # #
Hecho o anteror, se habr competado e procedmento. Basta con vover a montar a partcn
para verfcar que todo funcone correctamente. La me|ora ser apenas perceptbe, pero brndar
e mxmo rendmento posbe para e sstema de archvos Ext4, superando ncuso e desempeo
en cuanto a veocdad de Ext2.
En un equpo con una partcn =tmp con regstro por daro, y a msma partcn =tmp sn regstro
por daro, a escritura de 1 GB de nformacn demor o sguente:
/tmp con regstro por daro real #m7@676s
user #m#@>>>s
sys #m>@>>1s
/tmp sin regstro por daro real #m4@764s
user #m#@>46s
sys #m?@411s
Como pude verse, a dferenca es muy poca, pero sgnfcatva.
En e dado caso que se quera vover a utzar e regstro por daro, soo basta con vover a ncar
con e dsco vvo, abrr una termna y e|ecutar o sguente.
115
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
su l
umount /home
tune5!s . has-Mournal /dev/sda6
!sck p$! /dev/sda6
mount /home
116
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
++. Cmo con&igurar y utili8ar >udo
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. 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.
++.+. %ntroduccin.
Sudo es una herramenta de sstema que permte a os usuaros reazar a e|ecucn de mandatos
como superusuaro u otro usuaro de acuerdo a como se especfque en e archvo =etc=sudoers,
donde se determna quen est autorzado. Los nmeros de dentdad de usuaro y de grupo (UID y
GID) reaes y efectvas se estabecen para guaar a aqueas de usuaro ob|etvo como est
especfcado en e archvo =etc=passPd.
De modo predetermnado sudo requere que os usuaros se autentquen as msmos con su propa
cave de acceso (nunca la clave de acceso de root). Una vez que e usuaro se ha autentcado,
e usuaro podr utzar nuevamente sudo sn necesdad de vover a autentcarse durante 5
mnutos, savo que se especfque o contraro en e archvo =etc=sudoers. S e usuaro e|ecuta e
mandato sudo (v podr refrescar ste perodo de tempo sn necesdad de tener que e|ecutar un
mandato, en cuyo caso contraro exprar esta autentcacn y ser necesaro vover a reazar
sta.
S un usuaro no stado en e archvo =etc=sudoers. trata de e|ecutar un mandato a travs de
sudo, se regstra a actvdad en a btcora de sstema (a travs de syslogd) y se enva un
mensa|e de correo eectrnco a admnstrador de sstema (root).
++.+.+. Eistoria.
Sudo fue ncamente concebdo en 1980 por Bob Coggesha y Cff Spencer de departamento de
cenca computacona en SUNY (State Unversty of New York o Unversdad Estata de Nueva
York), en Buffao.
En 1985 se pubc e grupo de notcas net.sources una versn me|orada acredtada a Ph
Betche, Cff Spencer, Gretchen Phps, |ohn LoVerso y Don Gworek. Garth Snyder pubc otra
versn me|orada en e verano de 1986 y durante os sguentes cnco aos fue mantendo con a
coaboracn de muchas personas, ncuyendo Bob Coggesha, Bob Manchek, y Trent Hen.
En 1991 Dave Heb y |eff Neusma escrberon una nueva versn con un formato me|orado para e
archvo =etc=sudoers ba|o contrato con a frma consutora The Root Group, versn que
posterormente fue pubcada ba|o os trmnos de a Lcenca Pbca Genera de GNU (GNU/GPL).
Desde 1996 e proyecto es mantendo por Todd Mer con a coaboracn de Chrs |epeway y
Aaron Spanger.
117
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
++.*. "#uipamiento lgico necesario.
++.*.+. %nstalacin a travs de yum.
S se utza de CentOS 5, Red Hat Enterprse Lnux 5 o Whte Box Enterprse Lnux 5, o versones
posterores, se puede nstaar o necesaro utzando o sguente:
yum y install sudo
++.*.*. %nstalacin a travs de ,p*date
S se utza de Red Hat Enterprse Lnux 4, o versones posterores, se puede nstaar utzando o
sguente:
up5date i sudo
++.3. Arc$ivo =etc=sudoers
E archvo =etc=sudoers se edta con e mandato visudo, herramenta que a travs de v permte
reazar cambos y verfcar sntaxs y errores. S se trata de modfcar drectamente =etc=sudoers,
ste tene permsos de soo ectura.
La sntaxs bsca de una sta sera:
XXXX-3lias +.,9R%0'S/3 ) elemento1B elemento5B elemento?
La sntaxs bsca de una rega sera:
DusuarioB VgrupoB +.,9R%0'S/3E Dan!itriQnE ) (id de usuario a usar) mandatos
Se pueden defnr Aases y regas. Los aases permten defnr una sta de mandatos , una sta de
usuaros, un asta de anftrones o ben e|ecutar como otros usuaros.
++.3.+. CmndQAlias.
(mnd-3lias ,3+$3/.S1//;$ ) /sbin/service httpd restartB
/usr/bin/vim /etc/httpd/con!@d/variables@con!B
/usr/bin/vim /etc/php@ini
Lo anteror defne una sta de mandatos que podran utzarse para rencar e servco de httpd,
modfcar un archvo de confguracn en a ruta =etc=$ttpd=con&.d=varia!les.con& y modfcar e
archvo =etc=p$p.ini.
!ulano 300 ) ,3+$3/.S1//;$
Lo anteror defne que e usuaro fuano puede utzar os mandatos de a sta MANDATOSHTTPD
desde cuaquer anftrn.
118
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
++.3.*. ,serQAlias.
=ser-3lias =S=3R'.S1//; ) !ulanoB menganoB Cutano
Lo anteror defne una sta denomnada E@@<,>"'>, ntegrada por os usuaros fuano, mengano
y zutano.
=S=3R'.S1//; 300 ) /usr/bin/vim
La rega anteror defne que os usuaros que conforman a sta ,>,A'%0>E@@< pueden utzar e
mandato vm desde cuaquer anftrn.
++.3.3. EostQAlias.
1ost-3lias 1.S/S1//;$ ) 175@164@#@58B 175@164@#@56B 175@164@#@5?
Lo anteror defne que a sta E0>@>E@@<D est ntegrada por as 3 dreccones IP stadas
anterormente. S adems se aade a sguente rega:
=S=3R'.S1//;$ 1.S/S1//;$ ) 3$,'+1//;$
Lo anteror defne que os usuaros de a sta E@@<D,>"'> pueden utzar os mandatos stados
en AD:%)E@@<D soamente s estn conectados desde as dreccones IP stadas en
E0>@>E@@<D.
++.3.4. 'unasQAlias.
S por e|empo se qusera que os usuaros de a sta ,>,A'%0>E@@< puderan adems utzar
os mandatos s, rm, chmod, cp, mv, mkdr, touch y vm como e usuaros |uan, pedro y hugo, se
requere defnr una sta para estos mandatos y otra para os aases de usuaros aternos, y a
rega correspondente.
Runas-3lias (0'%+/%S1 ) MuanB pedroB hugo
(mnd-3lias ,3+$3/.S(0'%+/%S ) /bin/lsB
/bin/rmB
/bin/chmodB
/bin/cpB /bin/mvB
/bin/mkdirB
/bin/touchB
/usr/bin/vim
=S=3R'.S1//;$ 1.S/S1//;$ ) ((0'%+/%S1) ,3+$3/.S(0'%+/%S
Lo anteror permte a os usuaros defndos en ,>,A'%0>E@@<D (fuano, mengano y zutano),
utzar os mandatos defndos en :A)DA@0>C%")@"> (s, rm, chmod, cp, mv, mkdr, touch y
vm) dentfcndose como os usuaros defndos en C%")@">+ (|uan, pedro y hugo) soamente s
se reaza desde as dreccones IP stadas en E0>@>E@@<D (192.168.0.25, 192.168.0.26,
192.168.0.23).
++.4. Candados de seguridad.
Sudo ncuye varos candados de segurdad que mpden se puedan reazar tareas pegrosas.
119
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S se defne e mandato =usr=!in=vim en =etc=sudoers, se podr hacer uso de ste de os
sguentes modos:
F sudo /usr/bin/vim
F sudo vim
Sn embargo, no podr ser utzado as:
F cd /usr/bin
F sudo @/vim
S se defne e mandato =!in=ec$o, e usuaro podr utzaro de os sguentes modos:
F sudo /bin/echo *1ola*
F sudo echo *1ola*
Pero no podr utzaro de a sguente forma:
F sudo echo *1ola* R algo@txt
Para poder reazar a operacn anteror, tendra que utzar:
F sudo bash c *echo X1olaX R algo@txt*
Sudo permtr reazar una tarea sobre cuaquer archvo dentro de cuaquer drectoro an s no
tene permsos de acceso para ngresar a dcho drectoro sempre y cuando especfque la ruta
e2acta de dcho archvo.
F sudo chown named /var/named/dominio@Cone
Pero no podr utzaro as:
F sudo chown named /var/named/O@Cone
++.5. o #ue no se recomienda.
S se quere permtr a un usuaro utzar lo #ue sea, desde cuaquer anftrn, cmo cuaquer
usuaro de sstema y sin necesidad de autenticar, se puede smpemente defnr:
!ulano 300 ) (300) +.;3SS2$" 300
++.6. Facilitando la vida a travs de Y=.!as$Qpro&ile.
BASH (Bourne-Agan >$e) permte utzar varabes de entorno y aases defndas en
Y=.!as$Qpro&ile a ncar a sesn, sendo que e admnstrador utzar actvamente muchos
mandatos dversos, estos se pueden smpfcar a travs de aases que resuman stos. Por
e|empo, s se quere defnr que se utce sudo cada vez que se nvoque a mandato c$Kcon&ig, se
puede aadr o sguente a archvo Y=.!as$Qpro&ile:
120
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
alias chkcon!ig)*sudo /sbin/chkcon!ig*
Lo anteror permtr e|ecutar drectamente e mandato c$Kcon&ig sn necesdad de preceder ste
con e mandato sudo. A contnuacn s dversos aases que pueden ser de utdad en e archvo
Y=.!as$rc y que permtrn utzar mandatos dversos con sudo.
A @bashrc
A Iet the aliases and !unctions
i! D ! T/@bashrc EY then
@ T/@bashrc
!i
A =ser speci!ic environment and startup programs
;3/1)F;3/1"F1.,%/bin?+s!#n?+sr+s!#n
export ;3/1
unset =S%R+3,%
4)#4s 63:6on<#7="s5o +s!#n+63:6on<#7"
4)#4s ser"#6e="s5o +s!#n+ser"#6e"
4)#4s ro2e="s5o +s!#n+ro2e"
4)#4s 5e./o5="s5o +s!#n+5e./o5"
4)#4s #<6on<#7="s5o +s!#n+#<6on<#7"
4)#4s 63/o5="s5o +!#n+63/o5"
4)#4s 63o*n="s5o +!#n+63o*n"
4)#4s 637r.="s5o +!#n+637r."
4)#4s ser455="s5o +sr+s!#n+ser455"
4)#4s ser5e)="s5o +sr+s!#n+ser5e)"
4)#4s 7ro.455="s5o +sr+s!#n+7ro.455"
4)#4s 7ro.5e)="s5o +sr+s!#n+7ro.5e)"
4)#4s e5Co24="s5o +sr+s!#n+e5Co24"
4)#4s "#="s5o +sr+!#n+"#/"
4)#4s )ess="s5o +sr+!#n+)ess"
4)#4s 24#)="s5o +sr+!#n+24#)"
4)#4s y/="s5o +sr+!#n+y/"
4)#4s s4s).4ss*5,="s5o +sr+s!#n+s4s).4ss*5,"
4)#4s 32.4ss*5="s5o +sr+!#n+32.4ss*5"
4)#4s o.enss)="s5o +sr+!#n+o.enss)"
4)#4s sys2e/-6on<#7-.r#n2er="s5o +sr+s!#n+sys2e/-6on<#7-.r#n2er"
4)#4s sys2e/-6on<#7-ne2*or:="s5o +sr+s!#n+sys2e/-6on<#7-ne2*or:"
4)#4s sys2e/-6on<#7-5#s.)4y="s5o +sr+!#n+sys2e/-6on<#7-5#s.)4y"
Para que surtan efectos os cambos, hay que sar de a sesn y vover a ngresar a sstema con a
msma cuenta de usuaro, en cuyo archvo Y=.!as$Qpro&ile se aaderon estos aases.
121
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
+*. Cmo crear cuentas de usuario
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. 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.
+*.+. %ntroduccin
GNU/Lnux es un sstema operatvo con muchas caracterstcas y una de eas es que se dse
para ser utzado por mtpes usuaros. An cuando se tenga una PC con un nco usuaro, es
mportante recordar que no es convenente reazar e traba|o daro desde a cuenta de root,
msma que so debe utzarse para a admnstracn de sstema .
Una cuenta de usuario contene as restrccones necesaras para mpedr que se e|ecuten
mandatos que puedan daar e sstema 2programas troyanos como el Bliss2, se atere
accdentamente a confguracn de sstema, os servcos que traba|an en e trasfondo, os
permsos y ubcacn de os archvos y drectoros de sstema, etc.
+*.*. <rocedimientos
Generamente e paso que procede a una nstaacn de GNU/Lnux es a creacn de cuentas de
usuaro. Para eo exsten dstntos mtodos, todos sencos que permten crear una cuenta con su
propo drectoro de traba|o y os archvos necesaros.
Actuamente exsten recursos como e programa nstaador de Red Hat Lnux y programas que
funconan desde un entorno grfco, como es Lnuxconf y Webmn, as como recursos que
funconan en modo de texto o desde una ventana termna, como son os mandatos tradconaes,
useradd y pass)d, y agunos otros programas, como YaST y a versn correspondente de
Lnuxconf o Webmn.
+*.*.+. Creando una cuenta en el modo de te2to- useradd y passwd
Este procedmento puede reazarse de forma segura tanto fuera de X Wndow como desde una
ventana termna en e entorno grfco de que se dsponga. Fue e mtodo comnmente utzado
antes de a aparcn de programas como YaST y Lnuxconf. Sn embargo an resuta t para a
admnstracn de servdores, cuando no se tene nstaado X Wndow, no se tenen nstaados
YaST o Lnuxconf 2o las versiones de estos que se an instalado no trabajan correctamente2, o ben
se tenen mtacones o probemas para utzar un entorno grfco.
+*.*.+.+. o primero- el mandato useradd
E prmer paso para crear una nueva cuenta consste en utzar e mandato useradd de sguente
modo:
useradd nombre-del-usuario
122
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
E|empo:
useradd !ulano
+*.*.+.*. o segundo- el mandato passwd
E paso sguente despus de crear a nueva cuenta con useradd es especfcar una contrasea
para e usuaro. Determne una que e resute fc de recordar, que mezce nmeros, mayscuas y
mnscuas y que, preferentemente, no contenga paabras que se encontraran fcmente en e
dcconaro. Exsten otras recomendacones, por o que es convenente eer, antes de contnuar, os
comentaros fnaes acerca de a segurdad ncudos en este msmo artcuo.
Aunque e sstema sempre tratar de prevenro cuando se esco|a una mala contrasea, ste no e
mpedr que o haga. Especfcar una nueva contrasea para un usuaro, o ben cambar a
exstente, se puede reazar utzando e mandato passwd de sguente modo:
passwd nombre-del-usuario
E|empo:
passwd !ulano
E sstema soctar entonces que proceda a escrbr a nueva contrasea para e usuaro y que
repta sta para confrmar. Por segurdad, e sstema no mostrar os caracteres teceados, por o
que debe hacero con cudado. S se consdera que ta vez se cometeron errores de teceado,
puede presonarse as veces que sean necesaras a teca <Backspace> o <Retroceso>. De
cuaquer forma e sstema e nformar s concde o no o teceado. S todo sa ben recbr
como respuesta de sstema code 0. S en cambo recbe code 1, sgnfcar que deber repetr e
procedmento, en vrtud de haberse producdo un error.
Este procedmento tambn puede utzarse para cambar una contrasea exstente.
+*.*.+.3. 0pciones avan8adas
En muchos casos as opcones pueden no ser necesaras, pero s se est admnstrando un servdor
o estacn de traba|o, o ben se es un usuaro un poco ms expermentado, y se quere crear una
cuenta con mayores o menores restrccones, atrbutos y/o permsos, pueden utzarse as
sguentes opcones de useradd:
-c comment
Se utza para especfcar e archvo de comentaro de campo para a nueva cuenta.
-d home dr
Se utza para estabecer e drectoro de traba|o de usuaro. Es convenente, a fn de tener un sstema
ben organzado, que este se ocace dentro de drectoro +ome.
-e expre date
Se utza para estabecer a fecha de expracn de una cuenta de usuaro. sta debe ngresarse en e
sguente formato: AAAA-MM-DD.
-g nta group
Se utza para estabecer e grupo nca a que pertenecer e usuaro. De forma predetermnada se
estabece como nco grupo 1. Nota: e grupo asgnado debe exstr.
123
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
-G group,|...|
Se utza para estabecer grupos adconaes a os que pertenecer e usuaro. stos deben separarse
utzando una coma y sn espacos. Lo anteror es muy convenente cuando se desea que e usuaro
tenga acceso a determnados recursos de sstema, como acceso a a undad de dsquetes,
admnstracn de cuentas PPP y POP. Nota: os grupos asgnado deben de exstr.
-m
Se utza para especfcar que e drectoro de traba|o de usuaro debe ser creado s acaso este no
exstese, y se coparn dentro de ste os archvos especfcados en +etc+s(el.
-s she
Se utza para estabecer e ntrprete de mandatos que podr utzar e usuaro. De forma
predetermnada, en Red Hat Lnux y Fedora Core, se estabece bas como ntrpete de
mandatos predefndo.
-u ud
Se utza para estabecer e UID, es decr, a ID de usuaro. Este debe ser nco. De forma
predetermnada se estabece como UID e nmero mnmo mayor a 99 y mayor que e de otro usuaro
exstente. Cuando se crea una cuenta de usuaro por prmera vez, como ocurre en Red Hat Lnux y
Fedora Core generamente se asgnar 344 como UID de usuaro. Los UID entre 0 y 99 son
reservados para as cuentas de os servcos de sstema.
E|empo:
useradd u 8## d /home/!ulano I !loppyBpppusersBpopusers !ulano
Lo anteror crear una cuenta de usuaro amada fuano, que se encuentra ncuda en os
grupos foppy, pppusers y popusers, que tendr un UID=500; utzar Bash como ntrprete de
mandatos y tendr un drectoro de traba|o en /home/fuano.
Exsten ms opcones y comentaros adconaes para e mandato useradd, as que se encuentran
especfcadas en os manuaes. Para acceder a esta nformacn, utce e mandato man useradd
desde una ventana termna.
+*.*.*. "liminar una cuenta de usuario
En ocasones un admnstrador necestar emnar una o ms cuentas de usuaro. Este es un
procedmento prncpamente utzado en servdores y estacones de traba|o a os cuaes acceden
mtpes usuaros. Para ta fn nos vadremos de mandato userdel. La sntaxs bsca de este
mandato es a sguente:
userdel nombre-del-usuario
E|empo:
userdel !ulano
S se desea emnar tambn todos os archvos y drectoros subordnados contendos dentro de
drectoro de traba|o de usuaro a emnar, se deber agregar a opcn -r:
userdel r nombre-del-usuario
E|empo:
124
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
userdel r !ulano
+*.3. :ane.o de grupos
+*.3.+. Alta de grupos
groupadd grupoJuesea
+*.3.*. Alta de grupos de sistema
Un grupo de sstema es aque que tene un nmero de dentdad de grupo (GID) por deba|o de 500.
Reguarmente se asgna automtcamente e nmero de dentdad de grupo ms ba|o dsponbe.
groupadd r grupoJuesea
+*.3.3. Ba.a de grupos
groupdel grupoJuesea
+*.3.4. Asignacin de usuarios e2istentes a grupos e2istentes
gpasswd a usuarioJuesea grupoJuesea
+*.4. Comentarios &inales acerca de la seguridad
Cuando, en a mayora de os casos, un dencuente nformtco consgue nftrarse en un sstema
GNU/Lnux o Unx no es porque ste cuente con un hueco de segurdad, sno porque e ntruso
pudo vunerar aguna de as contraseas de as cuentas exstentes. S usted especfc durante e
proceso de nstaacn de Lnux una mala contrasea de root, ago muy comn entre usuaros
novcos, es atamente recomendado cambara.
Evte especfcar contraseas fces de advnar . Con esto nos refermos partcuarmente a
utzar contraseas que utcen paabras ncudas en cuaquer dcconaro de cuaquer
doma, datos reaconados con e usuaro o empresa, como son e regstro federa de
causantes (R.F.C.), fechas de nacmento, nmeros teefncos, seguro soca, nmeros de
cuentas de acadmcos o aumnos y nombres de mascotas, a paabra &inu56, nombres de
persona|es de cenca fccn, etc.
Evte escrbr as contraseas sobre medos fscos, prefera sempre mtarse a
memorzaras.
S necesta amacenar contraseas en un archvo, hgao utzando cfrado.
S se e dfcuta memorzar contraseas compe|as, utce entonces contraseas fces de
recordar, pero c;m!ielas peridicamente.
|ams proporcone una contrasea a personas o nsttucones que se a socten. Evte
proporconara en especa a personas que se dentfquen como membros de agn servco
de soporte o ventas. Este tmo caso o mencona con nfass a pgna de manua de
mandato passwd.
125
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Consderaremos como una buena contrasea aquea se compone de una combnacn de nmeros
y etras mayscuas y mnscuas y que contene a menos 8 caracteres. Tambn es posbe
utzar pares de paabras con puntuacn nsertada y frases o secuencas de paabras, o ben
acrnmos de stas.
Observar estas recomendacones, prncpamente en sstemas con acceso a redes ocaes y/o
pbcas como Internet, har que e sstema sea ms seguro.
126
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
+*.5. Apndice- Con&igurando valores prede&inidos para el
alta de cuentas de usuario
+*.5.+. Arc$ivo =etc=de&ault=useradd para de&inir varia!les utili8adas por
el mandato useradd
Como root, utce un edtor de texto sobre =etc=de&ault=useradd. Encontrar, nvarabemente, e
sguente contendo:
A useradd de!aults !ile
IR.=;)1##
1.,%)/home
'+3(/'&%)1
%X;'R%)
S1%00)/bin/bash
SH%0)/etc/skel
Puede cambar o vaores que consdere convenentes.
+*.5.+.+. Faria!le E0:"
E drectoro de nco de usuaro ser creado dentro de /home, de acuerdo a como se estpua en
"st;ndar de Jerar#ua de >istema de Arc$ivos o FHS (Fesystem Eerarchy >tandard). E
vaor de esta varabe puede ser cambado de acuerdo a as necesdades o preferencas de
admnstrador.
Por e|empo, en e caso de un sstema dedcado a servco de hospeda|e de stos de red vrtuaes a
travs de HTTPD, pudera preferrse utzar /var/www para este fn a modo de smpfcar tareas
para e admnstrador de sstema.
En otros casos, especfcamente en servdores de correo, donde se quere apcar una soa cuota
de disco genera para buzn de correo y carpetas de correo en e drectoro de nco, pudera
crearse un drectoro dentro de /var, como por e|empo /var/home o /var/users, de modo que a
apcar cuota de dsco sobre a partcn /var, sta nvoucrara tanto e buzn de entrada de
usuaro, ocazado en /var/spool/mail/usuario, como as carpetas de correo en e drectoro de
nco de usuaro, ocazados dentro de drectoro /var/home/usuario/mail/.
+*.5.+.*. Faria!le >E"
E ntrprete de mandatos a utzar para as nuevas cuentas que sean creadas en adeante se
defne a travs de a varabe >E". De modo predefndo e sstema asgna /bin/bash (BASH o
Bourne Agan >$e) como ntrprete de mandatos; sn embargo o certo es que s e sstema se
utzar como servdor, o ms convenente sera asgnare de modo predefndo otro vaor.
E ms utzado es /sbin/nologin, e cua es un programa que de forma corts rechaza e ngreso
en e sstema (ogn). Muestra un mensa|e respecto a que a cuenta no est dsponbe (o ben o
que se defna en /etc/nologin.txt) y da sada. Se utza como reempazo de un ntrprete de
mandatos en cuentas que han sdo desactvadas o ben que no se quere accedan haca un
ntrprete de mandatos. Este programa regstra en a btcora de sstema todo ntento de acceso.
Para utzaro como vaor para a varabe SHELL, so hay que cambar >E"R=!in=!as$ por
>E"R=s!in=nologin.
127
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A useradd de!aults !ile
GROUP=100
1.,%)/home
'+3(/'&%)1
%X;'R%)
SEELL=+s!#n+no)o7#n
SH%0)/etc/skel
En adeante todo nuevo usuaro que sea dado de ata en e sstema con e mandato useradd sn
parmetro aguno, de modo predefndo no podr acceder a sstema a travs de ntrprete de
mandatos (she), es decr, acceso en termna oca o remotamente. Los usuaros con estas
caracterstcas podrn, sn embargo, utzar cuaquer otro servcos como FTP, correo o Samba sn
probema aguno.
Otros vaores para a varabe SHELL pueden ser:
=s!in=nologin, programa que de forma corts rechaza e ngreso en e sstema
(ogn).
=!in=&alse, programa que reaza sada nmedata ndcando faa. Es decr, que no
permte a reazacn de cosa aguna y adems con faa. Idea s se quere tener
cuentas de usuaro con acceso haca FTP, correo, Samba, etc., aunque sn permtr e
acceso haca un ntrprete de mandatos.
=dev=null, e dspostvo nuo que descarta todos os datos escrtos sobre ste y no
provee datos para cuaquer proceso que o ea. Idea para defnrse cuando se quere
utzar una cuenta que so tenga acceso a correo (SMTP, POP3, IMAP y/o cente de
correo con nterfaz HTTP).
=!in=!as$, ntrprete de mandatos desarroado por e proyecto GNU. Es e ntrprete
de mandatos predefndo en Lnux y Mac OS X (a partr de Tger).
=!in=s$, un enace smbco que apunta haca /bn/bash y ofrece una versn
smpfcada de Bash muy smar a Bourne She (sh).
=!in=tcs$, una versn me|orada de de mandatos de C (csh).
=!in=as$, un con de Bourne she (sh) que utza menos memora.
=!in=8s$, una versn me|orada de sh con funcones tes encontradas en Bash y
tcsh.
+*.5.*. Directorio =etc=sKel como molde para crear los directorios de
inicio de los usuarios
De modo predefndo as cuentas de usuaro de sstema utzarn como mode a drectoro
/etc/skel para crear e drectoro de nco de todos os usuaros de sstema. En sstemas basados
sobre Red Hat, reguarmente y como mnmo, e drectoro /etc/skel ncuye os sguentes
guones de nco:
@bash-logout @bash-pro!ile @bashrc @gtkrc
S, por e|empo, se desea que cada cuenta de usuaro ncuya un drectoro subordnado para
carpetas de correo y suscrpcn a stas a travs de servco de IMAP, se debe reazar e sguente
procedmento:
mkdir /etc/skel/mail/
touch /etc/skel/mail/9orradores
touch /etc/skel/mail/%nviados
touch /etc/skel/mail/;apelera
128
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Y ,fnamente, crear con el editor de te2to e archvo /etc/skel/.mailboxlist que srve para
regstrar as suscrpcones haca carpetas de correo que sern utzadas por e servco IMAP con
un servdor UW-IMAP, utzando e sguente contendo:
mail/9orradores
mail/%nviados
mail/;apelera
S se pretende utzar modo grfco en e sstema, de forma adcona se puede corregr un
probema con agunas versones de Frefox que generan un drectoro -/.moza con permsos de
acceso so para root, de modo ta que a aadro en /etc/ske se ncuya un drectoro -/.moza
con permsos de acceso para e usuaro a crear cada cuenta de usuaro.
mkdir /etc/skel/@moCilla
+*.6. Apndice- ".ercicio- Creando cuentas de usuario
+*.6.+. %ntroduccin
A fn de poder traba|ar con comoddad, se crearn agunos grupos y cuentas de usuaro con
dversas caracterstcas.
+*.6.*. <rocedimientos
1. Genere contendo predefndo para os drectoros de nco a fn de que e de cada usuaro
contenga os drectoro subordnados -/Desktop, -/Documents, -/ma y -/.moza:
ls a /etc/skel
mkdir /etc/skel/Z$esktopB$ocumentsBmailB@moCilla[
ls a /etc/skel
2. Genere, s no o ha hecho an como parte de os procedmentos de curso, a usuaro
denomnado fuano con derecho a ntrprete de mandatos, drectoro de nco =$ome=&ulano
y grupo prncpa fuano (vaores por defecto):
useradd s +!#n+!4s3 !ulano
passwd !ulano
3. Genere a usuaro denomnado mengano sn derecho a ntrprete de mandatos, asgnando e
drectoro de nco =$ome=mengano y grupo prncpa mengano (vaores por defecto):
useradd s +s!#n+no)o7#n mengano
passwd mengano
4. Genere e grupo denomnado desarroo:
groupadd desarrollo
5. Genere e grupo denomnado sstemas como grupo de sstema:
129
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
groupadd -r sistemas
6. Genere os drectoros subordnados =$ome=desarrollo y =$ome=sistemas= de sguente modo:
mkdir p /home/desarrollo
mkdir p /home/sistemas
7. Genere a usuaro denomnado perengano con derecho a ntrprete de mandatos, asgnando
e drectoro de nco /home/desarrollo/perengano, grupo prncpa de desarroo y grupo
adcona sstemas:
useradd s /sbin/nologin m d +3o/e+5es4rro))o+.eren74no -7 5es4rro))o I sistemas perengano
passwd perengano
8. Genere a usuaro denomnado zutano con derecho a ntrprete de mandatos, asgnando e
drectoro de nco /home/sistemas/zutano, grupo prncpa sstemas y grupo adcona de
desarroo:
useradd s /bin/bash m d /3o/e+s#s2e/4s+B24no -7 s#s2e/4s I desarrollo Cutano
passwd Cutano
9. Vsuace e contendo de os archvos =etc=group y =etc=passPd y compare y determne as
dferencas entre os grupos desarroo y sstemas y os usuaros fuano, mengano,
perengano y zutano.
cat /etc/group
cat /etc/passwd
130
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
+3. Breve leccin de mandatos !;sicos.
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.
+3.+. %ntroduccin.
Por favor siga los procedimientos al pie de la letra. En varos e|empos utzar e carcter -
(tde), que es una forma de abrevar e drectoro de nco de usuaro con e que se ha ngresado
a sstema.
+3.*. <rocedimientos.
Ingrese prmero como e usuaro root e nstae os sguentes paquetes:
yum y install man tar Cip unCip gCip bCip5 perl less
Cerre a sesn como root.
Ingrese nuevamente a sstema, esta vez como usuaro (fuano).
Una vez que ha ngresado a sstema, reace o sguente:
pwd
Lo anteror e mostrar a ruta actua donde se ocaza, en este caso su drectoro de nco. E
mandato pPd, por tanto, srve para mostrar a ruta de drectoro de traba|o actua (pat of
wor(ing directory).
Reace o sguente:
cd /usr/local
pwd
Lo anteror o cambar a drectoro =usr=local y e mostrar a ruta actua. E mandato cd, por
tanto, srve para cambar de drectoro de traba|o (cange directory).
Reace o sguente:
cd
pwd
131
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Lo anteror o regresar a drectoro de nco (-) y e mostrar que ahora se ocaza dentro de
ste.
Reace o sguente:
ls /usr/local
Lo anteror mostrar e contendo de drectoro =usr=local y adems e demostrar que es
nnecesaro cambarse a un drectoro en partcuar para ver su contendo. E mandato ls, por
tanto, srve para mostrar a sta de contendo de drectoros (list)
Reace o sguente:
ls
ls a
Lo anteror prmeramente mostrar que aparentemente no hay contendo en e drectoro de nco
(-); despus se mostrar o sguente y que en readad s hay contendo; os archvos y drectoros
de converten a ocutos a renombrares y poneres un punto a nco.
@bash-logout @bash-pro!ile @bashrc
Reace o sguente:
ls la
Lo anteror deber de mostrar todo e contendo de su drectoro de nco (-) y mostrar adems
os atrbutos y permsos:
drwxrxrx 5 !ulano !ulano >#76 ago 1? ##"16 @
drwxrxrx 56 root root 4175 ago 57 11"#7 @@
rwrr 1 !ulano !ulano 5> dic 11 5##? @bash-logout
rwrr 1 !ulano !ulano 171 dic 11 5##? @bash-pro!ile
rwrr 1 !ulano !ulano 15> dic 11 5##? @bashrc
Reace o sguente:
ls help
Lo anteror e mostrar a ayuda rpda de s. Puse smutneamente en su tecado os botones
<SHIFT> y <Re Pg> y uego puse smutneamente en su tecado os botones <SHIFT> y <Av
Pg>; sto har que se despace a pantaa permtendo eer toda a nformacn.
Puse e botn <ENTER> y reace o sguente:
man ls
Lo anteror e mostrar e manua en espao. Puse as tecas de <Av Pg> y <Reg Pg> para
avanzar en e manua. Puse a teca = y a contnuacn ngrese nmedatamente a paabra
drectoro y uego puse a teca <ENTER>:
132
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
"/directorio
Lo anteror e mostrar que se ha reazado una bsqueda y resatado de a paabra drectoro en
e manua de s. Para sar de manua de s, puse a teca #.
Reace o sguente para crear un nuevo drectoro:
mkdir eMemplos1
Reace o sguente para ntentar generar un subdrectoro denomnado uno dentro de drectoro
e|empos2 (e cua no exste ;n).
mkdir eMemplos5/uno/
Lo anteror deber devover un mensa|e de error como e sguente:
mkdir" no se puede crear el directorio \eMemplos5/uno]" +o existe el archivo o el
directorio
A fn de poder crear e subdrectoro uno dentro de drectoro e|empos2, es necesaro crear
prmero e|empos2. Sn embargo puede ndcare a mkdr que genere toda a ruta aadendo a
opcn -p (path):
mkdir p eMemplos5/uno
ls
ls eMemplos5
Lo anteror creo e drectoro e|empos2 |unto con e subdrectoro uno en su nteror y mostr
que fue creado e|empos2 y posterormente e contendo de e|empos2 para verfcar que
tambn fue creado uno.
Ahora coparemos agunos archvos para expermentar un poco dentro de esta carpeta utzando
e mandato cp:
cp /etc/!stab T/eMemplos1/
Luego vueva a utzar e mandato cp de este modo:
cp /etc/passwd T/eMemplos1/
Con os dos anterores procedmentos habr copado dos dstntos archvos (=etc=&sta! y
=etc=passPd) dentro de drectoro ejemplos7. Proceda entonces a |ugar con estos. Utce de
nuevo e mandato mKdir y genere una carpeta denomnada adicional dentro de drectoro de
e.emplos+.
mkdir T/eMemplos1/adicional
Ahora acceda haca e drectoro de ejemplos7 para contnuar. Reace o sguente:
133
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
cd T/eMemplos1/
Y ahora proceda a ver e contendo de esta carpeta. Utce e sguente mandato:
ls
Observar en a pantaa ago como esto:
D!ulanoSlocalhost eMemplos1EF
adicional !stab passwd
D!ulanoSlocalhost eMemplos1EF
Ahora est vsuazando os archvos &sta! y passPd y e drectoro adicional
Mueva uno de estos archvos dentro de drectoro adicional utzando e mandato mv:
mv !stab adicional
Para ver e resutado, prmero vea que ocurr en e drectoro e.emplos+ utzando de nuevo e
mandato ls:
ls
Ver una sada en pantaa smar a a sguente:
D!ulanoSlocalhost eMemplos1EF
adicional passwd
D!ulanoSlocalhost eMemplos1EF
Acceda haca e drectoro adicional con e mandato cd
cd adicional
Se observar una sada smar a a sguente:
D!ulanoSlocalhost adicionalEF
!stab
D!ulanoSlocalhost adicionalEF
Regrese haca e drectoro e.emplos+ que se encuentra en e nve superor utzando e mandato
cd:
cd @@/
Ahora proceda a emnar e archvo passPd que se encuentra en e drectoro e.emplos+
rm passwd
134
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Haga o msmo con &sta!, e cua se ocaza dentro de drectoro adicional:
rm adicional/!stab
Emne e drectoro adicional:
rmdir adicional
+3.*.+. Fisuali8ando contenido de arc$ivos.
S utza e mandato cat sobre un archvo, a sada devover e contendo de este. utce o
sguente para ver e contendo de archvo =etc=cronta!:
cat /etc/crontab
Lo anteror debe devover una sada similar a a sguente:
S1%00)/bin/bash
;3/1)/sbin"/bin"/usr/sbin"/usr/bin
,3'0/.)root
1.,%)/
A runparts
#1 O O O O root runparts /etc/cron@hourly
#5 > O O O root runparts /etc/cron@daily
55 > O O # root runparts /etc/cron@weekly
>5 > 1 O O root runparts /etc/cron@monthly
S soo se qusera ver as neas que contengan a cadena de caracteres root, se utza e mandato
grep como subrutna de sguente modo:
cat /etc/crontab ^ grep root
Lo anteror debe devover una sada smar a a sguente:
,3'0/.)root
#1 O O O O root runparts /etc/cron@hourly
#5 > O O O root runparts /etc/cron@daily
55 > O O # root runparts /etc/cron@weekly
>5 > 1 O O root runparts /etc/cron@monthly
S se qusera hacer o contraro, y soo vsuazar as neas que no contengan a cadena de
caracteres root, se utza e mandato grep como subrutna de sguente modo:
cat /etc/crontab ^ grep v *root*
Lo anteror debe devover una sada smar a a sguente:
S1%00)/bin/bash
;3/1)/sbin"/bin"/usr/sbin"/usr/bin
1.,%)/
135
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A runparts
Lo anteror ncuye tambn as neas vacas. Para mostrar e msmo resutado sn neas vacas, se
utza e msmo mandato agregando sed -e '/$/d' como subrutna de sguente modo, donde sed
es un edtor para ftrado y transformacn de texto, e|ecutando ((e) =XZ=d que se refere a neas
vacas:
cat /etc/crontab ^ grep v *root* ^ sed e X/WF/dX
Lo anteror debe devover una sada smar a a sguente:
S1%00)/bin/bash
;3/1)/sbin"/bin"/usr/sbin"/usr/bin
1.,%)/
A runparts
+3.*.*. ?eneracin de te2to por !ucles.
Reace o sguente, donde se utza e mandato perl e|ecutando ((e) e gun for($=1;$<10;$+
+){prnt "$n";}, en e cua se genera a varabe i que es gua a 1 y menor a 10 y a a cua se va
sumando y devueve una sada con e vaor de i con retorno de carro.
perl e X!or(Fi)1YFi_1#YFiNN)Zprint *FiPn*Y[X
Lo anteror debe devover una sada smar a a sguente:
1
5
?
>
8
6
6
4
7
Modfque e gun de mandato anteror y reempace /Zin/ por /)1mero Zin/ de sguente modo:
perl e X!or(Fi)1YFi_1#YFiNN)Zprint *+`mero FiPn*Y[X
Lo anteror debe devover una sada smar a a sguente:
+`mero 1
+`mero 5
+`mero ?
+`mero >
+`mero 8
+`mero 6
+`mero 6
+`mero 4
+`mero 7
136
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Para guardar sto en un archvo, aada a mandato anteror >> -/texto.txt de sguente modo
para cambar a sada estndar de a pantaa haca e archvo -/texto.txt:
perl e X!or(Fi)1YFi_1#YFiNN)Zprint *+`mero FiPn*Y[X RR T/texto@txt
Lo anteror soo regresa e smboo de sstema. Utce emandato cat para vsuazar e contendo
de archvo -/texto.txt de sguente modo:
cat T/texto@txt
Lo anteror debe devover una sada smar a a sguente y que corresponde a contendo de
archvo -/texto.txt:
+`mero 1
+`mero 5
+`mero ?
+`mero >
+`mero 8
+`mero 6
+`mero 6
+`mero 4
+`mero 7
+3.*.3. Bucles.
A contnuacn aprender a utzar funcones ms avanzadas. En e sguente caso usted crear
respados de un con|unto de archvos de mgenes, asgnando a cada uno un nombre dstnto a
que tenan en su drectoro de orgen. Prmero crear un nuevo drectoro:
mkdir T/respaldos
Reace os sguentes mandatos:
65 +sr+s34re+.#;/4.s+
!or ! in O@png
do
cp F! T/respaldos/copiaF!
done
cd
Lo anteror reazar a copa en sere de os archvos dentro de =usr=s$are=pi2maps= dentro de
Y=respaldos= anteponendo en e nombre de as copas a paabra copa. Mre e contendo de
Y=respaldos= de sguente modo:
ls T/respaldos/
En e sguente caso usted defnr dos varabes ($hombre y $mu|er) cuyos datos sern obtendos
a partr de un archvo de texto smpe (pare|as.txt) y obtendr una sada por cada |uego de
varabes.
cd
echo *auan aose!ina* RR pareMas@txt
137
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
echo *;edro aulieta* RR pareMas@txt
echo *;ablo ,iriam* RR pareMas@txt
echo *aorge 3ntonia* RR pareMas@txt
echo *%rnesto (armen* RR pareMas@txt
while read hombre muMer
do
echo *Fhombre es pareMa de FmuMer*
echo **
done _ pareMas@txt
+3.*.4. Aliases.
Reace o sguente:
touch algonuevo@txt
touch otronuevo@txt
cp algonuevo@txt otronuevo@txt
En o anteror se crearon con e mandato touc$ os archvos algo(nuevo.t2t y otro(nuevo.t2t y
se reaz una copa de algo(nuevo.t2t sobre-escrbendo otro(nuevo.t2t. Note que se sobre-
escrb a otro(nuevo.t2t sn preguntar.
E|ecute ahora o sguente:
alias cp)*cp i*
cp algonuevo@txt otronuevo@txt
En o anteror se creo un aas denomnado cp que corresponde en readad a mandato cp con a
opcn (i, a cua corresponde a preguntar s se sobre-escrben archvos reguares destno
exstentes. Cuando se e|ecuta de nuevo e mandato cp, ste o drectamente hace con a opcn (i.
Para deshacer e aas sobre e mandato cp, soo se necesta e|ecutar:
unalias cp
Reace o sguente para crear un nuevo mandato como alias:
alias mimandato)*ls l ^less*
Lo anteror crea un alias denomnado mi(mandato, e cua corresponder a e|ecutar e mandato
s con a opcn - y adems e|ecutar como subrutna a mandato less. E|ecute mi(mandato de
sguente modo y estude a sada.
mimandato /etc
Lo anteror debe haber mostrado e contendo de drectoro =etc utzando less para poder
despazar cmodamente a pantaa. Para sar de less soo puse a teca #.
138
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Los aases creados perduran hasta que es cerrada a sesn de usuaro. Para que cuaquer aas
sea permanente para un usuaro en partcuar, hay que especfcar estos a fna de archvo
Y=.!as$Qpro&ile, o ben como root en agn archvo *.sh dentro de drectoro =etc=pro&ile.d= para
que sea utzado por todos os usuaros de sstema. E|ecute e mandato alias para ver a sta de
aases predefndos en e sstema.
alias
+3.*.5. ?estin de arc$ivos 8ipL tarL tar.g8 y tar.!8*.
Cope por competo e drectoro =usr=s$are=pi2maps dentro de su drectoro de nco.
cp a /usr/share/pixmaps T/
Genere un archvo .zp utzando e sguente mandato:
Cip r pixmaps@Cip pixmaps/
Lste e contendo de archvo pi2maps.8ip utzando e sguente mandato:
unCip l pixmaps@Cip
Extraga e contendo de archvo pi2maps.8ip dentro de drectoro -/e|empos1/ utzando e
sguente mandato:
unCip pixmaps@Cip d T/eMemplos1/
Extraga e contendo de archvo pi2maps.8ip dentro de drectoro -/e|empos1/, pero soo
extrayendo os archvos de prmer nve con extensn .png, utzando e sguente mandato:
unCip pixmaps@Cip d T/eMemplos1/ O@png
Extraga e contendo de archvo pi2maps.8ip dentro de drectoro -/e|empos1/, pero soo
extrayendo os archvos de segundo nve con extensn .png, utzando e sguente mandato:
unCip pixmaps@Cip d T/eMemplos1/ O/O@png
Genere un archvo .tar (sn compresn) utzando e sguente mandato:
tar c! pixmaps@tar pixmaps/
Lste e contendo de archvo pi2maps.tar utzando e sguente mandato:
tar tv! pixmaps@tar
Extraga e contendo de archvo pi2maps.tar dentro de drectoro -/e|empos1/ utzando e
sguente mandato:
139
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
tar xv! pixmaps@tar ( T/eMemplos1/
Extraga e contendo de archvo pi2maps.tar dentro de drectoro -/e|empos1/, pero soo
extrayendo os archvos con extensn .png, utzando e sguente mandato:
tar xv! pixmaps@tar ( T/eMemplos1/ wildcards XO@pngX
Genere un archvo .tar.gz (con compresn GZIP) utzando e sguente mandato:
tar Cc! pixmaps@tar@gC pixmaps/
Lste e contendo de archvo pi2maps.tar.g8 utzando e sguente mandato:
tar Ctv! pixmaps@tar@gC
Extraga e contendo de archvo pi2maps.tar.g8 dentro de drectoro -/e|empos1/ utzando e
sguente mandato:
tar Cxv! pixmaps@tar@gC ( T/eMemplos1/
Extraga e contendo de archvo pi2maps.tar.g8 dentro de drectoro -/e|empos1/, pero soo
extrayendo os archvos con extensn .png, utzando e sguente mandato:
tar Cxv! pixmaps@tar@gC ( T/eMemplos1/ wildcards XO@pngXX
Genere un archvo .tar.bz2 (con compresn BZp2) utzando e sguente mandato:
tar Mc! pixmaps@tar@bC5 pixmaps/
Lste e contendo de archvo pi2maps.tar.!8* utzando e sguente mandato:
tar Mtv! pixmaps@tar@bC5
Extraga e contendo de archvo pi2maps.tar.!8* dentro de drectoro -/e|empos1/ utzando e
sguente mandato:
tar Mxv! pixmaps@tar@bC5 ( T/eMemplos1/
Extraga e contendo de archvo pi2maps.tar.!8* dentro de drectoro -/e|empos1/, pero soo
extrayendo os archvos con extensn .png, utzando e sguente mandato:
tar Mxv! pixmaps@tar@bC5 ( T/eMemplos1/ wildcards XO@pngX
140
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
+3.*.6. Apagado y reinicio de sistema.
Fnamente, y para concur a breve eccn de mandatos, es mportante conocer que en
GNU/Lnux se desempean varos procesos en e trasfondo. Estos servcos deben ser fnazados
apropadamente. E sstema operatvo es muy dferente a MS-DOS, en donde se poda apagar e
sstema en cuaquer momento. Hay que cerrar e sstema apropadamente, termnando servcos,
guardar en dsco e contendo de amacenamento prevo de a memora (buffer) que o requera, y
desmontar todos os sstemas de archvos. Para ta fn se utzan os mandatos poPero&& y
re!oot.
Para cerrar y apagar e sstema, debe utzar e sguente mandato:
powero!!
Para cerrar y rencar e sstema, debe utzarse e sguente mandato:
reboot
+3.3. 'esumen de mandatos !;sicos.
Puede y debe obtener mas detaes acerca de estos y otros muchos ms mandatos utzando a
opcn (($elp con cuaquer cas cuaquer mandato. Pude consutar e manua detaado de cas
cuaquer mandato conocdo teceando man precedendo de mandato a consutar:
man Dnombre del mandatoE
Para sar de as pgnas de manua de mandatos soo puse a teca #.
@a!la +. 'esumen de mandatos !;sicos.
S se necesta acceder haca una
carpeta en especa, utce:
cd Druta exacta o relativaE
S se necesta crear una nueva carpeta,
utce:
mkdir Dnombre del directorioE
S se desea copar un archvo, utce: cp DorigenE DdestinoE
S se desea mover una archvo, utce: mv Druta del archivo a moverE Ddirectorio en donde
se desea moverE
S se desea emnar un archvo, utce: rm Dnombre del archivo o ruta exacta hacia el
archivoE
S se desea emnar una carpeta,
utce:
rmdir Dnombre del archivo o ruta exacta hacia el
directorioE
S se desea apagar o rencar e
sstema, utce:
powero!! y reboot (pueden ser utiliCados como
usuario)
shutdown Dh rE Dnow 1B5B?B>B8B6@@@E (solo se
pueden utiliCar como roo2)
141
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
+4. Funciones !;sicas de vi
Autor: $oel Barrios 'ue!as
Correo electrnico: dar(sram en gmail punto com
Sitio 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.
+4.+. %ntroduccin
v es uno de os edtores de texto ms poderosos y ae|os que hay en e mundo de a nformtca.
Resuta sumamente t conocer a funconadad bsca de v a fn de factar a edcn de
archvos de texto smpe, prncpamente archvos de confguracn.
+4.*. <rocedimientos
+4.*.+. %nstalacin y pa#uetes adicionales
Por o genera, v se nstaa de modo predefndo en a mayora de as dstrbucones de GNU/Lnux
a travs de paquete vim(minimal. Puede aadrse funconadad adcona a travs de os
sguentes paquetes:
vim(en$anced- Una versn me|orada de v que aade coor a a sntaxs y otras me|oras en a
nterfaz.
vim(D++: Versn de v para modo grfco que resuta ms fc de utzar gracas a os
mens y barra de herramentas.
S o desea, puede proceder a nstaar v y e resto de os paquetes reaconados reazando o
sguente:
yum y install vim vimenhanced vimcommon vimminimal
+4.3. Conociendo vi
Acceda a sstema autentcando como usuaro (fuano) y reace o sguente:
vi holamundo@txt
Lo anteror mostrar una nterfaz como a sguente:
142
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
*holamundo@txt* D3rchivo nuevoE #B#1 /odo
Puse una vez e botn <INSERT> de su tecado y observe os cambos en a pantaa
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
-- LNSERTAR -- #1 /odo
Note que en a parte nferor de a pantaa aparece a paabra %)>"'@A'. Esto sgnfca que, a
gua que cuaquer otro edtor de texto conocdo, puede comenzar a nsertar texto en e archvo.
Escrba a frase Acance Lbre, puse a teca <ENTER> y escri!a de forma propostva a frase
un vuen cto donde empesa:
143
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3lcance 0ibre
un vuen citio donde empesar
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
-- LNSERTAR -- #1 /odo
Poscone e cursor de tecado |usto por deba|o de a v de a paabra vuen y puse de nuevo a
teca <INSERT> de tecado. Notar que ahora aparece a paabra REEMPLAZAR:
3lcance 0ibre
un vuen citio donde empesar
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
-- REEM8LAMAR -- #1 /odo
Puse a teca b y observe como se reempaza a etra v dando como resutado que a paabra
quede ortogrfcamente correcta como buen:
144
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3lcance 0ibre
un buen citio donde empesar
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
-- REEM8LAMAR -- #1 /odo
Mueva e cursor con as fechas de tecado y repta e procedmento reempazando a etra c por
una s en a paabra cto de modo que quede como sto y de gua modo reempace a etra
s por una z en a paabra reempasar de modo que quede como empezar:
3lcance 0ibre
un buen sitio donde empeCar
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
-- REEM8LAMAR -- #1 /odo
Puse a teca <ESC> para sar de modo de reempazo e nmedatamente puse a teca : (dos
puntos) segudo de a etra w a fn de proceder a guardar e archvo en e dsco duro:
145
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3lcance 0ibre
un buen sitio donde empeCar
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
"w
Puse a teca <ENTER> y notar que aparece un mensa|e en a parte nferor de a pantaa que
ndcar que e archvo ha sdo guardado:
3lcance 0ibre
un buen sitio donde empeCar
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
*holamundo@txt* D+uevoE 50B >>( escritos 5B? /odo
Vueva a pusar a teca - (dos puntos) e nmedatamente escrba saveas adosmundo.txt:
146
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3lcance 0ibre
un buen sitio donde empeCar
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
"saveas adiosmunto@txt
Puse nuevamente a teca <ENTER> y observe e mensa|e en a parte nferor de a pantaa que
ndca que e archvo acaba de ser guardado como adosmundo.txt:
3lcance 0ibre
un buen sitio donde empeCar
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
*adiosmundo@txt* D+uevoE 50B >>( escritos 5B? /odo
Vueva a pusar a teca INSERT para regresar a modo de nsercn y escrba o sguente:
147
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3lcance 0ibre
un buen sitio donde empeCar
(reo Jue el mundo es un lugar muy malo
0a gente Jue conoCco es mala
,i vida ha sido muy mala
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
'+S%R/3R 8B5> /odo
A contnuacn puse a teca <ESC> e nmedatamente puse a teca - (dos puntos) segudo de a
combnacn de tecas Vs=mal=!uen=g de sguente modo:
3lcance 0ibre
un buen sitio donde empeCar
(reo Jue el mundo es un lugar muy malo
0a gente Jue conoCco es mala
,i vida ha sido muy mala
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
"Vs/mal/buen/g
Puse de nuevo a teca <ENTER> y observe como ha sdo reempazada a cadena de caracteres
ma por a cadena de caracteres buen en todo e archvo, quedando de sguente modo:
148
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3lcance 0ibre
un buen sitio donde empeCar
(reo Jue el mundo es un lugar muy bueno
0a gente Jue conoCco es buena
,i vida ha sido muy buena
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
? sustituciones en ? lbneas 8B1 /odo
En e procedmento anteror, e smboo % ndcaba que se apcara un procedmento a todo e
archvo, no soo en a msma nea; a etra s ndcaba que se reazara a bsqueda de a cadena
de caracteres ma defnda despus de a dagona (/) por a cadena de caracteres buen en
toda a nea, ndcado por a etra g.
A contnuacn, poscone e cursor de tecado utzando as fechas de tecado hasta e prmer
carcter de a prmera nea:
3lcance 0ibre
un buen sitio donde empeCar
(reo Jue el mundo es un lugar muy bueno
0a gente Jue conoCco es buena
,i vida ha sido muy buena
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
? sustituciones en ? lbneas 8B1 /odo
Ahora puse dos veces consecutvas a teca d, es decr, pusar dd. Observe como desaparece
a prmera nea:
149
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
un buen sitio donde empeCar
(reo Jue el mundo es un lugar muy bueno
0a gente Jue conoCco es buena
,i vida ha sido muy buena
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
Puse ahora a teca p para vover a pegar a nea:
un buen sitio donde empeCar
3lcance 0ibre
(reo Jue el mundo es un lugar muy bueno
0a gente Jue conoCco es buena
,i vida ha sido muy buena
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
Observe que a nea Acance Lbre reaparec deba|o de a nea un buen sto donde empezar.
Utzando as fechas de tecado, cooque e cursor de tecado nuevamente sobre e prmer
carcter de a prmera nea de archvo, es decr, sobre a etra u de a nea un buen sto
donde empezar:
150
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
un buen sitio donde empeCar
3lcance 0ibre
(reo Jue el mundo es un lugar muy bueno
0a gente Jue conoCco es buena
,i vida ha sido muy buena
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
1B1 /odo
Vueva a pusar dd para cortar a nea un buen sto donde empezar e nmedatamente puse
a teca p para pegar a nea en e ugar correcto:
3lcance 0ibre
un buen sitio donde empeCar
(reo Jue el mundo es un lugar muy bueno
0a gente Jue conoCco es buena
,i vida ha sido muy buena
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
5B1 /odo
Cooque ahora e cursor sobre a etra C de a nea Creo que e mundo es un ugar muy bueno
y puse a teca 3 segudo de dd y observe como son cortadas as tres sguentes neas:
151
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3lcance 0ibre
un buen sitio donde empeCar
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
? lbneas menos 5B1 /odo
Puse a teca p una vez, observe e resutado. Vueva a pusar a teca p y observe e
resutado. Las dos accones anterores aaderon ahora 6 neas restaurando as emnadas
anterormente y agregando tres neas ms con e msmo contendo:
3lcance 0ibre
un buen sitio donde empeCar
(reo Jue el mundo es un lugar muy bueno
(reo Jue el mundo es un lugar muy bueno
0a gente Jue conoCco es buena
,i vida ha sido muy buena
0a gente Jue conoCco es buena
,i vida ha sido muy buena
T
T
T
T
T
T
T
T
T
T
T
T
? lbneas mcs 5B1 /odo
Puse ahora a teca - (dos puntos) segudo de a teca x y a teca <ENTER> a fn de sar
guardando e archvo.
Abra nuevamente e archvo adiosmundo.t2t con v y puse a combnacn de tecas -=!uen, de
modo que se reace una bsqueda de a cadena de caracteres buen y adems se resaten as
concdencas:
152
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3lcance 0ibre
un buen sitio donde empeCar
(reo Jue el mundo es un lugar muy bueno
(reo Jue el mundo es un lugar muy bueno
0a gente Jue conoCco es buena
,i vida ha sido muy buena
0a gente Jue conoCco es buena
,i vida ha sido muy buena
T
T
T
T
T
T
T
T
T
T
T
T
/buen 5B1 /odo
Para cancear o que se encuentra resatado de os resutados, puse a combnacn de tecas
-no$l:
3lcance 0ibre
un buen sitio donde empeCar
(reo Jue el mundo es un lugar muy bueno
(reo Jue el mundo es un lugar muy bueno
0a gente Jue conoCco es buena
,i vida ha sido muy buena
0a gente Jue conoCco es buena
,i vida ha sido muy buena
T
T
T
T
T
T
T
T
T
T
T
T
5B1 /odo
Puse A (combnacn de as tecas SHIFT+a) mentras e cursor permanece en a segunda nea y
observe que ncar e modo %)>"'@A' coocando e cursor a fna de a nea donde se
encontraba:
153
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3lcance 0ibre
un buen sitio donde empeCar
(reo Jue el mundo es un lugar muy bueno
(reo Jue el mundo es un lugar muy bueno
0a gente Jue conoCco es buena
,i vida ha sido muy buena
0a gente Jue conoCco es buena
,i vida ha sido muy buena
T
T
T
T
T
T
T
T
T
T
T
T
-- LNSERTAR -- 5B1 /odo
Puse a teca <ESC> y enseguda o. Notar que ncar e modo %)>"'@A' abrendo una nueva
nea:
3lcance 0ibre
un buen sitio donde empeCar
(reo Jue el mundo es un lugar muy bueno
(reo Jue el mundo es un lugar muy bueno
0a gente Jue conoCco es buena
,i vida ha sido muy buena
0a gente Jue conoCco es buena
,i vida ha sido muy buena
T
T
T
T
T
T
T
T
T
T
T
-- LNSERTAR -- ?B1 /odo
Puse nuevamente a teca <ESC> y en seguda a combnacn d? (d, uego SHIFT+G). Notar que
se emna todo e contendo de texto desde a poscn de cursor hasta e fna de archvo:
154
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3lcance 0ibre
un buen sitio donde empeCar
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
6 lbneas menos 5B1 /odo
Puse a combnacn -u y notar que e cambo se ha descartado, regresando as 7 neas que
haban sdo emnadas:
3lcance 0ibre
un buen sitio donde empeCar
(reo Jue el mundo es un lugar muy bueno
(reo Jue el mundo es un lugar muy bueno
0a gente Jue conoCco es buena
,i vida ha sido muy buena
0a gente Jue conoCco es buena
,i vida ha sido muy buena
T
T
T
T
T
T
T
T
T
T
T
6 lbneas mcs ?B#1 /odo
+4.4. 0tras com!inaciones de teclas
Com!inacin 'esultado
|o ben a teca nsert| Inca nsertar texto antes de cursor
a Inca nsertar texto despus de cursor
I ( + SHIFT) Inca nsertar texto a inicio de a nea donde se encuentra e cursor
A (a + SHIFT) Inca nsertar texto a &inal de a nea donde se encuentra e cursor.
o Abre una nueva nea e nca nsertar texto en a nueva nea.
155
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Com!inacin 'esultado
x Emna e carcter que est sobre e cursor.
dd Emna a nea actua donde se encuentre e cursor.
D Emna desde a poscn actua de cursor hasta e fna de a msma nea
donde se encuentra e cursor.
dG Emna todo hasta e fna de archvo.
:q Aparece s no hubo cambos en e archvos.
:q! Aparece descartando os cambos en e archvo.
:w Guarda e archvo sn sar.
:wq Guarda e archvo y sae de v.
:x Lo msmo que :wq
:saveas /o/que/sea Guarda e archvo como otro archvo donde sea necesaro.
:wq! ++enc=utf8 Codfca e archvo en UTF-8.
:u Deshacer cambos
:red Rehacer cambos.
:/cadena de caracteres Bsqueda de cadenas de caracteres.
:noh Cancear e resatado de resutados de Bsqueda.
+4.5. :;s all; de las &unciones !;sicas
Instae e paquete vm-enhanced:
yum y install vimenhanced
Utce vimtutor y compete e tutor interactivo o&icial de v a fn de que conozca e resto de as
funconadades ms mportantes.
156
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
+5. %ntroduccin a sed
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.
+5.+. %ntroduccin.
+5.+.+. Acerca de sed.
>ed es un edtor de emsones (stream edtor) utzado para e procesamento de texto en
archvos. Utza un engua|e de programacn para reazar transformacones en una emsn de
datos eyendo nea por nea de estos. Fue desarroado entre 1973 y 1974 por Lee E. McMahon de
Be Labs. Est ncudo en as nstaacones bscas de prctcamente todas as dstrbucones de
GNU/Lnux.
+5.*. <rocedimientos.
A contnuacn se mostrarn e|empos de uso de sed.
Utce v para crear e archvo usuaro.txt:
vi usuario@txt
Ingrese e sguente contendo y saga de v:
<ulano 3lgo
(alle ,engana 15?
(olonia ;erengana
(iudad de GutanoB (@;@ 15?>86
S utza e mandato cat sobre e archvo, vsuazar ta cua e contendo de usuaro.txt como fue
ngresado en v.
cat usuario@txt
S se quere convertr a dobe espaco a sada de archvo usuaro.txt, utce e sguente mandato:
sed I usuario@txt
La sada devover o sguente:
<ulano 3lgo
157
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
(alle ,engana 15?
(olonia ;erengana
(iudad de GutanoB (@;@ 15?>86
Para guardar esta sada en e archvo usuaro2.txt, utce o sguente:
sed I usuario@txt R usuario5@txt
S se quere convertr a dobe espaco a sada de archvo usuaro.txt, utce e sguente mandato:
sed XIYIX usuario@txt
La sada devover o sguente:
<ulano 3lgo
(alle ,engana 15?
(olonia ;erengana
(iudad de GutanoB (@;@ 15?>86
Para guardar esta sada en e archvo usuaro2.txt, utce o sguente:
sed XIYIX usuario@txt R usuario?@txt
E contendo de usuaro3.txt tendr trpe espaco de separacn. S se desea convertr un archvo a
dobe espaco, pero que no haya ms de una nea vaca entre cada ena con datos, se utza o
sguente:
sed X/WF/dYIX usuario?@txt
La sada devover o sguente:
<ulano 3lgo
(alle ,engana 15?
(olonia ;erengana
(iudad de GutanoB (@;@ 15?>86
S se desea emnar e dobe espaco de archvo usuaro2.txt, se utza o sguente:
sed XnYdX usuario5@txt
La sada devover o sguente:
<ulano 3lgo
(alle ,engana 15?
(olonia ;erengana
(iudad de GutanoB (@;@ 15?>86
S se quere agregar una nea en banco arrba de toda nea que contenga a expresn reguar
enga, se utza o sguente:
158
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
sed X/enga/ZxYpYxY[X usuario@txt
La sada devover o sguente:
<ulano 3lgo
(alle ,en74na 15?
(olonia ;erengana
(iudad de GutanoB (@;@ 15?>86
S se quere agregar una nea en banco deba|o de toda nea que contenga a expresn reguar 3,
se utza o sguente:
sed X/?/IX usuario@txt
La sada devover o sguente:
<ulano 3lgo
(alle ,engana 153
(olonia ;erengana
(iudad de GutanoB (@;@ 153>86
S se quere agregar una nea en banco arrba y deba|o de toda nea que contenga a expresn
reguar 3, se utza o sguente:
sed X/?/ZxYpYxYIY[X usuario@txt
La sada devover o sguente:
<ulano 3lgo
(alle ,engana 15?
(olonia ;erengana
(iudad de GutanoB (@;@ 15?>86
Para reempazar texto se utza e modeo 's/texto/nuevo-texto/' donde texto puede ser tambn
una expresn reguar. En e sguente e|empo se reempazarn as ncdencas de nmero por e
nmero 9:
sed Xs/?/7/gX usuario@txt
La sada devover o sguente:
<ulano 3lgo
(alle ,engana 15%
(olonia ;erengana
(iudad de GutanoB (@;@ 15%>86
En e sguente e|empo se reempazan os espacos por tabuadores a todo o argo de todas as
neas:
sed Xs/P /Pt/gX usuario@txt
159
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
La sada devover o sguente:
<ulano 3lgo
(alle ,engana 15?
(olonia ;erengana
(iudad de GutanoB (@;@ 15?>86
En e sguente e|empo se reempazan soo e prmer espaco de cada nea por un tabuador:
sed Xs/P /Pt/X usuario@txt
La sada devover o sguente:
<ulano 3lgo
(alle ,engana 15?
(olonia ;erengana
(iudad de GutanoB (@;@ 15?>86
La sguente nea aade 5 espacos a nco de cada nea:
sed Xs/W/ /X usuario@txt
La sada devover o sguente:
<ulano 3lgo
(alle ,engana 15?
(olonia ;erengana
(iudad de GutanoB (@;@ 15?>86
E sguente mandato soo mprme a prmera nea de archvo usuaro.txt:
sed J usuario@txt
La sada devover o sguente:
<ulano 3lgo
E sguente mandato soo mprme as prmeras dos neas de archvo usuaro.txt:
sed 5J usuario@txt
La sada devover o sguente:
<ulano 3lgo
(alle ,engana 15?
E sguente mandato soo muestra as tmas tres neas de archvo usuaro.txt:
sed e "a e XFJY+Y>BF$YbaX usuario@txt
160
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
La sada devover o sguente:
(alle ,engana 15?
(olonia ;erengana
(iudad de GutanoB (@;@ 15?>86
E sguente mandato soo mostrar as neas que ncuyen 3:
sed X/?/ddX usuario@txt
La sada devover o sguente:
(alle ,engana 153
(iudad de GutanoB (@;@ 153>86
E sguente mandato soo mostrar as neas que no ncuyen 3:
sed X/?/dX usuario@txt
La sada devover o sguente:
<ulano 3lgo
(olonia ;erengana
E sguente mandato pde mostrar a nea que est nmedatamente despus de a expresn
Fulano, pero no a nea en s que ncuye Fulano:
sed n X/<ulano/ZnYpY[X usuario@txt
La sada devover o sguente:
(alle ,engana 15?
E sguente mandato pde mostrar a nea que est nmedatamente antes de a expresn Calle,
pero no a nea en s que ncuye Calle:
sed n X/(alle/ZgY1dpY[YhX usuario@txt
La sada devover o sguente:
<ulano 3lgo
+5.3. Bi!liogra&a.
Erc Pement: http://student.northpark.edu/pemente/sed/sed1ne.txt
Wkpeda: http://en.wkpeda.org/wk/Sed
161
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
+6. %ntroduccin a AWI
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.
+6.+. %ntroduccin.
+6.+.+. Acerca de AWI.
AWI, cuyo nombre derva de a prmera etra de os apedos de sus autores Afred Aho, Peter
Wenberger y Bran Iernghan, es un engua|e de programacn que fue dseado con e ob|etvo
de procesar datos basados sobre texto y una de as prmeras herramentas en aparecer en Unx.
Utza stas en un ndce ordenado por cadenas cave (stas asocatvas) y expresones reguares.
Es un engua|e ampamente utzado para a programacn de guones e|ecutabes pues aade
funconadad a as tuberas en os sstemas operatvos tpo <0>%D. Est ncudo en as
nstaacones bscas de prctcamente todas as dstrbucones de GNU/Lnux.
+6.+.*. "structura de los programas escritos en AWI.
E mandato aPK utza un archvo o emsn de ordenes y un archvo o emsn de entrada. E
prmero ndca como procesar a segundo. E archvo de entrada es por o genera texto con agn
formato que puede ser un archvo o ben a sada de otro mandato.
La sntaxs genera utzada para e mandato aPK sgue e sguente patrn:
awk 'expresn-reguar { orden }'
Cuando se utza e mandato awk, ste examna e archvo de entrada y e|ecuta a orden cuando
encuentra a expresn reguar especfcada.
E sguente modeo e|ecutara a orden a nco de programa y antes de que sean procesados os
datos de archvo de entrada:
awk X9%I'+ Z orden [X
E sguente modeo e|ecutara a orden a fna de programa y despus de que sean procesados os
datos de archvo de entrada:
awk X9%I'+ Z orden [X
E sguente modeo e|ecutara a orden por cada una de as neas de archvo de entrada:
162
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
awk XZ orden [X
+6.*. <rocedimientos.
A contnuacn se mostrarn e|empos de uso de AWK.
E sguente mandato especfca que a nco se mprma en a sada a frase "Hoa mundo" y
termnar e procesamento.
awk X9%I'+ Z print *1ola mundo*Y exit [X
Lo anteror deber devover una sada como a sguente:
1ola mundo
S se genera e archvo prueba.txt de sguente modo:
echo e *(olumna1Pt(olumna5Pt(olumna?Pt(olumna>Pn* R eMemplo@txt
Y se vsuaza con e mandato cat:
cat eMemplo@txt
Devover e sguente contendo:
(olumna1 (olumna5 (olumna? (olumna>
S se utza e mandato awk para que soo muestre a coumna 1 y a coumna 3 de sguente
modo:
awk XZ print F1B F?[X eMemplo@txt
La sada devover o sguente:
(olumna1 (olumna?
S se utza e mandato awk para que soo muestre a coumna 3 y a coumna 1, en ese orden, de
sguente modo:
awk XZ print F?B F1[X eMemplo@txt
La sada devover o sguente:
(olumna? (olumna1
S se aaden datos a archvo e|empo.txt de sguente modo:
echo e *$ato1Pt$ato5Pt$ato?Pt$ato>Pn* RR eMemplo@txt
163
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
echo e *$ato8Pt$ato6Pt$ato6Pt$ato4Pn* RR eMemplo@txt
echo e *$ato7Pt$ato1#Pt$ato11Pt$ato>P15* RR eMemplo@txt
Y se vsuaza con e mandato cat:
cat eMemplo@txt
Devover e sguente contendo:
(olumna1 (olumna5 (olumna? (olumna>
$ato1 $ato5 $ato? $ato>
$ato8 $ato6 $ato6 $ato4
$ato7 $ato1# $ato11 $ato>
S se utza nuevamente e mandato awk para que soo muestre a coumna 1 y a coumna 3 de
sguente modo:
awk XZ print F1B F?[X eMemplo@txt
La sada devover o sguente:
(olumna1 (olumna?
$ato1 $ato?
$ato8 $ato6
$ato7 $ato11
S se utza e mandato awk de sguente modo para que soo muestre soo a nea cuya coumna
contenga a expresn reguar Dato5:
awk X/$ato8/ Z print [X eMemplo@txt
La sada devover o sguente:
$ato8 $ato6 $ato6 $ato4
S se utza e mandato awk de sguente modo para que soo muestre soo a nea cuya coumna
contenga a expresn reguar Dato5, y adems soo as coumnas 1 y 4:
awk X/$ato8/ Z print F1B F>[X eMemplo@txt
La sada devover o sguente:
$ato8 $ato4
S se utza e mandato awk de sguente modo para que muestre soo as neas con ms de 35
caracteres en e archvo /etc/crontab:
awk Xlength R ?8X /etc/crontab
164
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
La sada devover o sguente:
#1 O O O O root runparts /etc/cron@hourly
#5 > O O O root runparts /etc/cron@daily
55 > O O # root runparts /etc/cron@weekly
>5 > 1 O O root runparts /etc/cron@monthly
S se utza e mandato awk de sguente modo para que muestre soo as neas con menos de 35
caracteres en e archvo /etc/crontab:
awk Xlength _ ?8X /etc/crontab
La sada devover o sguente:
S1%00)/bin/bash
;3/1)/sbin"/bin"/usr/sbin"/usr/bin
,3'0/.)root
1.,%)/
A runparts
Utza v para crear e archvo usuaro.txt:
vi usuario@txt
Ingrese e sguente contendo:
<ulano 3lgo
(alle ,engana 15?
(olonia ;erengana
(iudad de GutanoB (@;@ 15?>86
Para que e mandato aPK reconozca cada nea como un regstro competo, en ugar de consderar
cada paabra como una coumna, se utza [B"?%) \ F>R/]n/ ^ '>R//_[, donde e vaor de F>
(Fed >eparator o separador de campo) se estabece como un retorno de carro y e vaor de '>
('ecord >eparator o separador de regstro) se estabece como una nea vaca. S utza e
sguente mandato donde se estabecen os vaores menconados para FS y RS y se pde se
mprman os vaores de cada regstro (cada nea) separados por una coma y un espaco:
awk X9%I'+ Z <S)*Pn*Y RS)** [ Z print F1 *B * F5 *B * F? *B * F> [X usuario@txt
La sada devover o sguente:
<ulano 3lgoB (alle ,engana 15?B (olonia ;erenganaB (iudad de GutanoB (@;@ 15?>86
E mandato aPK puede reazar conteo de neas, paabras y caracteres. E e sguente mandato se
estabece que e vaor de P sea gua a nmero de campos ()ew Fed o )F), c sea gua a
ongtud de cada campo, y que se mprma e nmero de campos, e vaor de P y e vaor de c:
awk XZ w N) +<Y c N) length[ P
%+$ Z print P
*(ampos" * +R B *Pn;alabras" * wB *Pn(aracteres" * c [X P
usuario@txt
165
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
La sada devover o sguente:
(ampos" >
;alabras" 15
(aracteres" 6>
Genere e archvo numeros.txt con e sguente contendo, donde as coumnas sern separadas
por un tabuador:
1 5 ? >
8 6 6 4
7 1# 11 15
E mandato awk puede reazar operacones matemtcas. e sguente mandato estabece que s es
gua a a suma de vaor de os campos de a prmera coumna de archvo numeros.txt, e mprme
e vaor de s:
awk XZ s N) F1 [ %+$ Z print s [X numeros@txt
La sada devover o sguente (resutado de a suma de 1+5+9):
18
S se hace o msmo, pero con os vaores de a coumna 2:
awk XZ s N) F5 [ %+$ Z print s [X numeros@txt
La sada devover o sguente (resutado de a suma de 2+6+10):
14
Para hacer conteo de frecuenca de paabras, Se estabece que e vaor para F> (Fed >eparator o
separador de nea) sea gua a expresones reguares que van desde a a a a z y desde a A a a Z,
se estabece que e vaor de a varabe es gua a 1 y menor a nmero de campos.
awk X9%I'+ Z <S)*DWaC3GEN*[ P
Z !or (i)1Y i_)+<Y iNN) wordsDtolower(Fi)ENN [ P
%+$ Z !or (i in words) print iB wordsDiE [X /etc/crontab
La sada devover o sguente:
6
bin ?
run 8
etc >
sbin ?
bash 1
weekly 1
daily 1
cron >
usr 5
path 1
166
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
shell 1
parts 8
home 1
mailto 1
monthly 1
hourly 1
root 6
167
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
+7. <ermisos del >istema de Arc$ivos
Autor: $oel Barrios 'ue!as
Correo electrnico: dar(sram en gmail punto com
Sitio 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.
+7.+. %ntroduccin
La asgnacn de permsos de acceso (de ectura, escrtura y e|ecucn) pueden asgnarse a travs
de modos, que son combnacones de nmeros de tres dgtos (usuaro, grupo y resto de mundo) y
e mandato c$mod.
+7.*. )otacin sim!lica
E esquema de notacn smbca se compone de 10 caracteres, donde e prmer carcter ndca e
tpo de archvo:
Falor Descripcin
$enota un archivo regular@
d $enota un directorio@
b $enota un archivo especial de dispositivos de bloJue@
c $enota un archivo de carccter especial
l $enota un enlace simbQlico@
p $enota una tuberba nombrada (<'<.)
s $enota un CQcalo de dominio (socket)
Cada case de permsos es representada por un con|unto de tres caracteres. E prmer con|unto de
caracteres representa a case de usuaro, e segundo con|unto de tres caracteres representa a
case de grupo y e tercer con|unto representa a case de otros (resto de mundo). Cada uno de
os tres caracteres representa permsos de ectura, escrtura y e|ecucn, respectvamente y en ese
orden.
E|empos:
<ermisos Descripcin
5rwxr-;rx Drectoro con permso 755.
6rwr*-r Archvo de carcter especa con permso 664.
srwxr*;rx Zcao con permso 775.
.rwr*-r Tubera (FIFO) con permso 664.
168
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
<ermisos Descripcin
-rwr--r Archvo reguar con permso 644.
+7.3. )otacin octal
La notacn octa consste de vaores de tres a cuatro dgtos en base-8. Con a notacn octa de
tres dgtos cada nmero representa un componente dferente de permsos a estabecer: case de
usuaro, case de grupo y case de otros (resto de mundo), respectvamente. Cada uno de estos
dgtos es a suma de sus bts que o componen (en e sstema numera bnaro). Como resutado,
bts especfcos se aaden a a suma conforme son representados por un numera:
E Bt de e|ecucn aade + a a suma.
E bt de escrtura aade * a a suma.
E bt de ectura aade 4 a a suma.
Estos vaores nunca producen combnacones ambguas y cada una representa un con|unto de
permsos especfcos. De modo ta puede consderarse a sguente taba:
Falor <ermiso Decripcin
# +ada
1 x %MecuciQn
5 w %scritura
? wx %scritura y eMecuciQn
> r 0ectura
8 rx 0ectura y %MecuciQn
6 rw 0ectura y %scritura
6 rwx 0ecturaB %scritura y %MecuciQn
)ota- 3 (wx) es e resutado de 1+2 (w+x). 5 (rx) es e resutado de 4+1 (r+x). 6 (rw) es e
resutado de 4+2 (r+w). 7 (rwx) es e resutado de 4+3 (r+xw).
+7.3.+. <ermisos adicionales
Hay una forma de cuatro dgtos. Ba|o este esquema e estndar de tres dgtos descrto arrba se
converte en os tmos tres dgtos de con|unto. E prmer dgto representa permsos adconaes.
En sstemas y equpamento gco donde no puede ser omtdo este prmer dgto de con|unto de
cuatro, se estabece cero como vaor de ste.
E prmer dgto de con|unto de cuatro es tambn a suma de sus bts que e componen:
1. E bt pega|oso (stcky bt) aade + a tota de a suma.
2. E bt setgd aade * a tota de a suma.
3. E bt setud aade 4 a tota de a suma.
169
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Lo que hace e permso SUID o bt setud es que cuando se ha estabecdo a e|ecucn, e proceso
resutante asumr a dentdad de usuaro dado en a case de usuaro (propetaro de eemento).
De a msma manera que e anteror, o que hace e permso SGID o bt setgd es que cuando se ha
estabecdo a e|ecucn, e proceso resutante asumr a dentdad de grupo dado en a case de
grupo (propetaro de eemento). Cuando setgd ha sdo apcado a un drectoro, todos os nuevos
archvos creados deba|o de este drectoro heredarn e grupo propetaro de este msmo
drectoro. Cuando no se ha estabecdo setgd, e comportamento predefndo es asgnar e grupo
de usuaro a crear nuevos eementos.
E bt pega|oso (stcky bt) sgnfca que un usuaro so podr modfcar y emnar archvos y
drectoros subordnados dentro de un drectoro que e pertenezca. En ausenca de bt pega|oso
(stcky bt) se apcan as regas generaes y e derecho de acceso de escrtura por s soo permte
a usuaro crear, modfcar y emnar archvos y drectoros subordnados dentro de un drectoro.
Los drectoros a os cuaes se es ha estabecdo bt pega|oso restrngen as modfcacones de os
usuaros a so ad|untar contendo, mantenendo contro tota sobre sus propos archvos y pueden
crear nuevos archvos; sn embargo, so pueden ad|untar o aadr contendo a os archvos de
otros usuaros. E bt pega|oso (stcky bt) es utzado en drectoros como =tmp y =var=spool=mail.
De modo ta puede consderarse a sguente taba:
Falor <ermiso Descripcin
1 2 bit pegaMoso
5 s bit setgid
? s 2 bit pegaMoso N bit setgid
> s bit setuid
8 s 2 bit setuid N bit pegaMoso
6 s s bit setuid N bit setgid
6 s s 2 bit setuid N bit setgid N bit pegaMoso
Cuando un archvo no tene permsos de e|ecucn en aguna de as cases y e es asgnado un
permso especa, ste se representa con una etra mayscua.
<ermiso Clase ".ecuta )o e.ecuta
setuid =suario s S
setgid Irupo s S
pegaMoso (sticky) .tros t /
+7.4. ".emplos
+7.4.+. ".emplos de permisos regulares
<ermiso Clase de ,suario Clase de ?rupo Clase de 0tros
#>## r
#>># r r
#>>> r r r
170
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
<ermiso Clase de ,suario Clase de ?rupo Clase de 0tros
#8## rx
#88# rx rx
#888 rx rx rx
#6>> rw r r
#66> rw rw r
#666 rw rw rw
#6## rwx
#611 rwx x x
#6#6 rwx rwx
#68# rwx rx
#688 rwx rx rx
#666 rwx rwx rwx
+7.4.*. ".emplos de permisos especiales
<ermiso Clase de ,suario Clase de ?rupo Clase de 0tros
-6>> rw r rT
,6>> rw rS r
36>> rw rS rT
J6>> rwS r r
56>> rwS r rT
'6>> rwS rS r
I6>> rwS rS rT
-666 rwx rwx rw2
,688 rwx rs rx
3688 rwx rs r2
J688 rws rx rx
5688 rws rx r2
'688 rws rs rx
I688 rws rs r2
+7.5. ,so de c$mod
chmod DopcionesE modo archivo
E|empo:
mkdir p T/tmp/
touch T/tmp/algo@txt
171
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
ls l T/tmp/algo@txt
chmod 688 T/tmp/algo@txt
ls l T/tmp/algo@txt
Lo anteror debe arro|ar una sada smar a a sguente:
D!ulanoSlocalhost TEF mkdir p T/tmp/
D!ulanoSlocalhost TEF touch T/tmp/algo@txt
D!ulanoSlocalhost TEF ls l T/tmp/algo@txt
-r*-r*-r-- - <)4no <)4no $ /4r , -5?$% /home/!ulano/tmp/algo@txt
D!ulanoSlocalhost TEF chmod 688 T/tmp/algo@txt
D!ulanoSlocalhost TEF ls l T/tmp/algo@txt
-r*;r-;r-; - <)4no <)4no $ /4r , -5?$% /home/!ulano/tmp/algo@txt
D!ulanoSlocalhost TEF
+7.5.+. 0pciones de c$mod
Opcn Descripcin
-R Camba permsos de forma descendente en un drectoro dado. Es a nca opcn de os
estndares POSIX
-c Muestra que archvos han cambado recentemente en una ubcacn dada
-f No muestra errores de archvos o drectoros que no se hayan poddo cambar
-v Descrpcn detaada de os mensa|es generados por e proceso
+7.5.*. "l mandato c$mod y los enlaces sim!licos
E mandato c$mod |ams camba os permsos de enaces smbcos; sn embargo no representa
un probema en vrtud de que |ams se utzan os permsos de os enaces smbcos. S se apca
e mandato c$mod sobre un enace smbco, se cambar e permso de archvo o drectoro
haca e cua apunta. Cuando se apca c$mod de forma descendente en un drectoro, ste gnora
os enaces smbcos que pudera encontrar en e recorrdo.
172
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
+9. Cmo utili8ar el mandato c$attr.
Autor: $oel Barrios 'ue!as
Correo electrnico: dar(sram en gmail punto com
Sitio 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.+.+. Acerca del mandato c$attr.
E mandato c$attr se utza para cambar os atrbutos de os sstemas de archvos e2t* y e2t3.
Desde certo punto de vsta, es anogo a mandato c$mod, pero con dferente sntaxs y opcones.
Utzado adecuadamente, dfcuta as accones en e sstema de archvos por parte de un ntruso
que haya ogrado sufcentes prvegos en un sstema.
En a mayora de os casos, cuando un ntruso consgue sufcentes prvegos en un sstema, o
prmero que har ser emnar os regstros de sus actvdades modfcando estructuras de os
archvos de btcoras de sstema y otros componentes. Utzar e mandato c$attr certamente no
es obstcuo para un usuaro experto, pero, afortunadamente, a gran mayora de os ntrusos
potencaes no sueen ser expertos en GNU/Lnux o Unx, dependendo enormemente de dversos
programas o guones (os denomnados root(its y zappers) para emnar aqueo que permta
descubrr sus actvdades.
Utzar e mandato c$attr, ncudo en e paquete e*&sprogs, que se nstaa de forma
predetermnada en todas as dstrbucones de GNU/Lnux por, tratarse de un componente
esenca, hace ms dfc borrar o aterar btcoras, archvos de confguracn y componentes de
sstema. Theodore Ts'o es e desarroador y quen se encarga de mantener e*&sprogs, msmo que
se dstrbuye ba|o os trmnos de a cenca ?),=?<, e ncuye otras herramentas como e2fsck,
e2abe, fsck.ext2, fsck.ext3, mkfs.ext2, mkfs.ext3, tune2fs y dumpe2fs, entre otras.
URL: http://e2fsprogs.sourceforge.net/
+9.*. 0pciones.
(' Camba recursvamente os atrbutos de drectoros y sus contendos. Los
enaces smbcos que se encuentren, son gnorado
(F Sada de c$arttr ms descrptva, mostrando adems a versn de
programa.
(v Ver e nmero de versn de programa.
173
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
+9.3. 0peradores.
G Hace que se aadan os atrbutos especfcados a os atrbutos exstentes
de un archvo.
( Hace que se emnen os atrbutos especfcados de os atrbutos
exstentes de un archvo
R Hace que soamente haya os atrbutos especfcados.
+9.4. Atri!utos.
A Estabece que a fecha de tmo acceso (atme) no se modfca.
a Estabece que e archvo soo se puede abrr en modo de ad|untar para
escrtura.
c Estabece que e archvo es comprmdo automtcamente en e dsco
por e nceo de sstema operatvo. A reazar ectura de este archvo,
se descomprmen os datos. La escrtura de dcho archvo comprme os
datos antes de amacenaros en e dsco.
D Cuando se trata de un drectoro, estabece que os datos se escrben de
forma sncrnca en e dsco. Es decr, os datos se escrben
nmedatamente en ugar de esperar a operacn correspondente de
sstema operatvo. Es equvaente a a opcn dirsync de mandato
mount, pero apcada a un subcon|unto de archvos.
d Estabece que e archvo no sea canddato para respado a utzar a
herramenta dump.
i Estabece que e archvo ser nmutabe. Es decr, no puede ser
emnado, n renombrado, no se pueden apuntar enaces smbcos, n
escrbr datos en e archvo.
. En os sstemas de archvos ext3, cuando se montan con as opcones
dataRordered o dataRPrite!acK, se estabece que e archvo ser
escrto en e regstro por daro (Journal). S e sstema de archvos se
monta con a opcn dataR.ournal (opcn predetermnada), todo e
sstema de archvos se escrbe en e regstro por daro y por o tanto e
atrbuto no tene efecto.
s Cuando un archvo tene este atrbuto, os boques utzados en e dsco
duro son escrtos con ceros, de modo que os datos no se puedan
recuperar por medo aguno. Es a forma ms segura de emnar datos.
> Cuando e archvo tene este atrbuto, sus cambos son escrtos de forma
sncrnca en e dsco duro. Es decr, os datos se escrben
nmedatamente en ugar de esperar a operacn correspondente de
sstema operatvo. Es equvaente a a opcn sync de mandato mount.
u Cuando un archvo con este atrbuto es emnado, sus contendos son
guardados permtendo recuperar e archvo con herramentas para ta
fn.
174
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
+9.5. ,tili8acin.
chattr DR&E N)D3ac$diMsSuE Dv versiQnE archivos
+9.5.+. ".emplos.
e sguente mandato agrega e atrbuto nmutabe a archvo ago.txt..
chattr Ni algo@txt
E sguente mandato emna e atrbuto nmutabe a archvo ago.txt.
chattr i algo@txt
E sguente mandato agrega e modo de soo ad|untar para escrtura a archvo ago.txt.
chattr Na algo@txt
E sguente mandato emna e modo de soo ad|untar para escrtura a archvo ago.txt.
chattr a algo@txt
E sguente mandato estabece que e archvo ago.txt soo tendr os atrbutos a, A, s y >.
chattr )a3sS algo@txt
E sguente mandato sta os atrbutos de archvo ago.txt.
lsattr algo@txt
175
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
+S. Creando depsitos yum
Autor: $oel Barrios 'ue!as
Correo electrnico: dar(sram en gmail punto com
Sitio 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.
Yum es una herramenta sumamente t para e mane|o de paquetera RPM. Aprender a crear en
e dsco duro as bases de datos para os depstos yum resuta prctco puesto que no habr
necesdad de recurrr haca os depstos ocazados en servdores en Internet y consumr
nnecesaramente ancho de banda en e proceso.
+S.*. <rocedimientos
Prmero se deben generar os drectoros que ao|arn os depstos. Uno para a paquetera
ncuda en os dscos de nstaacn y otro para as actuazacones:
mkdir p /var/!tp/pub/os
mkdir p /var/!tp/pub/updates
Tome todos os dscos de nstaacn y cope ntegramente su contendo haca e nteror de
drectoro ocazado en a ruta /var/ftp/pub/os/ con e sguente procedmento:
mount /media/cdrom
cp R! /media/cdrom/O /var/!tp/pub/os/
eMect
De msmo modo, s dspone de CD correspondente, cope (o ben descargue) todas as
actuazacones dentro de drectoro ocazado en a ruta /var/ftp/pub/updates/ con e sguente
procedmento:
mount /media/cdrom
cp R! /media/cdrom/O /var/!tp/pub/updates/
eMect
Una vez copado todo a dsco duro, hay que nstaar e paquete createrepo, ncudo en os dscos
de nstaacn de CentOS y Whte Box Enterprse Lnux.
yum y install createrepo
Una vez nstaado, so basta e|ecutar createrepo sobre cada drectoro a fn de generar os
depstos yum:
176
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
createrepo /var/!tp/pub/os/
createrepo /var/!tp/pub/updates/
Se puede acceder ocamente a os depstos generados utili8ando las siguientes lneas como
contendo de archvo `.repo ocazado dentro de =etc=yum.repos.d=, en ugar de as neas que
apuntan haca servdores en Internet:
DbaseE
name)%nterprise 0inux Freleasever Fbasearch base
baseurl)!ile"///var/!tp/pub/os/
gpgcheck)1
enabled)1
DupdatesreleasedE
name)%nterprise 0inux Freleasever Fbasearch =pdates Released
baseurl)!ile"///var/!tp/pub/updates/
gpgcheck)1
enabled)1
S se desea acceder a estos msmo depstos utzando e servco FTP, y suponiendo que e
servdor utzara 192.168.1.1 como dreccn IP, as mqunas cente deben utzar o sguente:
DbaseE
name)%nterprise 0inux Freleasever Fbasearch base
baseurl)!tp"//175@164@1@1/pub/os/
gpgcheck)1
enabled)1
DupdatesreleasedE
name)%nterprise 0inux Freleasever Fbasearch =pdates Released
baseurl)!tp"//175@164@1@1/pub/updates/
gpgcheck)1
enabled)1
Antes de utzar a opcn gpgc$ecKR+, se debern mportar as aves pbcas GPG que estn en
e dsco 1 de nstaacn de sstema.
mount /media/cdrom
rpm import /media/cdrom/OH%:O
S cre un depsto con e dsco de extras de curso, a ave pbca de Acance Lbre se encuentra
en e drectoro raz de CD.
S utza Red Hat Enterprse Lnux 3, CentOS 3.0 o Whte Box Enterprse Lnux 3, se utza yum(
arc$ en ugar de createrepo, y =mnt=cdrom en ugar de /meda/cdrom.
Whte Box Enterprse Lnux 4 no ncuye yum por defecto, por o que hay que nstaaro
manuamente desde os dscos de nstaacn.
177
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*O. ,so de yum para instalar y desinstalar
pa#uetera y actuali8ar sistema
Autor: $oel Barrios 'ue!as
Correo electrnico: dar(sram en gmail punto com
Sitio 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.
*O.+. %ntroduccin
Actuazar e sstema apcando os ms recentes parches de segurdad y correctvos a sstema
operatvo no es tan dfc como muchos suponen, n tampoco tene que ser un nferno de
dependencas entre paquetes RPM como agunos argumentan. La readad de as cosas es que es
mucho muy smpe y so requere de un buen ancho de banda, o ben, de muchsma pacenca. A
contnuacn presentamos os procedmentos para utzar yum y reali8ar &;cilmente o que
agunos denomnan como orrible, difcil y complicado1.
Los procedmentos son tan smpes que reamente no hay muchas excusas para no apcar os
parches de segurdad y correctvos a sstema.
*O.*. <rocedimientos
*O.*.+. Actuali8ar sistema
Actuazacn de sstema con todas as dependencas que sean necesaras:
yum update
*O.*.*. B1s#uedas
ealizar una b!s"ueda de alg!n pa"uete o t#rmino en la base de datos en alguno de los dep$sitos yum
confgurados en e sstema:
yum search cualJuierpaJuete
E|empo:
yum search httpd
*O.*.3. Consulta de in&ormacin
Consutar a nformacn contenda en un paquete en partcuar:
178
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
yum in!o cualJuierpaJuete
E|empo:
yum in!o httpd
*O.*.4. %nstalacin de pa#uetes
Instaacn de paquetera con resoucn automtca de dependencas:
yum install cualJuierpaJuete
E|empo:
yum install httpd
*O.*.5. Desinstalacin de pa#uetes
Desnstaacn de paquetes |unto con todo aqueo que dependa de os msmos:
yum remove cualJuierpaJuete
E|empo:
yum remove httpd
*O.*.5.+. Algunos pa#uetes #ue se pueden desinstalar del sistema.
Los sguentes paquetes pueden ser desnstaados de sstema de manera segura |unto con todo
aqueo que dependa de stos:
1. pcmca-cs (kerne-pcmca-cs): requerdo so en computadoras porttes para e soporte
de PCMCIA.
2. mdadm: requerdo so para arregos RAID.
3. autofs: servco de auto-montado de undades de dsco.
4. ypserv: servdor NIS, utzado prncpamente como servdor de autentcacn.
5. ypbnd, yp-toos: herramentas necesaras para autentcar contra un servdor NIS (ypserv)
6. hwcrypto: bbotecas y herramentas para nteractuar con aceeradores crptogrfcos de
sustento fsco (hardware).
7. vnc-server: servdor VNC
8. rda-uts: herramentas y soporte para dspostvos nfrarro|os.
E|ecute o sguente para desnstaar os paquetes anterormente menconados:
yum y remove pcmciacs mdadm auto!s ypserv ypbind yptools hwcrypto vnc
server irdautils
179
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*O.*.6. istado de pa#uetes
Lo sguente star todos os paquetes dsponbes en a base de datos yum y que pueden
nstaarse:
yum list available ^ less
Lo sguente star todos os paquetes nstaados en e sstema:
yum list installed ^less
Lo sguente star todos os paquetes nstaados en e sstema y que pueden (y deben)
actuazarse:
yum list updates ^ less
*O.*.7. impie8a del sistema
Yum proporcona como resutado de su uso cabeceras y paquetes RPM amacenados en e nteror
de drectoro ocazado en a ruta =var=cac$e=yum=. Partcuarmente os paquetes RPM que se han
nstaado pueden ocupar mucho espaco y, es por ta motvo, que convene emnaros una vez que
ya no tenen utdad. Iguamente convene hacer o msmo con as cabeceras ve|as de paquetes
que ya no se encuentran en a base de datos. A fn de reazar a mpeza correspondente, puede
e|ecutarse o sguente:
yum clean all
180
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*+. Cmo utili8ar '<:
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.
*+.+. %ntroduccin.
*+.+.+. Acerca de '<:.
'<: <acKage :anager, anterormente conocdo como 'ed Hat <ackage :anager y que es ms
conocdo por su nombre abrevado '<:, es un sstema de gestn de paquetera para
dstrbucones de GNU/Lnux y que est consderado en a Base Estndar para Lnux (nux
>tandard Base o >B), que es un proyecto cuyo ob|etvo es desarroar y promover estndares
para me|orar a compatbdad entre as dstrbucones de GNU/Lnux para permtr a as
apcacones ser utzadas en cuaquer dstrbucn.
RPM fue orgnamente desarroado por 'ed Eat para su dstrbucn de GNU/Lnux, y ha sdo
evado haca otra dstrbucones de Lnux y sstemas operatvos.
RPM utza una base de datos que se amacena en =var=li!=rpm, a cua contene toda a meta-
nformacn de todos os paquetes que son nstaados en e sstema y que es utzada para dar
segumento a todos os componentes que son nstaados. Esto permte nstaar y desnstaar
mpamente todo tpo de apcacones, bbotecas, herramentas y programas y gestonar sus
dependencas exactas.
*+.*. <rocedimientos.
RPM vene nstaado de modo predetermnado en 'ed Eat "nterprise inu2, Fedora, Cent0>,
W$ite Bo2 "nterprise inu2, >u>" inu2, 0pen>u>", :andriva y dstrbucones dervadas de
estas.
*+.*.+. 'econstruccin de la !ase de datos de '<:.
Hay certos escenaros en donde se puede corromper a base de datos de '<:. sta se puede
reconstrur fcmente utzando e sguente mandato:
rpm rebuilddb
181
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*+.*.*. Consulta de pa#uetera instalada en el sistema.
S se desea conocer s est nstaado un paquete en partcuar, se utza e mandato rpm con a
opcn (#, que reaza una consuta (query) en a base de datos por un nombre de paquete en
partcuar. En e sguente mandato, donde como e|empo se preguntar a '<: s est nstaado e
paquete traceroute:
rpm J traceroute
Lo anteror debe devover una sada smar a a sguente:
traceroute5@#@15@el8
S se desea conocer que es o que nformacn ncuye e paquete traceroute, se utza e
mandato rpm con as opcones (#i, para hacer a consuta y soctar nformacn de paquete
(query info). En e sguente e|empo se consuta a mandato rpm por a nformacn de paquete
traceroute:
rpm Ji traceroute
Lo anteror debe devover una sada smar a a sguente:
+ame " traceroute Relocations" (not relocatable)
&ersion " 5@#@1 &endor" (ent.S
Release " 5@el8 9uild $ate" scb #6 ene 5##6 #>"#5"1? (S/
'nstall $ate" mie ?# abr 5##4 11">6"#7 ($/ 9uild 1ost" builder8@centos@org
Iroup " 3pplications/'nternet Source R;," traceroute5@#@15@el8@src@rpm
SiCe " 87656 0icense" I;0
Signature " $S3/S131B mar #? abr 5##6 17"54"15 ($/B Hey '$ a4a>>6dce4865476
=R0 " http"//dmitry@butskoy@name/traceroute
Summary " /races the route taken by packets over an ';v>/';v6 network
$escription "
/he traceroute utility displays the route used by '; packets on their
way to a speci!ied network (or 'nternet) host@ /raceroute displays
the '; number and host name (i! possible) o! the machines along the
route taken by the packets@ /raceroute is used as a network debugging
tool@ '! youXre having network connectivity problemsB traceroute will
show you where the trouble is coming !rom along the route@
'nstall traceroute i! you need a tool !or diagnosing network connectivity
problems@
Puede consutarse qu componentes forman parte de paquete utzando e mandato rpm con as
opcones (#l, donde se reaza una consuta stando os componentes que o ntegran (query list).
S se desea conocer que componentes nsta e paquete traceroute, utce e sguente mandato:
rpm Jl traceroute
Lo anteror debe devover una sada smar a a sguente:
/bin/traceroute
/bin/traceroute
/bin/traceroute6
/bin/tracert
/usr/share/doc/traceroute5@#@1
/usr/share/doc/traceroute5@#@1/(.;:'+I
/usr/share/doc/traceroute5@#@1/(R%$'/S
182
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
/usr/share/doc/traceroute5@#@1/R%3$,%
/usr/share/doc/traceroute5@#@1//.$.
/usr/share/man/man4/traceroute@4@gC
S se desea consutar a cua paquete pertenece un eemento nstaado en e sstema, se utza e
mandato rpm con as opcones (#&, que reazan una consuta por un archvo en e sstema de
archvos (query file). En e sguente e|empo se consutar a a mandato rpm a que paquete
pertenece e archvo =etc=cronta!:
rpm J! /etc/crontab
Lo anteror debe devover una sada smar a a sguente:
crontabs1@1#4
S desea consutar a sta competa de paquetes nstaados en e sstema, utce e sguente
mandato, donde (#a sgnfca consutar todo (query all):
rpm Ja
Debdo a que o anteror devueve una sta demasado grande para podera vsuazar con
comoddad, puede utzarse less o more como subrutna:
rpm Ja ^less
S se quere ocazar un paquete o paquetes en partcuar, se puede utzar e mandato rpm con
as opcones (#a y utzar grep como subrutna. En e sguente e|empo se hace una consuta
donde se quere conocer que paquetes estn nstaado en e sstema y que ncuyan a cadena p$p
en e nombre.
rpm Ja ^grep php
Lo anteror pudera devover una sada smar a a sguente:
php8@1@618@el8
phpmbstring8@1@618@el8
phppear1@>@7>
phpldap8@1@618@el8
phpcli8@1@618@el8
phpmysJl8@1@618@el8
phpodbc8@1@618@el8
phpcommon8@1@618@el8
phppdo8@1@618@el8
S se quere revsar en orden cronogco, de ms nuevos a ms antguos, que paquetes estn
nstaados, se puede agregar a (#a a opcn ((last, y less o more como subrutna para vsuazar
con comoddad a sada.
rpm Ja last^less
183
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Lo anteror devueve una sada extensa dentro con less como vsor. Puse a tecas de arri!a () y
a!a.o (J) o Av. <;g. y 'eg. <;g. para despazarse en a sta. Puse a teca # para sar.
S se quere verfcar s os componentes nstaados por un paquete '<: han sdo modfcados o
aterados o emnados, se puede utzar e mandato rpm con a opcn (F, a cua reaza una
verfcacn de a ntegrdad de os componentes de acuerdo a as frmas dgtaes de cada
componente (MD5SUM o suma MD5). En e sguente e|empo se verfcara s e paquete cronta!s
ha sdo aterado:
rpm & crontabs
S agn componente fue modfcado, puede devoverse una sada smar a a sguente, donde e
archvo =etc=cronta! fue modfcado tras su nstaacn:
S@8@@@@/ c /etc/crontab
S se desea reazar una verfcacn de todos os componentes de sstema, se puede utzar e
mandato rpm con as opcones (Fa, que hace una consuta, especfca todos os paquetes, y
socta se verfque s hubo cambos (query all 8erify).
rpm &a
Lo anteror puede devover una sada muy extensa, pero sn duda aguna mostrar todos os
componentes que fueron modfcados o aterados o emnados tras a nstaacn de paquete a
que pertenecen. Un e|empo de una sada comn sera:
@@@@@@@/ c /etc/pki/nssdb/cert4@db
@@@@@@@/ c /etc/pki/nssdb/key?@db
@@8@@@@/ c /etc/pki/nssdb/secmod@db
S@8@@@@/ c /etc/crontab
@@@@@@@/ c /etc/inittab
S@8@@@@/ c /etc/rc@d/rc@local
S@8@@@@/ c /etc/mail/access
S@8@@@@/ c /etc/mail/localhostnames
S@8@@@@/ c /etc/mail/sendmail@c!
S@8@@@@/ c /etc/mail/sendmail@mc
*+.*.3. %nstalacin de pa#uetes.
La mayora de os dstrbudores seros de equpamento gco en formato RPM sempre utzan
una frma dgta PG/GnuPG para garantzar que stos son confabes y como un mtodo de evtar
que paquetes aterados pasen por e usuaro admnstrador de sstema y sstemas de gestn de
paquetes como yum, up2date, Yast, Pup, etc., sn ser detectados. Las frmas dgtaes de os
responsabes de a dstrbucn sempre ncuyen frmas dgtaes en e dsco de nstaacn o ben
en aguna parte de sstema de archvos. En e caso de Cent0> y 'ed Eat "nterprise, as frmas
dgtaes estn en /usr/share/doc/rpm-*/ o ben =usr=s$are=r$n=. Agunos dstrbudores pueden
tener estas frmas en agn servdor HTTP o FTP. Para mportar una frma dgta, se utza e
mandato rpm con a opcn ((import. Para e|empfcar, reace e sguente procedmento:
rpm import http"//www@alcancelibre@org/al/30R;,H%:
184
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Lo anteror mporta a frma dgta de Alcance i!re y permtr detectar s un paquete de
Acance Lbre fue aterado o est corrupto o s fue daado. S se utza yum para gestonar a
paquetera, ste de modo predetermnado mpde nstaar paquetes que s estos carecen de una
frma dgta que est nstaada en a base de datos de '<:.
Cuando se desee nstaar un paquete con extensn `.rpm, sempre es convenente revsar dcho
paquete. Hay varas formas de verfcar su contendo antes de proceder a nstaado. Para fnes
demostratvos, ngrese haca http://www.acancebre.org/a/webapps/ y descarge e paquete tne&.
Una vez descargado e paquete tne&, se puede verfcar a nformacn de dcho paquete utzando
e mandato rpm con as opcones (#p, para reazar a consuta especfcando que se trata de un
paquete '<: (query pac(age), y a opcn -, para soctar nformacn.
rpm Jpi tne!1@5@?@11@1@el8@al@i?46@rpm
Lo anteror debe devover una sada smar a a sguente:
+ame " tne! Relocations" /usr
&ersion " 1@5@?@1 &endor" 3lcance 0ibreB 'nc@
Release " 1@1@el8@al 9uild $ate" mie #5 may 5##6 1>"#6"87 ($/
'nstall $ate" (not installed) 9uild 1ost" localhost@localdomain
Iroup " ,ail/%ncoders Source R;," tne!1@5@?@11@1@el8@al@src@rpm
SiCe " 1?>678 0icense" I;0
Signature " $S3/S131B mie #5 may 5##6 1>"#6"## ($/B Hey '$ 71##>d!46c#4#b??
;ackager " aoel 9arrios _http"//Moelbarrios@blogspot@com/R
=R0 " http"//tne!@source!orge@net
Summary " $ecodes ,S/+%< attachments@
$escription "
/+%< is a program !or unpacking ,',% attachments o! type
*application/mstne!*@ /his is a ,icroso!t only attachment@
$ue to the proli!eration o! ,icroso!t .utlook and %xchange mail serversB
more and more mail is encapsulated into this !ormat@
/he /+%< program allows one to unpack the attachments which were
encapsulated into the /+%< attachment@ /hus alleviating the need to use
,icroso!t .utlook to view the attachment@
S se desea conocer que componentes va a nstaar un paquete RPM en partcuar, se puede utzar
e mandato rpm con as opcones (#pl, para reazar a consuta, especfcar que se trata de un
paquete '<: y para soctar a sta de componentes (query pac(age list). En e sguente e|empo
se reaza esta consuta contra e paquete tne&(+.*.3.+(+.+.el5.al.i396.rpm:
rpm Jpl tne!1@5@?@11@1@el8@al@i?46@rpm
Lo anteror debe devover una sada smar a a sguente:
/usr/bin/tne!
/usr/man/man1/tne!@1@gC
/usr/share/doc/tne!1@5@?@1
/usr/share/doc/tne!1@5@?@1/3=/1.RS
/usr/share/doc/tne!1@5@?@1/9=IS
/usr/share/doc/tne!1@5@?@1/(.;:'+I
/usr/share/doc/tne!1@5@?@1/(hange0og
/usr/share/doc/tne!1@5@?@1/+%2S
/usr/share/doc/tne!1@5@?@1/R%3$,%
/usr/share/doc/tne!1@5@?@1//.$.
185
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Para verfcar s as frmas dgtaes de un paquete '<: son as msmas y e paquete no ha sdo
aterado, se puede utzar e mandato rpm con as opcn (I, que socta verfcar frmas dgtaes
de un paquete '<: (9eys):
rpm H tne!1@5@?@11@1@el8@al@i?46@rpm
S e paquete est ntegro, debe devover una sada smar a a sguente:
tne!1@5@?@11@1@el8@al@i?46@rpm" (sha1) dsa sha1 md8 gpg .H
S e paquete RPM fue daado, aterado o est corrupto, puede devover una sada smar a a
sguente:
tne!1@5@?@11@1@el8@al@i?46@rpm" (sha1) dsa sha1 ,$8 I;I NOT O(
Para nstaar un paquete, se utza e mandato rpm con as opcones (iv$, que sgnfca nstaar,
devover una sada descrptva y mostrar una barra de progreso (install verbose as). S e
paquete no hace confcto con otro y/o no sobreescrbe componentes de otro paquete, se
proceder a nstaar e msmo. En e sguente e|empo se nstaar e paquete tne&(+.*.3.+(
+.+.el5.al.i396.rpm:
rpm ivh tne!1@5@?@11@1@el8@al@i?46@rpm
Lo anteror debe devover una sada smar a a sguente:
;reparing@@@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA D1##VE
1"tne! AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA D1##VE
S hubera una versn de ste paquete nstaada en e sstema, rpm (iv$ no reazar a
nstaacn y devover un mensa|e respecto a que a est nstaado dcho paquete. Repta e
sguente mandato:
rpm ivh tne!1@5@?@11@1@el8@al@i?46@rpm
A ya haber sdo nstaado e paquete tne&, e sstema deber devover una sada smar a a
sguente:
;reparing@@@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA D1##VE
package tne!1@5@?@11@1@el8@al is already installed
Hay crcunstancas y escenaros donde se requere renstaar de nuevo e paquete. Para ograr esto
se agrega a opcn ((&orce para forzar a renstaacn de un paquete. En e sguente e|empo se
socta a mandato rpm forzar a renstaacn de e paquete tnef-1.2.3.1-1.1.e5.a.386.rpm:
rpm ivh !orce tne!1@5@?@11@1@el8@al@i?46@rpm
Lo anteror debe devover una sada smar a a sguente:
;reparing@@@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA D1##VE
1"tne! AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA D1##VE
186
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Para verfcar as dependencas de un paquete descargado, se utza e mandato rpm con
as opcones (#p y ((re#uires, a cua consuta as dependencas de paquete. En e sguente
e|empo, se ha descargado e paquete .oomla(+.O.+5(*.S.el5.al.noarc$.rpm desde
http://www.acancebre.org/a/webapps/, y se procede a consutar sus dependencas:
rpm Jp reJuires Moomla1@#@185@7@el8@al@noarch@rpm
Lo anteror debe devover una sada smar a a sguente:
con!ig(Moomla) ) 1@#@185@7@el8@al
httpd
php R) 8
phpmysJl
phpxml
rpmlib((ompressed<ile+ames) _) ?@#@>1
rpmlib(;ayload<iles1ave;re!ix) _) >@#1
Pueden hacerse consutas a a nversa de o anteror, es decr, consutar a mandato rpm que
paquete provee aguna dependenca en partcuar. En e sguente e|empo se soctar a mandato
rpm que paquete provee a dependenca p$p.
rpm J whatprovides php
Lo anteror debe devover una sada smar a a sguente:
php8@1@618@el8
Tambn puede consutarse qu requere de un paquete o componente en partcuar. En e
sguente e|empo se consuta a mandato rpm que paquetes requeren a paquete $ttpd.
rpm J whatreJuires httpd
Lo anteror puede devover una sada smar a a sguente:
systemcon!ighttpd1@?@?@11@el8
sJuirrelmail1@>@4>@#@1@el8@centos@5
sJuirrelmail1@>@4>@#@1@el8@centos@5
gnomeusershare#@1#6@el8
De ser necesaro, se puede ncuso hacer consutas respecto a archvos (como bbotecas
compartdas) para conocer que paquetes dependen de stos. En e sguente e|empo se consuta
a mandato rpm que paquetes requeren a a bboteca li!!8*.so.+:
rpm J whatreJuires libbC5@so@1
Lo anteror debe devover una sada smar a a sguente, y que consste en una sta de paquetes
'<: nstaados en e sstema:
bCip5libs1@#@??
bCip51@#@??
python5@>@?17@el8
gnupg1@>@81?
187
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
elinks#@11@18@1@#@1@el8
rpm>@>@5>6@el8
rpmlibs>@>@5>6@el8
rpmpython>@>@5>6@el8
gnomev!s55@16@5>@el8
libgs!1@1>@16@1
phpcli8@1@618@el8
php8@1@618@el8
kdelibs?@8@>1?@el8@centos
'mage,agick6@5@4@#>@el8-1@1
Para nstaar o actuazar un paquete, se utza e mandato rpm con as opcones -Uvh, que
sgnfca nstaar o actuazar, devover una sada descrptva y mostrar una barra de progreso
(update verbose as), y se procede a nstaar y/o actuazar e msmo:
rpm =vh Moomla1@#@185@7@el8@al@noarch@rpm
S fata aguna de as dependencas, e sstema devover una sada smar a a sguente:
error" <ailed dependencies"
phpxml is needed by Moomla1@#@185@7@el8@al@noarch
Evdentemente se debe nstaar e paquete p$p(2m para poder nstaar e paquete .oomla(
+.O.+5(*.S.el5.al.noarc$.rpm. Este puede estar ncudo en e dsco de nstaacn o ben estar
ncudo entre as actuazacones de sstema.
S e paquete php-xm hubera estado nstaado (yum (y install p$p(2ml), a sada hubera sdo
smar a a sguente:
;reparing@@@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA D1##VE
1"Moomla AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA D1##VE
Antes de a aparcn de yum, este era e tal#n de Aquiles de '<:. Actuamente estos probemas
se pueden resover utzando yum en os sstemas que o ncuyen. La forma ms prctca de
nstaar paquetera '<: resovendo dependencas automtcamente es a travs de yum. En e
sguente e|empo se reaza e procedmento de nstaacn de paquete .oomla(+.O.+5(
*.S.el5.al.noarc$.rpm utzando yum:
yum y localinstall Moomla1@#@185@7@el8@al@noarch@rpm
Lo anteror debe devover una sada smar a a sguente:
0oading *!astestmirror* plugin
0oading *skipbroken* plugin
0oading *installonlyn* plugin
Setting up 0ocal ;ackage ;rocess
%xamining Moomla1@#@185@7@el8@al@noarch@rpm" Moomla 1@#@18
5@7@el8@al@noarch
,arking Moomla1@#@185@7@el8@al@noarch@rpm to be installed
Setting up repositories
0oading mirror speeds !rom cached host!ile
Reading repository metadata in !rom local !iles
Resolving $ependencies
R ;opulating transaction set with selected packages@ ;lease wait@
188
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
R ;ackage Moomla@noarch #"1@#@185@7@el8@al set to be updated
R Running transaction check
R ;rocessing $ependency" phpxml !or package" Moomla
R Restarting $ependency Resolution with new changes@
R ;opulating transaction set with selected packages@ ;lease wait@
R ;ackage phpxml@i?46 #"8@1@618@el8 set to be updated
R Running transaction check
$ependencies Resolved
)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
;ackage 3rch &ersion Repository SiCe
)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
'nstalling"
Moomla noarch 1@#@185@7@el8@al Moomla1@#@18
5@7@el8@al@noarch@rpm 6@? ,
'nstalling !or dependencies"
phpxml i?46 8@1@618@el8 base 7? k
/ransaction Summary
)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
'nstall 5 ;ackage(s)
=pdate # ;ackage(s)
Remove # ;ackage(s)
/otal download siCe" 6@> ,
$ownloading ;ackages"
Running /ransaction /est
<inished /ransaction /est
/ransaction /est Succeeded
Running /ransaction
'nstalling" phpxml AAAAAAAAAAAAAAAAAAAAAAAAA D1/5E
'nstalling" Moomla AAAAAAAAAAAAAAAAAAAAAAAAA D5/5E
'nstalled" Moomla@noarch #"1@#@185@7@el8@al
$ependency 'nstalled" phpxml@i?46 #"8@1@618@el8
(ompleted
Agunos paquetes ncuyen guones que e|ecutan procesos que pueden ser requerdos prevo o
posteror a a nstaacn. S no se desea que se e|ecuten estos guones, se aade a rpm (iv$ o
rpm (,v$ a opcn ((noscripts. En e sguente e|empo, se nstaar e paquete .oomla(+.O.+5(
*.S.el5.al.noarc$.rpm sn a e|ecucn de os guones que puderan estar defndos en e paquete
'<::
rpm =vh noscripts Moomla1@#@185@7@el8@al@noarch@rpm
*+.*.3.+. 'ecuperacin de permisos originales a partir de rpm.
En crcunstancas en as cuaes ser reazaron cambos en os permsos en e sstema de archvos,
es posbe vover a de|aros de acuerdo a os especfcados en e paquete '<: orgna utzando e
mandato rpm con a opcn ((setperms de sguente modo:
rpm setperms paJuete
Vea e permso de =usr=!in=passPd de sguente modo:
ls l /usr/bin/passwd
Lo anteror puede devover una sada smar a a sguente:
rwsrxrx 1 root root 5574> ene 6 5##6 /usr/bin/passwd
189
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Cambe e permso de sguente modo:
chmod 6## /usr/bin/passwd
Vueva a ver e permso de =usr=!in=passPd de sguente modo:
ls l /usr/bin/passwd
Lo anteror debe devover una sada smar a a sguente:
rwx 1 root root 5574> ene 6 5##6 /usr/bin/passwd
E archvo =usr=!in=passPd pertence a paquete passwd, confrmeo de sguente modo:
rpm J! /usr/bin/passwd
Lo anteror debe devover una sada smar a a sguente:
passwd#@6?1
Para recuperar de nuevo e permso orgna de =usr=!in=passPd, utce o sguente:
rpm setperms passwd
Vueva a ver e permso de =usr=!in=passPd de sguente modo:
ls l /usr/bin/passwd
Lo anteror debe devover una sada smar a a sguente y que corresponde a permso orgna
de archvo =usr=!in=passPd:
rwsrxrx 1 root root 5574> ene 6 5##6 /usr/bin/passwd
*+.*.4. Desinstalacin de pa#uetes.
Para desnstaar paquetera, se utza e mandato rpm con a opcn -e, que se utza para
emnar, seguda de nombre de paquete. En e sguente e|empo, se socta a mandato rpm
desnstaar os paquetes .oomla y p$p(2ml:
rpm e Moomla phpxml
S no hay dependencas que o mpdan, e sstema soo devover e smboo de sstema. S e
paquete o aguno de sus componentes fuera dependenca de otro u otros paquetes, e sstema
nformar que no es posbe desnstaar y devover a sta de paquetes que o requeren. En e
sguente e|empo se tratar de desnstaar e paquete cronta!s:
rpm J crontabs
190
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Como e paquete cronta!s es requerdo por anacron, e sstema devover una sada smar a a
sguente:
error" <ailed dependencies"
crontabs is needed by (installed) anacron5@?>8@el8@centos@i?46
S se desea des nstaar cuaquer paquete sn mportar que otros dependan de este, se puede
utzar agregar a opcn ((nodeps. Esto es contrandcado, y soo debe ser utzado es stuacones
muy partcuares o escenaros donde as se requere. Evte sempre desnstaar paquetes que sean
dependenca de otros en e sstema a menos que vaya a renstaar nmedatamente un paquete
que os susttuya.
191
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
**. Cmo crear pa#uetera con rpm!uild
Autor: $oel Barrios 'ue!as
Correo electrnico: dar(sram en gmail punto com
Sitio 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.
**.+. %ntroduccin
Crear paquetera a travs de rpmbud no es tan compcado como agunos suponen. Aunque no se
nstaa de modo predetermnado, rpmbud es una herramenta que forma parte de paquete
rpm-bud y que se ncuye en a mayora de as dstrbucones actuaes que utzan paquetera en
formato RPM.
Este documento mostrar os procedmentos para:
Generar una cave GnuPG para frmar dgtamente os paquetes creados.
Confguracn y creacn de una |aua para rpmbud.
Creacn de archvos *.spec.
Uso de mandato rpmbud.
**.*. %nstalacin del e#uipamiento lgico necesario
Es ndspensabe contar con a paquetera de desarroo mnma necesara nstaada en e sstema.
Lamentabemente no hay recetas mgcas. S se pretende crear paquetera a partr de cdgos
fuente es necesaro estar famarzado con as bbotecas compartdas necesaras, cabeceras de
desarroo, compadores y otras herramentas de desarroo reaconadas o requerdas por un
equpamento gco en partcuar. Un con|unto mnmo sera e sguente:
Gcc: compador.
gbc-deve: bbotecas de desarroo para C.
automake: generador de archvos Makefe.
autoconf: herramenta para confguracn de cdgos fuente y archvos Makefe.
rpm-bud y rpm-deve.
gnupg
Gpgme y seahorse: $erramientas incluidas en <@ DesKtop que se utzarn en
os procedmentos de este documento para generar a cave utzada para frmar
dgtamente os paquetes rpm resutantes.
S va a crear paquetera para GNOME, necestar por o menos o sguente, con todo
o que dependa de ste: gb2-deve, atk-deve, pango-deve, gtk2-deve, bbonobou-
deve, bgnomeu-deve, gnome-vfs2-deve, bwnck-deve, gnome-pane-deve,
gnome-desktop-deve, nautus-deve, gstreamer-deve y gstreamer-pugns-deve.
S va a crear paquetera para KDE, necestar a menos o sguente, con todo o que
dependa de ste: qt-deve, arts-deve, kdebs-deve, kdebase-deve, kdenetwork-
deve, kdegraphcs-deve y kdemutmeda-deve.
S utza Cent OS, Whte Box Enterprse Lnux o ben Red Hat Enterprse Lnux, necestar correr
o sguente para nstaar e mnmo de paquetera:
192
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
yum y install gccO automakeO autocon!O rpmbuild rpmdevel gnupg
S desea generar paquetera para GNOME, necestar tam!in nstaar e mnmo de paquetera de
desarroo de GNOME:
yum y install glib5devel atkdevel pangodevel gtk5devel libbonobouidevel
libgnomeuidevel gnomev!s5devel libwnckdevel gnomepaneldevel gnomedesktopdevel
nautilusdevel gstreamerdevel gstreamerpluginsdevel
S va a generar paquetera para KDE, necestar tam!in nstaar e mnmo de paquetera de
desarroo de KDE:
yum -y nsta qt-deve arts-deve kdebs-deve kdebase-deve kdenetwork-deve kdegraphcs-deve
kdemutmeda-deve
S adems tene nstaado LPT Desktop, puede nstaar tam!in e equpamento gco restante:
yum y install seahorse gpgme
**.3. <rocedimientos
**.3.+. Creacin de la clave ?nu<?
1. Desde una sesn grfca, nce seahorse y de cc en en botn de Nuevo en e pane de
Opcones de prmera vez.
2. Lo anteror ncar un asstente de creacn de caves.
3. E|a e nve de segurdad como Segurdad extra ata.
4. Especfque su nombre competo, un breve comentaro opcona y su cuenta de correo
eectrnco permanente que se reaconar excusvamente con a nueva cave.
5. Especfque una frase de paso que so usted pueda recordar. Se recomenda utzar
espacos y sgnos de puntuacn.
6. En a pantaa de Fecha de caducdad, savo que especfcamente requera o contraro,
especfque Sn caducdad.
7. Tome nota de como aparece e2actamente e nombre de a ave, ncuyendo parntess,
espacos y otros smboos, ya que se utzarn en e sguente procedmento.
**.3.*. Con&iguracin y creacin de una .aula para rpm!uild
Jam;s utilice la cuenta de root sn mportar a crcunstanca, para crear o reconstrur
paquetera en formato RPM. Esto puede resutar pegroso debdo a que a confguracn de
agunos programas pueden tratar de nstaar componentes en e sstema en ugar de drectoro
especfcado para rpmbud, o cua dar como resutado dversas consecuencas de segurdad y de
estabdad para e sstema.
193
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
La |aua ser creada de modo seguro dentro de una cuenta de usuario normal sin privilegios,
a fn de poder detectar e mpedr que agunos procedmentos durante a creacn de paquetes
ntenten nstaar componentes no deseados en e sstema.
**.3.*.+. Componentes del arc$ivo Y=.rpmmacros
Utzando cuaquer edtor de texto, genere e archvo -/.rpmmacros, en e cua se defnrn
vaores para agunas varabes utzadas por rpmbud:
%debug_package: srve para especfcar s se anua o no a generacn de paquetera
de depuracn. La paquetera de depuracn soo es t para os programadores a fn
de ocazar faas en os programas empaquetados. Para a mayora de os casos se
especfca e vaor %{n} a fn de mpedr que se genere paquetera de depuracn.
%_unpackaged_fes_termnate_bud: srve para especfcar s a construccn de un
paquete se deber nterrumpr s hay componentes gnorados por e archvo *.spec. 0
deshabta, 1 habta. Ou vaor se recomenda?; a respuesta es obva: no es
deseabe un paquete a cua e fatan componentes, as que se especfcar 1.
%_sgnature: se utzar gpg para frmar os paquetes resutantes.
%_gpg_path: ruta de drectoro .gpg a utzar. Estar ocazado dentro de a carpeta
de nco de usuaro utzado.
%_gpg_name: dentdad a utzar para frmar os paquetes resutantes. E formato
utzado es e msmo como aparece e nombre de su cave GnuPG en seahorse: Su
Nombre (Breve comentaro) <su cuenta de correo eectrnco>.
%_gpgbn: ruta de bnaro gpg, normamente en /usr/bn/gpg.
%_topdr: ruta donde se ocaza a |aua para rpmbud.
%_tmppath: drectoro de eementos temporaes que ser utzado para smuar
nstaacones.
%packager: su nombre competo y dreccn de correo eectrnco o ben e URL de su
sto de red.
%dstrbuton: nombre de producto o ben para especfcar para que dstrbucn de
GNU/Lnux se utzar a paquetera.
%vendor: nombre de su empresa u organzacn.
%desktop_vendor: varabe opcona (y no ofca) para defnr e nombre de a
empresa en e nombre agunos archvos, prncpamente entradas de men.
Especfque e nombre corto de su empresa sin espacios.
A contnuacn un e|empo de contendo de archvo -/.rpmmacros, utzando vaores fctcos:
Vdebug-package VZnil[
V-unpackaged-!iles-terminate-build 1
V-signature gpg
V-gpg-path V(echo *F1.,%*)/@gnupg
V-gpg-name F)4no 5e 8eren74no &Un4 e/.res4 <#62#6#40 N<)4noO4)7Pn-5o/#n#o.6o/G
V-gpgbin /usr/bin/gpg
V-topdir V(echo *F1.,%*)/rpmbuild
V-tmppath V(echo *F1.,%*)/rpmbuild//,;
Vpackager <ulano de ;erengano _s 6en24 5e 6orreo o !#en 322.?++s-s#2#o-5e-re5.6o/R
Vdistribution no/!re 5e s .ro562o 4CQ
Vvendor s no/!re o no/!re 5e s e/.res4 4CQ
Vdesktop-vendor no/!re-5e-s-e/.res4-s#n-es.46#os
**.3.*.*. Creacin de la estructura de la .aula para rpm!uild
Desde una termna, genere a estructura de drectoros necesara utzando o sguente:
mkdir p T/rpmbuild/Z9='0$BR;,SBS.=R(%SBSR;,SBS;%(SB/,;[
194
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
mkdir p T/rpmbuild/R;,S/ZathlonBi?46Bi846Bi646Bnoarch[
**.3.3. Creacin de los arc$ivos`.spec
Los archvos *.spec contenen a nformacn que utzar rpmbud para construr un paquete. De
contendo de stos depender que sea posbe descomprmr, confgurar, compar, nstaar
vrtuamente y empaquetar un equpamento gco en partcuar a partr de un cdgo fuente.
Name:
Se refere nombre de paquete. No puede evar espacos. Reguarmente es e msmo nombre utzado para e
paquete de cdgo fuente.
Verson:
Se refere a nmero de versn de paquete
Reease:
Nmero de anzamento o entrega
URL:
URL orgna de sto de red de equpamento gco que se va a empaquetar.
Summary:
Resumen o descrpcn corta de paquete.
Lcense:
Lcenca o cencas utzadas por e paquete.
Group:
Grupo o categora de equpamento gco a cua pertenece e paquete. Lsta de grupos vdos:
%musements&'ames
%musements&'rap(ics
%pplications&%rc(iving
%pplications&)ommunications
%pplications&*atabases
%pplications&+ditors
%pplications&+mulators
%pplications&+ngineering
%pplications&,ile
%pplications&-nternet
%pplications&Multimedia
%pplications&.roductivity
%pplications&.ublis(ing
%pplications&/ystem
%pplications&0ext
*evelopment&*ebuggers
*evelopment&1anguages
*evelopment&1ibraries
*evelopment&/ystem
*evelopment&0ools
*ocumentation
/ystem +nvironment&2ase
/ystem +nvironment&*aemons
/ystem +nvironment&3ernel
/ystem +nvironment&1ibraries
/ystem +nvironment&/(ells
4ser -nter5ace&*es6tops
4ser -nter5ace&7
4ser -nter5ace&7 8ard9are /upport
Budroot:
195
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Ruta donde se reazar a nstaacn vrtua, es decr: VZ-tmppath[/VZname[VZversion[root
Source:
Se puede especfcar soamente e nombre de paquete utzado para e cdgo fuente, aunque por norma se sugere
especfcar e URL exacto haca e cdgo fuente.
BudRequres:
Lsta separada por comas o espacos de componentes o paquetes requerdos para poder construr e equpamento
gco nvoucrado.
BudPreReq:
Lsta de componentes o paquetes que deben estar prevamente nstaados en e sstema antes de ncar a
compacn de equpamento gco nvoucrado.
Requres:
Lsta de paquetes de os cuaes depende e equpamento gco empaquetado para poder funconar.
PreReq:
Lsta de componentes o paquetes que deben estar prevamente nstaados en e sstema antes de ncar a
nstaacn de e equpamento gco nvoucrado.
%descrpton
Descrpcn detaada acerca de paquete
%prep
Procedmentos, s os hubere, requerdos antes de desempaquetar e cdgo fuente. Reguarmente no os hay.
%setup
Procedmentos, s os hubere, requerdos a desempaquetar o despus de desempaquetar e cdgo
fuente. Reguarmente aqu es donde se apcan parches y otros correctvos.
%bud
Procedmentos necesaros para poder compar desde e cdgo fuente de un equpamento gco en
partcuar. Por o genera basta con un Vcon!igure y V--make, pero se recomenda eer a detae e
nstructvo de nstaacn de cada programa en partcuar a fn de asegurar os procedmentos
correctos para compar e equpamento gco.
%nsta
Procedmento de nstaacn requerdo para un paquete en partcuar. Se recomenda mpar
cuaquer nstaacn preva utzando V--rm !r VZbuildroot[. La nstaacn ser vrtua y se
reazar dentro de -/rpmbud/TMP/ que es estabecdo por a varabe %{budroot}. Por o genera
es sufcente V--make $%S/$'R)VZbuildroot[ install, ; sn embargo agunos programas
puderan requerr nstaacn ndvdua de agunos o todos sus componentes.
%cean
Procedmentos para mpar aqueo que ya no se necesta despus de haber creado extosamente e
paquete RPM. Especfcamente se refere a a nstaacn vrtua que se reaz dentro de
-/rpmbud/TMP/. Para a mayora de os casos es sufcente utzar V--rm !r VZbuildroot[..
196
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
%preun
Procedmentos que se deben correr |usto antes de proceder a nstaar un paquete. Se utza
prncpamente con paquetes que necestan crear cuentas de sstema u otros preparatvos.
%post
Procedmentos que se deben correr |usto despus de proceder a nstaar un paquete. E|empos:
Cuando os paquetes ncuyen bbotecas compartdas, se e|ecuta dconfg. S un paquete ncuye un
esquema para GConf, se debe correr o necesaro para regstrar e esquema.
%postun
Procedmentos que se deben correr |usto despus de proceder a desnstaar un paquete. Se utza
prncpamente con paquetes que necestan correr tareas admnstratvas, como detener y/o dar de
ba|a un servco.
%fes
Lsta de todos os componentes de e equpamento gco empaquetado en sus rutas defntvas.
%changeog
Btcora de cambos de archvo *.spec. Requere un formato especa:
* |Da de a semana en abrevado y en ngs| |Mes abrevado en ngs| da ao Nombre
empaquetador <correo eectrnco o URL de sto de red>
- Agunos cambos
- Ms cambos
- Otros cambos
E|empo:
* Sun Sep 25 2005 Fuano de Perengano <http://m-sto-geb.ago/>
- Archvo *.spec nca.
- Se aaderon cosas
- Se puso un gun para ago
**.3.3.+. ".emplo de arc$ivo `.spec.
+ame" 4)7o
&ersion" $.-
Release" -
=R0" 322.?++s#2#o-5e-re5-5e)-ss2en2o-)R7#6o-4-2#)#B4r+
Summary" 84Ce2e #/47#n4r#o Ce 346e 4)7o.
0icense" G8L
Iroup" A..)#642#ons+F#)e
9uildroot" VZ-tmppath[/VZname[VZversion[root
Source" 322.?++n-s#2#o-7Se!.4)7o+4)7o-$.-.24r.!B,
9uildReJuires" 72:,-5e"e)
9uild;reReJ" +sr+!#n+5es:2o.-<#)e-#ns24))
ReJuires" 72:,
;reReJ" +sr+!#n+.542e-5es:2o.-5424!4se
Vdescription
8ro7r4/4 #/47#n4r#o es6r#2o en n )en74Ke 4!s2r462o e #ne;#s2en2e Ce 346e
6os4s #/47#n4r#4s e #/.os#!)es sR)o .4r4 <#nes 5e/os2r42#"os.
Vprep
Vsetup J
Vbuild
Vcon!igure
V--make
197
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Vinstall
V--make $%S/$'R)VZbuildroot[ install
Vclean
V--rm !r VZbuildroot[
Vpreun
Vpost
/sbin/ldcon!ig
Vpostun
V!iles
de!attr(BrootBroot)
/usr/bin/algo
/usr/lib/libalgo@so@#
/usr/share/applications/algo@desktop
Vchangelog
O Sun Sep 58 5##8 <ulano de ;erengano _http"//misitiogfeb@algo/R
Se aUadieron cosas
Se puso un guiQn para algo
O Sat Sep 5> 5##8 <ulano de ;erengano _http"//misitiogfeb@algo/R
3rchivo O@spec inicial@
**.3.4. ,so del mandato rpm!uild
Lsta y descrpcn de opcones prncpaes:
sign
Especfca que se debe frmar un paquete con cave dgta predetermnada.
clean
Socta a rpmbud corra os procesos especfcados en a seccn %cean para de|ar mpo e
drectoro de temporaes utzado para reazar nstaacones vrtuaes.
target)DarJuitecturaE
Se utza para ndcar a rpmbud para que arqutectura ser construdo e paquete. De modo
predefndo rpmbud crea os paquetes para a arqutectura predetermnada de sstema.
Puede especfcarse 386, 585, 686, noarch, athon, etc., de acuerdo a o que sea requerdo.
ba
Socta a rpmbud corra todos os procedmentos necesaros para generar un paquete RPM
bnaro y e paquete RPM fuente (*.src.rpm) a partr de un archvo *.spec.
bb
Socta a rpmbud corra todos os procedmentos necesaros para generar soamente un
paquete RPM bnaro a partr de un archvo *.spec.
bp
Socta a rpmbud corra todos os procedmentos necesaros en a seccn %prep y
apcacn de parches en %setup. Se utza prncpamente para verfcar y depurar estos
procedmentos antes de comenzar a compacn e nstaacn.
bc
198
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Socta a rpmbud corra todos os procedmentos necesaros en a seccn %prep, apcacn
de parches en %setup y compacn en %bud. No reaza nstaacn vrtua n crea
paquetes RPM. Se utza prncpamente para verfcar y depurar estos procedmentos.
bi
Socta a rpmbud corra todos os procedmentos necesaros en a seccn %prep, apcacn
de parches en %setup, compacn en %bud e nstaacn vrtua en %nsta. No crea
paquetes RPM. Se utza prncpamente para verfcar y depurar estos procedmentos.
shortcircuit
Se utza en combnacn con -bc y b. Socta a rpmbud satar todos os pasos prevos y
correr ncamente a compacn, en e caso de ser combnado con -bc, o ben satar todos
os pasos prevos y correr ncamente os procedmentos para reazar a nstaacn vrtua,
en e caso de ser combnado con -b. Se utza prncpamente para verfcar y depurar estos
procedmentos.
rmspec
Socta a rpmbud emne e archvo *.spec despus de crear extosamente os paquetes
RPM correspondentes. Se utza para mantener mpa a |aua de rpmbud.
rmsource
Socta a rpmbud emne todo o que corresponda a as fuentes, es decr, cdgos fuentes,
parches y otros eementos, despus de crear extosamente os paquetes RPM
correspondentes. Se utza para mantener mpa a |aua de rpmbud.
rebuild
Socta a rpmbud reconstruya un paquete a partr de un *.src.rpm.
**.3.4.+. ".emplos de uso del mandato rpm!uild
Construr so un paquete RPM, sin generar `.src.rpm, a partr de un archvo *.spec:
rpmbuild bb algo@spec
Construr so un paquete RPM |unto con e correspondente *.src.rpm a partr de un archvo
*.spec:
rpmbuild ba clean sign rmspec rmsource algo@spec
Construr soo un paquete RPM sn *.src.rpm a partr de un archvo *.spec, con frma dgta,
mpeza de drectoro de nstaacones vrtuaes y emnacn de *.spec y fuentes tras termnar
extosamente:
rpmbuild bb O@spec
Construr so un paquete RPM y e correspondente *.src.rpm a partr de un archvo *.spec, con
frma dgta, mpeza de drectoro de nstaacones vrtuaes y emnacn de *.spec y fuentes tras
termnar extosamente:
rpmbuild ba clean sign rmspec rmsource O@spec
199
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Reconstrur so un paquete RPM a partr de un *.src.rpm:
rpmbuild rebuild cualJuierpaJuete@src@rpm
Reconstrur so un paquete RPM a partr de un *.src.rpm, con frma dgta, mpeza de drectoro
de nstaacones vrtuaes y emnacn de *.spec y fuentes tras termnar extosamente:
rpmbuild rebuild clean sign rmspec rmsource cualJuierpaJuete@src@rpm
**.4. ".ercicios
**.4.+. <a#uete '<: !inario y el pa#uete `.src.rpm correspondiente
creando el arc$ivo `.spec necesario
1. Acceda haca http://www.nano-edtor.org y descargue e cdgo fuente de la m;s reciente
versin esta!le de edtor de texto Nano.
2. Cooque e *.tar.gz de cdgo fuente dentro de drectoro -/rpmbud/SOURCES/
mv nano1@5@8@tar@gC T/rpmbuild/S.=R(%S/
3. Cambe haca e drectoro -/rpmbud/SPECS/
cd T/rpmbuild/S;%(S/
4. Con cuaquer edtor de texto smpe, genere e archvo -/rpmbud/SPECS/nano.spec con e
sguente contendo Mal terminarL por &avor veri&i#ue la sinta2isL lnea por lneaN:
+ame" n4no
&ersion" -.,.5
Release" -
=R0" 322.?++***.n4no-e5#2or.or7+
Summary" Un .eCeTo e5#2or 5e 2e;2o.
0icense" G8L
Iroup" A..)#642#ons+E5#2ors
9uildroot" VZ-tmppath[/VZname[VZversion[root
Source" 322.?++***.n4no-e5#2or.or7+5#s2+"-.,+n4no--.,.5.24r.7B
9uildReJuires" n6rses-5e"e)A 7)#!6-5e"e)A 766
ReJuires" n6rses
Vdescription
GNU n4no es n .eCeTo y <U6#) 5e 2#)#B4r e5#2or 5e 2e;2o.
Vprep
Vsetup J
Vbuild
Vcon!igure
V--make
Vinstall
V--make $%S/$'R)VZbuildroot[ install
Vclean
V--rm !r VZbuildroot[
200
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
V!iles
Vde!attr(BrootBroot)
Vdoc 3=/1.RS 9=IS (.;:'+I (hange0og '+S/300 +%2S R%3$,% /13+HS /.$.
Vdoc nanorc@sample
/usr/bin/nano
/usr/share/in!o/nano@in!o@gC
/usr/share/man/man1/nano@1@gC
/usr/share/man/man8/nanorc@8@gC
/usr/share/locale/O/0(-,%SS3I%S/nano@mo
Vchangelog
O Sun Sep 58 5##8 <ulano de ;erengano _http"//misitiogfeb@algo/R
3rchivo O@spec inicial@
5. Para poder construr nano, necestar tener nstaados os paquetes ncurses-deve
(cabeceras de desarroo para ncurses), gbc-deve (cabeceras de desarroo para C) y gcc
(compador de GNU.org). De ser necesaro, proceda a nstaar stos:
yum y install ncursesdevel glibcdevel gcc
6. Utce o sguente para generar os paquetes bnaro y fuente correspondentes:
rpmbuild ba nano@cpec
7. Suponendo que utza una computadora con mcroprocesador compatbe con Inte; a
concur e proceso, encontrar e paquete bnaro RPM dentro de drectoro
T/rpmbuild/R;,S/i?46/ y e paquete *.src.rpm dentro de drectoro T/rpmbuild/SR;,S/.
**.4.*. <a#uete '<: !inario y el pa#uete `.src.rpm correspondiente
reali8ando limpie8a de directorioL &irma digital
1. Utzar e msmo archvo *.spec de e|ercco pasado.
2. Utce o sguente para generar os paquetes correspondentes, ngresando a cave de
acceso para GnuPG cuando e sea requerda:
rpmbuild ba clean sign nano@cpec
3. Suponendo que utza una computadora con mcroprocesador compatbe con Inte; a
termnar e proceso, encontrar e paquete bnaro RPM dentro de drectoro
T/rpmbuild/R;,S/i?46/ y e paquete *.src.rpm dentro de drectoro T/rpmbuild/SR;,S/.
201
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*3. Cmo instalar y utili8ar ClamAF en Cent0>
Autor: $oel Barrios 'ue!as
Correo electrnico: dar(sram en gmail punto com
Sitio 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.
*3.+. %ntroduccin.
*3.+.+. Acerca de ClamAF.
ClamAF es un con|unto de herramentas antvrus, bre y de cdgo fuente aberto, que tene as
sguente caracterstcas:
Dstrbudo ba|o os trmnos de a Lcenca Pubca Genera GNU versn 2.
Cumpe con as especfcacones de fama de estndares <0>%D (<ortabe 0peratng >ystem
%nterface for UNID o nterfaz portabe de sstema operatvo para Unx).
Exporacn rpda.
Detecta ms de 720 m vrus, gusanos, troyanos y otros programas macosos.
Capacdad para examnar contendo de archvos ZIP, RAR, Tar, Gzp, Bzp2, MS OLE2, MS Cabnet,
MS CHM y MS SZDD.
Soporte para exporar archvos comprmdos con UPX, FSG y Pette.
Avanzada herramenta de actuazacn con soporte para frmas dgtaes y consutas basadas sobre
DNS.
URL: http://www.camav.net/
*3.*. "#uipamiento lgico necesario.
camav
camav-update
*3.*.+. Creacin del usuario para ClamAF.
De modo predetermnado, e usuaro para CamAV asgna a travs de os mandatos &edora(
groupadd y &edora(useradd e UID y GID 4 en e sstema. A fn de prevenr un confcto de
UID/GID con otros usuaros y grupos de sstema, se recomenda crear prevamente a grupo y
usuaro correspondentes para CamAV:
groupadd r clamavupdate
useradd r s /sbin/nologin d /var/lib/clamav , c X(lamav database update userX P
g clamavupdate clamavupdate
202
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*3.*.*. %nstalacin a travs de yum.
S dspone de un servdor con Cent0> 4 y 5, 'ed Eata "nterprise inu2 4 y 5 o W$ite Bo2
"nterprise inu2 4 y 5, puede utzar e e depsto yum de Alcance i!re para servdores en
produccn, creando e archvo =etc=yum.repos.d=A(>erver.repo con e sguente contendo:
D30ServerE
name)30 Server para %nterprise 0inux Freleasever
mirrorlist)http"//www@alcancelibre@org/al/elFreleasever/alserver
gpgcheck)1
gpgkey)http"//www@alcancelibre@org/al/30R;,H%:
La nstaacn soo requere utzar o sguente:
yum y install clamav clamavupdate
La nstaacn de os paquetes anterores crea automtcamente e usuaro y drectoros necesaros
para un funconamento norma./p>
*3.3. <rocedimientos.
*3.3.+. >"inu2 y el servicio clamav(milter.
Para que SELnux permta utzar normamente clamscan, utce e sguente mandato:
setsebool ; clamscan-disable-trans 1
Para que SELnux permta a mandato &res$clam funconar normamente y que permta actuazar
a base de datos de frmas dgtaes, utce e sguente mandato:
setsebool ; !reshclam-disable-trans 1
*3.3.*. Con&iguracin de Fres$clam.
Fres$clam es e programa utzado para descargar y mantener actuazada a base de datos de
vrus y otros programas magnos.
E archvo =etc=&res$clam.con& de os paquetes dstrbudos por Alcance i!re ya ncuye as
modfcacones necesaras para permtr e funconamento de mandato &res$clam. Sn embargo,
s se utzan paquetes para Fedora, es necesaro edtar este archvo y comentar o emnar a nea
9, que ncuye smpemente a paabra ngesa -5ample y que de otro mod mpedra utzar e
mandato &res$clam:
AA
AA %xample con!ig !ile !or !reshclam
AA ;lease read the !reshclam@con!(8) manual be!ore editing this !ile@
AA
A (omment or remove the line below@
V E;4/.)e
203
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
E archvo =etc=syscon&ig=&res$clam de os paquetes dstrbudos por Alcance i!re ya ncuye
as modfcacones necesaras para permtr a actuazacn automtca de a base de datos de
ClamAF. S se utzan paquetes de Fedora, y a fn de mantener actuazada a base de datos de
frmas dgtaes, es necesaro edtar e archvo =etc=syscon&ig=&res$clam con e ob|eto de permtr
as actuazacones automtcas:
AAA ddddd R%,.&% ,% dddddd
AAA R%,.&% ,%" 9y de!aultB the !reshclam update is disabled to avoid
AAA R%,.&% ,%" network access without prior activation
V FRESECLAM_DELAW=5#s4!)e5-*4rn V REMOHE ME
De ser necesaro, puede actuazar manuamente, y de manera nmedata, a base de datos de
frmas utzando e mandato &res$clam, desde cuaquer termna como root.
!reshclam
E paquete de clamav(update dstrbudo por Alcance i!re y e proyecto Fedora ncuye un
gun de actuazacn automtca de a base de datos de CamAV, y que consste en e archvo
=etc=cron.d=clamav(update, e cua, a travs de servco crond, se e|ecuta cada tres horas para
verfcar s hubo cambos en a base de datos.
*3.3.3. ,so !;sico del mandato clamscan.
para revsar un archvo sospechoso de estar nfectado, se utza e mandato clamscan sn ms
parmetros:
clamscan /cualJuier/archivo
Para reazar a revsn de un drectoro y todo su contendo, es decr, de manera recursva, se
utza e mandato clamscan con a opcn (r.
clamscan -r /cualJuier/directorio
Para especfcar que os archvos nfectados soo sean movdos a un drectoro de cuarentena, se
utza e mandato clamscan con a opcn ((move especfcando un drectoro que servr como
cuarentena. E drectoro de cuarentena debe de exstr prevamente.
clamscan --/o"e=+5#re62or#o+5e+64ren2en4 r /cualJuier/directorio
Para especfcar que os archvos nfectados sean emnados, se utza a opcn ((remove con e
vaor yes. Esta opcn debe ser utzada con precaucn.
clamscan --re/o"e=yes r /cualJuier/directorio
a sada de mandato clamscan puede egar a ser muy extensa. S se desea que soo se muestre
a nformacn de os archvos nfectados, se utza e mandato clamscan con a opcn
((in&ected.
clamscan --#n<e62e5 remove)yes r /cualJuier/directorio
204
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Para que e mandato clamscan guarde a nformacn de su actvdad en una btcora en
partcuar, a fn de poder examnar posterormente sta a detae, se puede utzar ste con a
opcn ((log especfcando a ruta de un archvo donde se amacenar a btcora de actvdad.
clamscan --)o7=+3o/e+s4r#o+6)4/s64n.)o7 in!ected remove)yes r /cualJuier/directorio
Para confgurar ClamAF para ser utzado con un servdor de correo eectrnco con >endmail,
consutar e documento ttuado Cmo confgurar camav-mter.
205
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*4. Cmo asignar cuotas de disco en
?),=inu2.
Autor: $oel Barrios 'ue!as
Correo electrnico: dar(sram en gmail punto com
Sitio 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.
*4.+. %ntroduccin.
La utzacn de cuotas de dsco permte a os admnstradores de sstemas reazar a gestn
efcente de espaco compartdo en dsco por mtpes usuaros. Las cuotas restrngen a
capacdad de os usuaros para acceder haca os recursos de sstema, taes como boques
(asgnacn de undades) e nodos (entradas de sstema de archvos). Cuando una cuota es
excedda se apca una potca determnada por e admnstrador. Las cuotas se admnstran por
sstema de archvos ndvduaes, y son ncas para usuaros o grupos.
*4.+.+. Acerca de las cuotas de disco.
Una cuota de dsco es un mte estabecdo por un admnstrador, e cua restrnge certos aspectos
de uso de sstema de archvos. E ob|etvo de as cuotas de dsco es mtar, de forma razonabe, e
espaco utzado en e sstema de archvos.
*4.+.*. Acerca de %nodos.
De acuerdo a Wkpeda, un nodo, nodo-, o tambn nodo ndce, es una estructura de datos
propa de os sstemas de archvos en sstemas operatvos tpo POSIX (<ortabe 0peratng >ystem
%nterface for Un2), como GNU/Lnux. Un nodo contene as caracterstcas (permsos, fechas, y
ubcacn) de un archvo reguar, drectoro, o cuaquer otro eemento que pueda contener e
sstema de archvos.
Cada nodo queda dentfcado en e sstema de archvos por un nmero entero nco, y os
drectoros recogen una sta de pare|as formadas por un nmero de nodo y nombre dentfcatvo
que permte acceder a un archvo en partcuar. Cada archvo tene un nco nodo, pero puede
tener ms de un nombre en dstntos o ncuso en e msmo drectoro para factar su ocazacn.
*4.+.3. Acerca de Blo#ues.
De acuerdo a Wkpeda, un boque es a cantdad ms pequea de datos que pueden transferrse
en una operacn de entrada/sada entre a memora prncpa de un ordenador, y os dspostvos
perfrcos o vceversa.
206
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*4.*. "#uipamiento lgico necesario.
*4.*.+. %nstalacin a travs de yum.
S se utza de CentOS 5, Red Hat Enterprse Lnux 5, o versones posterores de stos, se puede
nstaar o necesaro utzando o sguente:
yum y install Juota
*4.3. <rocedimientos.
Durante a nstaacn, deb asgnarse una partcn dedcada para, por menconar un e|empo, os
drectoros /var, y /home.
Edte e archvo =etc=&sta!.
vim /etc/!stab
S utza Cent0> 5 o 'ed Eat "nterprise inu2 5, debe aadr en e archvo =etc=&sta! os
parmetros usr#uota, y grp#uota a as neas que defnen a confguracn de as partcones
/var, y /home:
039%0)/var /var ext? de!aultsBsrCo24A7r.Co24 1 5
039%0)/home /home ext? de!aultsBsrCo24A7r.Co24 1 5
S utza Cent0> 6 o 'ed Eat "nterprise inu2 6, puede utzar cuotas con regstro por daro
(journaled quotas), smar a regstro por daro de sustema de archvos Ext3 o Ext4, o cua hace
ms compcado que se daen os archvos que corresponden a as cuotas de dsco en caso de un
apagado ncorrecto. Para este fn, se debe aadr en e archvo =etc=&sta! os parmetros
usr.#uotaRa#uota.user, grp.#uotaRa#uota.group, y .#&mtRv&svO, a as neas que defnen a
confguracn de as partcones /var, y /home:
/dev/mapper/home0og&ol## /var ext> de!aults
BsrKCo24=4Co24.serA7r.KCo24=4Co24.7ro.AKC</2="<s"$ 1 5
/dev/mapper/var0og&ol## /home ext> de!aults
BsrKCo24=4Co24.serA7r.KCo24=4Co24.7ro.AKC</2="<s"$ 1 5
Debe remontar as partcones para que surtan efecto os cambos:
mount o remount /var
mount o remount /home
Se deben crear os archvos aquota.user, aquota.group, quota.user, y quota.group, os cuaes se
utzarn en adeante para amacenar a nformacn, y estado de as cuotas en cada partcn.
cd /var
touch aJuota@user aJuota@group Juota@user Juota@group
cd /home
touch aJuota@user aJuota@group Juota@user Juota@group
207
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
E|ecutar e mandato #uotac$ecK con as opcones (avugm, donde a sgnfca que se verfcan
todos os sstemas de archvos con soporte para cuotas de dsco, v sgnfca que se devuevan
mensa|es descrptvos, u sgnfca que se verfquen cuotas de usuaro, g sgnfca que se verfquen
cuotas de grupo, y m sgnfca que se evte re-montar en modo de soo ectura os sstemas de
archvos, que deamente se utza cuando se tene procesos traba|ando en as partcones:
Juotacheck avugm
La prmera vez que se e|ecuta e mandato anteror es norma marque advertencas refrndose a
posbes archvos truncados que en readad es debdo a que se trataba archvos vacos, generados
por e mandato touc$, sn nformacn. S se e|ecuta de nuevo #uotac$ecK (avugm, deber
mostrar una sada sn advertenca aguna.
Para actvar as cuotas de dsco recn confguradas, soo bastar e|ecutar:
Juotaon /var
Juotaon /home
*4.3.+. "d#uota.
Es mportante conocer que sgnfca cada coumna mostrada por edquota.
BlocKs- Boques. Corresponde a a cantdad de boques de 1 Kb que est utzando e usuaro.
%nodes- Inodos. Corresponde a nmero de archvos que est utzando e usuaro. Un inodo (tambn
conocdo como Index Node) es un apuntador haca sectores especfcos de dsco duro en os cuaes se
encuentra a nformacn de un archvo. Contene adems a nformacn acerca de permsos de
acceso as como os usuaros, y grupos a os cuaes pertenece e archvo.
>o&t- Lmte de graca. Lmte de boques de 1 KB que e usuaro puede utzar, y que puede rebasar
hasta que sea exceddo e perodo de graca (de modo predetermnado son 7 das).
Eard- Lmte absouto. Lmte que no puede ser rebasado por e usuaro ba|o crcunstanca aguna.
Asgnar cuotas de dsco a cuaquer usuaro o grupo soo har fata utzar ed#uota ctando e
nombre de usuaro a cua se e quere apcar:
edJuota !ulano
Lo anteror deber devover ago como o sguente a travs de v u otro edtor de texto smpe:
$isk Juotas !or user !ulano (uid 8#1)"
<ilesystem blocks so!t hard inodes so!t hard
/dev/sda6 # # # # # #
/dev/sda8 5> # # 1# # #
*4.3.+.+. Cuota a!soluta.
Suponendo que se quere asgnar una cuota de dsco de 6 MB para e usuaro fuano en en
/dev/sda6, y /dev/sda8, se utzara o sguente:
208
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
$isk Juotas !or user !ulano (uid 8#1)"
<ilesystem blocks so!t hard inodes so!t hard
/dev/sda6 # # 61>> # # #
/dev/sda8 5> # 61>> 1# # #
E usuaro sempre podr rebasar una cuota de gracia pero nunca una cuota a!soluta.
*4.3.+.*. Cuota de gracia.
E sstema tene, de modo predetermnado, un periodo de gracia de 7 das, e cua se puede
modfcar con e mandato ed#uota (t:
edJuota t
Donde se puede estabecer un nuevo perodo de graca, ya sea por das, horas, mnutos, o
segundos.
Irace period be!ore en!orcing so!t limits !or users"
/ime units may be" daysB hoursB minutesB or seconds
<ilesystem 9lock grace period 'node grace period
/dev/hdb6 6days 6days
/dev/hdb8 6days 6days
La cuota de gracia estabece os mtes de boques o inodos que un usuaro tene en una
partcn. Cuando e usuaro excede e mte estabecdo por a cuota de graca, e sstema adverte
a usuaro que se ha exceddo a cuota de dsco sn embargo permte a usuaro contnuar
escrbendo hasta que trascurre e tempo estabecdo por e perodo de graca, tras e cua a
usuaro se e mpde contnuar escrbendo sobre a partcn. Suponendo que quere asgnar una
cuota de graca de 6 MB en /dev/sda6, y /dev/sda8, a cua podr ser excedda hasta por 7 das, se
utzara o sguente:
$isk Juotas !or user !ulano (uid 8#1)"
<ilesystem blocks so!t hard inodes so!t hard
/dev/sda6 # 61>> # # # #
/dev/sda8 5> 61>> # 1# # #
*4.3.+.3. Aplicando cuotas de &orma masiva.
S se quere que todo apque para os usuaros exstentes, a partr de UID 510, por e|empo,
suponendo que utzar a cuota de dsco de usuaro pepto como panta Mnote por &avor los
dos acentos graves en el mandatoL .usto antes de aPKL y al &inal del mandatoL pues se
trata de un car;cter di&erente al apostro&eN, e|ecute o sguente:
edJuota p pepito gawk <" XF? R 81# Zprint F1[X /etc/passwdg
*4.4. Compro!aciones.
Utce e mandato edquota con e usuaro fuano.
edJuota !ulano
209
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Asgne a usuaro fuano una cuota de dsco de 50 MB en todas as partcones con cuota de
dsco habtada:
$isk Juotas !or user !ulano (uid 8#1)"
<ilesystem blocks so!t hard inodes so!t hard
/dev/sda6 # # 815## # # #
/dev/sda8 5> # 815## 1# # #
Desde otra terminal acceda haca e sstema como e usuaro fuano, y e|ecute e mandato
#uota, y observe con detenmento a sada:
$isk Juotas !or user !ulano (uid 8#1)"
<ilesystem blocks Juota limit grace !iles Juota limit grace
/dev/sda6 # # 815## 1 # #
/dev/sda8 5> # 815## 1# # #
Reace una copia de drectoro =usr=li! como e subdrectoro Y=prue!a(cuotas dentro de su
drectoro de nco:
cp r /usr/lib T/pruebacuotas
Notar que egar un momento en e que e sstema ndcar que ya no es posbe contnuar
copando contendo dentro de Y=prue!a(cuotas debdo a que se ha agotado e espaco en a
partcn.
,tilice de nuevo e mandato #uota, y observe con detenmento a sada, en donde aparecer
un astersco |usto |unto a a cantdad en a coumna de boques boques, e cua ndca que se ha
exceddo a cuota de dsco:
$isk Juotas !or user !ulano (uid 8#1)"
<ilesystem blocks Juota limit grace !iles Juota limit grace
/dev/sda6 # # 815## 1 # #
/dev/sda8 815##O # 815## 6>?7 # #
Para poder vover a escrbr sobre a partcn, es necesaro berar espaco. Debdo a que muy
probabemente parte de contendo de =usr=li! se cop en modo de soo ectura, cambe prmero
os permsos de contendo de drectoro, a fn de dsponer de permsos de ectura y escrtura:
chmod R uNw T/pruebacuotas
Emne por competo e drectoro Y=prue!a(cuotas:
Y, fnamente, vueva a utzar e mandato quota:
rm !r T/pruebacuotas
Y, fnamente, vueva a utzar e mandato #uota:
Juota
210
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
211
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*5. %ntroduccin a @C<=%<
Autor: $oel Barrios 'ue!as
Correo electrnico: dar(sram en gmail punto com
Sitio 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.
*5.+. %ntroduccin
TCP/IP fue desarroado y presentado por e Departamento de Defensa de EE.UU. en 1972 y fue
apcado en A'<A)"@ (Advanced 'esearch <ro|ects Agency )etwork), que era a red de rea
extensa de Departamento de Defensa como medo de comuncacn para os dferentes
organsmos de EE.UU. La transcn haca TCP/IP en A'<A)"@ se concret en 1983.
Se conoce como &amilia de protocolos de %nternet a con|unto de protocoos de red que son
mpementados por a pa de protocoos sobre os cuaes se fundamenta Internet y que permten a
transmsn de datos entre as redes de computadoras.
Los dos protocoos ms mportantes, y que fueron tambn os prmeros en defnrse y tambn os
ms utzados, son @C< (Protocoo de Contro de Transmsn o @ransmsson Contro <rotoco) e
%< (Protocoo de Internet o %nternet <rotoco), de ah que se denomne tambn como Con.unto de
<rotocolos @C<=%<. Los tpos de protocoos exstentes superan os cen, ente os cuaes podemos
menconar como os ms conocdos a HTTP, FTP, SMTP, POP, ARP, etc.
TCP/IP es a pataforma que sostene Internet y que permte a comuncacn entre dferentes
sstemas operatvos en dferentes computadoras, ya sea sobre redes de rea oca (LAN) o redes
de rea extensa (WAN).
*5.*. )iveles de pila
En a actuadad contna a dscusn respecto a s e modeo TCP/IP de cnco nvees enca|a dentro
de modeo OSI (Interconexn de Sstemas Abertos u 0pen>ystems %nterconnecton) de sete
nvees.
:odelo )iveles
TCP/IP 5 Apcacn
4 Transporte
3 Red
2 Enace
1 Fsco.
OSI 7 Apcacn
6 Presentacn
5 Sesn
4 Transporte
3 Red
2 Enace de datos
1 Fsco
212
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*5.*.+. :odelo @C<=%<
Utza encapsuamento para proveer a abstraccn de protocoos y servcos haca dferentes
capas en a pa. La pa consste de cnco nvees:
)ivel )om!re Descripcin
5 Aplicacin Se compone de dversos protocoos de servcos como:
D)> (Doman Name System)
@>=>> (@ransport ayer >ecurty)
@F@< (@rva Fe @ransfer <rotoco)
F@< (Fe @ransfer <rotoco)
E@@< (Eyper @ext @ransfer <rotoco)
%:A< (%nternet :esssage Access <rotoco)
%'C (%nternet 'eay Chat)
))@< ()etwork )ews @ransfer <rotoco)
<0<3 (<ost 0ffce <rotoco)
>%< (>esson %ncaton <rotoco)
>:@< (>mpe :a @ransfer <rotoco)
>):< (>mpe )etwork :anagement <rotco)
>>E (>ecure >$e)
@")"@
Bit@orrent
'@< ('ea-tme @ransport <rotoco)
rlogin
")'< ("ndpont Eandespace 'edundancy <rotoco)
Los protocoos de encamnamento como B?< (Border ?ateway <rotoco) y '%< ('outng
%nformaton <rotoco) que utzan transporte por TCP y UDP respectvamente pueden ser
consderados como parte de este nve.
4 @ransporte Se compone de dversos protocoos de servcos como:
@C< (@ransmson Contro <rotoco)
,D< (,ser Datagram <rotoco),
DCC< (Datagram Congeston Contro <rotoco)
213
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
)ivel )om!re Descripcin
>C@< (>tream Contro @ransmson <rotococo)
% (%nternet nk Protoco, smar a TCP pero ms smpe)
',D< ('eabe ,ser Datagram <rotoco), etc.
Los protocoos como 0><F (0pen >hortest <ath Frst), que corren sobre IP, pueden ser
tambn consderados como parte de esta capa. %C:< (%nternet Contro :essage <rotoco) e
%?:< (%nternet ?roup :anagement <rotoco) que tambn utzan IP, pueden ser
consderados parte de Nve de Red.
3 'ed Se compone de dversos protocoos de servcos como %< (ncuyendo %<v4 e %<v6).
Protocoos como A'< (Address 'esouton <rotoco) y 'A'< ('everse Address 'esouton
<rotoco) que operan por deba|o de IP, pero arrba de Nve de enace, de modo que
pertenecen a un punto ntermedo entre e Nve de Red y e Nve de Enace.
2 "nlace Compuesto de protocoos como:
"t$ernet
Wi(Fi
@oKen ring
<<< (Pont-to-Pont <rotoco)
>%< (>era ne %nternet <rotoco)
FDD% (Fber Dstrbuted Data %nterface)
A@: (Asynchronous @ransfer <rotoco)
Frame 'elay
>:D> (Swtched :ut-megabt Data >ervces)
1 Fsico Medo fsco.
Los nvees ms cercanos atos son os ms cercanos a usuaro, mentras que os que estn ms
haca aba|o se encuentran ms cercanos a a transmsn fsca de os datos. Savo por evdentes
razones en e prmer y tmo nvees, cada nve tene un nve superor y un nve nferor que,
respectvamente, o ben utzan un servco de nve o proveen un servco. Un mtodo de
abstraccn para entender esto es mrar os nvees como proveedores o consumdores de
servcos. E|empo: TCP en e nve de transporte requere un protocoo de nve de Red, como sera
IPv4, e cua a su vez requere de un protocoo de nve de enace, sendo TCP un proveedor de
servco para os protocoos de nve de apcacn.
214
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*5.*.+.+. )ivel de aplicacin
Es e nve que utzan os programas de red ms comunes a fn de comuncarse a travs de una
red. La comuncacn que se presenta en este nve es especfca de as apcacones y os datos
transportados desde e programa que estn en e formato utzado por a apcacn y van
encapsuados en un protocoo de )ivel de @ransporte. Sendo que e modeo TCP/IP no tene
nvees ntermedos, e nve de Apcacn debe ncur cuaquer protocoo que acte de msmo
modo que os protocoos de )ivel de <resentacin y )ivel de >esin de :odelo 0>%. Los
protocoos de Nve de Transporte ms comnmente utzados son TCP y UDP, msmos que
requeren un puerto dsponbe y especfco para e servco para os servdores y puertos efmeros.
Aunque os encamnadores (routers) e nterruptores (swtches) no utzan este nve, as
apcacones que controan e ancho de banda s o utzan.
*5.*.+.*. )ivel de @ransporte
Este nve prncpamente provee o necesaro para conectar apcacones entre s a travs de
puertos. Mentras que IP (Internet Protoco),de Nve de Red, provee soamente a me|or forma de
entrega, e nve de transporte es e prmer nve que se encarga de a fabdad. De entre todos os
protocoos de este nve, tanto TCP como UDP son utzados para transportar un gran nmero de
apcacones de ato nve. Las apcacones en cuaquer nve se dstnguen a travs de os puertos
TCP o UDP que utcen.
@C<.
E me|or e|empo de este nve es TCP, que es un protocoo orentado haca conexn que
resueve numerosos probemas de fabdad para proveer una transmsn de bytes fabe, ya
que se encarga de que os datos eguen en orden, tenga un mnmo de correccones de
errores, se descarten datos dupcados, se vuevan a envar os paquetes perddos o
descartados e ncuya contro de congestn de trfco.
La conexones a travs de TCP tenen tres fases:
%. "sta!lecimiento de la cone2in
Antes de que e cente ntente conectarse con e servdor, ste tmo debe prmero
garse haca e puerto para abrro para as conexones, es decr, una apertura
pasiva. Una vez estabecda, e cente puede ncar a apertura activa. Se requere
de un saudo de tres etapas:
1. La apertura actva se reaza envando un paquete SYN (sncronza) haca e
servdor.
2. En respuesta, e servdor responde con un paquete SYN-ACK (conformacn de
sncronzacn).
3. Fnamente e cente enva un paquete ACK (confrmacn) de regreso haca e
servdor.
En este punto tanto cente como servdor han recbdo una conformacn de a
conexn.
%%. @rans&erencia de datos
Hay tres funcones cave que dferencan a TCP de UDP:
215
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
1. Transferenca de datos bre de errores.
2. Transferenca de datos ordenada.
3. Retransmsn de paquetes perddos.
4. Descartado de paquetes dupcados.
5. A|uste en a congestn de a transmsn de datos.
III. @erminacin de la cone2in.
Esta etapa utza un saudo de tres vas, con cada extremo de a conexn termnando
ndependentemente. Cuando uno de os extremos desea detener su parte de a
conexn, enva un paquete FIN, que a otra parte confrma con un paquete ACK. Por
tanto, una nterrupcn de a conexn requere un par de paquetes FIN y ACK desde
cada ado de a conexn TCP.
Una conexn puede quedar aberta a medas cuando uno de os extremos ha
termnado a conexn desde su ado pero e otro extremo no. E extremo que termn
a conexn ya no puede envar datos en a conexn, pero e e otro extremo s.
E mtodo ms comn es un saudo de tres etapas donde un anftrn A enva un
paquete FIN y e anftrn B responde con un paquete FIN y un ACK (en e msmo paso)
y e anftrn A responde con un paquete ACK.
TCP reaza as sguentes etapas en su zcao:
1. LISTEN
2. SYN-SENT
3. SYN-RECEIVED
4. ESTABLISHED
5. FIN-WAIT-1
6. FIN-WAIT-2
7. CLOSE-WAIT
8. CLOSING
9. LAST-ACK
10.TIME-WAIT
11.CLOSED
%>@") representa a conexn en espera de petcones desde cuaquer puerto TCP remoto.
>b)(>")@ representa a espera de TCP remoto para envar de regreso e paquete TCP
estabecendo banderas >b) y ACI. >b)('"C%F"D representa a espera para e TCP remoto
para envar de regreso a confrmacn despus de haber envado de regreso otra
confrmacn de conexn a TCP remoto (estabecdo por e servdor TCP). ">@AB%>E"D
representa que e puerto est sto para recbr/envar datos desde/haca e TCP remoto (o
hacen tanto centes como servdores TCP). @%:"(WA%@ representa e tempo de espera
necesaro para asegurar que e TCP remoto ha recbdo a confrmacn de su soctud de
termnacn de a conexn.
,D<.
UDP, a veces referdo sarcstcamente como :nreliable Datagram Protoco (Protcoo no fabe
de datagrama), es un protocoo de datagrama sn correccn; no provee as garanta de
fabdad y ordenamento de TCP a os protocoos de )ivel de Aplicacin y os datagramas
pueden egar en desorden o perderse sn notfcacn. Como consecuenca de o anteror es
que UDP es un protocoo ms rpdo y efcente para tareas geras o sensbes a tempo una
nterfaz muy smpe entre e )ivel de 'ed y )ivel de Aplicacin. S se requere agn tpo
de fabdad para os datos transmtdos, sta debe ser mpementada en os nvees
superores de a pa.
216
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A gua que IP, y a dferenca de TCP, es un protocoo de me|or esfuerzo o no-fabe. E nco
probema de fabdad que resueve es a correccn de errores en a cabecera y datos
transmtdos a travs de un campo de 16 bts para suma de veri&icacin (checksum), una
forma de contro de redundanca con a fnadad de proteger a ntegrdad de datos
verfcando que no hayan sdo corrompdos.
La estructura de paquetes UDP consste de 4 campos.
<uerto de origen. Encargado de dentfcar e puerto que enva y que se asume ser
e puerto haca donde se enva a respuesta s se necesta. Este campo es opcona: s
no se utza, e vaor de campo debe ser 0.
<uerto de destino. Identfca e puerto de destno. Es obgatoro.
ongitud. Un campo de 16 bts que especfca a ongtud de datagrama competo:
cabecera y datos. La ongtud mnma es de 8 bytes ya que es a ongtud msma de a
cabecera.
>uma de veri&icacin. Un campo de 16 bts que se utza para verfcar errores en
cabecera y datos.
Las apcacones ms comunes que hacen uso de este tpo de protocoo son DNS,
apcacones de transmsn de medos, voz sobre IP (VoIP), TFTP y |uegos en nea.
>C@<.
SCTP es un mecanismo de transporte &ia!le orentado haca conexn. Est orentado
tambn haca transmsn de datos pero no est orentado haca bytes como TCP. Provee
mtpes transmsones dstrbudos sobre una msma conexn. Puede adems representar
una conexn con mtpes dreccones IP de modo que s una IP faa, a conexn no se
nterrumpe. Se desarro ncamente para apcacones de teefona pero se puede utzar
en otras apcacones.
DCC<.
DCCP se encuentra en fase de desarroo y ba|o a tutea de a IETF (Internet Engneerng Task
Force) que pretende proveer a semntca de contro de fu|o de TCP y e modeo de servco
de datagrama de UDP a a vsta de usuaro.
'@<.
RTP es un protocoo de datagrama que fue dseado para datos en tempo rea como a
transmsn de audo y vdeo. Es un nve de sesn que utza e formato de paquetes de UDP
como base. Sn embargo se consdera que este protocoo pudera acomodar deba|o de nve
de transporte de modeo TCP/IP.
*5.*.+.3. )ivel de 'ed
Este nve resueve e probema de capturar os datos a travs de una red nca. %< (%nternet
<rotoco) reaza a tarea bsca de capturar os paquetes de datos desde una fuente haca un
destno. IP puede transportar datos para una gran cantdad de protocoos de nve superor (Nve
de Transporte). Otro e|empo de protocoo de este nve es X.25, que es un con|unto de protocoos
para redes WAN utzando neas teefncas o sstema ISDN.
217
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*5.*.+.4. )ivel de "nlace
Este nve no es reamente parte de Con.unto de <rotocolos @C<=%<, sno que es e mtodo
utzado para pasar paquetes desde e Nve de Red sobre dos dferentes anftrones. Este proceso
puede ser controado a travs de equpamento gco utzado como controador de dspostvo
para una tar|eta de red as como tambn sobre a <rogramacin en &irme (Frmware) o crcutos
ntegrados auxares (chpsets). Estos procesos reazarn funcones de enace de datos taes como
aadr una cabecera de paquete para preparar a transmsn, y entonces transmtr e todo a
travs de un medo fsco.
Este nve es donde os paquetes son nterceptados y envados haca una Red Prvada Vrtua
(VPN). Cuando esto se eva a acabo, os datos de Nve de Enace se consderan como os datos de
a apcacn y procede descendendo por a pa de modeo TCP/IP para reazar a verdadera
transmsn. En e extremo receptor, os datos suben por a pa de modeo TCP/IP dos veces, una
para a VPN y otra para e encamnamento (routng).
*5.*.+.5. )ivel Fsico
A gua que e Nve de Enace, no es reamente parte de Con.unto de <rotocolos @C<=%<.
Contempa todas as caracterstcas fscas de a comuncacn como a naturaeza de medo,
detaes de conectores, cdgo de canaes y moduacn, potencas de sea, ongtudes de onda,
sncronzacn y tempo de vda as como dstancas mxmas.
*5.*.*. :odelo 0>%
E Con.unto de <rotocolos @C<=%< (y su correspondente pa) han sdo utzados antes de que
se estabecera e modeo OSI (Interconexn de Sstemas Abertos u 0pen >ystems
%nterconnecton) y desde entonces e modeo TCP/IP ha sdo comparado con e modeo OSI tanto
en bros como en nsttucones educatvas. Ambas se reaconan pero no son equparabes. E
modeo OSI utza sete nvees, mentras que e modeo TCP/IP utza cnco. Los dos nvees que
hacen a dferenca en e Modeo OSI son e )ivel de <resentacin y e )ivel de >esin, msmos
que podran ser equvaentes a )ivel de Aplicacin de modeo TCP/IP.
De msmo modo que a pa de modeo TCP/IP, e modeo OSI no es o sufcentemente dverso en
os nvees nferores para abarcar as verdaderas capacdades de Con.unto de <rotocolos
@C<=%<. Un caro e|empo es que fata un nve ntermedo para acomodar entre e )ivel de 'ed y
e )ivel de @ransporte para poder determnar donde corresponden os protocoos ICMP e IGMP, y
otro nve ntermedo entre e )ivel de 'ed y e )ivel de @ransporte para determnar donde
corresponden os protocoos ARP y RARP.
)ivel )om!re Descripcin
7 Aplicacin HTTP, SMTP, SNMP, FTP, Tenet, SIP, SSH, NFS, RTSP, D:<< (E2tensbe :essagng and
<resence <rotoco), Whos, ENRP Tenet.
6 <resentacin DD' (E2terna Data 'epresentaton), A>).+ (Abstract >yntax )otaton 1), >:B (>erver
:essage Bock),AF< (Appe Fng <rotoco), )C< ()etWare Core <rotoco)
5 >esin A>A< (Aggregate >erver Access <rotoco), TLS, SSH, ISO 8327 / CCITT X.225, '<C
('emote <rocedure Ca), )etB%0>, A>< (Appetak >esson <rotoco), Wnsock, BSD
sockets
4 @ransporte TCP, UDP, RTP, SCTP, SPX, ATP, IL
2 "nlace de datos Ethernet, Token rng, HDLC, Frame reay, ISDN, ATM, 802.11 WF, FDDI, PPP
1 Fsico Defne todas as especfcacones fscas y ectrcas de os dspostvos, como son
dsposcn de pnes, vota|es, especfcacones de cabeado, concentradores, repetdores,
218
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
)ivel )om!re Descripcin
adaptadores de red, etc.
Ca!le, 'adio, fi!ra ptica, 'ed por palomas.
Los nvees 7 a 4 se casfcan como nvees de anftrn, mentras que os niveles in&eriores de 1
a 3 se casfcan como niveles de medios.
219
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*6. %ntroduccin a %< versin 4
Autor: $oel Barrios 'ue!as
Correo electrnico: dar(sram en gmail punto com
Sitio 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.
*6.+. %ntroduccin.
%<v4 es a versn 4 de Protocoo de Internet (%< o %nernet <rotoco) y consttuye a prmera
versn de IP que es mpementada de forma extensva. %<v4 es e prncpa protocoo utzado en
e Nve de Red de Modeo TCP/IP para Internet. Fue descrto nca mente en e RFC 791 eaborado
por a Fuerza de Traba|o en Ingenera de Internet (%"@F o %nternet "ngneerng @ask Force) en
Septembre de 1981, documento que de| obsoeto a RFC 760 de Enero de 1980.
IPv4 es un protocoo orentado haca datos que se utza para comuncacn entre redes a travs
de nterrupcones (swtches) de paquetes (por e|empo a travs de Ethernet). Tene as sguentes
caracterstcas:
Es un protocoo de un servco de datagramas no fabe (tambn referdo como de mejor esfuerzo).
No proporcona garanta en a entrega de datos.
No proporcona n garantas sobre a correccn de os datos.
Puede resutar en paquetes dupcado o en desorden.
Todos os probemas menconados se resueven en e nve superor en e modeo TCP/IP, por
e|empo, a travs de @C< o ,D<.
E propsto prncpa de %< es proveer una dreccn nca a cada sstema para asegurar que una
computadora en Internet pueda dentfcar a otra.
*6.*. Direcciones.
%<v4 utza dreccones de 32 bts (4 bytes) que mta e nmero de dreccones posbes a utzar
a 4,294,967,295 dreccones ncas. Sn embargo, muchas de estas estn reservadas para
propstos especaes como redes prvadas, :ultidi&usin (Mutcast), etc. Debdo a esto se
reduce e nmero de dreccones IP que reamente se pueden utzar, es esto msmo o que ha
mpusado a creacn de %<v6 (actuamente en desarroo) como reempazo eventua dentro de
agunos aos para %<v4.
*6.*.+. 'epresentacin de las direcciones.
Cuando se escrbe una dreccn %<v4 en cadenas, a notacn ms comn es a decimal con
puntos. Hay otras notacones basadas sobre os vaores de os octetos de a dreccn IP.
Utzando como e|empo: www.acancebre.org que tene como dreccn IP 201.161.1.226 en a
notacn decma con puntos:
220
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
)otacin Falor Conversin desde decimal con puntos
Decma con puntos 201.161.1.226 -
Hexadecma con
puntos
0xC9.0xA1.0x01.0xE2 Cada octeto de a dreccn es convertdo
ndvduamente a hexadecma.
Octa con puntos 0311.0241.0001.0342 Cada octeto es convertdo ndvduamente a
octa.
Bnaro con puntos 11001001.10100001.00000001.11100010 Cada octeto es convertdo ndvduamente a
bnaro
Hexadecma 0xC9A101E2 Concatenacn de os octetos de
hexadecma con puntos.
Decma 3382772194 La forma hexadecma convertda a decma.
Octa 31150200742 La forma hexadecma convertda a octa.
Bnaro 11001001101000010000000111100010 La forma hexadecma convertda a bnaro.
Te#ricamente, todos estos formatos menconados deberan ser reconocdos por os navegadores
(sn combnar). Adems, en as formas con puntos, cada octeto puede ser representado en
combnacn de dferentes bases. E|empo: 201.0241.0x01.226.
*6.3. Asignacin
Desde 1993 rge e esquema C%D' (Cassess %nter-Doman 'outng o Encamnamento Inter-
Domnos sn Cases) cuya prncpa venta|a es permtr a subdvsn de redes y permte as
entdades sub-asgnar dreccones IP, como hara un ISP con un cente.
E prncpo fundamenta de encamnamento (routng) es que a dreccn codfca nformacn
acerca de ocazacn de un dspostvo dentro de una red. Esto mpca que una dreccn
asgnada a una parte de una red no funconar en otra parte de a red. Exste una estructura
|errquca que se encarga de a asgnacn de dreccones de Internet arededor de mundo. Esta
estructura fue creada para e C%D', y hasta 1998 fue supervsada por a %A)A (%nternet Assgned
)umbers Authorty o Agenca de Asgnacn de Nmeros Internet) y sus '%' ('egona %nternet
'egstres o Regstros Regonaes de Internet). Desde e 18 de Septembre de 1998 a supervsn
est a cargo de a %CA)) (%nternet Corporaton for Assgned )ames and )umbers o Corporacn
de Internet para os Nombres y Nmeros Asgnados). Cada '%' mantene una base de datos
WE0%> dsponbe a pubco y que permte hacer bsquedas que proveen nformacn acerca de
as asgnacones de dreccones IP. La nformacn obtenda a partr de estas bsquedas |uega un
pape centra en numerosas herramentas as cuaes se utzan para ocazar dreccones IP
geogrfcamente.
*6.3.+. Blo#ues reservados.
Blo#ues de direcciones reservadas
Blo#ue de direcciones C%D' Descripcin 'e&erencia
0.0.0.0/8 Red actua (soo vdo como dreccn de orgen) RFC 1700
10.0.0.0/8 'ed <rivada RFC 1918
14.0.0.0/8 Red de datos pbcos RFC 1700
39.0.0.0/8 Reservado RFC 1797
127.0.0.0/8 Anftrn oca (ocahost) RFC 1700
128.0.0.0/16 Reservado
221
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Blo#ue de direcciones C%D' Descripcin 'e&erencia
169.254.0.0/16 'ed <rivada (Zeroconf) RFC 3927
172.16.0.0/12 'ed <rivada RFC 1918
191.255.0.0/16
192.0.0.0/24
192.0.2.0/24 Red de pruebas RFC 3330
192.88.99.0/24 Retransmsn desde %<v6 haca %<v4 RFC 3068
192.168.0.0/16 'ed <rivada RFC 1918
198.18.0.0/15 Pruebas de desempeo de red RFC 2544
223.255.255.0/24 Reservado RFC 3330
224.0.0.0/4 Mutdfusn (Mutcast, antes red Case D) RFC 3171
240.0.0.0/4 Reservado (Antes red Case E) RFC 1700
255.255.255.255 Dfusones (Broadcast)
*6.3.+.+. 'edes privadas.
De os ms de cuatro mil millones de dreccones permtdas por %<v4, tres rangos estn
especamente reservados para utzarse soamente en redes prvadas. Estos rangos no tenen
encamnamento fuera de una red prvada y as mqunas dentro de estas redes prvadas no
pueden comuncarse drectamente con as redes pbcas. Pueden, sn embargo, comuncarse
haca redes pbcas a travs de a Traduccn de Dreccones de Red o )A@ ()etwork Address
@ransaton).
Blo#ues reservados para redes privadas
)om!re
'ango de direcciones
%<
)umero de
direcciones %<
@ipo de clase
Blo#ue C%D'
mayor
Boque de
24bts
10.0.0.0 - 10.255.255.255 16,777,215 nca case A 10.0.0.0/8
Boque de
20bts
172.16.0.0 -
172.31.255.255
1,048,576
16 cases B
contguas
172.16.0.0/12
Boque de
16bts
192.168.0.0 -
192.168.255.255
65,535
256 cases C
contguas
192.168.0.0/16
*6.3.+.*. An&itrin local Mocal$ostN
Adems de as redes prvadas, e rango 127.0.0.0 - 127.255.255.255, o 127.0.0.0/8 en a notacn
C%D', est reservado para a comuncacn de anftrn oca (ocahost). Nnguna dreccn de
este rango deber aparecer en una red, sea pbca o prvada, y cuaquer paquete envado haca
cuaquer dreccn de este rango deber regresar como un paquete entrante haca a msma
mquna.
222
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*6.4. 'e&erencia de su!(redes de %< versin 4.
Agunos segmentos de espaco de dreccones de IP, dsponbes para a versn 4, se especfcan y
asgnan a travs de documentos 'FC ('equest For Comments, o Soctud De Comentaros), que
son con|untos de notas tcncas y de organzacn que se eaboran desde 1969 donde se descrben
os estndares o recomendacones de Internet, antes ARPANET. E|empos de esto son os usos de
Retorno de sstema (oopback, RFC 1643), as redes prvadas (RFC 1918) y Zeroconf (RFC 3927)
que no estn ba|o e contro de os '%' ('egona %nternet 'egstres o Regstros Regonaes de
Internet).
La mscara de sub-red es utzada para separar os bts de un dentfcados de una red a partr de
os bts de dentfcados de anftrn. Se escrbe utzando e msmo tpo de notacn para escrbr
dreccones IP.
C%D' :;scara de su!(red An&itriones
)om!re de la
clase
,so tpico
/8 255.0.0.0 16777216 Case A
Boque ms grande defndo por a
IANA
/9 255.128.0.0 8388608
/10 255.192.0.0 4194304
/11 255.224.0.0 2097152
/12 255.240.0.0 1048576
/13 255.248.0.0 524288
/14 255.252.0.0 262144
/15 255.254.0.0 131072
/16 255.255.0.0 65536 Case B
/17 255.255.128.0 32768 ISP / negocos grandes
/18 255.255.192.0 16384 ISP / negocos grandes
/19 255.255.224.0 8192 ISP / negocos grandes
/20 255.255.240.0 4096 ISP pequeos / negocos grandes
/21 255.255.248.0 2048 ISP pequeos / negocos grandes
/22 255.255.252.0 1024
/23 255.255.254.0 512
/24 255.255.255.0 256 Case C LAN grande
/25 255.255.255.128 128 LAN grande
/26 255.255.255.192 64 LAN pequea
/27 255.255.255.224 32 LAN pequea
/28 255.255.255.240 16 LAN pequea
/29 255.255.255.248 8
/30 255.255.255.252 4
Redes de unn (enaces punto a
punto)
/31 255.255.255.254 2
Red no utzabe, sugerda para
enaces punto a punto (RFC 3021)
/32 255.255.255.255 1 Ruta de anftrn
223
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*6.5. 'e&erencias.
http://www.etf.org/rfc/rfc760.txt
http://www.etf.org/rfc/rfc791.txt
http://www.etf.org/rfc/rfc1643.txt
http://www.etf.org/rfc/rfc1700.txt
http://www.etf.org/rfc/rfc1797.txt
http://www.etf.org/rfc/rfc1918.txt
http://www.etf.org/rfc/rfc2544.txt
http://www.etf.org/rfc/rfc3021.txt
http://www.etf.org/rfc/rfc3068.txt
http://www.etf.org/rfc/rfc3171.txt
http://www.etf.org/rfc/rfc3330.txt
http://www.etf.org/rfc/rfc3927.txt
224
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*7. Cmo con&igurar los par;metros de red en
inu2.
Autor: $oel Barrios 'ue!as
Correo electrnico: dar(sram en gmail punto com
Sitio 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.
*7.+. %ntroduccin
Confgurar os parmetros de red en una estacn de traba|o GNU/Lnux o un servdor no es
reamente compcado. Soamente requerr de agunos conocmentos bscos sobre redes y
cuaquer edtor de texto smpe, como V, Emacs o gEdt.
*7.*. <rocedimientos
*7.*.+. Deteccin y con&iguracin del sustento &sico M$ardPareN.
En Cent0> 6 y 'ed Eat "nterprise inu2 6, que utza nceo de Lnux versn 2.6.32, a
deteccn de as tar|etas de red es automtca, mentras se trate de tar|etas de red soportadas.
Para consutar a sta de tar|etas de red compatbes, vste hardware.redhat.com.
En Cent0> 5 y 'ed Eat "nterprise inu2 5, a deteccn de as tar|etas de red es reazada o
ben por e programa de nstaacn, o ben a travs de (udzu, un servco que nca |unto con e
sstema y que se encarga de detectar y confgurar os dspostvos de sustento fsco (ard)are)
nstaados. En trmnos generaes, es nnecesaro confgurar parmetro aguno mentras os
dspostvos de red sean compatbes y exsta un controador para a versn de nceo ((ernel)
e|ecutado.
S acaso no fuese detectado e dspostvo de red debdo a a ausenca de (udzu, es posbe
confgurar todo manuamente. La marca de a tar|eta de red es o que menos nteresa, o que es
mportante es que se determne con exacttud que crcuto ntegrado auxar (cipset) utza a
tar|eta de red. Esto puede determnarse examnando fscamente a tar|eta de red o ben
examnando a detae a sada en pantaa que se obtene a e|ecutar e sguente mandato:
lspci ^ grep %thernet
Lo anteror devueve una sada smar a a sguente (en e caso de una tar|eta 3Com 905 C)
%thernet controller" ?(om (orporation ?c7#8(/X D<ast %therlinkE (rev
15#)@
De ser necesaro, puede modfcarse, con un edtor de textos, e archvo =etc=modpro!e.con&.
Puede verfcarse e mduo correspondente a a tar|eta de red consutando e archvo
anterormente menconado:
225
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
alias eth# ?c87x
S se reaz aguna edcn de este archvo, deber de e|ecutarse e sguente mandato, a fn de
actuazar dependencas:
depmod a
S utza un nceo de a sere 2.4.x o 2.6, a sta de mduos exstentes en e sstema que se
pueden utzar para dstntos crcutos ntegrados auxares de dstntos modeos de tar|etas de red
se puede obtener stando e contendo de drectoro =li!=modules=Tversin del
n1cleoU=Kernel=drivers=net=. E|empo:
ls /lib/modules/5@6@1456>@el8;3%/kernel/drivers/net/
*7.*.*. )etPorK:anager.
Desde CentOS 5 y Red Hat Enterprse Lnux 5, se ncuye una mpementacn aternatva para a
gestn de parmetros de red desde a nterfaz de usuaro. En CentOS y Red Hat Enterprse Lnux 5
vene desactvada de modo predetermnado, por o que permte traba|ar normamente. Sn
embargo en CentOS 6 y Red Hat Enterprse Lnux 6, este servco vene actvo, savo que se haga a
nstaacn mnma o a nstaacn bsca de servdor.
S se desea mpedr que NetworkManager gestone aguna nterfaz de red en partcuar, y que se
pueda ncar |unto con e servco netPorK, soo basta con modfcar e parmetro
NM_CONTROLLED de archvo de confguracn de a nterfaz deseada, dentro de drectoro
=etc=syscon&ig=netPorK(scripts=, y estabecer no como vaor de ste. E|empo:
$%&'(%)eth#
.+9../)yes
9../;R./.)static
123$$R)>>"46"<("33"$$"5$
NM_CONTROLLED=no
';3$$R)165@16@1@8#
+%/,3SH)588@588@588@175
I3/%23:)165@16@1@1
$.,3'+)dominio@tld
$+S1)4@4@4@4
$+S5)4@4@>@>
Mentras est estabecdo ):QC0)@'0"DRno en a confguracn de a nterfaz de red,
NetworkManager gnorar sta por competo. S va a prescndr de uso de modo grfco, o ben se
evarn a cabo cambos poco frecuentes de a confguracn de os dspostvos de red de sstema,
tambn se puede desactvar por competo e servco )etPorK:anager, y ahorrar arededor de
un de MB de RAM. E uso de NetworkManager soo tene sentdo en una computadora portt que
se conecta a mtpes redes nambrcas, o ben un escrtoro.
chkcon!ig +etwork,anager o!!
service +etwork,anager stop
226
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*7.*.3. Asignacin de par;metros de red.
*7.*.3.+. )om!re del an&itrin ME0>@)A:"N.
Debe modfcarse con un edtor de textos e archvo =etc=$osts, y debe verfcarse que este
dferencado e eco o retorno de sstema de nombre de sstema, e cua deber estar asocado a
una de as dreccones IP, especfcamente a que est asocado a dcho nombre en e servdor de
sstema de nombres de domno (DNS) s se cuenta con uno en a red oca. E|empo:
156@#@#@1 localhost@localdomain localhost
165@16@1@8# nombre@dominio@tld nombre
Se debe estabecer un nombre para e sstema. Este deber ser un FBD) (acrnmo de Fuy
Buafed Doman )ame o Nombre de Domno Penamente Cafcado) resueto por un servdor de
nombres de domno (DNS) o ben. En e caso de sstemas sn conexn a red o sstemas caseros,
sea resueto de manera oca en e archvo =etc=$osts. De ta modo, e nom!re del an&itrin
(ostname) de sstema se defnr dentro de archvo =etc=syscon&ig=netPorK de sguente
modo:
+%/2.RH'+I)yes
1.S/+3,%)nombre@dominio@tld
*7.*.3.*. Direccin %<L m;scara de su!red y puerta de enlace.
Debe modfcarse con cuaquer edtor de textos, y verfcar que sus parmetros de red sean os
correctos, e archvo ocazado en a ruta =etc=syscon&ig=netPorK(scripts=i&c&g(et$O. E|empo:
$%&'(%)eth#
.+9../)yes
9../;R./.)static
+,-(.+/R.00%$)no
';3$$R)165@16@1@8#
+%/,3SH)588@588@588@175
I3/%23:)165@16@1@1
Los parmetros anterores son proporconados por e admnstrador de a red oca en donde se
ocace a mquna que est sendo confgurada, o ben defndos de acuerdo a una panfcacn
prevamente estabecda. E admnstrador de a red deber proporconar una dreccn IP
dsponbe (IPADDR) y una mscara de a subred (NETMASK).
*7.*.3.3. >ervidores de nom!res.
Hay dos parmetros a confgurar: domno de bsqueda predetermnado y a menos un servdor de
nombres. En Cent0> 6 y 'ed Eat "nterprise inu2 6, se pueden estabecer aadendo a
archvo fcfg-eth0, que se encontrar de drectoro =etc=syscon&ig=netPorK(scripts=, e
parmetro D0:A%) y os parmetro DNS1, DNS2 y DNS3. E|empo:
227
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
$%&'(%)eth#
.+9../)yes
9../;R./.)static
+,-(.+/R.00%$)no
';3$$R)165@16@1@8#
+%/,3SH)588@588@588@175
I3/%23:)165@16@1@1
DOMALN=5o/#n#o.2)5
DNS-=8.8.8.8
DNS,=8.8.J.J
Lo anteror actuazar automtcamente e archvo =etc=resolv.con& con e contendo que
corresponda.
En Cent0> 5 y 'ed Eat "nterprise inu2 5 (y versones anterores de stos), debe modfcarse
con un edtor de textos a archvo =etc=resolv.con&, donde se estabecern os servdores de
sstema de resoucn de nombres de domno (DNS). E|empo:
search dominio@tld
nameserver 4@4@4@4
nameserver 4@4@>@>
*7.*.4. Agregar rutas est;ticos.
Las rutas esttcas se pueden aadr utzando e mandato route, sguendo a sguente sntaxs:
route add net DreddestinoE netmask DmcscaraE gw DpuertadeenlaceE dispositivo
En e sguente e|empo se defnr a ruta esttca haca a red +S*.+69.3.O con mscara
*55.*55.*55.+S*, puerta de enace a travs de a dreccn IP +7*.+6.+.36 y a travs de
dspostvo de red et$+:
route add net 175@164@?@# netmask 588@588@588@175 gw 165@16@1@?6 eth1
Es un requsto que a puerta de enace de destno sea acanzabe desde e dspostvo utzado.
Una ruta esttca no puede ser estabecda s no es posbe acanzar a puerta de enace necesara.
S se renca e servco de red, os cambos se perdern.
S se requere estabecer as rutas esttcas adconaes para obtener conectvdad con otras redes
y que os cambos sean permanentes, se pueden generar archvos para cada nterfaz que sea
necesaro, en donde se estabecen os vaores para puerta de enace, red a a que se quere
acceder y a mscara de subred correspondente. Los archvos se deben generar dentro de
drectoro =etc=syscon&ig=netPorK(scripts= como route2;interfaz< y deben evar e sguente
formato:
I3/%23:$)xxx@xxx@xxx@xxx
3$$R%SS$)xxx@xxx@xxx@xxx
+%/,3SH$)xxx@xxx@xxx@xxx
228
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Por ctar un e|empo, magnemos que nos encontramos dentro de a red 172.16.1.0 y se requere
estabecer conectvdad con as redes 192.168.2.0 y 192.168.3.0, con mscaras 255.255.255.192,
a travs de as puertas de enace o enrutadores o encamnadores con dreccn IP 192.168.2.1 y
192.168.3.1, correspondentemente para cada red ctada, a travs de a prmera nterfaz Ethernet
de sstema (eth0). La confguracn de =etc=syscon&ig=netPorK(scripts=route(et$O sera a
sguente:
I3/%23:$)175@164@5@1
3$$R%SS$)175@164@5@#
+%/,3SH$)588@588@588@175
I3/%23:-)175@164@?@1
3$$R%SS-)175@164@?@#
+%/,3SH-)588@588@588@175
*7.*.5. Funcin de 'eenvo de pa#uetes para %< versin 4.
S dspone de a menos 2 dspostvos de red y se tene paneado mpementar un NAT o DNAT, se
debe habtar e reenvo de paquetes para IP versn 4. Esto se reaza edtando e archvo
=etc=sysctl.con&, y estabecendo + para actvar, o ben de|ar O para mantener nactvo:
vim /etc/sysctl@con!
Y cambando net.ipv4.ipQ&orPard R O por net.ipv4.ipQ&orPard R +:
net@ipv>@ip-!orward ) 1
Para apcar e cambo, sn rencar e sstema, soo es necesaro e|ecutar o sguente:
sysctl w net@ipv>@ip-!orward)1
*7.*.6. Compro!aciones.
Despus de hacer confgurado todos os parmetros de red deseados, soo deber de ser rencado
e servco de red, e|ecutando o sguente:
service network restart
Basta soamente comprobar s hay reamente conectvdad. Puede e|ecutarse e mandato ping
haca cuaquer dreccn de a red oca para ta fn.
ping c? 165@16@1@1
Las nterfaces y a nformacn de as msmas se puede examnar utzando:
i!con!ig
Las rutas esttcas se pueden comprobar utzando e sguente mandato:
route n
229
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Para comprobar s hay resoucn de nombres, se puede reazar una consuta haca os servdores
DNS defndos para e sstema, utzando:
host dominio@tld
*7.*.7. Alta de direcciones %< virtuales
Las dreccones IP vrtuaes srven para que e sstema responda para ms de una dreccn IP a
travs de msmo dspostvo de red. Son tes en os casos en os cuaes se tene un servco de
hospeda|e de pgnas de Internet, y se desea que cada sto tenga su propa dreccn IP. Tambn
son tes en os muros cortafuegos donde se quere que un con|unto de equpos sagan haca
Internet enmascarados con una IP (una LAN, por e|empo), y otro con|unto de equpos o hagan con
una dreccn IP dstnta (una DMZ, por e|empo).
Basta defnr soamente a dreccn IP, mscara de subred y e nombre de dspostvo. E archvo
se genera guamente con e nombre de dspostvo con e pref|o i&c&g(, dentro de drectoro
=etc=syscon&ig=netPorK(scripts=. E|empo de contendo de archvo =etc=syscon&ig=netPorK(
scripts=i&c&g(et$O-O que corresponde a prmer dspostvo vrtua de prmer dspostvo eternet:
$%&'(%)e23$?$
';3$$R)175@164@5@58>
+%/,3SH)588@588@588@175
La comprobacn, a e|ecutar e mandato i&con&ig, deber regresar ago como o sguente
eth# 0ink encap"%thernet 12addr ##"#1"#5"#?"#>"#8
inet addr"165@16@1@1 9cast"165@16@1@6? ,ask"588@588@588@175
=; 9R.3$(3S/ R=++'+I ,=0/'(3S/ ,/="18## ,etric"1
RX packets"56>4?# errors"# dropped"# overruns"# !rame"#
/X packets"588?76 errors"# dropped"# overruns"# carrier"#
collisions"?>4 txJueuelen"1###
RX bytes">5?68614 (>#@> ,i9) /X bytes"5#?#6#4# (17@? ,i9)
'nterrupt"11 9ase address"#xd###
eth#"# 0ink encap"%thernet 12addr ##"#1"#5"#?"#>"#8
inet addr"165@16@1@5 9cast"165@16@1@6? ,ask"588@588@588@175
=; 9R.3$(3S/ R=++'+I ,=0/'(3S/ ,/="18## ,etric"1
'nterrupt"11 9ase address"#xd###
lo 0ink encap"0ocal 0oopback
inet addr"156@#@#@1 ,ask"588@#@#@#
=; 0..;93(H R=++'+I ,/="16>?6 ,etric"1
RX packets"587# errors"# dropped"# overruns"# !rame"#
/X packets"587# errors"# dropped"# overruns"# carrier"#
collisions"# txJueuelen"#
RX bytes"??56477 (?@1 ,i9) /X bytes"??56477 (?@1 ,i9)
*7.*.9. a &uncin cerocon&.
De modo predetermnado, y a fn de permtr a comuncacn entre dos dferentes sstemas a
travs de un cabe R|45 cruzado (crossover), e sstema tene habtado cerocon&, tambn
conocdo como cero Con&iguration )etPorKing o Automatic <rivate %< Addressing (APIPA).
Es un con|unto de tcncas que automtcamente crean una dreccn IP utzabe sn necesdad de
confguracn de servdores especaes. Permte a usuaros sn conocmentos de redes conectar
computadoras, mpresoras en red y otros artcuos entre s.
230
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Sn Zeroconf os usuaros sn conocmentos tendran que confgurar servdores especaes como
DHCP y DNS para poder estabecer conectvdad entre dos equpos.
Estando habtado Zeroconf se mostrar un regstro en a taba de rutas esttcas para a red
+6S.*54.O.O a utzar e mandato route (n, devovendo una sada smar a a sguente:
165@16@1@# #@#@#@# 588@588@588@175 = # # # eth#
-'%.,5J.$.$ $.$.$.$ ,55.,55.$.$ U $ $ $ e23$
156@#@#@# #@#@#@# 588@588@588@588 = # # # lo
#@#@#@# 165@16@1@1 #@#@#@# =I # # # eth#
S se desea desactvar Zeroconf, soo bastar aadr en e archvo =etc=syscon&ig=netPorK e
parmetro )0c"'0C0)F con e vaor yes:
+%/2.RH'+I)yes
1.S/+3,%)nombre@dominio@tld
NOMEROCONF=yes
A termnar, soo hay que rencar e servco de red para que surtan efecto os cambos y
comprobar de nuevo con e mandato route (n que a ruta para cerocon& ha desaparecdo:
165@16@1@# #@#@#@# 588@588@588@175 = # # # eth#
156@#@#@# #@#@#@# 588@588@588@588 = # # # lo
#@#@#@# 165@16@1@1 #@#@#@# =I # # # eth#
Una vez hecho o anteror, exsten dos servcos en e sstema en CentOS y Red Hat Enterprse
Lnux 5 y versones posterores, que se pueden desactvar puesto que srven para estabecer a
comuncacn a travs de Zeroconf, estos son ava$i(daemon y ava$i(dnscon&d. Desactvar
estos dos servcos ahorrar tempo en e arranque y se consumrn algunos pocos menos
recursos de sistema.
chkcon!ig avahidnscon!d o!!
chkcon!ig avahidaemon o!!
service avahidnscon!d stop
service avahidaemon stop
Muchas apcacones y componentes para e modo grfco dependen de Zeroconf para su correcto
funconamento. Por tanto, no es convenente desactvar este soporte s se va a hacer uso de
modo grfco.
Para ms detaes acerca de cerocon&, puede consutara nformacn dsponbe en:
http://www.zeroconf.org/
http://en.wkpeda.org/wk/Zeroconf
".ercicios.
*7.*.S. 'utas est;ticas.
Este e|ercco consdera o sguente:
231
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
1. Se tene dos equpos de cmputo con GNU/Lnux nstaado en ambos.
2. pc+.dominio.tld tene una dreccn IP 172.16.1.61 con mscara de subred
255.255.255.192 en e dspostvo eth0. Una dreccn IP 10.3.2.1 con mscara de subred
255.255.255.240 en e dspostvo eth1.
3. pc*.dominio.tld tene una dreccn IP 172.16.1.102 (o cuaquera otra en e msmo
segmento) con mscara de subred 255.255.255.192 en e dspostvo eth0. Carece de otros
dspostvos de red actvos.
Vsuace desde pc*.dominio os regstros de a taba de rutas esttcas.
route n
Obtendr una sada smar a a sguente:
Hernel '; routing table
$estination Iateway Ienmask <lags ,etric Re! =se '!ace
165@16@1@# #@#@#@# 588@588@588@175 = # # # eth#
#@#@#@# 165@16@1@1 #@#@#@# =I # # # eth#
Intente e|ecutar ping haca a dreccn recn aadda en pc+.dominio.
ping c ? 1#@?@5@1
E resutado esperado es que ping devueva que hay 100% de prdda de paquetes.
;'+I 1#@?@5@1 (1#@?@5@1) 86(4>) bytes o! data@
1#@?@5@1 ping statistics
? packets transmittedB # receivedB 1##V packet lossB time 1777ms
Proceda a aadr a ruta esttca que corresponde especfcando a red, mascar de subred y
puerta de enace necesaros para egar haca 10.3.2.1.
route add P
net 1#@?@5@# P
netmask 588@588@588@5># P
gw 165@16@1@61 P
eth#
Vsuace de nuevo os regstros de a taba de rutas esttcas.
route n
Obtendr una sada smar a a sguente:
Hernel '; routing table
$estination Iateway Ienmask <lags ,etric Re! =se '!ace
165@16@1@# #@#@#@# 588@588@588@175 = # # # eth#
#@#@#@# 165@16@1@1 #@#@#@# =I # # # eth#
-$.3.,.$ -I,.-'.-.- ,55.,55.,55.,J$ UG $ $ $ e23$
232
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Intente e|ecutar ping haca a dreccn recn aadda en pc+.dominio.
ping c ? 1#@?@5@1
E resutado esperado es que ping responda a png, obtenndose una sada smar a a sguente:
;'+I 1#@?@5@1 (1#@?@5@1) 86(4>) bytes o! data@
6> bytes !rom 1#@?@5@1" icmp-seJ)# ttl)6> time)#@>8? ms
6> bytes !rom 1#@?@5@1" icmp-seJ)1 ttl)6> time)#@?64 ms
6> bytes !rom 1#@?@5@1" icmp-seJ)5 ttl)6> time)#@?>6 ms
1#@?@5@1 ping statistics
? packets transmittedB ? receivedB #V packet lossB time 1777ms
rtt min/avg/max/mdev ) #@?>6/#@?47/#@>8?/#@#>4 msB pipe 5
Rence e servco de red, vsuace de nuevo os regstros de a taba de rutas esttcas y
compruebe que ya no hay respuesta a hacer ping haca 10.3.2.1 porque e regstro en a taba de
rutas esttcas fue emnado a rencar e servco de red.
service network restart
route n
ping c ? 1#@?@5@1
Para hacer permanente e regstro en a taba de rutas esttcas utce un edtor de texto e
archvo =etc=syscon&ig=netPorK(scripts=route(et$O, y ponga e sguente contendo:
3$$R%SS$)1#@?@5@#
+%/,3SH$)588@588@588@5>#
I3/%23:$)165@16@1@61
A termnar rence e servco de red.
service network restart
Vsuace nuevamente os regstros de a taba de rutas esttcas.
route n
Lo anteror debe devover una sada smar a a sguente:
Hernel '; routing table
$estination Iateway Ienmask <lags ,etric Re! =se '!ace
165@16@1@# #@#@#@# 588@588@588@175 = # # # eth#
#@#@#@# 165@16@1@1 #@#@#@# =I # # # eth#
-$.3.,.$ -I,.-'.-.- ,55.,55.,55.,J$ UG $ $ $ e23$
Intente e|ecutar ping haca a dreccn recn aadda en pc+.dominio.
ping c ? 1#@?@5@1
233
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Rence e servco de red, vsuace de nuevo os regstros de a taba de rutas esttcas y
compruebe de nuevo que hay respuesta a hacer png haca 10.3.2.1.
service network restart
route n
ping c? 1#@?@5@1
*7.*.+O. ".ercicio- Direcciones %< virtuales.
Este e|ercco consdera o sguente:
1. Se tene dos (o ms) equpos de cmputo con GNU/Lnux nstaado en stos.
2. pc+.dominio.tld tene una dreccn IP 172.16.1.50, con mscara de subred
255.255.255.192 en e dspostvo eth0. Carece de otros dspostvos de red actvos.
3. Se aadr como nterfaz vrtua (eth0:0) a dreccn IP 172.16.1.51, con mscara de subred
255.255.255.192.
Vsuace as nterfaces de red actvas en e sstema.
i!con!ig
Lo anteror debe devover una sada smar a a sguente, donde se mostrar que soo estn
actvas a nterfaz et$O y a correspondente a dspostvo de retorno de sstema (loopbac():
eth# 0ink encap"%thernet 12addr ##"#1"#5"#?"#>"#8
inet addr"165@16@1@8# 9cast"165@16@1@6? ,ask"588@588@588@175
=; 9R.3$(3S/ R=++'+I ,=0/'(3S/ ,/="18## ,etric"1
RX packets"5>64> errors"# dropped"# overruns"# !rame"#
/X packets"5??66 errors"# dropped"# overruns"# carrier"#
collisions"115 txJueuelen"1###
RX bytes"18?5??16 (1>@6 ,i9) /X bytes"867>544 (8@8 ,i9)
'nterrupt"11 9ase address"#xd###
lo 0ink encap"0ocal 0oopback
inet addr"156@#@#@1 ,ask"588@#@#@#
=; 0..;93(H R=++'+I ,/="16>?6 ,etric"1
RX packets"1??6 errors"# dropped"# overruns"# !rame"#
/X packets"1??6 errors"# dropped"# overruns"# carrier"#
collisions"# txJueuelen"#
RX bytes"1581#5 (155@1 Hi9) /X bytes"1581#5 (155@1 Hi9)
Utce ping para comprobar s acaso hay aguna respuesta desde a nterfaz vrtua et$O-O.
ping c? 165@16@1@81
Lo anteror debe devover una sada smar a a sguente:
;'+I 165@16@1@81 (165@16@1@81) 86(4>) bytes o! data@
165@16@1@81 ping statistics
? packets transmittedB # receivedB 1##V packet lossB time 1777ms
234
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Confgure a travs de i&con&ig os parmetros de a nterfaz vrtua et$O-O. S a sntaxs fue
correcta, e sstema no deber devover mensa|e aguno.
i!con!ig eth#"# 165@16@1@81 netmask 588@588@588@175
Utce ping para comprobar que haya respuesta desde a nterfaz vrtua et$O-O.
ping c? 165@16@1@81
Lo anteror debe devover una sada smar a a sguente:
;'+I 165@16@1@81 (165@16@1@81) 86(4>) bytes o! data@
6> bytes !rom 165@16@1@81" icmp-seJ)# ttl)6> time)#@>8? ms
6> bytes !rom 165@16@1@81" icmp-seJ)1 ttl)6> time)#@?64 ms
6> bytes !rom 165@16@1@81" icmp-seJ)5 ttl)6> time)#@?>6 ms
165@16@1@81 ping statistics
? packets transmittedB ? receivedB #V packet lossB time 1777ms
rtt min/avg/max/mdev ) #@?>6/#@?47/#@>8?/#@#>4 msB pipe 5
Vsuace as nterfaces de red actvas en e sstema.
i!con!ig
Lo anteror debe devover una sada smar a a sguente, donde se mostrar que est actva a
nterfaz et$O-O |unto con a nterfaz et$O y a correspondente a dspostvo de retorno de
sstema (loopbac():
eth# 0ink encap"%thernet 12addr ##"#1"#5"#?"#>"#8
inet addr"165@16@1@8# 9cast"165@16@1@6? ,ask"588@588@588@175
=; 9R.3$(3S/ R=++'+I ,=0/'(3S/ ,/="18## ,etric"1
RX packets"5>64> errors"# dropped"# overruns"# !rame"#
/X packets"5??66 errors"# dropped"# overruns"# carrier"#
collisions"115 txJueuelen"1###
RX bytes"18?5??16 (1>@6 ,i9) /X bytes"867>544 (8@8 ,i9)
'nterrupt"11 9ase address"#xd###
e23$?$ 0ink encap"%thernet 12addr ##"#1"#5"#?"#>"#8
inet addr"165@16@1@81 9cast"165@16@1@6? ,ask"588@588@588@175
=; 9R.3$(3S/ R=++'+I ,=0/'(3S/ ,/="18## ,etric"1
'nterrupt"11 9ase address"#xd###
lo 0ink encap"0ocal 0oopback
inet addr"156@#@#@1 ,ask"588@#@#@#
=; 0..;93(H R=++'+I ,/="16>?6 ,etric"1
RX packets"1??6 errors"# dropped"# overruns"# !rame"#
/X packets"1??6 errors"# dropped"# overruns"# carrier"#
collisions"# txJueuelen"#
RX bytes"1581#5 (155@1 Hi9) /X bytes"1581#5 (155@1 Hi9)
Rence e servco netPorK.
service network restart
235
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Utce e mandato ping para comprobar s an hay respuesta desde a nterfaz vrtua et$O-O.
ping c? 165@16@1@81
Lo anteror debe devover una sada smar a a sguente:
;'+I 165@16@1@81 (165@16@1@81) 86(4>) bytes o! data@
165@16@1@81 ping statistics
? packets transmittedB # receivedB 1##V packet lossB time 1777ms
Vsuace as nterfaces de red actvas en e sstema.
i!con!ig
Lo anteror debe devover una sada smar a a sguente, donde se mostrar que ya no est
actva a nterfaz et$O-O, y soo se muestran actvas a nterfaz et$O y a correspondente a
dspostvo de retorno de sstema (loopbac():
eth# 0ink encap"%thernet 12addr ##"#1"#5"#?"#>"#8
inet addr"165@16@1@8# 9cast"165@16@1@6? ,ask"588@588@588@175
=; 9R.3$(3S/ R=++'+I ,=0/'(3S/ ,/="18## ,etric"1
RX packets"5>64> errors"# dropped"# overruns"# !rame"#
/X packets"5??66 errors"# dropped"# overruns"# carrier"#
collisions"115 txJueuelen"1###
RX bytes"18?5??16 (1>@6 ,i9) /X bytes"867>544 (8@8 ,i9)
'nterrupt"11 9ase address"#xd###
lo 0ink encap"0ocal 0oopback
inet addr"156@#@#@1 ,ask"588@#@#@#
=; 0..;93(H R=++'+I ,/="16>?6 ,etric"1
RX packets"1??6 errors"# dropped"# overruns"# !rame"#
/X packets"1??6 errors"# dropped"# overruns"# carrier"#
collisions"# txJueuelen"#
RX bytes"1581#5 (155@1 Hi9) /X bytes"1581#5 (155@1 Hi9)
Para hacer permanente a nterfaz de red vrtua en et$O-O utce un edtor de texto e archvo
=etc=syscon&ig=netPorK(scripts=i&c&g(et$O-O y ponga e sguente contendo Md'espete
may1sculas y min1sculaseN:
$%&'(%)eth#"#
';3$$R)165@16@1@81
+%/,3SH)588@588@588@175
Rence e servco de red.
service network restart
Vsuace as nterfaces de red actvas en e sstema.
i!con!ig
236
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Lo anteror debe devover una sada smar a a sguente, donde nuevamente se mostrar que
est actva a nterfaz et$O-O |unto con a nterfaz et$O y a correspondente a dspostvo de
retorno de sstema (loopbac():
eth# 0ink encap"%thernet 12addr ##"#1"#5"#?"#>"#8
inet addr"165@16@1@8# 9cast"165@16@1@6? ,ask"588@588@588@175
=; 9R.3$(3S/ R=++'+I ,=0/'(3S/ ,/="18## ,etric"1
RX packets"5>64> errors"# dropped"# overruns"# !rame"#
/X packets"5??66 errors"# dropped"# overruns"# carrier"#
collisions"115 txJueuelen"1###
RX bytes"18?5??16 (1>@6 ,i9) /X bytes"867>544 (8@8 ,i9)
'nterrupt"11 9ase address"#xd###
e23$?$ 0ink encap"%thernet 12addr ##"#1"#5"#?"#>"#8
inet addr"-I,.-'.-.5- 9cast"175@164@1@588 ,ask",55.,55.,55.-%,
=; 9R.3$(3S/ R=++'+I ,=0/'(3S/ ,/="18## ,etric"1
'nterrupt"11 9ase address"#xd###
lo 0ink encap"0ocal 0oopback
inet addr"156@#@#@1 ,ask"588@#@#@#
=; 0..;93(H R=++'+I ,/="16>?6 ,etric"1
RX packets"1??6 errors"# dropped"# overruns"# !rame"#
/X packets"1??6 errors"# dropped"# overruns"# carrier"#
collisions"# txJueuelen"#
RX bytes"1581#5 (155@1 Hi9) /X bytes"1581#5 (155@1 Hi9)
Utce e mandato ping para comprobar que haya respuesta desde a nterfaz vrtua et$O-O.
ping c? 165@16@1@81
Lo anteror debe devover una sada smar a a sguente:
;'+I 165@16@1@81 (165@16@1@81) 86(4>) bytes o! data@
6> bytes !rom 165@16@1@81" icmp-seJ)# ttl)6> time)#@>8? ms
6> bytes !rom 165@16@1@81" icmp-seJ)1 ttl)6> time)#@?64 ms
6> bytes !rom 165@16@1@81" icmp-seJ)5 ttl)6> time)#@?>6 ms
165@16@1@81 ping statistics
? packets transmittedB ? receivedB #V packet lossB time 1777ms
rtt min/avg/max/mdev ) #@?>6/#@?47/#@>8?/#@#>4 msB pipe 5
La nterfaz et$O-O estar actva a sguente vez que nce e sstema operatvo con a dreccn IP
y mscara de subred asgnados.
237
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*9. Cmo con&igurar FA)s en ?),=inu2..
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.
*9.+. %ntroduccin.
De acuerdo a Wkpeda, 0una 8&A= >acr#nimo de Virtual LA, o ?ed de @rea &ocal 8irtualA es un
mtodo para crear redes l#gicamente independientes dentro de una misma red fsica. 8arias
8&A=s pueden coe5istir en un Bnico conmutador fsico o en una Bnica red fsica. "on Btiles para
reducir el tama!o del dominio de difusi#n y ayudan en la administraci#n de la red, separando
segmentos l#gicos de una red de rea local, impidiendo que puedan intercambiar datos usando la
red local.1
Su mpementacn requere de dsponer de conmutadores (swtches) con capacdad para VLAN
(protocoo 802.1q), os cuaes debern estar previamente con&igurados para gestonar agunas
VLANs (y saber cmo hacero), y entender perfectamente IP versn 4.
*9.*. "#uipamiento lgico necesario.
E soporte necesaro para confgurar VLANs se ncuye |unto con e paquete vcon&ig, msmo que
puede nstaarse de sguente modo en Cent0> 5 y 'ed Eat "nterprise inu2 5 y versones
posterores de stos:
yum y install vcon!ig
*9.3. <rocedimientos.
Edtar e archvo =etc=syscon&ig=netPorK:
vim /etc/syscon!ig/network
Aadr e sguente parmetro para actvar e soporte para VLAN, msmo que permtr que
posterormente cargue automtcamente e mduo 9O*+# de nceo de Lnux:
&03+)yes
Asumendo que se utza a nterfaz eth1 para acceder a a red oca, edtar e archvo de
confguracn:
vim /etc/syscon!ig/networkscripts/i!c!geth1
238
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Outar todos os parmetros de red, y soo de|ar o sguente:
$%&'(%)eth1
/:;%)%thernet
9../;R./.)none
.+9../)yes
123$$R)xx"xx"xx"xx"xx"xx
+,-(.+/R.0%$)no
Rencar e servco de red a fn de que apque e cambo y para que cargue de manera automtca
e mduo 9O*+# de nceo de Lnux.
service network restart
Pueden crearse manera tempora (se perdern uego de rencar e sstema) os dspostvos de
VLAN de sguente modo:
vcon!ig add eth1 5
vcon!ig add eth1 ?
vcon!ig add eth1 >
i!con!ig eth1@5 165@16@#@68 netmask 588@588@588@175
i!con!ig eth1@? 165@16@#@157 netmask 588@588@588@175
i!con!ig eth1@> 165@16@#@17? netmask 588@588@588@175
En caso de que sea necesaro, para emnar os dspostvos de VLAN, se utza nuevamente e
mandato vcon&ig, con a opcn rem, segudo de nombre de dspostvo VLAN. Sguendo e
e|empo utzado en este documento, soo habra que e|ecutar o sguente:
vcon!ig rem eth1@5
vcon!ig rem eth1@?
vcon!ig rem eth1@>
Para que os dspostvos de VLANs sean permanentes, es necesaro crear, dentro de drectoro
=etc=syscon&ig=netPorK(scripts, os archvos de confguracn de nterfaz, sguendo e sguente
formato:
ic!geth1@n`merovlan
E nmero de VLAN, preferentemente debe corresponder son e mmos utzado en e conmutador
prncpa. Se debe evitar usar a VLAN 1 (eth1.1 o eth0.1), 172.16.0.1 como IP para e servdor, as
como tambn evtar utzar a red 172.16.0.0/26, porque sueen corresponder a nmero de VLAN,
dreccn IP, y segmento de red que reguarmente utzan os conmutadores.
E|empo de contendo de =etc=syscon&ig=netPorK(scripts=i&c&g(et$+.*.
239
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
$%&'(%)eth1@5
/:;%)%thernet
9../;R./.)static
.+9../)yes
+,-(.+/R.0%$)no
';3$$R)165@16@#@68
+%/,3SH)588@588@588@175
9R.3$(3S/)165@16@#@156
+%/2.RH)165@16@#@6>
E|empo de contendo de =etc=syscon&ig=netPorK(scripts=i&c&g(et$+.3
$%&'(%)eth1@?
/:;%)%thernet
9../;R./.)static
.+9../)yes
+,-(.+/R.0%$)no
';3$$R)165@16@#@157
+%/,3SH)588@588@588@175
9R.3$(3S/)165@16@#@171
+%/2.RH)165@16@#@154
E|empo de contendo de =etc=syscon&ig=netPorK(scripts=i&c&g(et$+.4
$%&'(%)eth1@>
/:;%)%thernet
9../;R./.)static
.+9../)yes
+,-(.+/R.0%$)no
';3$$R)165@16@#@17?
+%/,3SH)588@588@588@175
9R.3$(3S/)165@16@#@588
+%/2.RH)165@16@#@175
Rencar nuevamente e servco de red a fn de que ncen as nterfaces de VLAN.
service network restart
Verfcar con e mandato i&con&ig que todas as VLAN estn presentes.
i!con!ig
La sada debe ser ago smar a o sguente:
240
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
eth# 0ink encap"%thernet 12addr >>"46"<("33"$$"5$
inet6 addr" !e4#""556"b7!!"!e?4"?6bc/6> Scope"0ink
=; 9R.3$(3S/ R=++'+I ,=0/'(3S/ ,/="18## ,etric"1
RX packets"1?8151>4 errors"# dropped"# overruns"# !rame"#
/X packets"18?846#6 errors"# dropped"# overruns"# carrier"#
collisions"# txJueuelen"1###
RX bytes">>>8#54>44 (>@1 Ii9) /X bytes"151?>76>?86 (11@? Ii9)
'nterrupt"155 ,emory"da######da#154##
eth#@5 0ink encap"%thernet 12addr >>"46"<("33"$$"5$
inet addr"165@16@#@68 9cast"165@16@#@156 ,ask"588@588@588@175
inet6 addr" !e4#"">646"!c!!"!eaa"dd5d/6> Scope"0ink
=; 9R.3$(3S/ R=++'+I ,=0/'(3S/ ,/="18## ,etric"1
RX packets"# errors"# dropped"# overruns"# !rame"#
/X packets"14 errors"# dropped"# overruns"# carrier"#
collisions"# txJueuelen"#
RX bytes"# (#@# b) /X bytes">??? (>@5 Hi9)
eth#@? 0ink encap"%thernet 12addr >>"46"<("33"$$"5$
inet addr"165@16@#@157 9cast"165@16@#@171 ,ask"588@588@588@175
inet6 addr" !e4#"">646"!c!!"!eaa"dd5d/6> Scope"0ink
=; 9R.3$(3S/ R=++'+I ,=0/'(3S/ ,/="18## ,etric"1
RX packets"# errors"# dropped"# overruns"# !rame"#
/X packets"16 errors"# dropped"# overruns"# carrier"#
collisions"# txJueuelen"#
RX bytes"# (#@# b) /X bytes">5?8 (>@1 Hi9)
eth#@> 0ink encap"%thernet 12addr >>"46"<("33"$$"5$
inet addr"165@16@#@17? 9cast"165@16@#@588 ,ask"588@588@588@175
inet6 addr" !e4#"">646"!c!!"!eaa"dd5d/6> Scope"0ink
=; 9R.3$(3S/ R=++'+I ,=0/'(3S/ ,/="18## ,etric"1
RX packets"# errors"# dropped"# overruns"# !rame"#
/X packets"1? errors"# dropped"# overruns"# carrier"#
collisions"# txJueuelen"#
RX bytes"# (#@# b) /X bytes"?>#8 (?@? Hi9)
lo 0ink encap"0ocal 0oopback
inet addr"156@#@#@1 ,ask"588@#@#@#
inet6 addr" ""1/154 Scope"1ost
=; 0..;93(H R=++'+I ,/="16>?6 ,etric"1
RX packets"14? errors"# dropped"# overruns"# !rame"#
/X packets"14? errors"# dropped"# overruns"# carrier"#
collisions"# txJueuelen"#
RX bytes"51?74 (5#@4 Hi9) /X bytes"51?74 (5#@4 Hi9)
*9.3.+. Administrando direcciones %< de las FA)s a travs de un
servidor DEC<.
Para avo de os admnstradores de sstemas, es posbe utzar e servco de DHCP para
gestonar a admnstracn de dreccones IP a travs de un servdor DHCP.
Edtar e archvo =etc=syscon&ig=d$cpd, y defnr as nterfaces de VLAN a utzar |unto con e
servdor DHCP.
$1(;$3RIS)*eth1@5 eth1@? eth1@>*Y
Edtar e archvo =etc=d$cpd.con& (Cent0> 5 y 'ed Eat "nterprise inu2 5), o ben
=etc=d$cp=d$cpd.con& (Cent0> 6 y 'ed Eat "nterprise inu2 6), defnr una seccn por cada
red:
241
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
serveridenti!ier servidor@redlocal@netY
ddnsupdatestyle interimY
ignore clientupdatesY
authoritativeY
de!aultleasetime 7##Y
maxleasetime 65##Y
option ip!orwarding o!!Y
option domainname *redlocal@net*Y
option ntpservers 5##@5?@81@5#8B 1?5@5>4@41@57B 1>4@5?>@6@?#Y
sharednetwork vlan5 Z
subnet 165@16@#@6> netmask 588@588@588@175 Z
option routers 165@16@#@68Y
option subnetmask 588@588@588@175Y
option broadcastaddress 165@16@#@156Y
option domainnameservers 165@16@#@68Y
option netbiosnameservers 165@16@#@68Y
range 165@16@#@66 165@16@#@156Y
[
[
sharednetwork vlan? Z
subnet 165@16@#@154 netmask 588@588@588@175 Z
option routers 165@16@#@157Y
option subnetmask 588@588@588@175Y
option broadcastaddress 165@16@#@171Y
option domainnameservers 165@16@#@175Y
option netbiosnameservers 165@16@#@175Y
range 165@16@#@1?# 165@16@#@17#Y
[
[
sharednetwork vlan> Z
subnet 165@16@#@175 netmask 588@588@588@175 Z
option routers 165@16@#@17?Y
option subnetmask 588@588@588@175Y
option broadcastaddress 165@16@#@588Y
option domainnameservers 165@16@#@17?Y
option netbiosnameservers 165@16@#@17?Y
range 165@16@#@17> 165@16@#@58>Y
[
[
Rencar (o ncar, segn sea e caso) e servco d$cpd, y comprobar que funcone correctamente
e servco, conectando agunos equpos a os conmutadores nvoucrados.
service dhcpd restart
242
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*S. Cmo con&igurar acoplamiento de tar.etas
de red M!ondingN.
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.
*S.+. %ntroduccin.
E controador !onding, orgnamente creado por Donald BecKer, est ncudo en prctcamente
todas as dstrbucones de GNU/Lnux y permte sumar as capacdades de varas nterfaces fscas
de red con ob|eto de crear una nterfaz gca. Esto se eva a cabo con e ob|eto de contar con
redundanca o ben baanceo de carga.
*S.*. <rocedimientos.
*S.*.+. Arc$ivo de con&iguracin =etc=modpro!e.con&.
Se estabece e controador !onding para crear a nterfaz !ondO de sguente modo:
alias bonding bond#
E controador puede evar parmetros que permten modfcar su funconamento, de entre os
cuaes os ms mportantes son mode y miimon. A fn de obtener un buen funconamento
confabe, es mportante confgurar a menos stos dos parmetros.
Para fnes generaes, se puede smpemente confgurar de sguente modo:
alias bond# bonding
options bonding mode)# miimon)#
Lo anteror estabece en e parmetro mode a potca de baanceo de carga y toeranca a faos y
desactva en e parmetro miimon a supervsn de :%%, que corresponde a confguracn ms
comn.
A termnar con e archvo =etc=modpro!e.con&, es mportante utzar e mandato depmod para
regenerar e archvo modules.dep y os archvos mapa de os controadores.
depmod
Lo anteror soo debe devover e smboo de sstemas despus de unos segundos.
243
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*S.*.+.+. <ar;metro mode.
Se utza para estabecer a potca ba|a a cua se har traba|ar as tar|etas en con|unto. Los
posbes vaores son:
0 (cero): Estabece una potca de 'ound('o!in, que es un agortmo que asgna una carga
equtatva y ordenada a cada proceso, para proporconar tolerancia a &allos y !alanceo de
carga entre os membros de arrego de dspostvos. Todas as transmsones de datos son
envadas y recbdas de forma secuenca en cada nterfaz escava de arrego empezando con a
prmera que est dsponbe. "s la poltica predeterminada de controador y a que funcona
para a mayora de os casos.
1 (uno): Estabece una potca de respado actvo que proporcona tolerancia a &allos. Todo e
trfco se transmte a travs de una tar|eta y soo se utzar a otra en caso de que fae a
prmera.
2 (dos): Estabece una potca D0' (e5clusive2or, excusva-o) para proporconar tolerancia a
&allos y !alanceo de carga. Este agortmo compara as soctudes entrantes de as dreccones
:AC hasta que concden para a dreccn :AC (:eda Access Contro) de una de as tar|etas
escavas. Una vez que se estabece e enace, as transmsones de datos de datos son envadas en
forma secuenca empezando con a prmera nterfaz dsponbe.
3 (tres): Estabece una potca de 'ound('o!in, para proporconar tolerancia a &allos y
!alanceo de carga. Todas as transmsones de datos son envadas de forma secuenca en cada
nterfaz escava de arrego empezando con a prmera que est dsponbe.
En e sguente e|empo se estabece a potca 0 (cero):
options bonding /o5e=$
*S.*.+.*. <ar;metro miimon.
Se utza para especfcar cada cuantos msegundos se debe supervsar e enace :%% (:eda
%ndependent %nterface). Se utza cuando se necesta ata dsponbdad para verfcar s a nterfaz
est actva y verfcar s hay un cabe de red conectado. En e sguente e|empo se estabecen 100
msegundos:
options bonding mode)# /##/on=-$$
Se requere que todos os controadores de arrego de tar|etas tengan soporte para :%%. Para
verfcar s e controador de a tar|eta tene soporte para :%%, se utza e mandato et$tool, donde
a sada debe devover e parmetro inK Detected con e vaor yes. E|empo:
ethtool eth#
Lo anteror debe devover ago smar a o sguente:
Settings !or eth#"
Supported ports" D /; ,'' E
Supported link modes" 1#base//1al! 1#base//<ull
1##base//1al! 1##base//<ull
Supports autonegotiation" :es
244
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3dvertised link modes" 1#base//1al! 1#base//<ull
1##base//1al! 1##base//<ull
3dvertised autonegotiation" :es
Speed" 1##,b/s
$uplex" 1al!
;ort" ,''
;1:3$" ?5
/ransceiver" internal
3utonegotiation" on
Supports 2akeon" pumbg
2akeon" d
(urrent message level" #x#######6 (6)
0ink detected" yes
Para desactvar esta funcn, se utza e vaor 0 (cero). E|empo:
options bonding mode)# /##/on=$
*S.*.*. Arc$ivo de con&iguracin =etc=syscon&ig=netPorK(scripts=!ondO.
Este se confgura con os msmo parmetros que una tar|eta norma. Requere os parmetros
0)B00@, B00@<'0@0, D"F%C", %<ADD', )"@:A>I y ?A@"WAb.
En e sguente e|empo se confgura a nterfaz !ondO con a dreccn IP esttca 192.168.0.1,
mscara de subred 255.255.255.0, puerta de enace 192.168.0.254 y a nterfaz nca |unto con e
sstema creando e archvo =etc=syscon&ig=netPorK(scripts=i&c&g(!ondO con e sguente
contendo:
$%&'(%)bond#
.+9../)yes
9../;R./.)static
';3$$R)175164@#@1
+%/,3SH)588@588@588@#
I3/%23:)175@164@#@58>
Las nterfaces de red a utzar como escavas se confguran de a sguente forma, consderando
que se tene eth0 y eth1, e contendo de archvo =etc=syscon&ig=netPorK(scripts=i&c&g(et$O
sera:
$%&'(%)eth#
9../;R./.)none
.+9../)no
S03&%)yes
,3S/%R)bond#
Y e contendo de archvo =etc=syscon&ig=netPorK(scripts=i&c&g(et$+ sera:
$%&'(%)eth1
9../;R./.)none
.+9../)no
S03&%)yes
,3S/%R)bond#
245
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
*S.*.3. %niciarL detener y reiniciar el servicio netPorK.
Para e|ecutar por prmera vez e servco netPorK tras confgurar e acopamento de tar|etas,
utce:
service network start
Para hacer que os cambos hechos tras modfcar a confguracn surtan efecto, utce:
service network restart
Para detener e servco netPorK utce:
service network stop
*S.3. Compro!aciones.
Para verfcar que a nterfaz gca qued confgurada, en e caso de haber utzado as nterfaces
eth0 y eth1, utce:
i!con!ig
Lo anteror debe devover ago smar a o sguente:
bond# 0ink encap"%thernet 12addr ##"#1"4#">1"7("43
inet addr"175@164@1@6> 9cast"175@164@1@588 ,ask"588@588@588@#
inet6 addr" !e4#""5#1"4#!!"!e>1"7c4a/6> Scope"0ink
=; 9R.3$(3S/ R=++'+I ,3S/%R ,=0/'(3S/ ,/="18## ,etric"1
RX packets"8154 errors"# dropped"# overruns"# !rame"#
/X packets"?416 errors"6 dropped"# overruns"# carrier"#
collisions"? txJueuelen"#
RX bytes"?>7?1?7 (?@? ,i9) /X bytes">78#58 (>4?@> Hi9)
eth# 0ink encap"%thernet 12addr ##"#1"4#">1"7("43
inet6 addr" !e4#""5#1"4#!!"!e>1"7c4a/6> Scope"0ink
=; 9R.3$(3S/ R=++'+I S03&% ,=0/'(3S/ ,/="18## ,etric"1
RX packets"8#86 errors"# dropped"# overruns"# !rame"#
/X packets"?641 errors"# dropped"# overruns"# carrier"#
collisions"? txJueuelen"1###
RX bytes"?>6>648 (?@? ,i9) /X bytes">446?5 (>66@1 Hi9)
'nterrupt"11 9ase address"#xc###
eth1 0ink encap"%thernet 12addr ##"#1"4#">1"7("43
inet6 addr" !e4#""5#1"4#!!"!e>1"7c4a/6> Scope"0ink
=; 9R.3$(3S/ R=++'+I S03&% ,=0/'(3S/ ,/="18## ,etric"1
RX packets"65 errors"# dropped"# overruns"# !rame"#
/X packets"?6 errors"6 dropped"# overruns"# carrier"#
collisions"# txJueuelen"1###
RX bytes"14>8> (14@# Hi9) /X bytes"6?7? (6@5 Hi9)
'nterrupt"1#
lo 0ink encap"0ocal 0oopback
inet addr"156@#@#@1 ,ask"588@#@#@#
inet6 addr" ""1/154 Scope"1ost
246
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
=; 0..;93(H R=++'+I ,/="16>?6 ,etric"1
RX packets"61?4 errors"# dropped"# overruns"# !rame"#
/X packets"61?4 errors"# dropped"# overruns"# carrier"#
collisions"# txJueuelen"#
RX bytes"4?6>46> (6@7 ,i9) /X bytes"4?6>46> (6@7 ,i9)
Para verfcar que as nterfaces de red estn funconando correctamente, y que hay un cabe de
red conectado a stas, se utza e mandato et$tool de sguente modo:
ethtool eth# ^grep *0ink detected*
ethtool eth1 ^grep *0ink detected*
S ambas tar|etas tene soporte para :%%, o anteror debe devover o sguente:
0ink detected" yes
0ink detected" yes
*S.4. Bi!liogra&a.
Thomas Davs: http://www.nuxfoundaton.org/en/Net:Bondng
Thomas Davs: http://www.kerne.org/pub/nux/kerne/peope/marceo/nux-
2.4/Documentaton/networkng/bondng.txt
247
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3O. Cmo conectarse a una red Wi&i desde la
terminal.
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.
3O.+. %ntroduccin.
Confgurar, y conectarse a una red Wf desde a nterfaz grfca es un procedmento
reatvamente trva, de|ando que todos os procedmentos os reacen NetworkManager o
Connman. Sn embargo ha crcunstancas en as cuaes puede ser necesaro conectarse a una red
Wf desde una termna. A contnuacn descrbr os procedmentos para conectarse a os dos
tpos de redes Wf ms utzados, WEP, y WPA, con confguracones bscas utzadas en
dspostvos como seran os puntos de acceso de os modem ADSL de Prodgy Infntum.
3O.+.+. Bue es W<A? <or #u de!era usarlo en lugar de W"<?
W<A (W-F <rotected Access), y W<A* es una case de sstemas para e aseguramento de redes
nambrcas. W<A fue creado en respuesta a as seras debdades de otros protocoos como
W"< (Wred "quvaent <rvacy). Impementa a mayora de o que conforma e estndar %"""
9O*.++i, y fue dseado para funconar con todas os dspostvos para redes nambrcas,
excepto os puntos de acceso de prmera generacn. W<A* mpementa todo e estndar %"""
9O*.++i, pero no funcona con muchos dspostvos ve|os.
W<A fue creado por e grupo ndustra, y comerca Aanza W-F, dueos de a marca regstrada
Wi(Fi, y certfcadores de os dspostvos que ostenten dcho nombre.
Los datos utzan e agortmo RC4 con una cave de 128 bts, y un vector de ncazacn de 48
bts. Una de as me|oras ms sobresaentes sobre su predecesor, W"<, es @I%< (@empora Iey
%ntegrty <rotoco, o Protocoo de ntegrdad de cave tempora), e cua consste en e cambo
dnmco mentras se utza e sstema. Cuando se combna con Fectores de %niciali8acin
mayores, hace consderabemente ms dfc reazar ataques para a obtencn de aves, como
ocurre con W"<.
Adems de proporconar autentcacn, y cframento, W<A proporcona me|or ntegrdad de a
carga t. La verfcacn de redundanca ccca (C'C o Cycc 'edundancy Check) utzada en
W"< es nsegura porque permte aterar a carga t, y actuazar e mensa|e de verfcacn de
redundanca ccca sn necesdad de conocer a cave W"<. En cambo W<A utza un Cdigo de
%ntegridad de :ensa.e (:%C o :essage %ntegrty Code) que es en readad un agortmo
denomnado 0Cicael1, que fue e ms fuerte que se pudo utzar con dspostvos antguos para
redes nambrcas a fn de no de|ar obsoetos a stos. E Cdigo de %ntegridad de :ensa.e de
W<A ncuye un un mecansmo que contrarresta os ntentos de ataque para vunerar @I%<, y
boques temporaes.
248
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
En resumen, W<A hace ms dfc vunerar as redes nambrcas a ncrementar os tamaos de
as caves,, y Fectores de %niciali8acin, reducendo e nmero de paquetes envados con caves
reaconadas,, y aadendo un sstema de verfcacn de mensa|es.
Adems de poder utzar una cave compartda (<>I o <re->hared Iey), o cua supe a
compe|dad de mpementacn de un servdor de autentcacn 9O*.+D en hogares, y ofcnas
pequeas, W<A puede utzar <rotocolos "2tensi!les de Autenticacin ("A< o ("xtensbe
Authentcaton <rotoco), como os sguentes:
EAP-TLS
EAP-TTLS/MSCHAPv2
PEAPv0/EAP-MSCHAPv2
PEAPv1/EAP-GTC
EAP-SIM
EAP-LEAP
Entre os dversos servdores que pueden utzarse para este tpo de mpementacones, est
Free'AD%,>. Alcance i!re cuenta con un modesto documento para a confguracn de esta
mpementacn.
3O.*. "#uipamiento lgico necesario.
3O.*.+. %nstalacin a travs de yum.
Se requeren os paquetes Pireless(tools, y PpaQsupplicant. Para nstaar o actuazar e
equpamento gco necesaro en Fedora, Cent0> 5, y 6 o 'ed Eata "nterprise inu2 5 o 6,, y
versones posterores de stos, soo se necesta e|ecutar como root o sguente:
yum y install wirelesstools wpa-supplicant
S utza De!ian o ,!untu,, y versones posterores, soo se necesta reazar o sguente para
nstaar o actuazar e equpamento gco necesaro:
sudo aptget install wirelesstools wpa-supplicant
3O.*.*. <reparativos.
En sstemas operatvos basados sobre Fedora, CentOS, y Red Hat Enterprse Lnux, e prmer paso
consste en cambarse a usuaro root:
su l
En sstemas operatvos basados sobre Ubuntu Lnux, se puede utzar e mandato sudo para todos
os procedmentos, precedendo todos os mandatos utzados con sudo.
249
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
sudo cualJuier mandato utiliCado
E|empos:
sudo i!up lo
sudo iwcon!ig wlan#
sudo iwlist wlan# scan
Debdo a que e servco NetworkManager har confcto con os procedmentos, se debe detener
este servco:
service +etwork,ananger stop
Muchos componentes de sstema requeren que est actva a nterfaz de retorno de sstema
(oopback), por o que es mportante ncar sta:
i!up lo
Para poder comenzar a utzar a nterfaz Wf, soo basta e|ecutar e mandato wconfg sobre dcha
nterfaz:
iwcon!ig wlan#
Es buena dea reazar un escaneado de as redes Wf dsponbes para asegurarse se puede
acceder a a red Wf deseada,, y para determnar e protocoo a utzar:
iwlist wlan# scan
3O.*.3. Autenticando en el punto de acceso.
3O.*.3.+. A travs de redes W"<.
Para redes WEP, que se caracterzan por tener una segurdad muy pobre, es muy smpe. Soo
basta utzar dos mandatos. E prmero defne e nombre de punto de acceso a utzar:
iwcon!ig wlan# essid puntodeacceso
E segundo mandato se utza para defnr a cave de acceso a utzar, sea de 64 o 128 bt.
iwcon!ig wlan# key clavedeacceso
S se utza una cave WEP tpo ASCII, se defne de a sguente manera:
iwcon!ig wlan# key s"clavedeacceso
250
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3O.*.3.*. A travs de redes W<A.
Se procede a determnar e nombre de a red Wf a utzar, y a cave de acceso. E mandato
PpaQpassp$rase se utzar para generar un archvo de confguracn a utzar posterormente:
wpa-passphrase puntodeacceso clavedeacceso R /root/wpa@con!
S se reaza e procedmento desde Ubuntu Lnux, e mandato anteror faar s se utza sudo
debdo a mtacones de segurdad de sudo,, y deber utzarse entonces e sguente:
sudo bash c *wpa-passphrase puntodeacceso clavedeacceso R /root/wpa@con!*
Lo anteror generar e archvo Ppa.con& dentro de drectoro de nco de usuaro root.
Para ncar a autentcacn con a red Wf, se utza e mandato PpaQsupplicant con as
opcones (B, para envar e procesos a segundo pano, -D, para especfcar e controador a utzar,,
y -c, para especfcar e archvo de confguracn creado en e paso anteror.
wpa-supplicant 9 $wext iwlan# c/root/wpa@con!
3O.*.4. Asignando par;metros de red a la inter&a8.
3O.*.4.+. ,tili8ando d$client.
Lo ms comn es utzar e mandato d$client para de|ar que e servdor DHCP de punto de
acceso o a LAN se encargue de asgnar os parmetros de red para a nterfaz. Es buena dea
ndcar a d$client que bere e prstamo que estuvera asgnado en e servdor DHCP:
dhclient r
Para obtener una nueva dreccn IP, se utza e mandato d$client de a sguente manera:
dhclient wlan#
3O.*.4.*. Asignando manualmente los par;metros de red.
S se conocen os datos para a confguracn de red, tambn es posbe asgnaros manuamente.
En e sguente e|empo, se asgna a a nterfaz wan0 a dreccn IP 192.168.70.50, con mscara
de subred 255.255.255.128, y puerta de enace 192.168.70.1:
i!con!ig wlan# 175@164@6#@8# netmask 588@588@588@154
route add net #@#@#@# netmask #@#@#@# gw 175@164@6#@1 wlan#
Para defnr e servdor DNS, como e usuaro root, se edta e archvo =etc=resolv.con&, y se defne
a dreccn IP de servdor DNS a utzar. En e sguente e|empo, se defne 192.168.70.1 como
servdor DNS:
echo *nameserver 175@164@6#@1* R /etc/resolv@con!
251
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S se reaza e procedmento desde Ubuntu Lnux, e mandato anteror faar s se utza sudo
debdo a mtacones de segurdad de sudo,, y deber utzarse entonces e sguente:
sudo bash c *echo Xnameserver 175@164@6#@1X R /etc/resolv@con!*
3O.*.4.3. Asignacin permanente de par;metros de red en FedoraL Cent0>L y
'ed Eat "nterprise inu2.
Soo es necesaro crear e archvo de nterfaz, dentro de =etc=syscon&i=netPorK(scrips= sguendo
e sguente formato:
i!c!g3uto-puntodeacceso
Como e|empo, s se desea conectar e sstema a un punto de acceso denomnado alcance*, se
debe crear e archvo =etc=syscon&i=netPorK(scrips=i&c&g(AutoQalcance*:
vim /etc/syscon!i/networkscrips/i!c!g3uto-alcance5
S se va a conectar a travs de DHCP,, y utzar WEP, poner e sguente contendo:
+3,%)*3uto alcance5*
.+9../)yes
/:;%)2ireless
9../;R./.)dhcp
%SS'$)alcance5
,.$%),anaged
S%(=R'/:-,.$%)open
$%<3=0/H%:)1
;%%R$+S)yes
;%%RR.=/%S)yes
$1(;-(0'%+/-'$)nombreeJuipo
$1(;-1.S/+3,%)nombreeJuipo
S se va a conectar a travs de DHCP,, y utzar WPA, poner e sguente contendo:
+3,%)*3uto alcance5*
.+9../)yes
/:;%)2ireless
9../;R./.)dhcp
%SS'$)alcance5
,.$%),anaged
H%:-,I,/)2;3;SH
;%%R$+S)yes
;%%RR.=/%S)yes
$1(;-(0'%+/-'$)nombreeJuipo
$1(;-1.S/+3,%)nombreeJuipo
Para a cave de acceso de punto de acceso, es necesaro crear e archvo =etc=syscon&i=netPorK(
scrips=Keys(AutoQalcance*:
vim /etc/syscon!i/networkscrips/keys3uto-alcance5
S se va a conectar por WEP, poner e sguente contendo:
252
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
H%:-;3SS;1R3S%1)clavedeacceso
S se va a conectar por WPA, poner e sguente contendo:
2;3-;SH)clavedeacceso
Hecho todo o anteror, ser posbe ncar o detener a nterfaz utzando os mandatos i&up e
i&doPn.
3O.3. Bi!liogra&a.
http://en.wkpeda.org/wk/W-F_Protected_Access
http://www.acancebre.org/artce.php/20070404112747533
http://www.acancebre.org/artce.php/20070403184255131
253
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3+. Cmo utili8ar lso&
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.
3+.+. %ntroduccin.
3+.+.+. Acerca de lso&.
so& es un mandato que sgnfca 0listar arcivos abiertos1 (lst open &es). Es utzado
ampamente en sstemas operatvos tpo <0>%D para hacer reportes de archvos y os procesos
que estn utzando a stos. Se puede utzar para revsar que procesos estn hacendo uso de
drectoros, archvos ordnaros, tuberas (pipes), zcaos de red (soc(ets) y dspostvos. Uno de os
prncpaes usos de determnar que procesos estn hacendo uso de archvos en una partcn
cuando esta no se puede desmontar. so& fue desarroado por Fic A!ell, quen aguna vez fue
drector de Centro de Cmputo de a ,niversidad de <urdue.
3+.*. <rocedimientos.
En ausenca de parmetros, lso& mostrar todos os procesos hacendo uso de archvos. En
e|empo de a sada tpca sera como a sguente:
(.,,3+$ ;'$ =S%R <$ /:;% $%&'(% S'G% +.$% +3,%
init 1 root cwd $'R 7B? >#76 5 /
init 1 root rtd $'R 7B? >#76 5 /
init 1 root txt R%I 7B? ?465# 1>6>?> /sbin/init
init 1 root mem R%I 7B? 1586?6 1688#6 /lib/ld
5@8@so
init 1 root mem R%I 7B? 16#516> 16881>
/lib/i646/nosegneg/libc5@8@so
init 1 root mem R%I 7B? 16>54 168814 /lib/libdl
5@8@so
init 1 root mem R%I 7B? 7?8#4 168666
/lib/libselinux@so@1
init 1 root mem R%I 7B? 5>544# 16886?
/lib/libsepol@so@1
init 1 root 1#u <'<. #B18 18>? /dev/initctl
Para vsuazar ms cmodamente esta sada, se puede utzar e mandato less o e mandato
more como subrutnas. E|empo:
lso! ^ less
Puede especfcarse que se muestren todos os procesos desde un drectoro en partcuar,
soamente especfcando este uego de lso&. En e sguente e|empo se socta a lso& mostrar
todos os procesos que estn hacendo uso de ago dentro de /var.
254
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
lso! /var
La sada de a anteror puede ser smar a a sguente:
(.,,3+$ ;'$ =S%R <$ /:;% $%&'(% S'G% +.$% +3,%
auditd 55>6 root 8w R%I 7B1 >#4#84 8?>15#4 /var/log/audit/audit@log
syslogd 5541 root 1w R%I 7B1 11?>6#4 16##687? /var/log/messages
syslogd 5541 root 5w R%I 7B1 15>61 16##687> /var/log/secure
syslogd 5541 root ?w R%I 7B1 7758 16##6878 /var/log/maillog
syslogd 5541 root >w R%I 7B1 ???7 16##6874 /var/log/cron
syslogd 5541 root 8w R%I 7B1 # 16##6876 /var/log/spooler
syslogd 5541 root 6w R%I 7B1 716 16##6876 /var/log/boot@log
named 5?8# named cwd $'R 7B1 >#76 16?815># /var/named/chroot/var/named
named 5?8# named rtd $'R 7B1 >#76 16?815?6 /var/named/chroot
named 5?8# named 7r (1R 1B4 16?815>6 /var/named/chroot/dev/random
rpc@statd 5>#6 root cwd $'R 7B1 >#76 18>??657 /var/lib/n!s/statd
rpc@statd 5>#6 root 4w R%I 7B1 8 588714?1 /var/run/rpc@statd@pid
S se quere mostrar soamente e archvo utzado por un procesos en partcuar, se utza a
opcn -p seguda de nmero de proceso. En e sguente e|empose socta a lso& mostrar os
archvos utzados por e proceso 2281 que arbtraramente se e|ecuta en un sstema:
lso! p 5541
S hubera un proceso 2281, a sada podra verse como a sguente:
(.,,3+$ ;'$ =S%R <$ /:;% $%&'(% S'G% +.$% +3,%
syslogd 5541 root cwd $'R 7B? >#76 5 /
syslogd 5541 root rtd $'R 7B? >#76 5 /
syslogd 5541 root txt R%I 7B? ?84## 1>6?75 /sbin/syslogd
syslogd 5541 root mem R%I 7B? 16#516> 16881> /lib/i646/nosegneg/libc5@8@so
syslogd 5541 root mem R%I 7B? >664# 168857 /lib/libnss-!iles5@8@so
syslogd 5541 root mem R%I 7B? 1586?6 1688#6 /lib/ld5@8@so
syslogd 5541 root #u unix #xc#ac!c4# 67#7 /dev/log
syslogd 5541 root 1w R%I 7B1 11?>6#4 16##687? /var/log/messages
syslogd 5541 root 5w R%I 7B1 15>61 16##687> /var/log/secure
syslogd 5541 root ?w R%I 7B1 7758 16##6878 /var/log/maillog
syslogd 5541 root >w R%I 7B1 ???7 16##6874 /var/log/cron
syslogd 5541 root 8w R%I 7B1 # 16##6876 /var/log/spooler
syslogd 5541 root 6w R%I 7B1 716 16##6876 /var/log/boot@log
La opcn (i har que se muestren todos os archvos de red (%nternet y 2.*5) utzados por
procesos de red. S se quere mostrar os archvos de red en uso por agn proceso de red en
partcuar, se utzan as opcones (i segudo de una subrutna con grep y e nombre de agn
servco. En e sguente e|empo se pde a lso& mostrar soamente os archvos de red utzados
por os procesos de red dervados de named:
lso! i ^ grep named
Lo anteror puede devover una sada smar a a sguente.
named 5?8# named 5#u ';v> 6#71 =$; localhost@localdomain"domain
named 5?8# named 51u ';v> 6#75 /(; localhost@localdomain"domain (0'S/%+)
named 5?8# named 55u ';v> 6#7? =$; servidor@redlocal@net"domain
named 5?8# named 5?u ';v> 6#7> /(; servidor@redlocal@net"domain (0'S/%+)
named 5?8# named 5>u ';v> 6#78 =$; O"!ilenettms
named 5?8# named 58u ';v6 6#76 =$; O"!ilenetrpc
named 5?8# named 56u ';v> 6#76 /(; localhost@localdomain"rndc (0'S/%+)
named 5?8# named 56u ';v6 6#74 /(; localhost6@localdomain6"rndc (0'S/%+)
255
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
named 5?8# named 54u ';v> 118?67# =$; 175@164@155@1"domain
256
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3*. Cmo utili8ar )etcat MncN
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.
3*.+. %ntroduccin.
3*.+.+. Acerca de )etcat.
)etcat, o nc que es a forma en que se utza en e ntrprete de mandatos, es una herramenta
utzada para supervsar y escrbr sobre conexones tanto por @C< como por ,D<. Puede abrr
conexones @C<, envar paquetes ,D<, escuchar sobre puertos arbtraros tanto @C< como ,D<,
supervsn de puertos y ms, tanto para %<v4 como %<v6. Es una de as herramentas de
dagnstco y segurdad ms popuares y tambn una de as me|or cafcadas por a comundad.
3*.*. "#uipamiento lgico necesario.
3*.*.+. %nstalacin a travs de yum.
S se utza de CentOS 5, Red Hat Enterprse Lnux 5 o Whte Box Enterprse Lnux 5, o versones
posterores, se puede nstaar o necesaro utzando o sguente:
yum y install nc
3*.*.*. %nstalacin a travs de ,p*date
S se utza de Red Hat Enterprse Lnux 4, o versones posterores, se puede nstaar utzando o
sguente:
up5date i nc
3*.3. <rocedimientos.
3*.3.+. Cone2iones simples.
Para ncar una conexn haca agn puerto en agn sstema, se utza e mandato nc segudo de
una dreccn %< y un puerto a cua conectarse. En e sguente e|empo se reazar una conexn
haca e puerto 25 (>:@<) de +*7.O.O.+:
nc 156@#@#@1 58
257
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S hay un servdor de correo funconado, o anteror puede devover una sada smar a a
sguente:
55# localhost@localdomain %S,/; Y 2edB 54 ,ay 5##4 1#"5>"85 #8##
Juit
551 5@#@# localhost@localdomain closing connection
3*.3.*. 'evisin de puertos.
Para revsar os puertos abertos, se utza nc con a opcn , (8 para soctar se trate de escuchar
por puertos abertos, y un puerto o rango de puertos. En e sguente e|empo, se pde a mandato
nc revsar a presenca de puertos abertos @C< (modo predetermnado) entre e rango de puerto
21 a 25.
nc vC 156@#@#@1 5158
Lo anteror puede devover una sada como a sguente, s se encontrasen abertos os puertos 21,
22 y 25.
(onnection to 156@#@#@1 51 port Dtcp/!tpE succeededd
(onnection to 156@#@#@1 55 port Dtcp/sshE succeededd
(onnection to 156@#@#@1 58 port Dtcp/smtpE succeededd
Opconamente se pueden revsar s estn abertos os puertos abertos por UDP aadendo a
opcn -u. En e sguente e|empo se socta a mandato nc revsar que puertos ,D< abertos que
se encuentran entre e rango de puerto 21 a 80.
nc Cu 156@#@#@1 514#
Lo anteror puede devover una sada como a sguente s se encuentran abertos os puertos ,D<
53, 67 y 68:
(onnection to 156@#@#@1 8? port Dudp/domainE succeededd
(onnection to 156@#@#@1 66 port Dudp/bootpsE succeededd
(onnection to 156@#@#@1 64 port Dudp/bootpcE succeededd
S se quere obtener una sada ms descrptva, soo es necesaro especfcar nc (v8 y a dreccn
%< s se quere revsar puertos @C< abertos, o ben nc (v8u para puertos ,D< abertos, donde (v
defne se devueva una sada m;s descriptiva. En e sguente e|empo se pde a mandato nc
revsar os puertos @C< abertos entre e puerto 20 a 25.
nc -vz 127.0.0.1
La sada de o anteror devover, a dferenca de utzar soo -z, que puertos estn cerrados.
nc" connect to 156@#@#@1 port 5# (tcp) !ailed" (onnection re!used
(onnection to 156@#@#@1 51 port Dtcp/!tpE succeededd
(onnection to 156@#@#@1 55 port Dtcp/sshE succeededd
nc" connect to 156@#@#@1 port 5? (tcp) !ailed" (onnection re!used
nc" connect to 156@#@#@1 port 5> (tcp) !ailed" (onnection re!used
(onnection to 156@#@#@1 58 port Dtcp/smtpE succeededd
258
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3*.3.3. Creando un modelo cliente servidor.
Es reatvamente smpe crear un modeo cente/servdor. Desde una termna que ser utzada
para ncar un modeo de servdor, se utza e mandato nc con a opcn (l (sten o escuchar)
seguda de un puerto que est desocupado. Esto har que nc se comporte como servdor
escuchando petcones en un puerto arbtraro. En e sguente e|empo se har que mandato nc
funcone como servdor escuchando petcones en e puerto *****.
nc l 55555
Para estabecer a conexn como cente, desde otra termna se nca e mandato nc
especfcando a contnuacn una IP oca para e sstema y e numero de puerto a que se quera
conectar. En e sguente e|empo se reaza a conexn a puerto ***** de +*7.O.O.+
nc 156@#@#@1 55555
Todo o que se escrba desde a termna como cente podr ser vsto en a termna como servdor.
3*.3.4. @rans&erencia de datos.
Tomando e e|empo anteror, es posbe reazar transferenca de datos desde una termna como
cente haca una termna como servdor. La nca dferenca es que en e servdor se camba as
sada estndar de a termna haca un archvo de sguente modo:
nc l 55555 R algo@out
En e cente se reaza ago smar. En ugar de ngresar datos desde a conexn. se hace a partr
de un archvo con contendo de a sguente forma:
nc 156@#@#@1 55555 _ algo@in
En e e|empo descrto se reaza a transferenca de datos de archvo algo.in, desde e proceso
como cente, haca e archvo algo.out, en e proceso como servdor.
259
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
33. Como utili8ar )etstat.
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.
33.+. %ntroduccin.
33.+.+. Acerca de )etstat
Netstat es una herramenta utzada para supervsar as conexones de red, tabas de
encamnamento, estadstcas de nterfaces y asgnaturas de mutdfusn. Se utza
prncpamente para encontrar probemas en una red y para medr e trfco de red como una
forma de cacuar e desempeo de sta.
33.*. <rocedimientos.
Para vsuazar todas as conexones actvas en e sstema, tanto TCP como UDP, se utza a opcn
-a.
netstat a
Debdo a que a cantdad de datos puede ser mucha para ser vsuazada con comoddad en a
pantaa de montor, se puede utzar e mandato ess como subrutna.
netstat a ^ less
A contnuacn se muestra un e|empo de a sada:
3ctive 'nternet connections (servers and established)
;roto Recvh Sendh 0ocal 3ddress <oreign 3ddress State
tcp # # O"netbiosssn O"O 0'S/%+
tcp # # O"submission O"O 0'S/%+
tcp # # O"sunrpc O"O 0'S/%+
tcp # # O"x11 O"O 0'S/%+
tcp # # O"87#> O"O 0'S/%+
tcp # # O"webcache O"O 0'S/%+
udp # # O"!ilenettms O"O
udp # # O"!ilenetnch O"O
udp # # O"!ilenetrmi O"O
udp # # O"!ilenetpa O"O
udp # # 175@164@155@1"netbiosns O"O
udp # # servidor##@c"netbiosns O"O
3ctive =+'X domain sockets (servers and established)
;roto Re!(nt <lags /ype State '+ode ;ath
unix 5 D 3(( E S/R%3, 0'S/%+'+I 168?# S/tmp/!amroot
unix 5 D 3(( E S/R%3, 0'S/%+'+I 67>> /dev/gpmctl
unix 5 D 3(( E S/R%3, 0'S/%+'+I 6771 /var/run/audit-events
unix 5 D 3(( E S/R%3, 0'S/%+'+I 6>#7 /var/run/dbus/system-bus-socket
unix 5 D 3(( E S/R%3, 0'S/%+'+I 68#6 /var/run/pcscd@comm
unix 5 D 3(( E S/R%3, 0'S/%+'+I 66>6 /var/run/acpid@socket
unix 5 D 3(( E S/R%3, 0'S/%+'+I 66?6 /var/run/cups/cups@sock
260
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
unix 5 D 3(( E S/R%3, 0'S/%+'+I 16678 S/tmp/dbus>=ato6ea=1
Para mostrar soo as conexones actvas por TCP, se utza:
netstat t
Para mostrar soo as conexones actvas por UDP, se utza:
netstat u
Para mostrar as estadstcas de uso para todos os tpos de conexones, se utza:
netstat s
Lo anteror puede devover una sada smar a a sguente:
'p"x 5 D E $IR3, 4#18
4##8 total packets received 6757
5 with invalid addresses3, 6476
# !orwardedE $IR3, 6466
# incoming packets discarded 68#8
6754 incoming packets delivered (.++%(/%$ 6>15
67#8 reJuests sent out/R%3, (.++%(/%$ 6>11
'cmp" ? D E S/R%3, (.++%(/%$ 6?>7
17 '(,; messages received3, (.++%(/%$ 6?>4
# input '(,; message !ailed@ 6177
'(,; input histogram"$IR3, 6#61
destination unreachable" 14 67>6
echo reJuests" 1 $IR3, 6716
17 '(,; messages sentS/R%3, (.++%(/%$ 64>8
# '(,; messages !ailed/R%3, (.++%(/%$ 64>>
'(,; output histogram"a ^ less
destination unreachable" 14
echo replies" 1
/cp"
11> active connections openings
5 passive connection openings
# !ailed connection attempts
15 connection resets received
# connections established
6655 segments received
68?? segments send out
64 segments retransmited
# bad segments received@
16 resets sent
=dp"
546 packets received
# packets to unknown port received@
# packet receive errors
567 packets sent
/cp%xt"
6 /(; sockets !inished time wait in !ast timer
1?8 delayed acks sent
huick ack mode was activated 56 times
61 packets directly Jueued to recvmsg preJueue@
14?6>#6> packets directly received !rom backlog
261
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
?715?5# packets directly received !rom preJueue
5#41 packets header predicted
1858 packets header predicted and directly Jueued to user
>68 acknowledgments not containing data received
1?11 predicted acknowledgments
1 times recovered !rom packet loss due to S3(H data
1 congestion windows !ully recovered
> congestion windows partially recovered using 1oe heuristic
1? congestion windows recovered a!ter partial ack
# /(; data loss events
> timeouts a!ter S3(H recovery
1 !ast retransmits
>6 other /(; timeouts
55 $S3(Hs sent !or old packets
1 $S3(Hs received
7 connections reset due to early user close
Para mostrar soamente as estadstcas orgnadas por conexones @C<, se utza:
netstat s t
Lo anteror puede devover una sada smar a a sguente:
/cp"
11> active connections openings
5 passive connection openings
# !ailed connection attempts
15 connection resets received
# connections established
6655 segments received
68?? segments send out
64 segments retransmited
# bad segments received@
16 resets sent
/cp%xt"
6 /(; sockets !inished time wait in !ast timer
1?8 delayed acks sent
huick ack mode was activated 56 times
61 packets directly Jueued to recvmsg preJueue@
14?6>#6> packets directly received !rom backlog
?715?5# packets directly received !rom preJueue
5#41 packets header predicted
1858 packets header predicted and directly Jueued to user
>68 acknowledgments not containing data received
1?11 predicted acknowledgments
1 times recovered !rom packet loss due to S3(H data
1 congestion windows !ully recovered
> congestion windows partially recovered using 1oe heuristic
1? congestion windows recovered a!ter partial ack
# /(; data loss events
> timeouts a!ter S3(H recovery
1 !ast retransmits
>6 other /(; timeouts
55 $S3(Hs sent !or old packets
1 $S3(Hs received
7 connections reset due to early user close
Para mostrar soamente as estadstcas orgnadas por conexones ,D<, se utza:
262
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
netstat s u
Lo anteror puede devover una sada smar a a sguente:
=dp"
546 packets received
# packets to unknown port received@
# packet receive errors
567 packets sent
Para mostrar a taba de encamnamentos, se utza:
netstat r
Lo anteror puede devover una sada smar a a sguente:
Hernel '; routing table
$estination Iateway Ienmask <lags ,SS 2indow irtt '!ace
175@164@#@# O 588@588@588@# = # # # eth#
175@164@155@# O 588@588@588@# = # # # virbr#
167@58>@#@# O 588@588@#@# = # # # eth#
de!ault 175@164@#@58> #@#@#@# =I # # # eth#
Para mostrar as asgnacones grupos de mutdfusn, se utza:
netstat g
Lo anteror puede devover una sada smar a a sguente:
';v6/';v> Iroup ,emberships
'nter!ace Re!(nt Iroup
lo 1 300S:S/%,S@,(3S/@+%/
virbr# 1 55>@#@#@581
virbr# 1 300S:S/%,S@,(3S/@+%/
eth# 1 55>@#@#@581
eth# 1 300S:S/%,S@,(3S/@+%/
lo 1 !!#5""1
peth# 1 !!#5""1
virbr# 1 !!#5""1"!!##"#
virbr# 1 !!#5""1
vi!#@# 1 !!#5""1
eth# 1 !!#5""1"!!86"14b7
eth# 1 !!#5""1
xenbr# 1 !!#5""1
vi!1@# 1 !!#5""1
Para mostrar a taba de nterfaces actvas en e sstema, se utza:
netstat i
Lo anteror puede devover una sada smar a a sguente:
263
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Hernel 'nter!ace table
'!ace ,/= ,et RX.H RX%RR RX$R; RX.&R /X.H /X%RR /X$R; /X.&R <lg
eth# 18## # 5?76 # # # 5#67 # # # 9,R=
lo 16>?6 # 864# # # # 864# # # # 0R=
peth# 18## # ?57> # # # 584> # # # 9.R=
vi!#@# 18## # 5#67 # # # 5?76 # # # 9.R=
vi!1@# 18## # >8 # # # ?4> # # # 9.R=
virbr# 18## # # # # # 65 # # # 9,R=
xenbr# 18## # 516 # # # # # # # 9.R=
264
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
34. Cmo utili8ar A'<.
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.
34.+. %ntroduccin
34.+.+. Acerca de A'<.
A'< sgnfca Address 'esouton <rotoco, o protocoo de resoucn de dreccones. A'< se utza
para supervisar y modi&icar a taba de asgnacones de dreccones %< y dreccones :AC
(:eda Access Contro). A'< utza un cache que consste en una taba que amacena as
asgnacones entre nve de enace de datos y as dreccones IP de nve de red. E nve de enace
de datos se encarga de gestonar as dreccones :AC y e nve de red de as dreccones %<. A'<
asoca dreccones %< a as dreccones :AC, |usto a a nversa de protocoo 'A'< que asgna
dreccones :AC a as dreccones %<. Para reducr e nmero de petcones A'<, cada sstema
operatvo que mpementa e protocoo A'< mantene una cache en a memoria 'A: de todas as
recentes asgnacones.
34.*. <rocedimientos.
Vsuazar e cache A'< actua.
arp a
Debe devover ago smar a o sguente, en e caso de tratarse de un soo sstema:
m58>@alcancelibre@org (175@164@1@58>) at ##"1>"78"76"56"%7 DetherE on eth#
Cuando se trata de un servdor ntermedaro (proxy), a taba puede verse de este modo:
m#81@redlocal@net (1#@1@1@81) at ##"1?"5#"$#"#7"1% DetherE on eth1
m#>6@redlocal@net (1#@1@1@>6) at ##"#<"1<"91"61"1> DetherE on eth1
m#6?@redlocal@net (1#@1@1@6?) at ##"11"58"<6"7?"<1 DetherE on eth1
m#6#@redlocal@net (1#@1@1@6#) at ##"11"58"<6"35"85 DetherE on eth1
m#>#@redlocal@net (1#@1@1@>#) at ##"#$"6#"6%"56"?> DetherE on eth1
m#?6@redlocal@net (1#@1@1@?6) at ##"#$"6#"6%"58"<9 DetherE on eth1
m#11@redlocal@net (1#@1@1@11) at ##"11"5<"(6"$#"$6 DetherE on eth1
E mandato arp acepta varas opcones ms. S se desea vsuazar a nformacn en esto Lnux,
se utza e parmetro -e. e|empo:
arp e
265
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Lo anteror debe devover una sada smar a a sguente:
3ddress 12type 12address <lags ,ask '!ace
m#81@redlocal@net ether ##"1?"5#"$#"#7"1% ( eth1
m#>6@redlocal@net ether ##"#<"1<"91"61"1> ( eth1
m#6?@redlocal@net ether ##"11"58"<6"35"85 ( eth1
m#6#@redlocal@net ether ##"11"58"<6"78"4% ( eth1
m#>#@redlocal@net ether ##"#$"6#"6%"56"6< ( eth1
m#?6@redlocal@net ether ##"11"58"<6"8<"41 ( eth1
S se desea observar o anteror en formato numrco, se utza e parmetro -n. e|empo:
arp n
Lo anteror debe devover ago smar a o sguente:
3ddress 12type 12address <lags ,ask '!ace
1#@1@1@>6 ether ##"#<"1<"91"61"1> ( eth1
1#@1@1@6# ether ##"11"58"<6"35"85 ( eth1
1#@1@1@6? ether ##"11"58"<6"7?"<1 ( eth1
1#@1@1@># ether ##"#$"6#"6%"56"?> ( eth1
1#@1@1@?> ether ##"#$"6#"6%"56"6< ( eth1
S se desea especfcar una nterfaz en partcuar, se utza e parmetro - segudo de nombre de
a nterfaz. E|empo:
arp i eth#
Lo anteror debe regresar ago smar a o sguente, en e caso de tratarse de un soo sstema:
3ddress 12type 12address <lags ,ask '!ace
m58>@alcancelibre@org ether ##"1>"78"76"56"%7 ( eth#
S se desea aadr un regstro manuamente, se puede hacer utzando e parmetro -s segudo de
nombre de un anftrn y a dreccn MAC correspondente. E|empo:
arp s m5##@redlocal@net ##"#4"31"4>"14"3$
S se quere emnar un regstro de a taba, soo se utza e parmetro (d segudo de nombre de
anftrn a emnar. E|empo:
arp d m5##@redlocal@net
Para mpar todo e cache, se puede utzar un buce como e sguente:
!or i in garp n ^ awk XZprint F1[X ^ grep v 3ddressg
do
arp d Fi
done
266
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
En e gun anteror se pde crear a varabe i a partr de arp con a opcn (n para devover as
dreccones numrcas, mostrando a travs de aPK soo a prmera coumna de a taba generada,
y emnando a cadena de caracteres Address. Esto genera una sta de dreccones IP que se
asgnan como vaores de a varabe i en e buce, donde se emna cada una de estas dreccones
IP utzando arp (d.
E ob|eto de mpar e cache de A'< es permtr corregr os regstros de a taba en certos
escenaros donde, por e|empo, un servdor o estacn de traba|o fue encenddo con una dreccn
%< que ya est uso.
267
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
35. %ntroduccin a %<@AB">
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.
35.+. %ntroduccin.
35.+.+. Acerca de %pta!les y )et&ilter.
)et&ilter es un con|unto de gancos (EooKs, 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/
35.*. "#uipamiento lgico necesario.
35.*.+. %nstalacin a travs de yum.
S utza Cent0> 5 y 6, 'ed Eat "nterprise inu2 5 o 6, soo se necesta reazar o sguente
para nstaar o actuazar e equpamento gco necesaro:
yum y install iptables
35.3. <rocedimientos.
35.3.+. Cadenas.
Las cadenas pueden ser para trfco entrante (INPUT), trfco saente (OUTPUT) o trfco reenvado
(F0'WA'D).
268
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
35.3.*. 'eglas de destino.
Las regas de destno pueden ser aceptar conexones (ACC"<@), descartar conexones (D'0<),
rechazar conexones ('"J"C@), encamnamento posteror (<0>@'0,@%)?), encamnamento
prevo (<'"'0,@%)?), >)A@, )A@, entre otras.
35.3.3. <olticas por de&ecto.
Estabecen cua es a accn a tomar por defecto ante cuaquer tpo de conexn. La opcn -P
camba una potca para una cadena. En e sguente e|empo se descartan (D'0<) todas as
conexones que ngresen (INPUT), todas as conexones que se reenven (F0'WA'D) y todas as
conexones que sagan (OUTPUT), es decr, se descarta todo e trfco que entre desde una red
pbca y e que trate de sar desde a red oca.
iptables ; '+;=/ DRO8
iptables ; FORXARD DRO8
iptables ; .=/;=/ ACCE8T
35.3.4. impie8a de reglas espec&icas.
A fn de poder crear nuevas regas, se deben borrar as exstentes, para e trfco entrante, trfco
reenvado y trfco saente as como e NAT.
iptables < '+;=/
iptables < FORXARD
iptables < .=/;=/
iptables < t nat
35.3.5. 'eglas espec&icas.
Las opcones ms comunes son:
-A aade una cadena, a opcn - defne una nterfaz de trfco entrante
-o defne una nterfaz para trafco saente
-| estabece una rega de destno de trfco, que puede ser ACC"<@, D'0< o '"J"C@. La
-m defne que se apca a rega s hay una concdenca especfca
--state defne una sta separada por comas de dstnto tpos de estados de as conexones
(INVALID, ESTABLISHED, NEW, RELATED).
--to-source defne que IP reportar a trfco externo
-s defne trafco de orgen
-d defne trfco de destno
--source-port defne e puerto desde e que se orgna a conexn
--destnaton-port defne e puerto haca e que se drge a conexn
269
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
-t taba a utzar, pueden ser nat, fter, mange o raw.
".emplos de reglas.
Reenvo de paquetes desde una nterfaz de red oca (eth1) haca una nterfaz de red pbca
(eth0):
iptables 3 FORXARD i eth1 o eth# M ACCE8T
Aceptar reenvar os paquetes que son parte de conexones exstentes (ESTABLISHED) o
reaconadas de trfco entrante desde a nterfaz eth1 para trfco saente por a nterfaz eth0:
iptables 3 FORXARD i eth# o eth1 m state state %S/390'S1%$BR%03/%$ M ACCE8T
Permtr paquetes en e propo muro cortafuegos para trfco saente a travs de a nterfaz eth0
que son parte de conexones exstentes o reaconadas:
iptables 3 '+;=/ i eth# m state state %S/390'S1%$BR%03/%$ M ACCE8T
Permtr (ACC"<@) todo e trfco entrante (INPUT) desde (-s) cuaquer dreccn (0/0) a red oca
(eth1) y desde e retorno de sstema (o) haca (-d) cuaquer destno (0/0):
iptables 3 '+;=/ i eth1 s #/# d #/# M ACCE8T
iptables 3 '+;=/ i lo s #/# d #/# M ACCE8T
Hacer (-|) SNAT para e trfco saente (-o) a trves de a nterfaz eth0 provenente desde (-s) a
red oca (192.168.0.0/24) utzando (--to-source) a dreccn IP P.2.y.8.
iptables 3 8OSTROUTLNG t nat s 175@164@#@#/5> o eth# M S+3/ tosource x@y@C@c
Descartar (D'0<) todo e trfco entrante (-i) desde a nterfaz eth0 que trate de utzar a
dreccn IP pbca de servdor (P.2.y.8), aguna dreccn IP de a red oca (192.168.0.0/24) o a
dreccn IP de retorno de sstema (127.0.01)
iptables 3 '+;=/ i eth# s w@x@y@x/?5 M DRO8
iptables 3 '+;=/ i eth# s 175@164@#@#/5> M DRO8
iptables 3 '+;=/ i eth# s 156@#@#@#/4 M DRO8
Aceptar (ACC"<@) todos os paquetes SYN (--syn) de protocoo TCP (-p tcp) para os puertos (--
destination(port) de os protocoos SMTP (25), HTTP(80), HTTPS (443) y SSH (22):
iptables 3 '+;=/ p tcp s #/# d #/# destinationport 58 syn M ACCE8T
iptables 3 '+;=/ p tcp s #/# d #/# destinationport 4# syn M ACCE8T
iptables 3 '+;=/ p tcp s #/# d #/# destinationport >>? syn M ACCE8T
iptables 3 '+;=/ p tcp s #/# d #/# destinationport 55 syn M ACCE8T
Aceptar (ACC"<@) todos os paquetes SYN (--syn) de protocoo TCP (-tcp) para os puertos (--
destination(port) de protocoos SMTP (25) en e servdor (P.2.y.8/32), desde (-s) cuaquer ugar
(0/0) haca (-d) cuaquer ugar (0/0).
iptables 3 '+;=/ p tcp s #/# d *.;.y.B/?5 destinationport 58 syn M ACCE8T
270
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Aceptar (ACC"<@) todos os paquetes SYN (--syn) de protocoo TCP (-p tcp) para os puertos (--
destination(port) de os protocoos POP3 (110), POP3S (995), IMAP (143) y IMAPS (993):
iptables 3 '+;=/ p tcp s #/# d #/# destinationport 11# syn M ACCE8T
iptables 3 '+;=/ p tcp s #/# d #/# destinationport 778 syn M ACCE8T
iptables 3 '+;=/ p tcp s #/# d #/# destinationport 1>? syn M ACCE8T
iptables 3 '+;=/ p tcp s #/# d #/# destinationport 77? syn M ACCE8T
Aceptar (ACC"<@) e trfco entrante (-i) provenente desde a nterfaz eth1 cuando as conexones
se estabezcan desde e puerto (--sport) 67 por protocoos (-p) TCP y UDP.
iptables 3 '+;=/ i eth1 p tcp sport 64 dport 66 M ACCE8T
iptables 3 '+;=/ i eth1 p udp sport 64 dport 66 M ACCE8T
Aceptar (ACC"<@) conexones de trfco entrante (INPUT) por protocoo (-p) UDP cuando se
estabezcan desde (-s) e servdor DNS 200.33.145.217 desde e puerto (--source(port) 53 haca (-
d) cuaquer destno (0/0):
iptables 3 '+;=/ p udp s 5##@??@1>6@516/?5 sourceport 8? d #/# M ACCE8T
35.3.5.+. Cerrar accesos.
Descartar (D'0<) e trfco entrante (INPUT) para e protocoo (-p) TCP haca os puerto (--
destination(port) de SSH (22) y Tenet (23):
iptables 3 '+;=/ p tcp destinationport 55 M DRO8
iptables 3 '+;=/ p tcp destinationport 5? M DRO8
Descartar (D'0<) todo tpo de conexones de trfco entrante (INPUT) desde (-s) a dreccn IP
a.b.c.d:
iptables 3 '+;=/ s a@b@c@d M DRO8
Rechazar ('"J"C@) conexones haca (OUTPUT) a dreccn IP a.b.c.d desde a red oca:
iptables 3 .=/;=/ d a@b@c@d s 175@164@#@#/5> M REYECT
35.3.6. "liminar reglas.
En genera se utza a msma rega, pero en ugar de utzar -A (append), se utza -D (deete).
Emnar a rega que descarta (D'0<) todo tpo de conexones de trfco entrante (INPUT) desde (-
s) a dreccn IP a.b.c.d:
iptables $ '+;=/ s a@b@c@d M DRO8
35.3.7. :ostrar la lista de cadenas y reglas.
Una vez cargadas todas as cadenas y regas de ipta!les es posbe vsuazar stas utzando e
mandato ipta!les con as opcones -n, para ver as stas en formato numrco, y -, para soctar
a sta de stas cadenas.
271
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
iptables n0
Cuando no hay regas n cadenas cargadas, a sada de!e devover o sguente:
(hain '+;=/ (policy 3((%;/)
target prot opt source destination
(hain <.R23R$ (policy 3((%;/)
target prot opt source destination
(hain .=/;=/ (policy 3((%;/)
target prot opt source destination
Cuando hay cadenas presentes, a sada, suponendo que se utzarn os e|empos de este
documento, debe devover ago smar a o sguente:
(hain '+;=/ (policy $R.;)
target prot opt source destination
3((%;/ all #@#@#@#/# #@#@#@#/# state R%03/%$B%S/390'S1%$
3((%;/ all #@#@#@#/# #@#@#@#/#
3((%;/ all #@#@#@#/# #@#@#@#/#
$R.; all 175@164@1@6> #@#@#@#/#
$R.; all 165@16@#@#/5> #@#@#@#/#
$R.; all 156@#@#@#/4 #@#@#@#/#
3((%;/ tcp #@#@#@#/# #@#@#@#/# tcp dpt"58 !lags"#x16/#x#5
3((%;/ tcp #@#@#@#/# #@#@#@#/# tcp dpt"4# !lags"#x16/#x#5
3((%;/ tcp #@#@#@#/# #@#@#@#/# tcp dpt">>? !lags"#x16/#x#5
3((%;/ tcp #@#@#@#/# #@#@#@#/# tcp dpt"55 !lags"#x16/#x#5
3((%;/ tcp #@#@#@#/# 175@164@1@6> tcp dpt"58 !lags"#x16/#x#5
3((%;/ tcp #@#@#@#/# #@#@#@#/# tcp dpt"11# !lags"#x16/#x#5
3((%;/ tcp #@#@#@#/# #@#@#@#/# tcp dpt"778 !lags"#x16/#x#5
3((%;/ tcp #@#@#@#/# #@#@#@#/# tcp dpt"1>? !lags"#x16/#x#5
3((%;/ tcp #@#@#@#/# #@#@#@#/# tcp dpt"77? !lags"#x16/#x#5
3((%;/ tcp #@#@#@#/# #@#@#@#/# tcp spt"64 dpt"66
3((%;/ udp #@#@#@#/# #@#@#@#/# udp spt"64 dpt"66
3((%;/ udp 5##@??@1>6@516 #@#@#@#/# udp spt"8?
(hain <.R23R$ (policy $R.;)
target prot opt source destination
3((%;/ all #@#@#@#/# #@#@#@#/#
3((%;/ all #@#@#@#/# #@#@#@#/# state R%03/%$B%S/390'S1%$
(hain .=/;=/ (policy 3((%;/)
target prot opt source destination
DrootSm#6> TEA iptables n0
(hain '+;=/ (policy $R.;)
target prot opt source destination
3((%;/ all #@#@#@#/# #@#@#@#/# state R%03/%$B%S/390'S1%$
3((%;/ all #@#@#@#/# #@#@#@#/#
3((%;/ all #@#@#@#/# #@#@#@#/#
$R.; all 175@164@1@6> #@#@#@#/#
$R.; all 165@16@#@#/5> #@#@#@#/#
$R.; all 156@#@#@#/4 #@#@#@#/#
3((%;/ tcp #@#@#@#/# #@#@#@#/# tcp dpt"58 !lags"#x16/#x#5
3((%;/ tcp #@#@#@#/# #@#@#@#/# tcp dpt"4# !lags"#x16/#x#5
3((%;/ tcp #@#@#@#/# #@#@#@#/# tcp dpt">>? !lags"#x16/#x#5
3((%;/ tcp #@#@#@#/# #@#@#@#/# tcp dpt"55 !lags"#x16/#x#5
3((%;/ tcp #@#@#@#/# 175@164@1@6> tcp dpt"58 !lags"#x16/#x#5
3((%;/ tcp #@#@#@#/# #@#@#@#/# tcp dpt"11# !lags"#x16/#x#5
3((%;/ tcp #@#@#@#/# #@#@#@#/# tcp dpt"778 !lags"#x16/#x#5
3((%;/ tcp #@#@#@#/# #@#@#@#/# tcp dpt"1>? !lags"#x16/#x#5
3((%;/ tcp #@#@#@#/# #@#@#@#/# tcp dpt"77? !lags"#x16/#x#5
3((%;/ tcp #@#@#@#/# #@#@#@#/# tcp spt"64 dpt"66
3((%;/ udp #@#@#@#/# #@#@#@#/# udp spt"64 dpt"66
3((%;/ udp 5##@??@1>6@516 #@#@#@#/# udp spt"8?
(hain <.R23R$ (policy $R.;)
target prot opt source destination
3((%;/ all #@#@#@#/# #@#@#@#/#
3((%;/ all #@#@#@#/# #@#@#@#/# state R%03/%$B%S/390'S1%$
272
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
(hain .=/;=/ (policy 3((%;/)
target prot opt source destination
35.3.9. %niciarL detener y reiniciar el servicio ipta!les.
S est de acuerdo con as regas generadas de ipta!les, utce e sguente mandato para guardar
stas:
service iptables save
Las regas quedarn amacenadas en e archvo /etc=syscon&ig=ipta!les.
Para e|ecutar por prmera vez e servco ipta!les, utce:
service iptables start
Para hacer que os cambos hechos tras modfcar a confguracn surtan efecto, utce:
service iptables restart
Para detener e servco ipta!les y borrar todas as regas utce:
service iptables stop
35.3.S. Agregar el servicio ipta!les al arran#ue del sistema.
Para hacer que e servco de ipta!les est actvo con e sguente nco de sstema, en todos os
nvees de corrda (2, 3, 4, y 5), se utza o sguente:
chkcon!ig iptables on
35.4. Bi!liogra&a.
Wkpeda: http://en.wkpeda.org/wk/Iptabes
Denns G. Aard y Don Cohen http://oceanpark.com/notes/frewa_exampe.htm
273
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
36. Cmo utili8ar CBB.
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.
36.+. %ntroduccin.
36.+.+. Acerca de c!#.
CBB (Cass Based Bueueng o Encoamento Basado sobre Cases), es un gun escrto en BA>E
utzado para a gestn y contro de uso de ancho de banda en GNU/Lnux. Fue orgnamente
creado en 1999 por <avel ?olu!ev y posterormente mantendo de 2001 a 2004 por u!omir
Bule.. Utza de una forma smpfcada os mandatos ip y tc para su funconamento, y forma
parte de paquete iproute, e cua se ncuye en as nstaacones bsca de a mayor parte de as
dstrbucones de GNU/Lnux.
36.*. Comprendiendo la velocidad !inaria M!it rateN.
E trmno bit rate se traduce a espao como velocidad !inaria, tasa de !its o &lu.o de !its.
Corresponde a numero de bits que se transmten por segundo a travs de un sstema de
transmsn dgta o entre dos dspostvos dgtaes. En otras paabras, es a veocdad de
transferenca de datos.
De acuerdo a >istema %nternacional de ,nidades, a undad con a que se expresa a
velocidad !inaria (bit rate) es e !it por segundo, es decr !it=s, !=s o !ps, donde a ! sempre
debe escrbrse en mnscua para mpedr confusn con a undad !yte por segundo (B=s). Los
mtpos para byte apcan de dferente modo que para bt. La undad byte es gua a 8 bts, y a
partr de esto se puede utzar a sguente taba:
@a!la de e#uivalencias.
kbt/s o kbps (kb/s, kobt/s) 1000 bts de por segundo
Mbt/s o Mbps(Mb/s, Megabt/s) 1 mn de bts por segundo
Gbt/s o Gbps (Gb/s, Ggabt/s) M mones de bts por segundo
byte/s (B/s) 8 bts por segundo
kobyte/s (kB/s, m bytes) 8 m bts por segundo
megabyte/s (MB/s, un mn de bytes) 8 mones de bt por segundo
ggabyte/s (GB/s, m mones de bytes) 8 m mones de bts
274
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
36.3. "#uipamiento lgico necesario.
CBB forma parte de a nstaacn de paquete iproute, msmo que a su vez se nstaa de modo
predetermnado en cas todas as dstrbucones de GNU/Lnux.
36.3.+. %nstalacin a travs de yum.
S utza Cent0> 4 y 5, 'ed Eat "nterprise inu2 5 o W$ite Bo2 "nterprise inu2 4 y 5, soo
se necesta reazar o sguente para nstaar o actuazar e equpamento gco necesaro:
yum y install iproute
36.3.*. %nstalacin a travs de up*date.
S se utza 'ed Eata "nterprise inu2 4, soo bastar reazar o sguente para nstaar o
actuazar e equpamento gco necesaro:
up5date i iproute
36.4. <reparativos.
Antes de ncar cuaquer confguracn, se deben determnarse os vaores para os sguentes
parmetros. Para construr una rega, se requere a menos comprender y especfcar os vaores
para os parmetros D"F%C", W"%?E@, 'A@" y ',". Las regas pueden ser tan compe|as como
a magnacn de admnstrador o permta.
Los archvos con as confguracones se guardan dentro de drectoro =etc=syscon&ig=c!#= y deben
evar s sguente nomencatura:
/etc/syscon!ig/cbJ/cbJDn`mero'$(laseE@DnombreE
Donde n1mero(%D(Clase corresponde a un nmero headecma de 2 bts dentro de rango 0002-
FFFF. E|empo: archvo que contene una case que controa e trfco entrante de correo
eectrnco:
/etc/syscon!ig/cbJ/cbJ###5@smtpin
36.4.+. <ar;metro D"F%C".
Es un parmetro obgatoro. Se determna os vaores con e nombre de a nterfaz, ancho de
banda y peso de esta nterfaz. Este tmo vaor, que es opcona en este parmetro, se cacua
dvdendo e ancho de banda de a nterfaz entre dez. Por e|empo, s se dspone de una nterfaz
denomnada eth0 de 100 Mbt/s, e peso ser 10 Mbt/s, de ta modo os vaores de parmetro
D"F%C", quedaran de a sguente forma:
$%&'(%)eth#B1##,bitB1#,bit
S se dspone de una nterfaz eth0 conectada a un modem ADSL de 2048 kbps de trfco entrante
o de ba|ada, e peso ser de 204 kbps, de ta modo os vaores de parmetro D"F%C", quedaran
de a sguente forma:
275
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
$%&'(%)eth#B5#>4HbitB5#>Hbit
S se dspone de una nterfaz eth0 conectada a un modem ADSL de 256 kbps de trfco saente o
de subda, e peso ser de 25 kbps, de ta modo os vaores de parmetro D"F%C", quedaran de
a sguente forma:
$%&'(%)eth#B586HbitB58Hbit
36.4.+.+. <ar;metro de clase 'A@".
Es un parmetro obgatoro. Se refere a ancho de banda a asgnar a a case. E trfco que pase a
travs de esta case ser modfcado para a|ustarse a a proporcn defnda. Por e|empo, s se
quere mtar e ancho de banda utzado a 10 Mbt/s, e vaor de 'A@" sera 10Mbt, como se
muestra a contnuacn.
R3/%)1#,bit
S se quere mtar e ancho de banda utzado a 1024 kbt/s, e vaor de 'A@" sera 1024Kbt,
como se muestra a contnuacn.
R3/%)1#5>Hbit
S se quere mtar e ancho de banda utzado a 512 kbt/s, e vaor de RATE sera 512Kbt, como
se muestra a contnuacn.
R3/%)815Hbit
36.4.*. <ar;metro de clase W"%?E@.
Es un parmetro obgatoro. ste es proporcona a ancho de banda tota de a nterfaz. Como
rega se se cacua dvdendo entre dez e ancho de banda tota. Para una nterfaz de 2048 kbps,
correspondera un vaor de 204Kbt:
2%'I1/)5#>Hbit
36.4.3. <ar;metro de clase <'%0.
Es un parmetro opcona que se utza para especfcar que prordad tendr sobre otras regas de
contro de ancho de banda. Mentras ms ato sea e vaor, menos prordad tendr sobre otras
regas. Se recomenda utzar e vaor 5 que funconar para a mayora de os casos. E|empo:
;R'.)8
36.4.4. <ar;metro de clase <A'")@.
Cuando se utzan regas que se requere estn |erarquzadas, se utza para estabecer a
dentdad de case padre a a que pertenecen. Puede evar cuaquer vaor. Cuando se trata de una
case padre, se defne |unto con e parmetro "AF con e vaor none. En e sguente e|empo se
estabece a dentdad 100 en una case padre.
276
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
;3R%+/)1##
0%3<)none
36.4.5. <ar;metro de clase "AF.
Es un parmetro opcona y se utza para determnar que potca se utzar para utzar e ancho
de banda de una case padre.
S se utza e vaor t!&, que es e vaor predetermnado, se utzar e agortmo @BF (@oken
Bucket Fter), e cua mpde que a case tome ancho de banda de a case padre.
0%3<)tb!
Parmetros adconaes para agortmo @BF.
B,FF"'
Determna e tamao mxmo de rfaga (ma5imal burst size) que a case puede envar, y puede evar como
parmetro opcona a ongtud de os ntervaos en bytes. E vaor predetermnado es +OI!=9. es decr,
rfagas de 10Kb en ntervaos de 8 bytes.
0%3<)tb! BUFFER=-$(!+8
%:%@
Determna e tamao mxmo de as reservas (bac(log). S a coa de datos por procesar contene ms de os
especfcados por %:%@, os sguentes paquetes que eguen sern descartados. La ongtud de as reservas
determna a atenca (tempo de recuperacn de datos) de a coa en caso de presentarse una congestn. E
vaor predetermnado es 15kb.
0%3<)tb! LLMLT=-5:!
<"AI
Determna e pco mxmo para una rfaga de trfco de corto pazo que una case puede envar.
Consderando que un ancho de banda de 256 kbps enva 256 Kbt por segundo, en un momento dado se
puede dar e caso de e envo de 512 Kbt en 0.50 segundos, o 1 Mbt en 0.25 segundos. En e sguente
e|empo se estabece e e pco mxmo para rfagas de 1024 Kbt:
0%3<)tb! 8EA(=-$,J(!#2
:@,
Determna a mxma cantdad de datos que se pueden envar a msmo tempo en un medo fsco. Es un
parmetro obgatoro s se utza e parmetro <"AI. En e caso de una nterfaz -ternet, e vaor
predetermnado es gua a :@, de a propa nterfaz (1500).
0%3<)tb! ;%3H)1#5>Hbit MTU=-5$$
E vaor s&#, que corresponde a agortmo >FB (>tochastc Farness Bueueng), hace que sea
compartdo e ancho de banda de a case padre aproxmadamente en a misma proporcn de
ancho de banda entre anftrones dentro de a msma case.
0%3<)s!J
E vaor none permte utzar bremente e ancho de banda dsponbe, sempre que e vaor de
parmetro B0,D"D sea gua a no. En e sguente e|empo se especfca utzar bremente e
ancho de banda dsponbe:
0%3<)no
277
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
36.4.6. <ar;metro de clase B0,)D"D.
Es un parmetro opcona. S e vaor es yes, que es e vaor predetermnado, a case no tendr
permtdo utzar ancho de banda de a case padre. S e vaor es no, a case podr hacer uso de
ancho de banda dsponbe en a case padre. S se estabece con vaor no, es necesaro utzar
none o ben s&# en e parmetro "AF.
;3R%+/)1##
0%3<)s!J
BOUNDED=no
36.4.7. <ar;metro de clase %>0"@"D.
Es un parmetro opcona. S se estabece con e vaor yes, a case no prestar ancho de banda a
as cases h|as. S se utza e vaor no, que es e vaor predetermnado, se permtr prestar e
ancho de banda dsponbe a as cases h|as.
'S.03/%$)no
36.4.9. <ar;metros de &iltracin.
Son as regas de ftracn que se utzan para seecconar trfco en cada una de as cases. La
sntaxs competa es a sguente:
R=0%)DDs455rD/pre!iMoEED"puertoD/mcscaraEEBED5455rD/pre!iMoEED"puertoD/mcscaraEE
En o anteror, saddr se refere a a dreccn de orgen. daddr se refere a a dreccn de destno.
La sntaxs smpfcada es a sguente, donde todos os vaores son opconaes, pero se debe
especfcar a menos uno:
R=0%)';origen"puertoorigenA';destino"puertodestino
En genera a nterpretacn sgue cuatro smpes prncpos:
1. Cuaquer dreccn IP o red que se cooque antes de la coma se consdera dreccn IP o
red de origen.
2. Cuaquer dreccn IP o red que se cooque despus de la coma se consdera dreccn IP
o red de destino.
3. Cuaquer puerto antes de la coma se consdera e puerto de origen.
4. Cuaquer puerto especfcado despus de la coma se consdera puerto de destino.
".emplos.
Seeccn de todo e trfco desde cuaquer puerto en cuaquer red $acia os puertos 25 (SMTP),
465 (SMTPS) y 587 (SMTP Submsson) en cuaquer red (es decr, controa ancho de banda de
correo saente):
278
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
R=0%)B"58
R=0%)B">68
R=0%)B"846
Seeccn de todo e trfco desde os puertos 25 (SMTP), 465 (SMTPS) y 587 (SMTP Submsson)
en cuaquer red $acia cuaquer puerto en cuaquer red (es decr, controa ancho de banda de
correo entrante):
R=0%)"58B
R=0%)">68B
R=0%)"846B
Seeccn de todo e trfco desde a red 192.168.0.0/24 $acia cuaquer puerto en cuaquer red:
R=0%)175@164@#@#/5>B
Seeccn de todo e trfco desde cuaquer puerto en cuaquer red $acia cuaquer puerto en a
red 192.168.0.0/24:
R=0%)B175@164@#@#/5>
Seeccn de todo e trfco desde cuaquer puerto en a red 192.168.0.0/24 $acia e puerto 25
(SMTP) en cuaquer red:
R=0%)175@164@#@#/5>B"58
Seeccn de todo e trfco desde e puerto 25 (SMTP) en a red 192.168.0.0/24 $acia cuaquer
puerto en cuaquer red:
R=0%)175@164@#@#/5>"58B
Seeccn de todo e trfco desde e puerto 25 (SMTP) en a red 192.168.0.0/24 $acia e puerto 25
(SMTP) en cuaquer red:
R=0%)175@164@#@#/5>"58B"58
Seeccn de todo e trfco desde e puerto 25 (SMTP) en cuaquer red $acia cuaquer puerto en
a red 192.168.0.0/24:
R=0%)"58B175@164@#@#/5>
Seeccn de todo e trfco desde e puerto 25 (SMTP) en cuaquer red $acia e puerto 25 (SMTP)
en a red 192.168.0.0/24:
R=0%)"58B175@164@#@#/5>"58
Seeccn de todo e trfco desde e puerto 80 en cuaquer red $acia cuaquer puerto de
cuaquer red:
279
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
R=0%)"4#B
Seeccn de todo e trfco desde cuaquer puerto en e anftrn 201.161.1.226 $acia cuaquer
puerto en cuaquer red:
R=0%)5#1@161@1@556B
Seeccn de todo e trfco desde puerto 80 en e anftrn 201.161.1.226 $acia cuaquer puerto
en cuaquer red:
R=0%)5#1@161@1@556"4#B
Seeccn de todo e trfco desde e puerto 80 (HTTP) en cuaquer red $acia a red
192.168.0.0/24:
R=0%)"4#B175@164@#@#/5>
Seeccn de todo e trfco desde os puerto 20 (FTP-DATA), 21 (FTP) y 80 (HTTP) en cuaquer red
$acia a red 192.168.0.0/24:
R=0%)"5#B175@164@#@#/5>
R=0%)"51B175@164@#@#/5>
R=0%)"4#B175@164@#@#/5>
Seeccn de todo e trfco desde de os puertos 20 (FTP-DATA), 21 (FTP) y 80 (HTTP) en e
anftrn 201.161.1.226 $acia a red 192.168.0.0/24:
R=0%)5#1@161@1@556"5#B175@164@#@#/5>
R=0%)5#1@161@1@556"51B175@164@#@#/5>
R=0%)5#1@161@1@556"4#B175@164@#@#/5>
36.5. <rocedimientos.
Para poder confgurar e uso de ancho de banda se requere determnar prmero o sguente:
Cua es e ancho de banda de trfco entrante (de ba|ada) de a nterfaz pbca?
Cua es e ancho de banda de trfco saente (de subda) de a nterfaz pbca?
Ou servcos se van a controar?
Cuanto ancho de banda para trfco entrante y saente se va a destnar a cada servco?
Consderando e sguente escenaro:
Servdor con un cortafuegos y un )A@ compartendo e acceso haca Internet.
Enace ADSL de 2048 kbps de trfco entrante y 256 kbps de trfco saente, a travs de a
nterfaz et$O.
280
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Red oca 192.168.0.0/24 accede desde a nterfaz et$+.
Se quere gestonar e uso de ancho de banda para SMTP, POP3, IMAP, HTTP, HTTPS, FTP y
SSH/SFTP.
A repartr e ancho de banda, se e 50% de ancho de banda de entrada a E@@< y E@@<>, y
se dar e 50% de ancho de banda de subda a os servcos reaconados con e correo
electrnico.
Como e|empo, se asgnarn os sguentes anchos de banda para cada servco especfcado.
>ervicios <uertos @r;&ico entrante @r;&ico saliente
Correo eectrnco:
SMTP, POP3 e IMAP
25, 465, 587, 110, 143, 993, 995 512Kbt 128Kbt
HTTP y HTTPS 80, 443 1024Kbt 64Kbt
FTP y SSH/SFTP 20, 21, 22 256Kbt 64Kbt
36.5.+. CBB sin compartir anc$o de !anda entre clases.
En e e|empo os anchos de banda se estn asgnando pensando en que se har uso de todos os
servcos de forma smutnea y que se quere que cada servco respete e ancho de banda de os
otros, es decr, sn prestar ancho de banda de una case a otra.
Con a fnadad de factar a organzacn, se recomenda crear archvos ndependentes para
cada potca. Es decr, destnar un archvo para todo o reaconado con correo, otro para o
reaconado con HTTP/HTTPS y otro reaconado con FTP.
Contendo de archvo
/etc/sysconfg/cbq/cbq-0002.smtp-n:
$%&'(%)eth#B5#>4Hbit
RATE=5-,(!#2
2%'I1/)5#>Hbit
;R'.)8
R=0%)"58B175@164@#@#/5>
R=0%)">68B175@164@#@#/5>
R=0%)"846B175@164@#@#/5>
R=0%)"11#B175@164@#@#/5>
R=0%)"1>?B175@164@#@#/5>
R=0%)"77?B175@164@#@#/5>
R=0%)"778B175@164@#@#/5>
Contendo de archvo
/etc/sysconfg/cbq/cbq-0003.web-n:
$%&'(%)eth#B5#>4Hbit
RATE=-$,J(!#2
2%'I1/)5#>Hbit
;R'.)8
R=0%)"4#B175@164@#@#/5>
R=0%)">>?B175@164@#@#/5>
Contendo de archvo
/etc/sysconfg/cbq/cbq-0005.ftp-n:
$%&'(%)eth#B5#>4Hbit
RATE=,'5(!#2
2%'I1/)5#>Hbit
;R'.)8
R=0%)"5#B175@164@#@#/5>
R=0%)"51B175@164@#@#/5>
R=0%)"55B175@164@#@#/5>
Contendo de archvo
/etc/sysconfg/cbq/cbq-0002.smtp-out:
$%&'(%)eth#B5#>4Hbit
RATE=-,8(!#2
2%'I1/)5#>Hbit
;R'.)8
R=0%)175@164@#@#/5>B"58
R=0%)175@164@#@#/5>B">68
R=0%)175@164@#@#/5>B"846
R=0%)175@164@#@#/5>B"11#
R=0%)175@164@#@#/5>B"1>?
Contendo de archvo
/etc/sysconfg/cbq/cbq-0004.web-out:
$%&'(%)eth#B5#>4Hbit
RATE='J(!#2
2%'I1/)5#>Hbit
;R'.)8
R=0%)175@164@#@#/5>B"4#
R=0%)175@164@#@#/5>B">>?
Contendo de archvo
/etc/sysconfg/cbq/cbq-0006.ftp-out:
$%&'(%)eth#B5#>4Hbit
RATE='J(!#2
2%'I1/)5#>Hbit
;R'.)8
R=0%)175@164@#@#/5>B"5#
R=0%)175@164@#@#/5>B"51
R=0%)175@164@#@#/5>B"55
281
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
R=0%)175@164@#@#/5>B"77?
R=0%)175@164@#@#/5>B"778
36.5.*. CBB compartiendo anc$o de !anda entre clases.
En e e|empo os anchos de banda se estn asgnando pensando en que se har uso de todos os
servcos de forma smutnea y que se quere que cada servco preste ancho de banda sn utzar
desde una case haca otra. Se utzar a as cases con mayor ancho de banda dsponbe como as
cases padre.
Con a fnadad de factar a organzacn, se recomenda crear archvos ndependentes para
cada potca. Es decr, destnar un archvo para todo o reaconado con correo, otro para o
reaconado con HTTP/HTTPS y otro reaconado con FTP.
Contendo de archvo
/etc/sysconfg/cbq/cbq-0002.smtp-n:
$%&'(%)eth#B5#>4Hbit
RATE=5-,(!#2
2%'I1/)5#>Hbit
;R'.)8
8ARENT=-$$
LEAF=s<C
R=0%)"58B175@164@#@#/5>
R=0%)">68B175@164@#@#/5>
R=0%)"846B175@164@#@#/5>
R=0%)"11#B175@164@#@#/5>
R=0%)"1>?B175@164@#@#/5>
R=0%)"77?B175@164@#@#/5>
R=0%)"778B175@164@#@#/5>
Contendo de archvo
/etc/sysconfg/cbq/cbq-0003.web-n:
$%&'(%)eth#B5#>4Hbit
RATE=-$,J(!#2
2%'I1/)5#>Hbit
;R'.)8
8ARENT=-$$
LEAF=no
BOUNDED=no
LSOLATED=no
R=0%)"4#B175@164@#@#/5>
R=0%)">>?B175@164@#@#/5>
Contendo de archvo
/etc/sysconfg/cbq/cbq-0005.ftp-n:
$%&'(%)eth#B5#>4Hbit
RATE=,'5(!#2
2%'I1/)5#>Hbit
;R'.)8
8ARENT=-$$
LEAF=s<C
R=0%)"5#B175@164@#@#/5>
R=0%)"51B175@164@#@#/5>
R=0%)"55B175@164@#@#/5>
Contendo de archvo
/etc/sysconfg/cbq/cbq-0002.smtp-out:
$%&'(%)eth#B5#>4Hbit
RATE=-,8(!#2
2%'I1/)5#>Hbit
;R'.)8
8ARENT=,$$
LEAF=no
BOUNDED=no
LSOLATED=no
R=0%)175@164@#@#/5>B"58
R=0%)175@164@#@#/5>B">68
R=0%)175@164@#@#/5>B"846
R=0%)175@164@#@#/5>B"11#
R=0%)175@164@#@#/5>B"1>?
R=0%)175@164@#@#/5>B"77?
R=0%)175@164@#@#/5>B"778
Contendo de archvo
/etc/sysconfg/cbq/cbq-0004.web-out:
$%&'(%)eth#B5#>4Hbit
RATE='J(!#2
2%'I1/)5#>Hbit
;R'.)8
8ARENT=,$$
LEAF=s<C
R=0%)175@164@#@#/5>B"4#
R=0%)175@164@#@#/5>B">>?
Contendo de archvo
/etc/sysconfg/cbq/cbq-0006.ftp-out:
$%&'(%)eth#B5#>4Hbit
RATE='J(!#2
2%'I1/)5#>Hbit
;R'.)8
8ARENT=,$$
LEAF=s<C
R=0%)175@164@#@#/5>B"5#
R=0%)175@164@#@#/5>B"51
R=0%)175@164@#@#/5>B"55
36.5.3. %niciarL detener y reiniciar el servicio c!#.
E gun de nco de cbq est nstaado como =s!in=c!#. Es necesaro copar este archvo dentro
de =etc=init.d= y trataro gua que cuaquer otro servco de sstema.
cp a /sbin/cbJ /etc/init@d
282
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Para probar que as cases estn correctas antes de utzar stas, puede recurrr a:
service cbJ compile
Para e|ecutar por prmera vez e servco c!#, utce:
service cbJ start
Para hacer que os cambos hechos tras modfcar a confguracn surtan efecto, utce:
service cbJ restart
Para detener e servco c!# y emnar de memora todas as regas utce:
service cbJ stop
Para supervsar as estadstcas de trfco gestonado a travs de c!# utce:
service cbJ stats
36.5.4. Agregar el servicio c!# al arran#ue del sistema.
Para hacer que e servco de c!# 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 cbJ on
283
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
37. %ntroduccin a >"inu2 en Cent0> 5 y
Fedora.
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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.
37.+. %ntroduccin.
Suee ocurrr que a ntentar me|orar e rendmento de un sstema se recurra a a prctca de
desactvar SELnux. Certamente consume bastantes recursos, pero brnda un nve de segurdad
superor que en un futuro, que esperemos sea muy e|ano, podra ser de gran utdad para mpedr
ataques drgdos especfcamente haca GNU/Lnux. La gran popuardad que estn tenendo as
computadoras utra-porttes est ncrementando e nmero de usuaros de GNU/Lnux, o cua
eventuamente tambn sgnfcar que r surgendo equpamento gco macoso (mal)are)
especfcamente dseado para GNU/Lnux. A contnuacn expco, de &orma !reve, como utzar
de manera bsca getse!ool y setse!ool (y un poco de c$con) en CentOS 5 (apcabe a Red Hat
Enterprse Lnux 5) y Fedora 10 (y versones posterores) desde a termna, e|empfcando potcas
para agunos servcos.
37.*. Bu es >"inu2?
>"inu2 (de ngs >ecurty-"nhanced inu2, que se traduce como Segurdad Me|orada de Lnux)
es una mpementacn de segurdad para GNU/Lnux que provee una varedad de potcas de
segurdad, ncuyendo e esto de acceso a os controes de Departamento de Defensa de EE.UU.,
a travs de uso de mduos de Segurdad en e nceo de Lnux.
En s es una coeccn de parches que fueron ntegrados hace agunos aos a nceo de Lnux,
fortaecendo sus mecansmos de contro de acceso y forzando a e|ecucn de os procesos dentro
de un entorno con os mnmos prvegos necesaros. Utza un modeo de segurdad de contro de
acceso obgatoro.
Es una mpementacn compe|a y robusta que suee ser muy oscura para a mayora de os
usuaros. Debdo a sto, fata de documentacn amstosa y que muchos servcos smpemente
son mposbes de operar sn una potca correspondente, muchas personas sueen desactvaro
edtando =etc=syscon&ig=selinu2. E ob|etvo de este artcuo es servr como una breve
ntroduccn a os conceptos bscos de admnstracn de SELnux.
37.3. :andato getse!ool
Este mandato permte star potcas en SELnux, y determnar s estn actvos o nactvos.
Bscamente se utza de a sguente forma:
getsebool a ^grep cadena
284
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Donde cadena es una cadena de texto que se puede utzar para ocazar as potcas
reaconados con agn servco en partcuar. Por e|empo, s se desea conocer que potcas que
ncuyan a cadena ftp estn actvos, como root se puede utzar o sguente:
getsebool a ^grep !tp
Lo anteror debe regresar ago smar como o sguente:
allow-!tpd-anon-write R o!!
allow-!tpd-!ull-access R o!!
allow-!tpd-use-ci!s R o!!
allow-!tpd-use-n!s R o!!
!tp-home-dir R o!!
httpd-enable-!tp-server R o!!
t!tp-anon-write R o!!
37.4. :andato setse!ool.
Setseboo permte cambar os vaores para dferentes potcas de SELnux, msmas que pueden
verse a travs de e mandato getse!ool. La sntaxs bsca es a sguente:
setsebool nombre-politica valor
Cuando se e|ecuta de a manera anterormente descrta, as potcas son apcadas de nmedato y
estarn vgentes hasta e sguente renco de sstema. Para hacer permanentes as potcas, se
utza e msmo mandato con a opcn (<:
setsebool ; nombre-politica valor
A contnuacn se muestran agunos e|empos de gestn de potcas para varos servcos.
37.4.+. >ervicios de F@<.
Para e servco de FTP, como sera a travs de VSFTPD, nteresan as sguentes potcas:
aow_ftpd_anon_wrte: Permte a os usuaros annmos poder escrbr en e servdor.
aow_ftpd_fu_access: Permte ectura y escrtura sobre todos os archvos dsponbes
desde e servdor.
aow_ftpd_use_cfs: Permte transferencas de datos desde CIFS.
aow_ftpd_use_nfs: Permte transferencas de datos desde NFS
ftp_home_dr: Permte a os usuaros ocaes poder acceder a sus drectoros de nco.
Para actvar estas, se utza e mandato setse!ool con e nombre de a potca y e vaor 0 o ben
1 para desactvar o actvar, respectvamente. En e sguente e|empo se actva poder acceder a os
drectoros de nco de os usuaros:
setsebool !tp-home-dir 1
285
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Lo anteror permtra que os usuaros puedan acceder a sus propos drectoros de ncos a travs
de VSFTPD, hasta que e sstema sea rencado. Para hacer permanente e cambo, se utza
setse!ool con a opcn (<, de s sguente manera:
setsebool ; !tp-home-dir 1
37.4.*. 0penF<).
Otro tpco e|empo es de OpenVPN, como cente y servdor. Exsten dos potcas:
openvpn_enabe_homedrs: Permte utzar certfcados amacenados en os drectoros de os
usuaros.
openvpn_dsabe_trans: Por omsn, SELnux mpde utzar OpenVPN como servdor. Esta potca
permte desactva toda gestn de SELnux sobre OpenVPN, pero permte a ste funconar como
servdor.
Para a potca de openvpnQena!leQ$omedirs, ba|o agunas crcunstancas se necesta permtr a
os usuaros poder conectarse a redes VPN utzando certfcados que e msmo usuaro amacena
en su drectoro de nco, y esta es precsamente a potca que o permte. Con e nve de
segurdad por omsn, soo se podran utzar certfcados defndos por e admnstrador en agn
drectoro de sstema.
37.4.3. Apac$e.
Cuando se traba|a con drectoros que sern acceddos desde redes pbcas, como un drectoro
vrtua o un drectoro para domno vrtua en Apache, se actva a potca
$ttpdQena!leQ$omedirs y se utza e mandato c$con para permtr e acceso a os drectoros
Y=pu!licQ$tml, aadendo e tpo httpd_sys_content_t.
setsebool ; httpd-enable-homedirs 1
chcon R t httpd-sys-content-t Tuser/public-html
Para permtr a e|ecucn de programas CGI, se utza:
setsebool ; httpd-enable-cgi 1
Para permtr envar correo desde apache, se utza:
setsebool ; httpd-can-sendmail 1
Para desactvar que SELnux controe a Apache, en su totadad, se puede utzar:
setsebool ; httpd-disable-trans 1
37.4.4. >am!a.
En Samba es comn a necesdad de permtr a este servco operar como controador de domno.
La potca que o habta es sam!aQdomainQcontroller:
setsebool ; samba-domain-controller
286
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S se desea permtr e acceso a os drectoros de nco de os usuaros, se utza a potca los
directorios Y=pu!licQ$tml:
setsebool ; samba-enable-home-dirs on
Para poder utzar drectoros que se compartrn a travs de Samba, se utza c$con defnendo
e tpo sam!aQs$areQt a contexto de drectoro. En e sguente e|empo, se crear un drectoro
como /var/samba/pubco:
mkdir p /var/samba/publico
Para vsuazar sus contextos en SELnux, se utza e mandato ls con a opcn (c:
ls G /var/samba/
Lo anteror debe devover una sada como a sguente:
drwxrxrx root root uncon!ined-u"obMect-r"var-t"s# publico
Para aadr e tpo sam!aQs$areQt, se utza e mandato c$con de a sguente manera:
chcon t samba-share-t /var/samba/publico
A vover a vsuazar e contexto de drectoro con ls (c, deber devover una sada como a
sguente:
ls G
drwxrxrx root root uncon!ined-u"obMect-r"samba-share-t"s# publico
Para compartr un drectoros en Samba, hay dos potcas que se pueden utzar:
samba_export_a_ro: Permte e acceso a drectoros compartdos en Samba en modo de soo
ectura
samba_export_a_rw: Permte e acceso a drectoros compartdos en Samba en modo de ectura y
escrtura.
E|empo:
setsebool ; samba-export-all-rw 1
37.4.5. 0tros servicios.
En genera, todos as potcas de todos os servcos pueden ser gestonadas buscando cuaes
estn reaconadas a travs de mandato getse!ool. Los detaes respecto de qu es o que hace
dada potca pueden consutarse a travs de as pgnas de manua que estn nstaadas en e
sstema. Por e|empo, para consutar que potcas hay para e servco NFS, e manua que contene
as descrpcones correspondentes es n&sQselinu2.
man httpd-selinux
287
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Otros manuaes que pueden consutarse en e sstema para dferentes servcos son:
kerberos_senux
named_senux
ftpd_senux
ns_senux
rsync_senux
ypbnd_senux
pam_senux
httpd_senux
nfs_senux
samba_senux
288
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
39. Cmo con&igurar un servidor DEC< en una
A)
Autor: $oel Barrios 'ue!as
Correo electrnico: dar(sram en gmail punto com
Sitio 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.
39.+. %ntroduccin.
39.+.+. Acerca del protocolo DEC<.
DEC< (acrnmo de Dynamc Host Confguraton <rotoco que se traduce Protocoo de
confguracn dnmca de servdores) es un protocoo que permte a dspostvos ndvduaes en
una red de dreccones IP obtener su propa nformacn de confguracn de red (dreccn IP;
mscara de sub-red, puerta de enace, etc.) a partr de un servdor DHCP. Su propsto prncpa es
hacer ms fces de admnstrar as redes grandes. DEC< exste desde 1993 como protocoo
estndar y se descrbe a detae en e RFC 2131.
Sn a ayuda de un servdor DEC<, tendran que confgurarse de forma manua cada dreccn IP
de cada anftrn que pertenezca a una Red de Area Loca. S un anftrn se trasada haca otra
ubcacn donde exste otra Red de Area Loca, se tendr que confgurar otra dreccn IP dferente
para poder unrse a esta nueva Red de Area Loca. Un servdor DEC< entonces supervsa y
dstrbuye as dreccones IP de una Red de Area Loca asgnando una dreccn IP a cada anftrn
que se una a a Red de Area Loca. Cuando, por menconar un e|empo, una computadora portt
se confgura para utzar DEC<, a sta e ser asgnada una dreccn IP y otros parmetros de red
necesaros para unrse a cada Red de Area Loca donde se ocace.
Exsten tres mtodos de asgnacn en e protocoo DEC<:
Asignacin manual: La asgnacn utza una taba con dreccones :AC (acrnmo de :eda
Access Contro Address, que se traduce como dreccn de Contro de Acceso a Medo). So os
anftrones con una dreccn :AC defnda en dcha taba recbr e IP asgnada en a msma taba.
sto se hace a travs de parmetro $ardPare et$ernet combnado con deny unKnoPn(clients.
Asignacin autom;tica: Una dreccn de IP dsponbe dentro de un rango determnado se asgna
permanentemente a anftrn que a requera.
Asignacin din;mica: Se determna arbtraramente un rango de dreccones IP y cada anftrn
conectado a a red est confgurada para soctar su dreccn IP a servdor cuando se nca e
dspostvo de red, utili8ando un intervalo de tiempo controla!le (parmetros de&ault(lease(
time y ma2(lease(time) de modo que as dreccones IP no son permanentes y se reutzan de
forma dnmca.
URL: http://www.etf.org/rfc/rfc2131.txt y http://www.etf.org/rfc/rfc2132.txt
289
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
39.+.*. Acerca de d$cp por %nternet >o&tPare ConsortiumL %nc.
Fundado en 1994, Internet Software Consortum, Inc., dstrbuye un con|unto de herramentas para
e protocoo DEC<, as cuaes conssten en:
>ervidor DEC<
Cliente DEC<
Agente de retransmisin.
Dchas herramentas utzan un A<% (Appcaton <rogrammng %nterface o Interfaz de
Programacn de Apcacones) moduar dseado para ser o sufcentemente genera para ser
utzado con facdad en os sstemas operatvos que cumpen e estndar <0>%D (<ortabe
0peratng >ystem %nterface for UNID o nterfaz portabe de sstema operatvo para Unx) y no-
POSIX, como Wndows.
URL: http://sc.org/products/DHCP/
39.*. "#uipamiento lgico necesario.
39.*.+. %nstalacin a travs de yum.
S utza Cent0> 5, 'ed Eata "nterprise inu2 5 o versones posterores de stos, soo se
necesta reazar o sguente para nstaar o actuazar o necesaro:
yum y install dhcp
39.3. :odi&icaciones necesarias en el muro corta&uegos.
Por o genera, |ams se abren puertos de DHCP a as redes pbcas. S se utza un cortafuegos
con potcas estrctas, como por e|empo >$orePall, es necesaro abrr os puerto 67 y 68 por UDP
(B00@<> y B00@<C, respectvamente) de modo bdreccona.
S se utza Shorewa, basta con edtar e archvo =etc=s$orePall=inter&aces:
vim /etc/shorewall/inter!aces
Y aadr a opcn d$cp a as opcones de a nterfaz sobre a cua funcona e servco d$cpd. Esta
opcn, tras rencar e servco s$orePall, habta as comuncacones de entrada y sada para
DHCP.
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAA
AG.+% '+/%R<3(% 9R.3$(3S/ .;/'.+S
net eth# detect blacklist
loc eth1 detect 536.Bblacklist
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
Rence e servco s$orePall a fn de que surtan efecto os cambos.
service shorewall restart
290
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
39.4. <rocedimientos.
39.4.+. >"inu2 y el servicio d$cpd.
Se recomenda encarecdamente de|ar actvo SELnux, y de|ar como estn as potcas
predetermnadas.
S se desea eliminar la proteccin que brnda SELnux a servco d$cpd, utce e sguente
mandato.
setsebool ; dhcpd-disable-trans 1
S se desea eliminar la proteccin que brnda SELnux a sstema para funconar como cliente
DEC<, utce e sguente mandato.
setsebool ; dhcpc-disable-trans 1
39.4.*. Arc$ivo de con&iguracin =etc=d$cpd.con& o =etc=d$cp=d$cpd.con&.
Consderando como e.emplo que se tene una red oca con as sguentes caracterstcas:
Nmero de red 172.16.1.0
Mscara de sub-red: 255.255.255.192 (26 bt)
Puerta de enace: 172.16.1.1
Servdor de nombres: 172.16.1.1
Servdor Wns: 172.16.1.1
Servdores de tempo ()@<): recomendamos utzar os de NTP.org, 200.23.51.205, 132.248.81.29
y 148.234.7.30, os cuaes son confabes y de acceso gratuto.
Rango de dreccones IP a asgnar de modo dnmco: 172.16.1.2 hasta 172.16.1.58.
)0@A- Es ndspensabe conocer y entender per&ectamente todo o anteror para poder contnuar con este documento. S se tenen dudas,
por favor consutar y estudar prmero e documento ttuado %ntroduccin a %< versin 4.
Puede utzar e contendo de e|empo, que se encuentra ms adeante, para adaptar o crear
desde cero un nuevo archvo de confguracn, a|ustando os datos a una red y con|unto de
sstemas en partcuar.
S se utza Cent0> 6 o 'ed Eat "nterprise inu2 6, edte e archvo =etc=d$cp=d$cpd.con&.
vim /etc/dhcp/dhcpd@con!
S se utza Cent0> 5 o 'ed Eat "nterprise inu2 5, edte e archvo =etc=d$cpd.con&.
vim /etc/dhcpd@con!
Para efectos prctcos, modfque todo o que est resaltado.
291
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
serveridenti!ier ser"#5or.re5-)o64).ne2Y
ddnsupdatestyle interimY
ignore clientupdatesY
authoritativeY
de!aultleasetime 7##Y
maxleasetime 65##Y
option ip!orwarding o!!Y
option domainname *re5-)o64).ne2*Y
sharednetwork re5)o64) Z
subnet -I,.-'.-.$ netmask ,55.,55.,55.-%, Z
option routers -I,.-'.-.-Y
option subnetmask ,55.,55.,55.-%,Y
option broadcastaddress -I,.-'.-.'3Y
option domainnameservers -I,.-'.-.-Y
option netbiosnameservers -I,.-'.-.-Y
option ntpservers 5##@5?@81@5#8B 1?5@5>4@41@57B 1>4@5?>@6@?#Y
range -I,.-'.-., -I,.-'.-.58Y
[
[
Lo anteror corresponde a a confguracn bsca recomendada para un servdor DHCP bsco.
39.4.*.+. Asignacin de direcciones %< est;ticas.
S se tenen equpos con dreccones IP esttcas, pueden aadrse tambn en a confguracn de
a sguente forma, defnendo e nombre de anftrn, dreccn MAC y dreccn IP:
host impresora Z
option hostname *e.)5%$$.re5-)o64).ne2*Y
hardware ethernet $$?,J?,B?'5?5J?8JY
!ixedaddress -I,.-'.-.5%Y
[
De modo ta que a confguracn queda de sguente modo:
292
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
serveridenti!ier ser"#5or.re5-)o64).ne2Y
ddnsupdatestyle interimY
ignore clientupdatesY
authoritativeY
de!aultleasetime 7##Y
maxleasetime 65##Y
option ip!orwarding o!!Y
option domainname *re5-)o64).ne2*Y
sharednetwork re5)o64) Z
subnet -I,.-'.-.$ netmask ,55.,55.,55.-%, Z
option routers -I,.-'.-.-Y
option subnetmask ,55.,55.,55.-%,Y
option broadcastaddress -I,.-'.-.'3Y
option domainnameservers -I,.-'.-.-Y
option netbiosnameservers -I,.-'.-.-Y
option ntpservers 5##@5?@81@5#8B 1?5@5>4@41@57B 1>4@5?>@6@?#Y
range -I,.-'.-., -I,.-'.-.58Y
[
A %Juipos con '; !iMa@
3os2 #/.resor4 Z
o.2#on 3os2-n4/e "e.)5%$$.re5-)o64).ne2"[
34r5*4re e23erne2 $$?,J?,B?'5?5J?8J[
<#;e5-455ress -I,.-'.-.5%[
\
3os2 .6-J Z
o.2#on 3os2-n4/e ".6-J.re5-)o64).ne2"[
34r5*4re e23erne2 $$?5$?BF?,I?-C?-C[
<#;e5-455ress -I,.-'.-.'$[
\
[
39.4.3. Arc$ivo de con&iguracin =etc=syscon&ig=d$cpd.
Una buena medda de segurdad es hacer que e servco d$cpd soo funcone a travs de a
nterfaz de red utzada por a LAN, esto en e caso de tener mtpes dspostvos de red. Edte e
archvo =etc=syscon&ig=d$cpd y agregue como argumento de parmetro DEC<DA'?> e vaor
et$O, et$+, et$*, etc., o o que corresponda a a nterfaz desde a cua accede a red oca.
Edte e archvo =etc=syscon&ig=d$cpd:
vim /etc/syscon!ig/dhcpd
Para e sguente e|empo, consderando que et$+ es a nterfaz correspondente a a LAN:
A (ommand line options here
$1(;$3RIS)eth1
39.4.4. %niciarL detener y reiniciar el servicio d$cpd.
Para ncar por prmera vez e servco d$cpd, utce:
service dhcpd start
Para hacer que os cambos hechos a a confguracn de servco d$cpd surtan efecto, utce:
293
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
service dhcpd restart
Para detener e servco d$cpd, utce:
service dhcpd stop
39.4.5. imitar el acceso por direccin :AC.
Es posbe mtar e acceso a servdor DHCP, defnendo una sta de dreccones MAC. De ta
modo, a os anftrones que estn ausentes en dcha sta es ser denegado e servco.
serveridenti!ier ser"#5or.re5-)o64).ne2Y
ddnsupdatestyle interimY
ignore clientupdatesY
authoritativeY
de!aultleasetime 7##Y
maxleasetime 65##Y
option ip!orwarding o!!Y
option domainname *re5-)o64).ne2*Y
sharednetwork re5)o64) Z
subnet -I,.-'.-.$ netmask ,55.,55.,55.-%, Z
option routers -I,.-'.-.-Y
option subnetmask ,55.,55.,55.-%,Y
option broadcastaddress -I,.-'.-.'3Y
option domainnameservers -I,.-'.-.-Y
option netbiosnameservers -I,.-'.-.-Y
option ntpservers 5##@5?@81@5#8B 1?5@5>4@41@57B 1>4@5?>@6@?#Y
range -I,.-'.-., -I,.-'.-.58Y
[
A 0ista de direcciones ,3( Jue tendrcn permitido utiliCar el servidor
A $1(;@
A deny unknownclients impide Jue eJuipos !uera de esta lista puedan
A utiliCar el servicio@
deny unknownclientsY
host impresora Z
hardware ethernet $$?,J?,B?'5?5J?8JY
[
host pc1 Z
hardware ethernet $$?5$?BF?,I?-C?-CY
[
host pc5 Z
hardware ethernet FJ?CI?-J?I$?FA?ACY
[
host laptop1 Z
hardware ethernet JJ?8I?FC?AA?DD?,DY
[
host laptop5 Z
hardware ethernet I$?F-?A-?%F?I$?3BY
[
[
E e|empo anteror hace que soo as dreccones MAC descrtas puedan hacer uso de servdor
DHCP.
294
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
39.4.6. Agregar el servicio d$cpd al arran#ue del sistema.
Para hacer que e servco de d$cpd est actvo con e sguente nco de sstema, en todos os
nvees de corrda (2, 3, 4, y 5), se utza o sguente:
chkcon!ig dhcpd on
39.4.7. Con&iguracin para &uncionar con D)> din;mico.
Asumendo que ya se dspone de un servdor DNS prevamente confgurado y funconando, para
confgurar e servdor DHCP a fn de que actuace automtcamente os regstros correspondentes
en as zonas de servdor DNS, soo basta aadr os parmetros ddns(updates, ddns(
domainname, ddns(rev(domainname, a msma frma dgta de a confguracn de DNS, y
defnr as zonas de ocahost, zona de re-envo y zona de resoucn nversa de DNS con os
vaores e|empfcados a contnuacn, soo sendo necesaro reempazar los valores resaltados.
295
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
serveridenti!ier ser"#5or.re5-)o64).ne2Y
ddnsupdatestyle interimY
55ns-.542es on[
55ns-5o/4#nn4/e "re5-)o64).ne2."[
55ns-re"-5o/4#nn4/e "#n-455r.4r.4."[
ignore clientupdatesY
authoritativeY
de!aultleasetime 7##Y
maxleasetime 65##Y
option ip!orwarding o!!Y
option domainname *re5-)o64).ne2*Y
A (opiar tan cual contenido del archivo
A +e26+rn56.:ey
A isto se utiliCarc para poder comunicar el servidor $1(; con el servidor $+SB
A y poder gestionar Conas dincmicas desde el servidor $1(; con la misma !irma
A digital@
A aamcs utiliCar la clave eMempli!icada a continuaciQn para producciQn@
A %s la `nica con!iguraciQn cuya llave de cierre pueden llevar punto y coma@
:ey "rn56-:ey" Z
4)7or#23/ 3/46-/55[
se6re2 "n5G.KMC3#X/U3,y"XOnU]=="[
\[
Bone )o64)5o/4#n. Z
.r#/4ry -,I.$.$.-[
:ey rn56-:ey[
\
Bone -.-'.-I,.#n-455r.4r.4. Z
.r#/4ry -I,.-'.-.-[
:ey rn56-:ey[
\
Bone re5-)o64).ne2. Z
.r#/4ry -I,.-'.-.-[
:ey rn56-:ey[
\
sharednetwork re5)o64) Z
subnet -I,.-'.-.$ netmask ,55.,55.,55.-%, Z
option routers -I,.-'.-.-Y
option subnetmask ,55.,55.,55.-%,Y
option broadcastaddress -I,.-'.-.'3Y
option domainnameservers -I,.-'.-.-Y
option netbiosnameservers -I,.-'.-.-Y
option ntpservers 5##@5?@81@5#8B 1?5@5>4@41@57B 1>4@5?>@6@?#Y
range -I,.-'.-., -I,.-'.-.58Y
[
A %Juipos con '; !iMa@
host impresora Z
option hostname *e.)5%$$.re5-)o64).ne2*Y
hardware ethernet $$?,J?,B?'5?5J?8JY
!ixedaddress -I,.-'.-.5%Y
[
host pc1> Z
option hostname *.6-J.re5-)o64).ne2*Y
hardware ethernet $$?5$?BF?,I?-C?-CY
!ixedaddress -I,.-'.-.'$Y
[
[
296
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Para que o anteror funcone con e servdor DNS, consderando que ya estn nstaados os
paquetes !ind y !ind(c$root, se requere generar os archvos red(local.net.8one y
+.+6.+7*.in(addr.arpa.8one dentro de drectoro =var=named=c$root=dynamic= de sguente
modo::
touch /var/named/chroot/var/named/dynamic/re5-)o64).ne2.Bone
touch /var/named/chroot/var/named/dynamic/-.-'.-I,.#n-455r.4r.4.Bone
Ambos archvos deben pertenecer a usuaro named y grupo named.
chown named"named /var/named/chroot/var/named/dynamic/re5-)o64).ne2.Bone
chown named"named /var/named/chroot/var/named/dynamic/-.-'.-I,.#n-455r.4r.4.Bone
E archvo /var/named/chroot/var/named/dynamc/red(local.net.8one deber tener e sguente
contendo, donde soo ser necesaro aadr os regstros de os equpos con IP f|a:
F//0 46>##
S '+ S.3 ser"#5or.re5-)o64).ne2. root@localhost@ (
5#11#45?#1Y
544##Y
65##Y
6#>4##Y
46>##Y
)
S '+ +S ser"#5or.re5-)o64).ne2.
ser"#5or '+ 3 -I,.-'.-.-
e.)5%$$ '+ 3 -I,.-'.-.5%
.6-J '+ 3 -I,.-'.-.'$
E archvo /var/named/chroot/var/named/dynamc/+.+6.+7*.in(addr.arpa.8one deber tener e
sguente contendo, donde soo ser necesaro aadr os regstros de os equpos con IP f|a:
F//0 46>##
S '+ S.3 ser"#5or.re5-)o64).ne2. root@localhost@ (
5#11#45?#1Y
544##Y
65##Y
6#>4##Y
46>##Y
)
S '+ +S ser"#5or.re5-)o64).ne2.
- '+ ;/R ser"#5or.re5-)o64)-ne2.
-3 '+ ;/R #/.resor4.re5-)o64)-ne2.
-J '+ ;/R .6-J.re5-)o64).ne2.
En e archvo =var=named=c$root=etc=named.con& deber estar presente o sguente:
297
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
key *rndckey* Z
algorithm hmacmd8Y
secret *n5G.KMC3#X/U3,y"XOnU]==*Y
[Y
controls Z
inet 156@#@#@1 allow Z 156@#@#@1Y -I,.-'.-.-Y [ keys Z *rndckey*Y [Y
[Y
view *local* Z
matchclients Z 156@#@#@#/4Y 165@16@1@#/56Y [Y
recursion yesY
Cone *re5-)o64).ne2* Z
type masterY
!ile *dynamic/re5-)o64).ne2.Bone*Y
allowupdate Z key *rndckey*Y [Y
[Y
Cone *-.-'.-I,.#n-455r.4r.4* Z
type masterY
!ile *dynamic/-.-'.-I,.#n-455r.4r.4.Bone*Y
allowupdate Z key *rndckey*Y [Y
[Y
[Y
Actve a potca de SELnux que permtr a servdor DNS poder reazar modfcacones a os
archvos de zona.
setsebool ; named-write-master-Cones 1
Rence e servco named a fn de que surtan efecto os cambos.
service named restart
Rence tambn e servco d$cpd a fn de que surtan efecto os cambos y para que comencen a
nteractuar e servdor DHCP con e servdor DNS.
service dhcpd restart
A partr de este momento, todo cente que tenga defndo en su confguracn oca un nombre de
anftrn, y a cua e sea asgnada una dreccn IP a travs de servdor DHCP recn confgurado,
comuncar su nombre de anftrn a servdor DHCP, e cua a su vez comuncar a servdor DNS
este msmo nombre asocada a a dreccn IP asgnada a cente, de modo que e DNS aadr
automtcamente e regstro correspondente a as zonas de re-envo y de resoucn nversa
correspondentes.
39.5. Compro!aciones desde cliente DEC<.
Hecho o anteror soo fata con confgurar como nterfaces DHCP as estacones de traba|o que
sean necesaras sn mportar que sstema operatvo utcen.
Despus de confgurado e ncado e servco, desde una termna como usuaro root en otro
sistema, cuyo anftrn ser utzado como cente, consderando que se tene una nterfaz de red
denomnada et$O, utce os sguentes mandatos para desactvar a nterfaz et$O y asgnar una
nueva dreccn %< a travs de servdor d$cp.
298
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
i!down eth#
dhclient d ' nombreeJuipo 1 nombreeJuipo eth#
Lo anteror deber devover e mensa|e Determnando a nformacn IP para eth0... y e smboo
de sstema. Para corroborar, utce e mandato i&con&ig para vsuazar os dspostvos de red
actvos en e sstema. Puse C@'(C para termnar e programa.
La confguracn permanente de dspostvo de red, consderando como e.emplo a nterfaz eth0
con dreccn :AC 00:01:03:DC:67:23, soctando os datos para os servdores D)>,
correspondente a archvo =etc=syscon&ig=netPorK(scripts=i&c&g(et$O, sera con e sguente
contendo:
$%&'(%)eth#
.+9../)yes
=S%R(/0)yes
9../;R./.)dhcp
;%%R$+S)yes
;%%RR.=/%S)yes
123$$R)##"#1"#?"$("66"5?
/:;%)%thernet
$.,3'+)redlocal@net
$1(;-(0'%+/-'$)nombreeJuipo
$1(;-1.S/+3,%)nombreeJuipo
299
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3S. Cmo con&igurar vs&tpd MFery >ecure F@<
DaemonN
Autor: $oel Barrios 'ue!as
Correo electrnico: dar(sram en gmail punto com
Sitio 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.
3S.+. %ntroduccin.
3S.+.+. Acerca del protocolo F@<.
F@< (Fe @ransfer <rotoco) o Protocoo de Transferenca de Archvos (o archvos nformtcos) es
uno de os protocoos estndar ms utzados en Internet sendo e ms dneo para a
transferenca de grandes boques de datos a travs de redes que soporten TCP/IP. E servco utza
os puertos 20, y 21, excusvamente sobre TCP. E puerto 20 es utzado para e fu|o de datos
entre cente, y servdor. E puerto 21 es utzando para e envo de rdenes de cente haca e
servdor. Prctcamente todos os sstemas operatvos, y pataformas ncuyen soporte para FTP, o
que permte que cuaquer computadora conectada a una red basada sobre TCP/IP pueda hacer
uso de este servco a travs de un cente FTP.
URL: http://toos.etf.org/htm/rfc959
3S.+.*. Acerca del protocolo F@<>.
F@<> (tambn referdo como F@<=>>) es a forma de desgnar dferentes formas a travs de as
cuaes se pueden reazar transferencas seguras de archvos a travs de F@< utzando >> o
@>. Son mecansmos muy dferentes a os de protocoo SFTP (>SH Fe @ransfer <rotoco).
Exsten dos dferentes mtodos para reazar una conexn >>=@> a travs de F@<. La prmera y
ms antgua es a travs de F@<> %mplcito (Dmplicit .TE"), que consste en cfrar a sesn
competa a travs de os puertos 990 (FTPS), y 998 (FTPS Data), sn permtr negocacn con e
cente, e cua deber conectarse drectamente a servdor FTPS con e nco de sesn >>=@>. E
segundo mtodo, que es e recomendado por e RFC 4217, y e utzado por Fs&tpd, es F@<>
"2plcito (-5plicit .TE" o F@<">), donde e cente reaza a conexn norma a travs de puerto
21, y permtendo negocar, de manera opcona, una conexn @>.
3S.+.3. Acerca de '>A.
'>A, acrnmo de os apedos de sus autores, Ron 'vest, Ad >hamr, y Len Ademan, es un
agortmo para e cframento de caves pbcas que fue pubcado en 1977, patentado en EE.UU.
en 1983 por e e Insttuto Tecnogco de Mchgan (:%@). '>A es utzado en todo e mundo para
os protocoos destnados para e comerco eectrnco.
URL: http://es.wkpeda.org/wk/RSA
300
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3S.+.4. Acerca de 0pen>>.
0pen>> es una mpementacn bre, de cdgo aberto, de os protocoos >> (>ecure >ockets
ayer o Nve de Zcao Seguro), y @> (@ransport ayer >ecurty, o Segurdad para Nve de
Transporte). Est basado sobre e extnto proyecto >>eay, ncado por Erc Young, y Tm Hudson,
hasta que stos comenzaron a traba|ar para a dvsn de segurdad de EMC Corporaton.
URL: http://www.openss.org/
3S.+.5. Acerca de D.5OS.
D.5OS es un estndar %@,(@ (estandarzacn de @eecomuncacones de a %nternatona
@eecommuncaton ,non ) para nfraestructura de caves pbcas (<I%, o <ubc Iey
%nfrastructure). Entre otras cosas, estabece os estndares para certfcados de caves pbcas, y
un agortmo, para vadacn de ruta de certfcacn. Este tmo se encarga de verfcar que a
ruta de un certfcado sea vda ba|o una nfraestructura de cave pbca determnada. Es decr,
desde e certfcado nca, pasando por certfcados ntermedos, hasta e certfcado de confanza
emtdo por una Autordad Certfcadora (CA, o Certfcaton Authorty).
URL: http://es.wkpeda.org/wk/X.509
3S.+.6. Acerca de vs&tpd.
Fs&tpd (Fery >ecure F@< Daemon) es un equpamento gco utzado para mpementar
servdores de archvos a travs de protocoo F@<. Se dstngue prncpamente porque sus vaores
predetermnados son muy seguros, y por su sencez en a confguracn, comparado con otras
aternatvas como ProFTPD, y Wu-ftpd. Actuamente se presume que vsftpd podra ser quz e
servdor F@< ms seguro de mundo.
URL: http://vsftpd.beasts.org/
3S.*. "#uipamiento lgico necesario.
3S.*.+. %nstalacin a travs de yum.
S utza Cent0> 5 o 6, o ben 'ed Eat "nterprise inu2 5 o 6, soo se necesta reazar o
sguente para nstaar o actuazar e equpamento gco necesaro:
yum y install vs!tpd
3S.3. Arc$ivos de con&iguracin.
/etc/vs!tpd@user-list Lsta que defnr usuaros a en|auar o no a en|auar, dependendo de
a confguracn.
/etc/vs!tpd/vs!tpd@con! Archvo de confguracn de VSFTPD.
301
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3S.4. <rocedimientos.
3S.4.+. >"inu2L y el servicio vs&tpd.
SELnux controa varas funcones de e servco vs&tpd ncrementando e nve de segurdad de
ste.
Para permtr que os usuaros annmos puedan reazar procesos de escrtura sobre e sstema de
archvos, utce e sguente mandato:
setsebool ; allow-!tpd-anon-write 1
Para hacer que SELnux permta a servco vs&tpd acceder a os usuaros ocaes a sus drectoros
de nco, utce e sguente mandato:
setsebool ; allow-!tpd-!ull-access 1
S se necesta permtr acceder con as cuentas de usuaros ocaes a sus drectoro de nco de
stos, se debe habtar a potca &tpQ$omeQdir:
setsebool ; !tp-home-dir 1
Para permtr que e servco vs&tpd pueda hacer uso de sstemas de archvos remotos a travs de
CIFS (Samba) o NFS, y que sern utzados para compartr a travs de servco, utce cuaquera
de os sguentes mandatos:
setsebool ; allow-!tpd-use-ci!s 1
setsebool ; allow-!tpd-use-n!s 1
Para emnar por competo a proteccn que brnda SELnux a servco vs&tpd, y que ste
funcone normamente sn esta vaosa proteccn, hacendo que todo o anterormente descrto en
esta seccn perda sentdo, utce e sguente mandato:
setsebool ; !tpd-disable-trans 1
3S.4.*. Arc$ivo =etc=vs&tpd=vs&tpd.con&.
Utce un edtor de texto, y modfque e archvo =etc=vs&tpd=vs&tpd.con&. A contnuacn
anazaremos os parmetros a modfcar o aadr, segn se requera para necesdades
partcuares.
3S.4.3. <ar;metro anonymousQena!le.
Se utza para defnr s se permtrn os accesos annmos a servdor. Estabezca como vaor b">
o )0 de acuerdo a o que se requera.
anonymous-enable):%S
302
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3S.4.4. <ar;metro localQena!le.
Es partcuarmente nteresante s se combna con a funcn de |aua (c$root). Estabece s se van
a permtr os accesos autentcados de os usuaros ocaes de sstema. Estabezca como vaor b">
o )0 de acuerdo a o que se requera.
local-enable):%S
3S.4.5. <ar;metro PriteQena!le.
Estabece s se permte e mandato Prite (escrtura) en e servdor. Estabezca como vaor b"> o
)0 de acuerdo a o que se requera.
write-enable):%S
3S.4.6. <ar;metro anonQuploadQena!le
Especfca s os usuaros annmos tendrn permtdo subr contendo a servdor. Por o genera no
es una funcn deseada, por o que se acostubra desactvar sta.
anon-upload-enable)+.
3S.4.7. <ar;metro anonQmKdirQPriteQena!le
Especfca s os usuaros annmos tendrn permtdo crear drectoros en e servdor. A gua que
a anteror, por o genera no es una funcn deseada, por o que se acostumbra desactvar sta.
anon-mkdir-write-enable)+.
3S.4.9. <ar;metro &tpdQ!anner.
Este parmetro srve para estabecer e bandern de benvenda que ser mostrado cada vez que
un usuaro acceda a servdor. Puede estabecerse cuaquer frase breve que consdere
convenente.
!tpd-banner)9ienvenido al servidor </; de nuestra empresa@
3S.4.S. "sta!leciendo .aulas para los usuarios- par;metros
c$rootQlocalQuserL y c$rootQlistQ&ile.
De modo predetermnado os usuaros de sstema que se autentquen tendrn acceso a otros
drectoros de sstema fuera de su drectoro persona. S se desea recur a os usuaros a soo
poder utzar su propo drectoro persona, puede hacerse fcmente con e parmetro
c$rootQlocalQuser que habtar a funcn de c$rootMN, y os parmetros c$rootQlistQena!le, y
c$rootQlistQ&ile, para estabecer e archvo con a sta de usuaros que quedarn excudos de a
funcn c$rootMN.
chroot-local-user):%S
chroot-list-enable):%S
chroot-list-!ile)/etc/vs!tpd/chroot-list
303
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Con o anteror, cada vez que un usuaro oca se autentque en e servdor FTP, soo tendr acceso
a su propo drectoro persona, y o que este contenga. )o olvide crear el arc$ivo
=etc=vs&tpd=c$rootQlistL ya #ue de otro modo ser; imposi!le iniciar el servicio vs&tpd.
touch /etc/vs!tpd/chroot-list
3S.4.+O. Control del anc$o de !anda.
3S.4.+O.+. <ar;metro anonQma2Qrate.
Se utza para mtar a tasa de transferenca en bytes por segundo para os usuaros annmos,
ago sumamente t en servdores FTP de acceso pbco. En e sguente e|empo se mta a tasa
de transferenca a 50 Kb por segundo para os usuaros annmos:
anon-max-rate)815##
3S.4.+O.*. <ar;metro localQma2Qrate.
Hace o msmo que anonQma2Qrate, pero apca para usuaros ocaes de servdor. En e sguente
e|empo se mta a tasa de transferenca a 100 Kb por segundo para os usuaros ocaes:
local-max-rate)1#5>##
3S.4.+O.3. <ar;metro ma2Qclients.
Estabece e nmero mxmo de centes que podrn acceder smutneamente haca e servdor
FTP. En e sguente e|empo se mtar e acceso a 10 centes smutneos.
max-clients)1#
3S.4.+O.4. <ar;metro ma2QperQip.
Estabece e nmero mxmo de conexones que se pueden reazar desde una msma dreccn IP.
Tome en cuenta que agunas redes acceden a travs de un servdor ntermedaro (Proxy) o puerta
de enace, y debdo a sto podran quedar boqueados nnecesaramente agunos accesos. En e
sguente e|empo se mta e nmero de conexones por IP smutneas a un mxmo de 10.
max-per-ip)1#
3S.4.++. >oporte >>=@> para FF>@<D.
F>F@<D puede ser confgurado fcmente para utzar os protocoos >> (>ecure >ockets ayer
o Nve de Zcao Seguro), y @> (@ransport ayer >ecurty, o Segurdad para Nve de Transporte)
a travs de un certfcado '>A.
Acceda a sstema como e usuaro root.
Acceda a drectoro =etc=pKi=tls=.
cd /etc/pki/tls/
304
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
E certfcado se puede generar fcmente utzando e sguente mandato, donde se generar un
certfcado con estructura D.5OS, agortmo de cframento '>A de 1024 kb, sn @riple D">, e
cua permta ncar normamente, sn nteraccn aguna, a servco vs&tpd, con una vadez por
73O das (dos aos) en e archvo =etc=pKi=tls=certs=vs&tpd.crt.
openssl reJ x8#7 nodes days 6?# newkey rsa"1#5> keyout private/vs!tpd@key out
certs/vs!tpd@crt
Lo anteror soctar se ngresen varos datos:
Cdgo de dos etras para e pas.
Estado o provnca.
Cudad.
Nombre de a empresa o razn soca.
Undad o seccn.
Nombre de anftrn.
Dreccn de correo.
La sada devueta sera smar a a sguente:
:ou are about to be asked to enter in!ormation that will be
incorporated into your certi!icate reJuest@
2hat you are about to enter is what is called a $istinguished +ame or
a $+@
/here are Juite a !ew !ields but you can leave some blank
<or some !ields there will be a de!ault valueB
'! you enter X@XB the !ield will be le!t blank@
1 /usr/sbin/sendmail@post!ix
ON 5 /usr/sbin/sendmail@sendmail
;resione 'ntro para mantener la selecciQn actualDNEB o escriba el n`mero de la selecciQn" 5
S eg utzar sendmail en ugar de post&i2, detenga este tmo (es e MTA predetermnado en
Cent0> 6, y 'ed Eat "nterprise inu2 6) e nce e servco sendmail:
service post!ix stop
chkcon!ig post!ix o!!
service sendmail start
chkcon!ig sendmail on
S eg utzar post&i2 en ugar de sendmail, detenga este tmo> (es e MTA predetermnado
en Cent0> 5, y 'ed Eat "nterprise inu2 5) e nce e servco post&i2:
service sendmail stop
chkcon!ig sendmail o!!
service post!ix start
chkcon!ig post!ix on
En todo momento podr conmutar de nuevo entre Sendma, o Postfx, como MTA predetermnado
de sstema, utzando este msmo procedmento.
5*.+.*. <rotocolos utili8ados.
5*.+.*.+. >:@< M>imple :ail @rans&er <rotocolN.
Es un protocolo est;ndar de Internet de )ivel de Aplicacin utzado para a transmsn de
correo eectrnco a travs de una conexn TCP/IP. Este es de hecho e nco protocoo utzado
para a transmsn de correo eectrnco a travs de Internet. Es un protocoo basado sobre texto,
y reatvamente smpe donde se especfcan uno ms destnataros en un mensa|e que es
transferdo. A o argo de os aos han sdo muchas as personas que han edtado, o contrbudo a
as especfcacones de >:@<, entre as cuaes estn |on Poste, Erc Aman, Dave Crocker, Ned
Freed, Randa Geens, |ohn Kensn, y Keth Moore.
368
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Para determnar e servdor >:@< para un domno dado, se utzan os regstros :D (:a
E2changer) en a Zona de Autordad correspondente a ese msmo domno contestado por un
>ervidor D)>. Despus de estabecerse una conexn entre e remtente (e cente), y e
destnataro (e servdor), se nca una sesn >:@<, e|empfcada a contnuacn.
(liente"
F n6 -,I.$.$.- ,5
Servidor" /rying 156@#@#@1@@@
(onnected to localhost@localdomain (156@#@#@1)@
%scape character is XWEX@
55# nombre@dominio %S,/; Sendmail 4@1?@1/4@1?@1Y SatB 14 ,ar 5##6 16"#5"56 #6##
(liente" EELO )o64)3os2.)o64)5o/4#n
Servidor" 58# nombre@dominio 1ello localhost@localdomain D156@#@#@1EB pleased to meet you
(liente" MALL FROM?N<)4noO)o64)3os2.)o64)5o/4#nG
Servidor" 58# 5@1@# _!ulanoSlocalhost@localdomainR@@@ Sender ok
(liente" RC8T TO?Nroo2O)o64)3os2.)o64)5o/4#nG
Servidor" 58# 5@1@8 _rootSlocalhost@localdomainR@@@ Recipient ok
(liente" DATA
Servidor" ?8> %nter mailB end with *@* on a line by itsel!
(liente" S!Ke62? Mens4Ke 5e .re!4
Fro/? <)4noO)o64)3os2.)o64)5o/4#n
To? roo2O)o64)3os2.)o64)5o/4#n
Eo)4. Es2e es n /ens4Ke 5e .re!4.
A5#os.
.
Servidor" 58# 5@#@# k5',5RM3##?746 ,essage accepted !or delivery
(liente" ]ULT
Servidor" 551 5@#@# nombre@dominio closing connection
Servidor" (onnection closed by !oreign host@
La descrpcn competa de protocoo orgna >@:< est defndo en e 'FC 9*+, aunque e
protocoo utzado hoy en da, tambn conocdo como ">:@< ("xtended >mpe :a @ransfer
<rotoco), est defndo en e 'FC *9*+. >:@< traba|a sobre @C< en e puerto 25.
5*.+.*.*. <0<3 M<ost 0&&ice <rotocol version 3N.
Es un protocolo est;ndar de Internet de )ivel de Aplicacin que recupera e correo
eectrnco desde un servdor remoto a travs de una conexn TCP/IP desde un cente oca. E
dseo de <0<3, y sus predecesores es permtr a os usuaros recuperar e correo eectrnco a
estar conectados haca una red, y manpuar os mensa|es recuperados sn necesdad de
permanecer conectados. A pesar de que muchos centes de correo eectrnco ncuyen soporte
para de|ar e correo en e servdor, todos os centes de POP3 recuperan todos os mensa|es, y os
amacenan como mensa.es nuevos en a computadora, o anftrn, utzado por e usuaro,
emnan os mensa|es en e servdor, y termnan a conexn.
Despus de estabecerse una conexn entre e cente, y e servdor, se nca una sesn <0<3,
e|empfcada a contnuacn.
369
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
(liente"
F n6 -,I.$.$.- --$
Servidor" /rying 156@#@#@1@@@
(onnected to localhost@localdomain (156@#@#@1)@
%scape character is XWEX@
N.H dovecot ready@
(liente" USER <)4no
Servidor" N.H
(liente" 8ASS clave de accceso
Servidor" N.H 0ogged in@
(liente" STAT
Servidor" N.H 1 654
(liente" LLST
Servidor" N.H 1 messages"
1 654
@
(liente" RETR -
Servidor" N.H 654 octets
Return;ath" _!ulanoSlocalhost@localdomainR
Received" !rom localhost@localdomain (localhost@localdomain D175@164@1@58>E)
by localhost@localdomain (4@1?@1/4@1?@1) with S,/; id k5',5RM3##?746
!or _rootSlocalhost@localdomainRY SatB 14 ,ar 5##6 16"#?"51 #6##
$ate" SatB 14 ,ar 5##6 16"#5"56 #6##
,essage'd" _5##6#?1455#?@k5',5RM3##?746Slocalhost@localdomainR
SubMect" ,ensaMe de prueba
<rom" !ulanoSlocalhost@localdomain
/o" rootSlocalhost@localdomain
Status" .
(ontent0ength" >?
0ines" 5
X='$" 5#5
XHeywords"
1ola@ %ste es un mensaMe de prueba@
3dios@
@
(liente" ]ULT
Servidor" N.H 0ogging out@
(onnection closed by !oreign host@
<0<3 est defndo en e 'FC +S3S. <0<3 traba|a sobre @C< en e puerto 110.
5*.+.*.3. %:A< M%nternet :essage Access <rotocolN.
Es un protocolo est;ndar de Internet de )ivel de Aplicacin utzado para acceder haca e
correo eectrnco en un servdor remoto a travs de una conexn TCP/IP desde un cente oca.
La versn ms recente de %:A< es a 4, revsn 1, y est defnda en e 'FC 35O+. %:A< traba|a
sobre @C< en e puerto 143.
Fue dseado por Mark Crspn en 1986 como una aternatva ms moderna que cubrera as
defcencas de <0<3. Las caracterstcas ms mportantes de %:A< ncuyen:
Soporte para os modos de operacn conectado (connected), y desconectado (dsconnected),
permtendo a os centes de correo eectrnco permanezcan conectados e tempo que su nterfaz
permanezca actva, descargando os mensa|es conforme se neceste.
A dferenca de <0<3, permte accesos smutneos desde mtpes centes, y proporcona os
mecansmos necesaros para stos para que se detecten os cambos hechos por otro cente de
correo eectrnco concurrentemente conectado en e msmo buzn de correo.
Permte a os centes obtener ndvduamente cuaquer parte :%:" (acrnmo de :ut-Purpose
%nternet :a "xtensons, o Extensones de correo de Internet de propstos mtpes), as como
tambn obtener porcones de as partes ndvduaes, o ben os mensa|es competos.
A travs de !anderas defndas en e protocoo, vgar a nformacn de estado de os mensa|es de
370
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
correo eectrnco que se mantengan en e servdor. Por e|empo s e estado de mensa|e es ledo,
no ledo, respondido, o eliminado.
Incuye soporte para soporte para mtpes buzones de correo eectrnco que permte crear,
renombrar, o emnar mensa|es de correo eectrnco presentados en e servdor dentro de
carpetas, y mover stos mensa|es entre dstntas cuentas de correo eectrnco. Esta caracterstca
tambn permte a servdor proporconar acceso haca os carpetas pbcas, y compartdas.
Incuye soporte para reazar bsquedas de ado de servdor a travs de mecansmos que permten
obtener resutados de acuerdo a varos crteros, permtendo evtar que os centes de correo
eectrnco tengan que descargar todos os mensa|es desde e servdor.
Las especfcacones de protocoo %:A< defnen un mecansmo expcto medante e cua puede
ser me|orada su funconadad a travs de extensones. Un e|empo es a extensn %:A< %D", a
cua permte sncronzar ente e servdor, y e cente a travs de avsos.
Despus de estabecerse una conexn entre e cente, y e servdor, se nca una sesn %:A<,
e|empfcada a contnuacn.
(liente"
F n6 -,I.$.$.- -J3
Servidor" /rying 156@#@#@1@@@
(onnected to localhost@localdomain (156@#@#@1)@
%scape character is XWEX@
O .H dovecot ready@
N.H dovecot ready@
(liente" ; LOGLN <)4no clave de acceso
Servidor" x .H 0ogged in@
(liente" ; SELECT #n!o;
Servidor" O <03IS (P3nswered P<lagged P$eleted PSeen P$ra!t)
O .H D;%R,3+%+/<03IS (P3nswered P<lagged P$eleted PSeen P$ra!t PO)E <lags permitted@
O 1 %X'S/S
O # R%(%+/
O .H D=+S%%+ 1E <irst unseen@
O .H D='$&30'$'/: 11##867?45E ='$s valid
O .H D='$+%X/ 5#?E ;redicted next ='$
x .H DR%3$2R'/%E Select completed@
(liente" ; FETCE - &<)47s !o5yD3e45er.<#e)5s &s!Ke620F0
Servidor" O 1 <%/(1 (<03IS (PSeen) 9.$:D1%3$%R@<'%0$S (S=9a%(/)E Z?#[
SubMect" ,ensaMe de prueba
)
x .H <etch completed@
@
(liente" ; FETCE - &!o5yD2e;2F0
Servidor" O 1 <%/(1 (9.$:D/%X/E Z>8[
1ola@ %ste es un mensaMe de prueba@
3dios@
)
x .H <etch completed@
(liente" ; LOGOUT
Servidor" O 9:% 0ogging out
x .H 0ogout completed@
(onnection closed by !oreign host@
5*.*. 'e&erencias.
$ttp-==PPP.iet&.org=r&c=r&c****.t2t
$ttp-==PPP.iet&.org=r&c=r&c9*+.t2t
$ttp-==PPP.iet&.org=r&c=r&c*9*+.t2t
$ttp-==PPP.iet&.org=r&c=r&c+S3S.t2t
$ttp-==PPP.iet&.org=r&c=r&c35O+.t2t
371
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
53. Con&iguracin !;sica de >endmail.
Autor: $oel Barrios 'ue!as
Correo electrnico: dar(sram en gmail punto com
Sitio 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.
53.+. %ntroduccin.
Es mprescndbe prmero estudar, y comprender, os conceptos descrtos en e documento
ttuado %ntroduccin a los protocolos de correo electrnico.
53.+.+. Acerca de >endmail.
Es e ms popuar agente de transporte de correo (MTA, o :a @ransport Agent), responsabe
quz de poco ms de 70% de correo eectrnco de mundo. Aunque por argo tempo se e ha
crtcado por muchos ncdentes de de segurdad, o certo es que stos sempre han sdo resuetos
en pocas horas.
URL: http://www.sendma.org/.
53.+.*. Acerca de Dovecot.
Dovecot es un servdor de POP3 e IMAP de fuente aberta que funcona en Lnux, y sstemas
basados sobre Unx, y dseado con a segurdad como prncpa ob|etvo. Dovecot puede utzar
tanto e formato m!o2 como maildir, y es compatbe con as mpementacones de os servdores
UW-IMAP, y Courer IMAP.
URL: http://dovecot.procontro.f/.
53.+.3. Acerca de >A>L y Cyrus >A>.
>A> (>mpe Authentcaton and >ecurty ayer) es un estructura para a segurdad de datos en
protocoos de Internet. Desempare|a mecansmos de a autentcacn desde protocoos de
apcacones, permtendo, en teora, cuaquer mecansmo de autentcacn soportado por SASL
para ser utzado en cuaquer protocoo de apcacn que capaz de utzar SASL. Actuamente
SASL es un protocoo de a IETF (%nternet "ngneerng @ask Force) que ha sdo propuesto como
estndar. Est especfcado en e 'FC **** creado por |ohn Meyers en a Unversdad Carnege
Meon.
Cyrus >A> es una mpementacn de >A> que puede ser utzada de ado de servdor, o de
ado de cente, y que ncuye como prncpaes mecansmos de autentcacn soportados a
ANONYMOUS, CRAM-MD5, DIGEST-MD5, GSSAPI, y PLAIN. E cdgo fuente ncuye tambn soporte
para os mecansmos LOGIN, SRP, NTLM, OPT, y KERBEROS_V4.
URL: http://asg.web.cmu.edu/sas/sas-brary.htm.
372
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
53.*. "#uipamiento lgico necesario.
sendma make
sendma-cf cyrus-sas
dovecot (o ben map) cyrus-sas-md5
m4 cyrus-sas-pan
53.*.+. %nstalacin a travs de yum.
S se utza de Cent0> 5, o 'ed Eat "nterprise inu2 5, o versones posterores de stos, se
e|ecuta o sguente:
yum y install sendmail sendmailc! dovecot m> make
yum y install cyrussasl cyrussaslmd8 cyrussaslplain
S acaso estuvese nstaado, emne e paquete cyrus-sas-gssap, ya que este utza e mtodo de
autentcacn GSSAPI, msmo que requerra de a base de datos de cuentas de usuaro de un
servdor Kerberos:
yum remove cyrussaslgssapi
De gua manera, s estuvese nstaado, emne e paquete cyrus-sas-md5, ya que este utza os
mtodos de autentcacn CRAM-MD5, y Dgest-MD5, msmos que requeran asgnar as caves de
acceso para SMTP a travs de mandato saspasswd2. Outook carece de soporte para estos
mtodos de autentcacn.
yum remove cyrussaslmd8
53.3. <rocedimientos.
53.3.+. De&iniendo >endmail como agente de transporte de correo
predeterminado.
E mandato alternatives, con a opcn alternatives--confg mta, se utza para conmutar e
servco de correo eectrnco de sstema y eegr que paquete utzar. So es necesaro utzar
ste s prevamente estaban nstaados Postfx o Exm. S este es e caso, e|ecute o sguente
desde una termna, y defna >endmail como agente de transporte de correo (:@A, :a
@ransport Agent), seecconado ste.
alternatives con!ig mta
Lo anteror devover una sada smar a a sguente, donde deber eegr entre post&i2, y
sendmail como MTA predetermnado de sstema:
373
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
1ay 5 programas Jue proporcionan XmtaX@
SelecciQn (omando
1 /usr/sbin/sendmail@post!ix
ON 5 /usr/sbin/sendmail@sendmail
;resione 'ntro para mantener la selecciQn actualDNEB o escriba el n`mero de la selecciQn" 5
S estuvera presente post&i2, detenga ste (es e :@A predetermnado en Cent0> 6, y 'ed Eat
"nterprise inu2 6) e nce e servco sendmail:
service post!ix stop
chkcon!ig post!ix o!!
service sendmail start
chkcon!ig sendmail on
53.3.*. Alta de cuentas de usuarioL y asignacin de claves de acceso.
E ata de usuaros es a msma que como con cuaquer otro usuaro de sstema. Sendma utzar
e servco saslaut$d para autentcar a os usuaros, con opcn a hacero a travs de Dgest-MD5,
o CRAM-MD5.
+
.
Ata de a cuenta de usuaro en e sstema, a cua se sugere se asgne =dev=null, o =s!in=nologin
como ntrprete de mandato:
useradd s /sbin/nologin !ulano
*
.
Asgnacn de caves de acceso en e sstema para permtr autentcar a travs de os mtodos
<A%), y 0?%) para autentcar >:@<, y a travs de os protocoos <0<3 e %:A<:
passwd usuario
3
.
Asgnacn de caves de acceso para autentcar >:@<, a travs de mtodos cfrados (C'A:(:D5,
y D%?">@(:D5), en sstemas con versn de Sendma compada contra >A>(* (Red Hat
Enterprse Lnux 5, CentOS 5, y versones posterores de stos), puede hacerse a travs de mandato
saslpassPd* de sguente modo, tomando en consderacn de 0utlooK carece de soporte para
autenticar claves de acceso a travs de este mtodoL y #ue se re#uiere tener instalado el
pa#uete cyrus(sasl(md5:
s4s).4ss*5, usuario
5
.
La autentcacn para >:@< a travs de cuaquer mecansmo requere se actve e nce e servco
de saslaut$d de sguente modo:
chkcon!ig saslauthd on
service saslauthd start
Puede mostrarse a sta de os usuaros con cave de acceso a travs de SASL-2 utzando e
mandato sasld!listusers*.
53.3.3. Dominios a administrar.
Estabecer domnos a admnstrar en e archvo =etc=mail=local($ost(names de sguente modo:
dominio@com
mail@dominio@com
miotrodominio@com
mail@miotrodominio@com
374
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Estabecer domnos permtdos para poder envar correo en:
vi /etc/mail/relaydomains
Por defecto, no exste dcho archvo, hay que generaro. Para fnes generaes tene e msmo
contendo de =etc=mail=local($ost(names a menos que se desee excur agn domno en
partcuar.
dominio@com
mail@dominio@com
dominio5@com
mail@dominio5@com
53.3.4. Control de acceso
Defnr sta de contro de acceso en:
vi /etc/mail/access
Incur solo las %<s locales del servidor (as que devueva e mandato i&con&ig), y a sta negra
de dreccones de correo, domnos, y dreccones IP denegadas. Consdere que cuaquer IP que
vaya acompaada de R%03:, se e permtr envar correo sn necesdad de autentcar, o cua puede
ser t s se utza un cente de correo con nterfaz HTTP (Webma) en otro servdor. E|empos:
375
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A (heck the /usr/share/doc/sendmail/R%3$,%@c! !ile !or a description
A o! the !ormat o! this !ile@ (search !or access-db in that !ile)
A /he /usr/share/doc/sendmail/R%3$,%@c! is part o! the sendmaildoc
A package@
A
A by de!ault we allow relaying !rom localhost@@@
(onnect"localhost@localdomain R%03:
(onnect"localhost R%03:
(onnect"156@#@#@1 R%03:
A
A $irecciQn '; del propio servidor@
(onnect"175@164@1@58> R%03:
A
A .tros servidores de correo en la 03+ a los Jue se les permitirc enviar
A correo libremente a traves del propio servidor de correo@
(onnect"175@164@1@58? R%03:
(onnect"175@164@1@585 R%03:
A
A $irecciones '; Jue solo podrcn entregar correo de !orma localB es decirB
A no pueden enviar correo !uera del propio servidor@
(onnect"175@164@5@5> .H
(onnect"175@164@5@5? .H
(onnect"175@164@5@58 .H
A
A 0ista negra
usuarioSmolesto@com R%a%(/
productoinutil@com@mx R%a%(/
1#@>@8@6 R%a%(/
A
A 9loJues de 3sia ;aci!ic +etworksB 'S; desde el cual se emite la mayor
A parte del Spam del mundo@
A 0as redes involucradas abarcan 3ustraliaB aapQnB (hinaB (orea del SurB
/aiwanB
A 1ong Hong e 'ndia por lo Jue bloJuear el correo de dichas redes signi!ica
A cortar comunicaciQn con estos pabsesB pero acaba con entre el 6#VB y 4#V
A del Spam@
555 R%a%(/
551 R%a%(/
55# R%a%(/
517 R%a%(/
514 R%a%(/
515 R%a%(/
511 R%a%(/
51# R%a%(/
5#? R%a%(/
5#5 R%a%(/
1>#@1#7 R%a%(/
1?? R%a%(/
61 R%a%(/
6# R%a%(/
87 R%a%(/
84 R%a%(/
53.3.5. Alias de la cuenta de root.
No es convenente estar autentcando a cuenta de root a travs de a red para revsar os
mensa|es orgnados por e sstema. Se debe defnr aas para a cuenta de root a donde re-
drecconar e correo en e archvo =etc=aliases de sguente modo:
root" !ulano
376
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
53.3.6. Con&iguracin de &unciones de >endmail.
Modfcar e archvo =etc=mail=sendmail.mc, y desactvar, o habtar funcones:
vi /etc/mail/sendmail@mc
53.3.6.+. con&>:@<Q0?%)Q:>?.
Este parmetro permte estabecer e mensa|e de benvenda a estabecer a conexn a servdor.
Es posbe ocutar e nombre, y a versn de Sendma, esto con e ob|eto de agregar segurdad por
secreto. Funcona smpemente hacendo que quen se conecte haca e servdor no pueda saber
que software, y versn de msmo se est utzando, y con eos dfcutar a un dencuente, o
abusador de servco, e determnar que vunerabdad especfca expotar. Recomendamos utzar
o sguente:
de!ine(gcon!S,/;-0.I'+-,SIXBgFM Y FbX)dnl
Lo anteror regresar ago como o sguente a reazar una conexn haca e puerto 25 de
servdor:
F nc 156@#@#@1 58
/rying 156@#@#@1@@@
(onnected to nombre@dominio@
%scape character is XWEX@
55# nombre@dominio %S,/; Y ,onB 16 ,ay 5##> #5"55"57 #8##
Juit
551 5@#@# nombre@dominio closing connection
(onnection closed by !oreign host@
F
Est confguracn se puede poner |usto antes de a nea correspondente a parmetro
con&A,@EQ0<@%0)>.
53.3.6.*. con&A,@EQ0<@%0)>.
S se utza a sguente nea, habtada por defecto, se permtr reazar autentcacn a travs
de puerto 25 por cuaquer mtodo, ncuyendo PLAIN, e cua se reaza en texto smpe. Esto
mpca certo resgo de segurdad.
de!ine(gcon!3=/1-.;/'.+SXBg3X)dnl
S comenta a anteror nea con 5n), y se utza en cambo a sguente nea, se desactva a
autentcacn por de texto smpe en conexones no seguras (TLS), de modo ta que soo se podr
autentcar a travs de mtodos que utcen cframento, como sera CRAM-MD5, y DIGEST-MD5.
"sto o!liga a utili8ar clientes de correo electrnico con soporte para autenticacin a
travs de C'A:(:D5L y D%?">@(:D5 Mtodos los conocidosL e2cepto 0utlooKL y 0utlooK
"2pressNL tener instalado el pa#uete cyrus(sasl(md5L y asignar las claves de acceso para
>:@< a travs del mandato saslpassPd*.
de!ine(gcon!3=/1-.;/'.+SXBgA .X)dnl
377
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
53.3.6.3. @',>@QA,@EQ:"CEL y con&A,@EQ:"CEA)%>:>.
S se desea utzar SMTP autentcado para equpos no ncudos dentro de archvo
=etc=mail=access, se requeren des-comentar as sguentes dos neas, emnando e dnl que es
precede:
/R=S/-3=/1-,%(1(g%X/%R+30 $'I%S/,$8 (R3,,$8 0.I'+ ;03'+X)dnl
de!ine(gcon!3=/1-,%(13+'S,SXB g%X/%R+30 ISS3;' $'I%S/,$8 (R3,,$80.I'+ ;03'+X)dnl
53.3.6.4. DA":0)Q0<@%0)>.
De modo predefndo >endmail escucha petcones a travs de a nterfaz de retorno de sstema a
travs de %<v4 (127.0.0.1), y no a travs de otros dspostvos de red. Soo se necesta emnar as
restrccn de a nterfaz de retorno para poder recbr correo desde Internet, o a LAN. ocace a
sguente nea:
dnl A /he !ollowing causes sendmail to only listen on the ';v> loopback address
dnl A 156@#@#@1 and not on any other network devices@ Remove the loopback
dnl A address restriction to accept email !rom the internet or intranet@
dnl A
DAEMON_O8TLONS&c8or2=s/2.AA55r=-,I.$.$.-A N4/e=MTA905n)
dnl A
dnl A /he !ollowing causes sendmail to additionally listen to port 846 !or
dnl A mail !rom ,=3s that authenticate@ Roaming users who canXt reach their
dnl A pre!erred sendmail daemon due to port 58 being blocked or redirected !ind
dnl A this use!ul@
dnl A
$3%,.+-.;/'.+S(g;ort)submissionB +ame),S3B ,)%aX)dnl
dnl A
dnl A /he !ollowing causes sendmail to additionally listen to port >68B but
dnl A starting immediately in /0S mode upon connecting@ ;ort 58 or 846 !ollowed
Emne de dcho parmetro e vaor AddrR+*7.O.O.+, y a coma (,) que e antecede, de sguente
modo:
dnl A /he !ollowing causes sendmail to only listen on the ';v> loopback address
dnl A 156@#@#@1 and not on any other network devices@ Remove the loopback
dnl A address restriction to accept email !rom the internet or intranet@
dnl A
DAEMON_O8TLONS&c8or2=s/2.A N4/e=MTA905n)
dnl A
dnl A /he !ollowing causes sendmail to additionally listen to port 846 !or
dnl A mail !rom ,=3s that authenticate@ Roaming users who canXt reach their
dnl A pre!erred sendmail daemon due to port 58 being blocked or redirected !ind
dnl A this use!ul@
dnl A
$3%,.+-.;/'.+S(g;ort)submissionB +ame),S3B ,)%aX)dnl
dnl A
dnl A /he !ollowing causes sendmail to additionally listen to port >68B but
dnl A starting immediately in /0S mode upon connecting@ ;ort 58 or 846 !ollowed
E puerto 587 (submsson), puede ser tambn utzado para envo de correo eectrnco. Por
estndar se utza como puerto aternatvo en os casos donde un cortafuegos mpde a os
usuaros acceder haca servdores de correo traba|ando por puerto 25. Para este fn, se requere
descomentar a nea que ncuye DA":0)Q0<@%0)>Mj<ortRsu!missionL )ameR:>AL
:R"a[Ndnl, como se ustra a contnuacn, resatado en negrita:
378
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
dnl A /he !ollowing causes sendmail to only listen on the ';v> loopback address
dnl A 156@#@#@1 and not on any other network devices@ Remove the loopback
dnl A address restriction to accept email !rom the internet or intranet@
dnl A
$3%,.+-.;/'.+S(g;ort)smtpB +ame),/3X)dnl
dnl A
dnl A /he !ollowing causes sendmail to additionally listen to port 846 !or
dnl A mail !rom ,=3s that authenticate@ Roaming users who canXt reach their
dnl A pre!erred sendmail daemon due to port 58 being blocked or redirected !ind
dnl A this use!ul@
dnl A
DAEMON_O8TLONS&c8or2=s!/#ss#onA N4/e=MSAA M=E4905n)
dnl A
dnl A /he !ollowing causes sendmail to additionally listen to port >68B but
dnl A starting immediately in /0S mode upon connecting@ ;ort 58 or 846 !ollowed
53.3.6.5. F"A@,'"MjacceptQunresolva!leQdomains[N.
De modo predefndo, como una forma de permtr e correo de propo sstema en una
computadora de escrtoro, o una computadora portt, est se utza e parmetro
F"A@,'"MjacceptQunresolva!leQdomains[N. Sn embargo se recomenda desactvar esta
funcn a fn de mpedr aceptar correo de domnos nexstentes (generamente utzado para e
envo de correo masvo no soctado, o >pam), soo se necesta comentar esta confguracn
precedendo un dnl, de sguente modo:
5n) <%3/=R%(gaccept-unresolvable-domainsX)dnl
53.3.6.6. "nmascaramiento.
Habtar as sguentes neas, y adaptar vaores para defnr a mscara que utzar e servdor:
,3Sh=%R3$%-3S(g5o/#n#o.6o/X)dnl
<%3/=R%(masJuerade-envelope)dnl
<%3/=R%(masJuerade-entire-domain)dnl
S va a admnstrar mtpes domnos, decare os domnos que no se quera enmascarar con e
parmetro :A>B,"'AD"Q"DC"<@%0) de sguente modo:
,3Sh=%R3$%-3S(gdominio@comX)dnl
MAS]UERADE_EXCE8TLON&c5o/#n#o,.ne2905n)
MAS]UERADE_EXCE8TLON&c5o/#n#o3.or7905n)
MAS]UERADE_EXCE8TLON&c5o/#n#oJ.6o/./;905n)
<%3/=R%(masJuerade-envelope)dnl
<%3/=R%(masJuerade-entire-domain)dnl
53.3.7. Control del correo c$atarra M>pamN a travs de D)>Bs.
S se desea cargar listas negras para mtgar e Spam, pueden aadr a sguente nea para defnr
a sta negra de spamcop.net, |usto arrba de CAD&-?>smtpAdnl:
<%3/=R%(genhdnsblXB gbl@spamcop@netXB g*Spam blocked see" http"//spamcop@net/bl@shtmlj*FkZclient-addr[XB gtX)dnl
379
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
53.3.9. Con&iguracin de Dovecot.
53.3.9.+. <ar;metros del arc$ivo =etc=dovecot=dovecot.con& en Cent0> 6L y 'ed
Eat "nterprise inu2 6.
Cent0> 6, y 'ed Eat "nterprise inu2 6 utzan a versn *.O de Dovecot, y por o cua
camba radcamente a confguracn respecto de a versn +.O.2, utzada en Cent0> 5, y 'ed
Eat "nterprise inu2 5, y versones anterores. Edte e archvo =etc=dovecot=dovecot.con&, y
descomente e parmetro protocols, estabecendo como vaor pop3 imap lmtp.
A ;rotocols we want to be serving@
protocols ) imap pop? lmtp
53.3.9.*. <ar;metros del arc$ivo =etc=dovecot=con&.d=+O(mail.con& en Cent0> 6L
y 'ed Eat "nterprise inu2 6.
Arededor de a nea 30 de archvo =etc=dovecot=con&.d=+O(mail.con&, estabezca
m!o2-Y=mail-%)B0DR=var=mail=Vu como vaor de parmetro mailQlocation.
A See doc/wiki/&ariables@txt !or !ull list@ Some examples"
A
A mail-location ) maildir"T/,aildir
A mail-location ) mbox"T/mail"'+9.X)/var/mail/Vu
A mail-location ) mbox"/var/mail/Vd/V1n/Vn"'+$%X)/var/indexes/Vd/V1n/Vn
A
A _doc/wiki/,ail0ocation@txtR
A
mail-location ) /!o;?^+/4#)?LNBOX=+"4r+/4#)+b
Cabe seaar que a versn de dovecot ncuda en Cent0> 6, y 'ed Eata "nterprise inu2 6,
es obgatoro generar un certfcado, pues soo permtr conexones sn TLS desde 127.0.0.1. Sga
e procedmento descrto en e documento ttuado Cmo con&igurar >endmailL y Dovecot con
soporte >>=@>.
53.3.9.3. <ar;metros del arc$ivo =etc=dovecot=dovecot.con& en Cent0> 5L y 'ed
Eat "nterprise inu2 5.
S utza Cent0> 5, o 'ed Eata "nterprise inu2 5, se debe modfcar e archvo
=etc=dovecot.con&, y habtar os servcos de map y/o pop3 de sguente modo (de modo
predefndo estn habtados map e maps):
A ;rotocols we want to be serving"
A imap imaps pop? pop?s
.ro2o6o)s = #/4. .o.3
53.3.S. Aadir al arran#ue del sistema e iniciar servicios dovecotL y
sendmail.
E servco dovecot, en cuaquera de as versones de os sstemas operatvos menconados, se
agrega a arranque de sstema de sguente modo:
chkcon!ig dovecot on
380
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Para ncar e servco, se e|ecuta o sguente:
service dovecot start
E servco sendmail se agrega a arranque de sstema de sguente modo:
chkcon!ig sendmail on
Para ncar e servco sendmail, se e|ecuta o sguente:
service sendmail start
Para rencar servco sendmail soo bastar e|ecutar:
service sendmail restart
Probar servdor envando/recbendo mensa|es con CUALOUIER cente estndar de correo
eectrnco con soporte para POP3/IMAP/SMTP con soporte para autentcar a travs de SMTP
utzando os mtodos DIGEST-MD5, o CRAM-MD5.
Para depurar posbes errores, se puede examnar e contendo de a btcora de correo de sstema
en =var=log=maillog de sguente modo:
tail ! /var/log/maillog
53.4. :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 puertos 25 (smtp), 465 (smtps), y 587 (submsson), as como os puertos 110 (pop3), 143
(map), 993 (maps), y 995 (pop3s).
Las regas para e archvo =etc=s$orePall=rules de >$orePall correspondera a ago smar a o
sguente, consderando que se abre e acceso para FTP desde cuaquer zona de muro
cortafuegos:
A3(/'.+ S.=R(% $%S/ ;R./. $%S/ S.=R(%
A ;.R/ ;.R/(S)1
3((%;/ all !w tcp 58B>68B846
3((%;/ all !w tcp 11#B1>?B77?@778
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
Se recomenda consutar os documentos ttuados Cmo con&igurar >endmailL y Dovecot con
soporte >>=@>, y Con&iguracin avan8ada de >endmail.
381
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
54. Cmo con&igurar >endmail y Dovecot con
soporte >>=@>.
Autor: $oel Barrios 'ue!as
Correo electrnico: dar(sram en gmail punto com
Sitio 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.
54.+. %ntroduccin.
Este documento requere a ectura y comprensn preva de documento ttuado Con&iguracin
!;sica de >endmail.
54.+.+. Acerca de D>A.
D>A (Dgta >gnature Agorthm o Agortmo de Frma dgta) es un agortmo creado por e NIST
()atona %nsttute of >tandards and @echnoogy o Insttuto Nacona de Normas y Tecnooga de
EE.UU.), pubcado e 30 de agosto de 1991, como propuesta para e proceso de frmas dgtaes.
Se utza para frmar nformacn, ms no para cfrar sta.
URL: http://es.wkpeda.org/wk/DSA
54.+.*. Acerca de '>A.
'>A, acrnmo de os apedos de sus autores, Ron 'vest, Ad >hamr y Len Ademan, es un
agortmo para e cframento de caves pbcas que fue pubcado en 1977, patentado en EE.UU.
en 1983 por e e Insttuto Tecnogco de Mchgan (:%@). '>A es utzado ampamente en todo e
mundo para os protocoos destnados para e comerco eectrnco.
URL: http://es.wkpeda.org/wk/RSA
54.+.3. Acerca de D.5OS.
D.5OS es un estndar %@,(@ (estandarzacn de @eecomuncacones de a %nternatona
@eecommuncaton ,non ) para nfraestructura de caves pbcas (<I%, o <ubc Iey
%nfrastructure). Entre otras cosas, estabece os estndares para certfcados de caves pbcas y
un agortmo para vadacn de ruta de certfcacn. Este tmo se encarga de verfcar que a
ruta de un certfcado sea vda ba|o una nfraestructura de cave pbca determnada. Es decr,
desde e certfcado nca, pasando por certfcados ntermedos, hasta e certfcado de confanza
emtdo por una Autordad Certfcadora (CA, o Certfcaton Authorty).
URL: http://es.wkpeda.org/wk/X.509
382
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
54.+.4. Acerca de 0pen>>.
0pen>> es una mpementacn bre, de cdgo aberto, de os protocoos >> (>ecure >ockets
ayer o Nve de Zcao Seguro) y @> (@ransport ayer >ecurty, o Segurdad para Nve de
Transporte). Est basado sobre e extnto proyecto >>eay, ncado por Erc Young y Tm Hudson,
hasta que stos comenzaron a traba|ar para a dvsn de segurdad de EMC Corporaton.
URL: http://www.openss.org/
54.*. <rocedimientos.
Todos os procedmentos deben reazarse como e usuaro root.
54.*.+. ?enerando &irma digital y certi&icado.
Acceda a drectoro =etc=pKi=tls=.
cd /etc/pki/tls/
Los servdores de correo eectrnco, como Sendma y Postfx, pueden utzar una frma dgta
creada con agortmo D>A de 1024 octetos. Para ta fn, se crea prmero un archvo de parmetros
D>A:
openssl dsaparam 1#5> out dsa1#5>@pem
A contnuacn, se utza este archvo de parmetros D>A para crear una ave con agortmo D>A
y estructura 25OS, as como tambn e correspondente certfcado. En e mandato de e|empo
mostrado a contnuacn, se estabece una vadez por 1095 das (tres aos) para e certfcado
creado.
openssl reJ x8#7 nodes newkey dsa"dsa1#5>@pem days 1#78 out 6er2s+s/2..6r2 keyout
.r#"42e+s/2..:ey
Lo anteror soctar se ngresen varos datos:
Cdgo de dos etras para e pas.
Estado o provnca.
Cudad.
Nombre de a empresa o razn soca.
Undad o seccn.
Nombre de anftrn.
Dreccn de correo.
La sada devueta sera smar a a sguente:
Ienerating a 1#5> bit $S3 private key
writing new private key to Xsmtp@keyX
ON 1 /usr/sbin/sendmail@post!ix
5 /usr/sbin/sendmail@sendmail
;resione 'ntro para mantener la selecciQn actualDNEB o escriba el n`mero de la selecciQn" 1
S estuvera presente sendmail, detenga ste (es e :@A predetermnado en Cent0> 5, y 'ed
Eat "nterprise inu2 5) e nce postfx:
service sendmail stop
chkcon!ig sendmail o!!
service post!ix start
chkcon!ig post!ix on
57.3.*. >"inu2L y <ost&i2.
A fn de que SELnux permta a Postfx escrbr e e drectoro de entrada de correo eectrnco
(=var=spool=mail=), es necesaro habtar a sguente potca:
setsebool ; allow-post!ix-local-write-mail-spool 1
404
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Soo en Cent0> 5, y 'ed Eat "nterpise inu2 5, a fn de que SELnux permta a ectura de
correo eectrnco, es necesaro habtar a sguente potca:
setsebool ; mail-read-content 1
En Cent0> 6, y 'ed Eat "nterpise inu2 6, esta potca de| de exstr, pues se vov
nnecesara.
57.3.*.+. ?enerando &irma digitalL y certi&icado.
Acceda a drectoro =etc=pKi=tls=.
cd /etc/pki/tls/
Los servdores de correo eectrnco, como Sendma, y Postfx, pueden utzar una frma dgta
creada con agortmo D>A de 1024 octetos. Para ta fn, se crea prmero un archvo de parmetros
D>A:
openssl dsaparam 1#5> out dsa1#5>@pem
A contnuacn, se utza este archvo de parmetros D>A para crear una ave con agortmo D>A,
y estructura 25OS, as como tambn e correspondente certfcado. En e e|empo a contnuacn,
se estabece una vadez por 1095 das (tres aos) para e certfcado creado.
openssl reJ x8#7 nodes newkey dsa"dsa1#5>@pem days 1#78 out 6er2s+s/2..6r2 keyout
.r#"42e+s/2..:ey
Lo anteror soctar se ngresen varos datos:
Cdgo de dos etras para e pas.
Estado, o provnca.
Cudad.
Nombre de a empresa, o razn soca.
Undad, o seccn.
Nombre de anftrn.
Dreccn de correo.
La sada devueta sera smar a a sguente:
405
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Ienerating a 1#5> bit $S3 private key
writing new private key to Xsmtp@keyX
477
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
:ou are about to be asked to enter in!ormation that will be
incorporated into your certi!icate reJuest@
2hat you are about to enter is what is called a $istinguished +ame
or a $+@
/here are Juite a !ew !ields but you can leave some blank
<or some !ields there will be a de!ault valueB
'! you enter X@XB the !ield will be le!t blank@
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: soo 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.
options Z
directory */var/named*Y
dump!ile */var/named/data/cache-dump@db*Y
statistics!ile */var/named/data/named-stats@txt*Y
memstatistics!ile */var/named/data/named-mem-stats@txt*Y
!orwarders Z175@164@#@1Y [Y
!orward !irstY
dnssecenable yesY
dnssecvalidation yesY
dnsseclookaside autoY
bindkeys!ile */etc/named@iscdlv@key*Y
[Y
logging Z
channel de!ault-debug Z
!ile *data/named@run*Y
severity dynamicY
[Y
[Y
controls Z
inet 156@#@#@1 allow Z 156@#@#@1Y [ keys Z *rndckey*Y [Y
[Y
include */etc/rndc@key*Y
view *publico* Z
matchclients Z anyY [Y
recursion noY
Cone *midominio.com* Z
type masterY
!ile *data/midominio.com@Cone*Y
allowupdate Z noneY [Y
allowtrans!er Z 5##@66@148@585Y 5##@66@148@581Y [Y
524
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
[Y
[Y
view *local* Z
matchclients Z
156@#@#@#/4Y
1#@#@#@#/4Y
165@16@#@#/15Y
175@164@#@#/16Y
[Y
recursion yesY
include */etc/named@r!c1715@Cones*Y
Cone *@* '+ Z
type hintY
!ile *named@ca*Y
[Y
Cone *miredlocal* Z
type masterY
!ile *data/miredlocal@Cone*Y
allowupdate Z noneY [Y
allowtrans!er Z 175@164@#@5Y [Y
[Y
[Y
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:
0-??S?* Sne 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
souldnFt appenA. Tis can cause an e5cessive 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 openA, due to te potential for cace poisoning >)it no recursion, tere is no
cace, and it is impossible to poison itA. Alos, te bad guys could use your '=" server as part of an attac(, by forging teir DE address1
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 soo 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 yes^ y una o ms neas que defnan a red o as redes que
tendrn permtdo reazar todo tpo de consutas.
525
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
options Z
directory */var/named*Y
dump!ile */var/named/data/cache-dump@db*Y
statistics!ile */var/named/data/named-stats@txt*Y
memstatistics!ile */var/named/data/named-mem-stats@txt*Y
!orwarders Z 175@164@6#@1Y [Y
!orward !irstY
dnssecenable yesY
dnssecvalidation yesY
dnsseclookaside autoY
bindkeys!ile */etc/named@iscdlv@key*Y
[Y
logging Z
channel de!ault-debug Z
!ile *data/named@run*Y
severity dynamicY
[Y
[Y
controls Z
inet 156@#@#@1 allow Z 156@#@#@1Y [ keys Z *rndckey*Y [Y
[Y
include */etc/rndc@key*Y
view *local* Z
matchclients Z
156@#@#@#/4Y
1#@#@#@#/4Y
165@16@#@#/15Y
175@164@#@#/16Y
[Y
recursion yesY
include */etc/named@r!c1715@Cones*Y
Cone *@* '+ Z
type hintY
!ile *named@ca*Y
[Y
[Y
Lo anteror hace que soo 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 soo 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: soo 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.
526
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
options Z
directory */var/named*Y
dump!ile */var/named/data/cache-dump@db*Y
statistics!ile */var/named/data/named-stats@txt*Y
memstatistics!ile */var/named/data/named-mem-stats@txt*Y
!orwarders Z175@164@#@1Y [Y
!orward !irstY
dnssecenable yesY
dnssecvalidation yesY
dnsseclookaside autoY
bindkeys!ile */etc/named@iscdlv@key*Y
[Y
logging Z
channel de!ault-debug Z
!ile *data/named@run*Y
severity dynamicY
[Y
[Y
controls Z
inet 156@#@#@1 allow Z 156@#@#@1Y [ keys Z *rndckey*Y [Y
[Y
include */etc/rndc@key*Y
view *publico* Z
matchclients Z anyY [Y
recursion noY
Cone *midominio.com* Z
type masterY
!ile *data/midominio.com@Cone*Y
allowupdate Z noneY [Y
allowtrans!er Z 5#>@1?@5>7@68Y 5#4@64@67@68Y 71@174@55@68Y [Y
[Y
[Y
view *local* Z
matchclients Z
156@#@#@#/4Y
1#@#@#@#/4Y
165@16@#@#/15Y
175@164@#@#/16Y
[Y
recursion yesY
include */etc/named@r!c1715@Cones*Y
Cone *@* '+ Z
type hintY
!ile *named@ca*Y
[Y
Cone *miredlocal* Z
type masterY
!ile *data/miredlocal@Cone*Y
allowupdate Z noneY [Y
allowtrans!er Z 175@164@#@5Y [Y
[Y
[Y
527
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
73.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 soo 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&.
528
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
73.3.5.+. Arc$ivo =etc=named.con&
options Z
directory */var/named/*Y
dump!ile */var/named/data/cache-dump@db*Y
statistics!ile */var/named/data/named-stats@txt*Y
memstatistics!ile */var/named/data/named-mem-stats@txt*Y
!orwarders Z
4@4@4@4Y
4@4@>@>Y
[Y
!orward !irstY
dnssecenable yesY
dnssecvalidation yesY
dnsseclookaside autoY
bindkeys!ile */etc/named@iscdlv@key*Y
[Y
logging Z
channel de!ault-debug Z
!ile *data/named@run*Y
severity dynamicY
[Y
[Y
controls Z
inet 156@#@#@1 allow Z 156@#@#@1Y [ keys Z *rndckey*Y [Y
[Y
include */etc/rndc@key*Y
view *local* Z
matchclients Z
156@#@#@#/4Y
1#@#@#@#/4Y
165@16@#@#/15Y
175@164@#@#/16Y
[Y
recursion yesY
include */etc/named@r!c1715@Cones*Y
Cone *@* '+ Z
type hintY
!ile *named@ca*Y
[Y
Cone *redlocal* Z
type masterY
!ile *data/redlocal@Cone*Y
allowupdate Z noneY [Y
[Y
Cone *1@164@175@inaddr@arpa* Z
type masterY
!ile *data/1@164@175@inaddr@arpa@Cone*Y
allowupdate Z noneY [Y
[Y
[Y
529
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
73.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.
73.3.6.+. Arc$ivo named.con& >ervidor D)> secundario.
view *publico* Z
matchclients Z anyY [Y
recursion noY
Cone *dominio@com* Z
2y.e s)4"e[
!ile *dominio@com@Cone*Y
/4s2ers Z -%,.-'8.-.,5J[ \[
[Y
[Y
view *local* Z
matchclients Z
156@#@#@#/4Y
1#@#@#@#/4Y
165@16@#@#/15Y
175@164@#@#/16Y
[Y
recursion yesY
include */etc/named@r!c1715@Cones*Y
Cone *@* '+ Z
type hintY
!ile *named@ca*Y
[Y
Cone *redlocal* Z
2y.e s)4"e[
!ile *data/redlocal@Cone*Y
/4s2ers Z -%,.-'8.-.,5J[ \[
[Y
Cone *1@164@175@inaddr@arpa* Z
2y.e s)4"e[
!ile *data/1@164@175@inaddr@arpa@Cone*Y
/4s2ers Z -%,.-'8.-.,5J[ \[
[Y
[Y
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:
530
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
73.3.6.*. Arc$ivo named.con& >ervidor D)> <rimario.
view *publico* Z
matchclients Z anyY [Y
recursion noY
Cone *dominio@com* Z
type masterY
!ile *dominio@com@Cone*Y
allowupdate Z noneY [Y
4))o*-2r4ns<er Z
,$$.33.-J'.,-I[
,$$.33.-J'.,$%[
\[
[Y
[Y
view *local* Z
matchclients Z
156@#@#@#/4Y
1#@#@#@#/4Y
165@16@#@#/15Y
175@164@#@#/16Y
[Y
recursion yesY
include */etc/named@r!c1715@Cones*Y
Cone *@* '+ Z
type hintY
!ile *named@ca*Y
[Y
Cone *redlocal* Z
type masterY
!ile *data/redlocal@Cone*Y
allowupdate Z noneY [Y
4))o*-2r4ns<er Z
-%,.-'8.-.-5[
-%,.-'8.-.-'[
\[
[Y
Cone *1@164@175@inaddr@arpa* Z
type masterY
!ile *data/1@164@175@inaddr@arpa@Cone*Y
allowupdate Z noneY [Y
4))o*-2r4ns<er Z
-%,.-'8.-.-5[
-%,.-'8.-.-'[
\[
[Y
[Y
73.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.
531
|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 *midominio@org* Z
type masterY
!ile *data/midominio@org@Cone*Y
allowupdate Z noneY ["
allowtrans!er Z 175@164@1@11Y 175@164@1@15Y [Y
[Y
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 *midominio@org* Z
type slaveY
!ile *data/midominio@org@Cone*Y
masters Z 175@164@1@1Y [Y
[Y
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(Keygen, 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):
dnsseckeygen r /dev/random a 1,3(,$8 b 154 n 1.S/ midominio@org
Lo anteror devueve una sada smar a a sguente:
Hmidominio@org@N186N?5?55
A msmo tempo se generaran dos archvos en e drectoro =var=named=c$root=var=named=, que
corresponderan a Imi(dominio.org.G+57G3*3**.Key y Imi(dominio.org.
G+57G3*3**.private. Imi(dominio.org.G+57G3*3**.Key deber tener un contendo como e
sguente, e cua corresponde a regstro que se aade dentro de archvo de zona:
midominio@org@ '+ H%: 815 ? 186 +;u+uxvG3Mtd?mriuyg/4h))
Imi(dominio.org.G+57G3*3**.private deber tener un contendo como e sguente:
;rivatekey!ormat" v1@5
3lgorithm" 186 (1,3(-,$8)
Hey" +;u+uxvG3Mtd?mriuyg/4h))
532
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
En ambos casos, )<u)u2vcA.td3mriuyg@9BRR corresponde a a cave cfrada. Ambos deben
tener a msma cave.
Los dos archvos soo deben tener atrbutos de ectura para e usuaro named.
chmod >## Hmidominio@org@N186N?5?55@O
chown named@named Hmidominio@org@N186N?5?55@O
A fn de poder ser utzados, ambos archvos deben ser movdos haca e drectoro
=var=named=c$root=var=named=data=.
mv Hmidominio@org@N186N?5?55@O /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 midominio@org Z
algorithm 1,3(,$8Y
secret *+;u+uxvG3Mtd?mriuyg/4h))*Y
[Y
Cone *midominio@org* Z
type masterY
!ile *data/midominio@org@Cone*Y
allowupdate Z noneY [Y
allowtrans!er Z key midominio@orgY [Y
[Y
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):
:ey /#-5o/#n#o.or7 Z
4)7or#23/ EMAC-MD5[
se6re2 "N8N;"MAK253/r#y7T8]=="[
\[
ser"er -%,.-'8.-.- Z
:eys Z /#-5o/#n#o.or7[ \[
\[
Cone *midominio@org* Z
type slaveY
masters Z 175@164@1@1Y [Y
[Y
533
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
73.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 soo aqueo que contenga a cadena
de caracteres named:
tail ! /var/log/messages ^grep 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"86"># servidor namedD6#>5E" listening on ';v> inter!ace eth#B 175@164@1@6>A8?
Sep 1# #1"86"># servidor namedD6#>5E" command channel listening on 156@#@#@1A78?
Sep 1# #1"86"># servidor namedD6#>5E" Cone #@inaddr@arpa/'+" loaded serial >5
Sep 1# #1"86"># servidor namedD6#>5E" Cone #@#@156@inaddr@arpa/'+" loaded serial 1776#556##
Sep 1# #1"86"># servidor namedD6#>5E" Cone 588@inaddr@arpa/'+" loaded serial >5
Sep 1# #1"86"># servidor namedD6#>5E" Cone
#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@ip6@arpa/'+" loaded serial 1776#556##
Sep 1# #1"86"># servidor namedD6#>5E" Cone localdomain/'+" loaded serial >5
Sep 1# #1"86"># servidor namedD6#>5E" Cone localhost/'+" loaded serial >5
Sep 1# #1"86"># servidor namedD6#>5E" Cone midominio@org/'+" loaded serial 5##7#71##1
Sep 1# #1"86"># servidor named" 'niciaciQn de named succeeded
Sep 1# #1"86"># servidor namedD6#>5E" running
Sep 1# #1"86"># servidor namedD6#>5E" Cone midominio@org/'+" sending noti!ies (serial 5##7#71##1)
Se. -$ $-?5%?J% ser"#5or n4/e5D'$J,F? 6)#en2 -%,.-'8.-.--V3,8-I? 2r4ns<er o< 9/#-5o/#n#o.or7+LN9?
AXFR s24r2e5
A rencar e servco named en os servdores escavos, se debe mostrar una sada smar a a
sguente:
Sep 1# #1"84"18 servidor namedD8#4#E" listening on ';v> inter!ace eth#B 175@164@1@58?A8?
Sep 1# #1"84"18 servidor namedD8#4#E" command channel listening on 156@#@#@1A78?
Sep 1# #1"84"18 servidor namedD8#4#E" Cone #@inaddr@arpa/'+" loaded serial >5
Sep 1# #1"84"18 servidor namedD8#4#E" Cone #@#@156@inaddr@arpa/'+" loaded serial 1776#556##
Sep 1# #1"84"18 servidor namedD8#4#E" Cone 588@inaddr@arpa/'+" loaded serial >5
Sep 1# #1"84"18 servidor namedD8#4#E" Cone
#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@#@ip6@arpa/'+" loaded serial 1776#556##
Sep 1# #1"84"18 servidor namedD8#4#E" Cone localdomain/'+" loaded serial >5
Sep 1# #1"84"18 servidor namedD8#4#E" Cone localhost/'+" loaded serial >5
Sep 1# #1"84"18 servidor namedD8#4#E" running
Sep 1# #1"84"18 servidor named" 'niciaciQn de named succeeded
Se. -$ $-?58?-5 ser"#5or n4/e5D5$8$F? Bone /#-5o/#n#o.or7+LN? 2r4ns<erre5 ser#4) ,$$%$%-$$-
Se. -$ $-?58?-5 ser"#5or n4/e5D5$8$F? 2r4ns<er o< 9/#-5o/#n#o.or7+LN9 <ro/ -%,.-'8.-.-V53? en5 o<
2r4ns<er
Se. -$ $-?58?-5 ser"#5or n4/e5D5$8$F? Bone /#-5o/#n#o.or7+LN? sen5#n7 no2#<#es &ser#4) ,$$%$%-$$-0
73.3.9. 'einiciar servicio y depuracin de con&iguracin.
A termnar de edtar todos os archvos nvoucrados, soo 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:
534
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
tail 4# /var/log/messages ^grep named
Lo anteror, s est funconando correctamente, debera devover ago parecdo a o mostrado a
contnuacn:
Sep 1# #5"18"18 servidor namedD?#614E" starting 9'+$ 7@5@5 u named
Sep 1# #5"18"18 servidor namedD?#614E" using 1 (;=
Sep 1# #5"18"18 servidor named" 'niciaciQn de named succeeded
Sep 1# #5"18"18 servidor namedD?#655E" loading con!iguration !rom X/etc/named@con!X
Sep 1# #5"18"18 servidor namedD?#655E" no ';v6 inter!aces !ound
Sep 1# #5"18"18 servidor namedD?#655E" listening on ';v> inter!ace loB 156@#@#@1A8?
Sep 1# #5"18"18 servidor namedD?#655E" listening on ';v> inter!ace eth#B 175@164@1@1A8?
Sep 1# #5"18"18 servidor namedD?#655E" command channel listening on 156@#@#@1A78?
Sep 1# #5"18"16 servidor namedD?#655E" Cone #@#@156@inaddr@arpa/'+" )o45e5 ser#4) 3
Sep 1# #5"18"16 servidor namedD?#655E" Cone 1@164@175@inaddr@arpa/'+" )o45e5 ser#4) ,$$%$%-$$-
Sep 1# #5"18"16 servidor namedD?#655E" Cone localhost/'+" )o45e5 ser#4) -
Sep 1# #5"18"16 servidor namedD?#655E" Cone midominio@com@mx/'+" )o45e5 ser#4) ,$$%$%-$$-
Sep 1# #5"18"16 servidor namedD?#655E" running
Sep 1# #5"18"16 servidor namedD?#655E" Cone 1@164@175@inaddr@arpa/'+" sending noti!ies (serial
5##7#71##1)
Sep 1# #5"18"16 servidor namedD?#655E" Cone midominio@com@mx/'+" sending noti!ies (serial
5##7#71##1)
535
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
74. Cmo con&igurar >#uid- <ar;metros !;sicos
para >ervidor %ntermediario M<ro2yN
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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.
74.+. %ntroduccin.
74.+.+. Bu es >ervidor %ntermediario M<ro2yN?
E trmno en nges H<ro2yJ tene un sgnfcado muy genera y a msmo tempo ambguo,
aunque nvarabemente se consdera un snnmo de concepto de H%ntermediarioJ. Se suee
traducr, en e sentdo estrcto, como delegado o apoderado (e que tene e que poder sobre
otro).
Un >ervidor %ntermediario (Proxy) 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:
Cente se conecta haca un >ervidor %ntermediario (Proxy).
Cente socta una conexn, archvo u otro recurso dsponbe en un servdor dstnto.
>ervidor %ntermediario (Proxy) proporcona e recurso ya sea conectndose haca e servdor
especfcado o srvendo ste desde un cach.
En agunos casos e >ervidor %ntermediario (Proxy) puede aterar a soctud de cente o ben a
respuesta de servdor para dversos propstos.
Los >ervidores %ntermediarios (Proxes) 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< Wrapper. 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 %ntermediarios (Proxes) 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.
536
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
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).
Los >ervidores %ntermediarios para contendo de Red (Web Proxes) tambn pueden actuar
como ftros de contendo servdo, apcando potcas de censura de acuerdo a crteros arbtraros.
74.+.*. Acerca de >#uid.
>#uid es un >ervidor %ntermediario (Proxy) 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 (Proxy) y cac$ de
contenido de 'ed para os protocoos E@@<, F@<, ?0<E"' y WA%>, Proxy de >>, cach
transparente, WWC<, 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)>.
)0@A "><"C%A- >#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 WA%> se
requerr mpementar obgatoramente un enmascaramento de IP o
)A@ ()etwork Address @ransaton) o ben hacer uso de un servdor
>0CI> como Dante (http://www.net.no/dante/).
URL: http://www.squd-cache.org/
74.+.*.+. 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. ksta poltica es la utili8ada por >#uid de modo
prede&inido.
537
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
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()ual (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.
74.*. "#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
httpd-2.0.x (Apache), como auxar de cach con aceeracn.
@odos os parches de segurdad dsponbes para a versn de sstema operatvo que est
utzando. No es convenente utzar un sstema con posbes vunerabdades como Servdor
Intermedaro.
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.
74.*.+. %nstalacin a travs de yum.
S cuenta con un sstema con CentOS o Whte Box Enterprse Lnux 3 o versones posterores,
utce o sguente y se nstaar todo o necesaro |unto con sus dependencas:
yum y install sJuid httpd
74.*.*. %nstalacin a travs de up*date.
S cuenta con un sstema con Red Hat Enterprse Lnux 3 o versones posterores, utce o
sguente y se nstaar todo o necesaro |unto con sus dependencas:
up5date i sJuid httpd
538
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
74.*.3. 0tros componentes necesarios.
E mandato ipta!les se utzar para generar as regas necesaras para e gun de
Enmascaramento de IP. Se nstaa de modo predefndo en todas as dstrbucones actuaes que
utcen n1cleo (kerne) versones 2.4 y 2.6.
Es mportante tener actuazado e nceo de sstema operatvo por dversas cuestones de
segurdad. No es recomendabe utzar versones de kerne anterores a a *.6.+9. Actuace e
nceo a a versn ms recente dsponbe para su dstrbucn.
S cuenta con un sstema con CentOS o Whte Box Enterprse Lnux 3 o versones posterores,
utce o sguente para actuazar e nceo de sstema operatvo e ipta!les, s acaso fuera
necesaro:
yum y update kernel iptables
S cuenta con un sstema con Red Hat Enterprse Lnux 3 o versones posterores, utce o
sguente para actuazar e nceo de sstema operatvo, e ipta!les s acaso fuera necesaro:
up5date u kernel iptables
74.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
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
74.4. Antes de continuar.
Tenga en cuenta que este manua ha sdo comprobado varas veces y ha funconado en todos os
casos y s ago no funcona soo sgnfca que usted no o ey a detae y no sgu correctamente
as ndcacones.
Evte de|ar espacios vacos en ugares ndebdos. E sguente es un e|empo de como no se debe
habtar un parmetro.
Ma
A .pciQn #n6orre624/en2e habilitada
http-port ?154
E sguente es un e|empo de como si se debe habtar un parmetro.
Ben
A .pciQn 6orre624/en2e habilitada
539
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
http-port ?154
74.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:
http_port
cache_dr
A menos una ista de Control de Acceso
A menos una 'egla de Control de Acceso
httpd_acce_host
httpd_acce_port
httpd_acce_wth_proxy
74.5.+. <ar;metro $ttpQport- Bue puerto utili8ar para >#uid?
De acuerdo a as asgnacones hechas por %A)A y contnuadas por a %CA)) desde e 21 de marzo
de 2001, os <uertos 'egstrados (rango desde 1024 hasta 49151) recomendados para
>ervidores %ntermediarios (Proxes) pueden ser e 3128 y 8080 a travs de @C<.
De modo predefndo >#uid utzar e puerto 3128 para atender petcones, sn embargo se
puede especfcar que o haga en cuaquer otro puerto dsponbe o ben que o haga en varos
puertos dsponbes a a vez.
En e caso de un >ervidor %ntermediario (Proxy) Transparente, reguarmente se utzar e
puerto 80 o e 8000 y se vadr de re-drecconamento de petcones de modo ta que no habr
necesdad aguna de modfcar a confguracn de os clientes E@@< para utzar e >ervidor
%ntermediario (Proxy). Bastar con utzar como puerta de enace a servdor. Es mportante
recordar que os >ervidores E@@<, como Apache, tambn utzan dcho puerto, por o que ser
necesaro vover a confgurar e servdor E@@< para utzar otro puerto dsponbe, o ben
desnstaar o desactvar e servdor HTTP.
Hoy en da puede no ser de todo prctco e utzar un >ervidor %ntermediario M<ro2yN
@ransparente, a menos que se trate de un servco de Ca& %nternet u ofcna pequea, sendo
que uno de os prncpaes probemas con os que dan os admnstradores es e ma uso y/o
abuso de acceso a Internet por parte de persona. Es por esto que puede resutar ms
convenente confgurar un >ervidor %ntermediario (Proxy) con restrccones por cave de acceso,
o cua no puede hacerse con un >ervidor %ntermediario M<ro2yN @ransparente, debdo a que
se requere un dogo de nombre de usuaro y cave de acceso.
Reguarmente agunos programas utzados comnmente por os usuaros sueen traer de modo
predefndo e puerto 8080 Mservicio de cac$eo WWWN para utzarse a confgurar que
>ervidor %ntermediario (Proxy) utzar. S queremos aprovechar esto en nuestro favor y
ahorrarnos e tener que dar expcacones nnecesaras a usuaro, podemos especfcar que >#uid
escuche petcones en dcho puerto tambn. Sendo as ocace a seccn de defncn de
$ttpQport, y especfque:
A
A :ou may speci!y multiple socket addresses on multiple lines@
A
A $e!ault" http-port ?154
http-port ?154
http-port 4#4#
540
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S desea ncrementar a segurdad, puede vncuarse e servco a una IP que soo se pueda acceder
desde a red oca. Consderando que e servdor utzado posee una IP 192.168.1.254, puede
hacerse o sguente:
A
A :ou may speci!y multiple socket addresses on multiple lines@
A
A $e!ault" http-port ?154
http-port 175@164@1@58>"?154
http-port 175@164@1@58>"4#4#
En e caso de Squd 2.6 y versones posterores (Cent0> 5, 'ed Eat "nterprise inu2 5 y W$ite
Bo2 "nterprise inu2 5), e parmetro http_port se utza tambn para especfcar s se utza
un proxy transparente, especfcando e parmetro transparent, de a sguente forma:
A
A :ou may speci!y multiple socket addresses on multiple lines@
A
A $e!ault" http-port ?154
http-port 175@164@1@58>"4#4# 2r4ns.4ren2
74.5.*. <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 Eot y aqueos negatvamente amacenados en e cach
podrn utzar a memora no utzada 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 predefndo se estabecen 8 MB. Puede especfcarse una cantdad mayor s as se
consdera necesaro, dependendo esto de os hbtos de os usuaros o necesdades estabecdas
por e admnstrador.
S se posee un servdor con a menos 128 MB de RAM, estabezca 16 MB como vaor para este
parmetro:
cache-mem 16 ,9
74.5.3. <ar;metro cac$eQdir- Cuanto desea almacenar de %nternet en el
disco duro?
Este parmetro se utza para estabecer que tamao se desea que tenga e cach en e dsco duro
para >#uid. Para entender esto un poco me|or, responda a esta pregunta: Cuanto desea
almacenar de %nternet en el disco duro? De modo predefndo >#uid utzar un cach de 100
MB, de modo ta que encontrar a sguente nea:
cache-dir u!s /var/spool/sJuid -$$ 16 586
541
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
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 utzar menos e
ancho de banda. La sguente nea estabece un cach de 700 MB:
cache-dir u!s /var/spool/sJuid I$$ 16 586
Los nmeros +6 y *56 sgnfcan que e drectoro de cach contendr 16 drectoros subordnados
con 256 nvees cada uno. )o modi&i#ue esto n1merosL no $ay necesidad de $acerlo.
Es muy mportante consderar que s se especfca un determnado tamao de cach y ste excede
a espaco rea dsponbe en e dsco duro, >#uid se boquear nevtabemente. Sea cauteoso con
e tamao de cach especfcado.
74.5.4. <ar;metro &tpQuser.
A acceder a un servdor FTP de manera annma, de modo predefndo >#uid envar como cave
de acceso >#uidg. S se desea que e acceso annmo a os servdores FTP sea ms nformatvo, o
ben s se desea acceder a servdores FTP que vadan a autentcdad de a dreccn de correo
especfcada como cave de acceso, puede especfcarse a dreccn de correo eectrnco que uno
consdere pertnente.
!tp-user proxySsudominio@net
74.5.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.
74.5.5.+. istas de control de acceso.
Reguarmente una sta de contro de acceso se estabece con a sguente sntaxs:
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.1.n con mscara de sub-red 255.255.255.0, podemos
utzar o sguente:
acl miredlocal src 175@164@1@#/588@588@588@#
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/permitidos*
E archvo =etc=s#uid=permitidos contendra ago como sguente:
175@164@1@1
175@164@1@5
542
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
175@164@1@?
175@164@1@18
175@164@1@16
175@164@1@5#
175@164@1@>#
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=permitidos.
74.5.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%R/ :.=R .2+ R=0%(S) 1%R% /. 300.2 3((%SS <R., :.=R (0'%+/S
A
La sntaxs bsca es a sguente:
http-access Ddeny o allowE Dlista de control de accesoE
En e sguente e|empo consderamos una rega que estabece acceso permtdo a >#uid a a ista
de Control de Acceso denomnada permitidos:
http-access allow permitidos
Tambn pueden defnrse regas vandose de a expresn e, 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*:
http-access allow lista1 dlista5
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.
74.5.6. 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.
74.5.6.+. Caso +.
Consderando como e|empo que se dspone de una red 192.168.1.0/255.255.255.0, s se desea
defnr toda a red oca, utzaremos a sguente nea en a seccn de istas de Control de
Acceso:
acl todalared src 175@164@1@#/588@588@588@#
543
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
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 156@#@#@1/588@588@588@588
46) 2o54)4re5 sr6 -%,.-'8.-.$+,55.,55.,55.$
A contnuacn procedemos a apcar a rega de contro de acceso:
http-access allow todalared
Habendo hecho o anteror, a zona de regas de contro de acceso debera quedar ms o menos
de este modo:
'eglas de control de acceso- Acceso a una ista de Control de Acceso.
A
A '+S%R/ :.=R .2+ R=0%(S) 1%R% /. 300.2 3((%SS <R., :.=R (0'%+/S
A
http-access allow localhost
322._466ess 4))o* 2o54)4re5
http-access deny all
La rega $ttpQaccess alloP todalared permte e acceso a >#uid a a ista de Control de
Acceso denomnada todalared, a cua est conformada por 192.168.1.0/255.255.255.0. Esto
sgnfca que cuaquer mquna desde 192.168.1.1 hasta 192.168.1.254 podr acceder a >#uid.
74.5.6.*. Caso *.
S soo 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=redlocal, dentro
de cua se ncurn soo aqueas dreccones IP que desea confrmen a Lsta de Contro de
acceso. E|empo:
175@164@1@1
175@164@1@5
175@164@1@?
175@164@1@18
175@164@1@16
175@164@1@5#
175@164@1@>#
Denomnaremos a esta sta de contro de acceso como redlocal:
acl redlocal src */etc/sJuid/listas/redlocal*
Habendo hecho o anteror, a seccn de stas de contro de acceso debe quedar ms o menos de
sguente modo:
544
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
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 156@#@#@1/588@588@588@588
46) re5)o64) sr6 "+e26+sC#5+)#s24s+re5)o64)"
A contnuacn procedemos a apcar a rega de contro de acceso:
http-access allow redlocal
Habendo hecho o anteror, a zona de regas de contro de acceso debera quedar ms o menos
de este modo:
'eglas de control de acceso- Acceso a una ista de Control de Acceso.
A
A '+S%R/ :.=R .2+ R=0%(S) 1%R% /. 300.2 3((%SS <R., :.=R (0'%+/S
A
http-access allow localhost
322._466ess 4))o* re5)o64)
http-access deny all
La rega $ttpQaccess alloP redlocal permte e acceso a >#uid a a ista de Control de
Acceso denomnada redlocal, a cua est conformada por as dreccones IP especfcadas en e
archvo =etc=s#uid=listas=redlocal. Esto sgnfca que cuaquer mquna no ncuda en
=etc=s#uid=listas=redlocal no tendr acceso a >#uid.
74.5.7. <ar;metro c$ac$eQmgr.
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 MosepereCSmidominio@net
74.5.9. <ar;metro cac$eQpeer- cac$es padres y $ermanos.
E parmetro cache_peer se utza para especfcar otros >ervidores %ntermediarios (Proxes)
con cach en una |erarqua como padres o como $ermanos. Es decr, defnr s hay un >ervidor
%ntermediario (Proxy) 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.1.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 (Proxy) padre, utce a sguente nea:
545
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
cache-peer 175@164@1@1 parent 4#4# ?1?# proxyonly
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.
".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 4#4# ?1?# proxyonly
cache-peer 1#@5@#@1 sibling 4#4# ?1?# proxyonly
cache-peer 1#@?@#@1 sibling 4#4# ?1?# proxyonly
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 4#4# ?1?# proxyonly
cache-peer 1#@1@#@1 sibling 4#4# ?1?# proxyonly
cache-peer 1#@5@#@1 sibling 4#4# ?1?# proxyonly
cache-peer 1#@?@#@1 sibling 4#4# ?1?# proxyonly
74.6. Cac$ con aceleracin.
En e caso de Squd 2.6 y versones posterores (Cent0> 5, 'ed Eat "nterprise inu2 5 y W$ite
Bo2 "nterprise inu2 5), esta seccn queda obsoeta, pues desaparecen httpd_acce_host,
httpd_acce_port, httpd_acce_wth_proxy y httpd_acce_uses_host_header.
En versones de >#uid 2.5 y anterores, cuando un usuaro hace petcn haca un ob|eto en
Internet, este es amacenado en e cach de >#uid. S otro usuaro hace petcn haca e msmo
ob|eto, y este no ha sufrdo modfcacn aguna desde que o acced e usuaro anteror, >#uid
mostrar e que ya se encuentra en e cach en ugar de vover a descargaro desde Internet.
Esta funcn permte navegar rpdamente cuando os ob|etos ya estn en e cach de >#uid y
adems optmza enormemente a utzacn de ancho de banda.
La confguracn de >#uid como Servdor Intermedaro (Proxy) Transparente soo requere
compementarse utzando una rega de ipta!les que se encargar de re-drecconar petcones
hacndoas pasar por e puerto 8080. La rega de ipta!les necesara se descrbe ms adeante en
este documento.
74.6.+. <ro2y Acelerado- 0pciones para >ervidor %ntermediario M<ro2yN
en modo convencional.
En a seccn E@@<D(ACC""'A@0' 0<@%0)> deben habtarse os sguentes parmetros:
546
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
httpd-accel-host virtual
httpd-accel-port #
httpd-accel-with-proxy on
74.6.*. <ro2y Acelerado- 0pciones para >ervidor %ntermediario M<ro2yN
@ransparente.
S se trata de un >ervidor %ntermediario (Proxy) transparente en versones de >#uid 2.5 y
anterores, deben utzarse as sguentes opcones, consderando que se har uso de cach de un
servdor E@@< (Apache) como auxar:
A $ebe especi!icarse la '; de cualJuier ser"#5or ETT8 en la
A red local o bien el valor "#r24)
httpd-accel-host 175@164@1@58>
httpd-accel-port 4#
httpd-accel-with-proxy on
httpd-accel-uses-host-header on
En e caso de Squd 2.6 y versones posterores (Cent0> 5, 'ed Eat "nterprise inu2 5 y W$ite
Bo2 "nterprise inu2 5), todo o anteror es reeempazado por:
http-port 175@164@1@58>"4#4# transparent
74.6.3. <ro2y Acelerado- 0pciones para >ervidor %ntermediario M<ro2yN
@ransparente para redes con %nternet "2lorer 5.5 y versiones anteriores.
S va a utzar Internet Exporer 5.5 y versones anterores con un >ervidor %ntermediario (Proxy)
transparente, es mportante recuerde que dchas versones tene un psmo soporte con os
>ervidores %ntermediarios (Proxes) transparentes mposbtando por competo a capacdad de
refrescar contendo. S se utza e parmetro ieQre&res$ con vaor on puede hacer que se
verfque en os servdores de orgen para nuevo contendo para todas as petcones %:>(
'"F'">E provenentes de Internet Exporer 5.5 y versones anterores.
A $ebe especi!icarse la '; de cualJuier servidor ETT8 en la
A red local
httpd-accel-host 175@164@1@58>
httpd-accel-port 4#
httpd-accel-with-proxy on
httpd-accel-uses-host-header on
#e_re<res3 on
En e caso de Squd 2.6 y versones posterores (Cent0> 5, 'ed Eat "nterprise inu2 5 y W$ite
Bo2 "nterprise inu2 5), soo es necesaro estabecer $ttpQport +S*.+69.+.*54-9O9O
transparent (vsto a nco de documento) y descomentar ieQre&res$ con e vaor on:
#e_re<res3 on
Lo ms convenente es actuazar haca Internet Exporer 6.x o defntvamente optar por otras
aternatvas. :o8illa es en un con|unto de apcacones para Internet, o ben Fire&o2, que es
probabemente e me|or navegador que exste en e mercado. Fire&o2 es un navegador muy gero
y que cumple con los est;ndares, y est dsponbe para Wndows, Lnux, Mac OS X y otros
sstemas operatvos.
547
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
74.7. "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, es necesaro cambar un enace smbco ocazado en =etc=s#uid=errors para que
apunte haca =usr=s$are=s#uid=errors=>panis$ en ugar de hacero haca
=usr=s$are=s#uid=errors="nglis$.
Emne prmero e enace smbco actua:
rm ! /etc/sJuid/errors
Cooque un nuevo enace smbco apuntando haca e drectoro con os archvos
correspondentes a os errores traducdos a espao.
ln s +sr+s34re/sJuid/errors/Spanish /etc/sJuid/errors
)ota- "ste enlace sim!lico de!e veri&icarseL y regenerarse de ser necesarioL cada ve8
#ue se actuali8ado >#uid ya sea a travs de yumL up*date o manualmente con el
mandato rpm.
74.9. %niciandoL 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
S necesta rencar para probar cambos hechos en a confguracn, utce o sguente:
service sJuid restart
S desea que >#uid nce de manera automtca a prxma vez que nce e sstema, utce o
sguente:
chkcon!ig sJuid on
Lo anteror habtar a >#uid en todos os nvees de corrda.
74.S. Depuracin de errores
Cuaquer error a nco de >#uid soo 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.
548
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
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)o45
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:
less /var/log/sJuid/sJuid@out
74.+O. 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/
>$orePall: http://www.shorewa.net/
74.+O.+. 'e(direccionamiento de peticiones a travs de ipta!les y
Firestarter.
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 (8080), 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 (Proxy) Transparente para os protocoos E@@<>, F@<, ?0<E"' n
WA%>, por o que dchos protocoos tendrn que ser ftrados a travs de )A@.
E re-drecconamento o hacemos 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:
/sbin/iptables t nat 3 ;R%R.=/'+I i eth# p tcp dport 4# M R%$'R%(/ toport
4#4#
Lo anteror, #ue re#uiere un guin de corta&uegos &uncional en un sistema con dos
inter&aces de red, hace que cuaquer petcn haca e puerto 80 (servco HTTP) hecha desde a
red oca haca e exteror, se re-drecconar haca e puerto 8080 de servdor.
Utzando Firestarter, a rega anterormente descrta se aade en e archvo
=etc=&irestarter=user(post.
74.+O.*. '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 8080 de cortafuegos, en donde est
confgurado >#uid confgurado como >ervidores %ntermediario (Proxy) transparente.
549
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A3(/'.+ S.=R(% $%S/ ;R./. $%S/
R%$'R%(/ loc 4#4# tcp 4#
550
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
75. Cmo con&igurar >#uid- Acceso por
autenticacin
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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.
75.+. %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 manua consdera que usted ya ha edo prevamente, a detae y en su totadad e manua
"Como confgurar Squd: Servdor Proxy" y que ha confgurado extosamente Squd como servdor
proxy.
75.*. >o&tPare re#uerido.
Para poder evar a cabo os procedmentos descrtos en este manua y documentos reaconados,
usted 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, o cua consttuye una soucn
ms robusta.
75.*.+. Autenticacin a travs del mdulo DA<.
Consderando que se ha confgurado extosamente OpenLDAP como servdor de autentcacn, soo
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 *$irectorioo$+autiliCar* servidorldapautiliCar
551
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
E|empo:
sJuid-ldap-auth b *ou);eopleBdc)sudominioBdc)com* 156@#@#@1
75.*.+.+. <ar;metros en =etc=s#uid=s#uid.con&
Se debe edtar e archvo /etc/squd.conf y se especfcar e programa de autentcacn se utzar.
Locace a seccn que corresponde a a etqueta autJparam basic program. Por defecto no est
especfcado programa aguno. Consderando que squidJldapJaut se ocaza
en /usr+lib+squid+ncsaJaut, procederemos a aadr e sguente parmetro:
auth-param basic program /usr/lib/sJuid/sJuid-ldap-auth b *ou);eopleBdc)sudominioBdc)com* 156@#@#@1
Lo anteror conecta a drectoro dc=su-red-oca,dc=com en e servdor LDAP en 127.0.0.1.
75.*.*. Autenticacin a travs del mdulo )C>A
Squd puede utzar e mduo ncsaJaut, 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.
75.*.*.+. 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 travs de servdor web para admnstrar as caves de
acceso, como medda de segurdad, este archvo debe hacerse ebe y escrbbe soo para e
usuaro squid:
chmod 6## /etc/sJuid/claves
chown sJuid"sJuid /etc/sJuid/claves
A contnuacn deberemos dar de ata as cuentas que sean necesaras, utzando e mandato
tpass)d -mismo que viene incluido en el paquete ttpd2G.4.52. E|empo:
htpasswd /etc/sJuid/claves MosepereC
Lo anteror soctar tecear una nueva cave de acceso para e usuaro joseperez y confrmar
teceando sta 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,>%FA:")@" 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.
552
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
75.*.*.*. <ar;metros en =etc=s#uid=s#uid.con&
Lo sguente ser especfcar que programa de autentcacn se utzar. Locace a seccn que
corresponde a a etqueta autJparam basic program. Por defecto no est especfcado programa
aguno. Consderando que ncsaJaut se ocaza en /usr+lib+squid+ncsaJaut, procederemos a
aadr e sguente parmetro:
auth-param basic program /usr/lib/sJuid/ncsa-auth /etc/sJuid/claves
/usr+lib+squid+ncsaJaut corresponde a a ocazacn de e programa para autentcar
y /etc+squid+claves a archvo que contene as cuentas y sus caves de acceso.
75.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 password proxy-auth R%h='R%$
Habendo hecho o anteror, deberemos tener en a seccn de &istas de %ontrol de Acceso ago
como 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 156@#@#@1/588@588@588@588
acl redlocal src 175@164@1@#/588@588@588@#
46) .4ss*or5 .ro;y_423 RE]ULRED
Procedemos 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 allow redlocal
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 allow redlocal password
Habendo hecho o anteror, a zona de regas de contro de acceso debera quedar ms o menos
de este modo:
Regas de contro de acceso: Acceso por cave de acceso.
A
A '+S%R/ :.=R .2+ R=0%(S) 1%R% /. allow 3((%SS <R., :.=R (0'%+/S
553
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A
http-access allow localhost
322._466ess 4))o* re5)o64) .4ss*or5
http-access deny all
75.3.+. Finali8ando procedimiento.
Fnamente, soo bastar rencar Squd para que tomen efecto os cambos y podamos hacer
pruebas.
service sJuid restart
554
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
76. Cmo con&igurar >#uid- 'estriccin de
acceso a >itios de 'ed
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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.
76.+. %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 Red que contengan patrones en comn.
Este manua consdera que usted ya ha edo prevamente, a detae y en su totadad e manua
"Como confgurar Squd: Servdor Proxy" y que ha confgurado extosamente Squd como servdor
proxy.
76.*. "#uipamiento lgico necesario
Para poder evar a cabo os procedmentos descrtos en este manua y documentos reaconados,
usted necestar tener nstaado a menos squd-2.5STABLE1.
76.3. De&iniendo patrones comunes
Lo prmero ser generar una sta a cua contendr dreccones de Red y paabras usuamente
utzadas en nombres de certos domnos. E|empos:
www@sitioporno@com
www@otrositioporno@com
sitioindeseable@com
otrositioindeseable@com
napster
sex
porn
mp?
xxx
adult
wareC
celebri
Esta sta, a cua deber ser competada con todas as paabras (muchas de est son paabras
obscenas en dstntos domas) y dreccones de Red que e admnstrador consdere pertnentes, a
guardaremos como +etc+squid+sitiosdenegados.
555
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
76.4. <ar;metros en =etc=s#uid=s#uid.con&
Debemos defnr una &ista de %ontrol de Acceso que a su vez defna a archvo
+etc+squid+sitiosdenegados. Esta sta a denomnaremos como IsitiosdenegadosI. De modo ta, a
nea correspondente quedara de sguente modo:
acl sitiosdenegados url-regex */etc/sJuid/sitiosdenegados*
Habendo hecho o anteror, deberemos tener en a seccn de &istas de %ontrol de Acceso ago
como o sguente:
A
A Recommended minimum con!iguration"
acl all src #@#@#@#/#@#@#@#
acl manager proto cache-obMect
acl localhost src 156@#@#@1/588@588@588@588
acl redlocal src 175@164@1@#/588@588@588@#
acl password proxy-auth R%h='R%$
46) s#2#os5ene745os r)_re7e; "+e26+sC#5+s#2#os5ene745os"
A contnuacn especfcaremos modfcaremos una ?egla de %ontrol de Acceso exstente
agregando con un smboo de W que se denegar e acceso a a &ista de %ontrol de Acceso
denomnada sitiosdenegados:
http-access allow redlocal dsitiosdenegados
La rega anteror permte e acceso a a &ista de %ontrol de Acceso denomnada redlocal, pero e
nega e acceso a todo o que concda con o especfcado en a &ista de %ontrol de Acceso
denomnada sitiosdenegados.
E|empo apcado a una ?egla de %ontrol de Acceso combnando e mtodo de autentcacn
expcado en e documento Cmo confgurar Squd: Acceso por Autentcacn:
Regas de contro de acceso: denegacn de stos.
A
A '+S%R/ :.=R .2+ R=0%(S) 1%R% /. allow 3((%SS <R., :.=R (0'%+/S
A
http-access allow localhost
322._466ess 4))o* re5)o64) .4ss*or5 ds#2#os5ene745os
http-access deny all
76.4.+. <ermitiendo acceso a sitios inocentes incidentalmente
!lo#ueados
S por e|empo e ncur una paabra en partcuar afecta e acceso a un sto de Red, tambn
puede generarse una sta de domnos o paabras que contengan un patrn pero que
consderaremos como apropados.
556
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Como e|empo: vamos a suponer que dentro de a &ista de %ontrol de Acceso de stos denegados
est a paabra se5. esta denegara e acceso a cuaquer nombre de domno que ncuya dcha
cadena de caracteres, como extremesex.com. Sn embargo tambn estara boqueando a stos
como sexuadad|ove.c, e cua no tene que ver en o absouto con pornografa, sno orentacn
sexua para a |uventud. Podemos aadr este nombre de domno en un archvos que
denomnaremos +etc+squid+sitios2inocentes.
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 inocentes url-regex */etc/sJuid/sitiosinocentes*
Para hacer uso de archvo, soo bastar utzar a expresn e en a msma nea utzada para a
?egla de %ontrol de Acceso estabecda para denegar e msmo.
http-access allow all inocentes
La rega anteror especfca que se denegar e acceso a todo o que comprenda a &ista de %ontrol
de Acceso denomnada denegados e2cepto o que comprenda a &ista de %ontrol de Acceso
denomnada inocentes. es decr, se podr acceder sn dfcutad a www.sexuadad|oven.c
mantenendo a restrccn para a cadena de caracteres se5.
76.4.*. Finali8ando procedimiento
Fnamente, soo bastar rencar Squd para que tomen efecto os cambos y podamos hacer
pruebas.
service sJuid restart
557
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
77. Cmo con&igurar >#uid- 'estriccin de
acceso a contenido por e2tensin
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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.
77.+. %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 manua consdera que usted ya ha edo prevamente, a detae y en su totadad e manua
"Como confgurar Squd: Servdor Proxy" y que ha confgurado extosamente Squd como servdor
proxy.
77.*. >o&tPare re#uerido.
Para poder evar a cabo os procedmentos descrtos en este manua y documentos reaconados,
usted necestar tener nstaado a menos squd-2.5STABLE1.
77.3. De&iniendo elementos de la ista de Control de Acceso.
Lo prmero ser generar una sta a cua contendr dreccones Web y paabras usuamente
utzadas en nombres de certos domnos. E|empos:
P@aviF
P@mp>F
P@mp?F
P@mp>F
P@mpgF
P@mpegF
P@movF
P@raF
P@ramF
P@rmF
P@rpmF
P@vobF
P@wmaF
P@wmvF
P@wavF
P@docF
P@xlsF
P@mbdF
P@pptF
558
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
P@ppsF
P@aceF
P@batF
P@exeF
P@lnkF
P@pi!F
P@scrF
P@sysF
P@CipF
P@rarF
Esta sta, a cua deber ser competada con todas as extensones de archvo que e admnstrador
consdere pertnentes, a guardaremos como +etc+squid+listae5tensiones.
77.4. <ar;metros en =etc=s#uid=s#uid.con&
Debemos defnr una &ista de %ontrol de Acceso que a su vez defna a archvo
+etc+squid+listae5tensiones. Esta sta a denomnaremos como Ilistae5tensionesI. De modo ta, a
nea correspondente quedara de sguente modo:
acl listaextensiones urlpath-regex */etc/sJuid/listaextensiones*
Habendo hecho o anteror, deberemos tener en a seccn de &istas de %ontrol de Acceso ago
como o sguente:
A
A Recommended minimum con!iguration"
acl all src #@#@#@#/#@#@#@#
acl manager proto cache-obMect
acl localhost src 156@#@#@1/588@588@588@588
acl redlocal src 175@164@1@#/588@588@588@#
acl password proxy-auth R%h='R%$
acl sitiosdenegados url-regex */etc/sJuid/sitiosdenegados*
46) )#s24e;2ens#ones r).423_re7e; "+e26+sC#5+)#s24e;2ens#ones"
A contnuacn especfcaremos modfcaremos una ?egla de %ontrol de Acceso exstente
agregando con un smboo de W que se denegar e acceso a a &ista de %ontrol de Acceso
denomnada listae5tensiones:
http-access allow redlocal dlistaextensiones
La rega anteror permte e acceso a a &ista de %ontrol de Acceso denomnada redlocal, pero e
nega e acceso a todo o que concda con o especfcado en a &ista de %ontrol de Acceso
denomnada listae5tensiones.
E|empo apcado a una ?egla 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.
559
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A
A '+S%R/ :.=R .2+ R=0%(S) 1%R% /. allow 3((%SS <R., :.=R (0'%+/S
A
http-access allow localhost
322._466ess 4))o* re5)o64) .4ss*or5 ds#2#os5ene745os d)#s24e;2ens#ones
http-access deny all
77.4.+. Finali8ando procedimiento.
Fnamente, soo bastar rencar Squd para que tomen efecto os cambos y podamos hacer
pruebas.
service sJuid restart
560
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
79. Cmo con&igurar >#uid- 'estriccin de
acceso por $orarios
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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.
79.+. %ntroduccin.
Denegar e acceso a certos usuaros 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 manua consdera que usted ya ha edo prevamente, a detae y en su totadad e manua
Como confgurar Squd: Servdor Proxy y que ha confgurado extosamente Squd como servdor
proxy.
79.*. "#uipamiento lgico necesario
Para poder evar a cabo os procedmentos descrtos en este manua y documentos reaconados,
usted necestar tener nstaado a menos squd-2.5STABLE1.
79.3. <rocedimientos
La sntaxs para crear &istas de control de acceso que defnan horaros es a sguente:
acl Dnombre del horarioE time Ddbas de la semanaE hh"mmhh"mm
Los das de a semana se defnen con etras, as cuaes corresponden a a prmera etra de nombre
en ngs, de modo que se utzarn de sguente modo:
> - Domngo
: - Lunes
@ - Mastes
W - Mercoes
E - |ueves
F - Vernes
A - Sbado
E|empo:
acl semana time ,/21< #7"##51"##
561
|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 ?eglas 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 H para as entdades defndas en a &ista de %ontrol de Acceso denomnada X. Lo
anteror expresado en una ?egla de %ontrol de Acceso, quedara de sguente modo:
http-access Dallow ^ denyE Dnombre del horarioE Dlista de entidadesE
E|empo: Se quere estabecer que os membros de a &ista de %ontrol de Acceso denomnada
clasematutina 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 clasematutina src 175@164@1@#/588@588@588@#
acl matutino time ,/21< #7"##18"##
La defncn de a ?egla de %ontrol de Acceso sera:
http-access allow matutino clasematutina
Lo anteror, en resumen, sgnfca que quenes conformen clasematutina podrn acceder a Internet
de Lunes a Vernes de 09:00-15:00 horas.
79.3.+. :;s e.emplos
79.3.+.+. 'estringiendo el tipo de contenido
Como se expca en e documento I%#mo configurar "quid* ?estricci#n de acceso a contenido por
e5tensi#nI, es posbe denegar acceso a certo tpo de contendo de acuerdo a su extensn. Igua
que con otras funcones, se requere una &ista de %ontrol de Acceso y una ?egla de %ontrol de
Acceso
S se necesta una sta denomnada musica que defna a todos os archvos con extensn .mp3,
utzaramos o sguente:
acl clasematutina src 175@164@1@#/588@588@588@#
acl musica urlpath-regex P@mp?F
S queremos denegar e acceso a todo contendo con extensn .mp3, a rega quedara de
sguente modo:
http-access allow clasematutina dmusica
79.3.+.*. 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.
562
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
acl clasematutina src 175@164@1@#/588@588@588@#
acl matutino time ,/21< #7"##18"##
acl musica urlpath-regex P@mp?F
http-access allow matutino clasematutina dmusica
La ?egla de %ontrol de Acceso anteror especfca acceso permitido a en e horaro defndo como
matutino a quenes ntegran a &ista de %ontrol de Acceso denomnada clasematutina a todo
contendo |por omsn| e2cepto a os contendos que concdan con os defndos en a &ista de
%ontrol de Acceso denomnada musica.
79.3.*. Finali8ando procedimiento
Fnamente, soo bastar rencar Squd para que tomen efecto os cambos y podamos hacer
pruebas.
service sJuid restart
563
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
7S. 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.
7S.+. %ntroduccin.
7S.+.+. Acerca de >#uid.
>#uid es un >ervidor %ntermediario (Ero5y) 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).
7S.*. "#uipamiento lgico necesario.
7S.*.+. %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
7S.3. <rocedimientos
Este documento consdera que se ha edo a detae e documento %#mo configurar "quid*
Earmetros bsicos para servidor de intermediaci#n >Ero5yA. Se requere se hayan confgurado a
menos os sguentes parmetros:
$ttpQport, e|empo: http-port 4#4# transparent
cac$eQdir, e|empo: cache-dir u!s /var/spool/sJuid 1#5> 16 586
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:
564
|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"4#">1"7("43
##"#4"31"4>"14"3$
##"16"%?"7$"($"66
##"#>"68"33"5$"31
##"17"$5"69">1">8
##"1?"1#"4$">3"%%
##"17"51"1>"79"#$
7S.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 allow 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* ?estricci#n de acceso a "itios de ?ed y
%#mo configurar "quid* ?estricci#n de acceso a contenido por e5tensi#n, a rega de contro de
acceso podra quedar de a sguente manera:
565
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
http-access allow macsredlocal dporno dextensiones
S adems se creo aguna sta para mtar os horaros de acceso, como se descrbe en e
documento %#mo configurar "quid* ?estricci#n de acceso por orarios, a rega de contro de
acceso podra quedar de a sguente manera:
http-access allow matutino macsredlocal dporno dextensiones
Cuaquer otra forma de utzar a sta de contro de acceso con dreccones :AC depender de a
magnacn de admnstrador.
7S.4. %niciarL 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
566
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
9O. Cmo instalar y con&igurar la $erramienta
de reportes >arg.
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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.
9O.+. %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/.
9O.*. "#uipamiento lgico necesario.
Este documento fue dseado para ser puesto en prctca excusvamente en Cent0> 5, "lasti2
+.5, 'ed Eat "nterprise inu2 5 y W$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/
wget + http"//www@alcancelibre@org/al/server/30Server@repo
cd
Proceda a nstaar sarg utzando e sguente mandato.
yum y install sarg httpd
9O.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.
567
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Locace a cadena de texto language "nglis$.
A Russian-koi4
A Russian-=</4
A Russian-windows1581
A Serbian
A Slovak
A Spanish
A /urkish
A
)4n747e En7)#s3
A /3I" access-log !ile
A 2here 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-koi4
A Russian-=</4
A Russian-windows1581
A Serbian
A Slovak
A Spanish
A /urkish
A
)4n747e S.4n#s3
A /3I" access-log !ile
A 2here 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*++7GU.4.4.7+sarg+).
3lias /sarg /var/www/sarg
_$irectory /var/www/sargR
$irectory'ndex index@html
order denyBallow
deny !rom all
4))o* <ro/ -,I.$.$.-
568
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
_/$irectoryR
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.
3lias /sarg /var/www/sarg
_$irectory /var/www/sargR
$irectory'ndex index@html
order denyBallow
deny !rom all
4))o* <ro/ -,I.$.$.- -%,.-'8.-,3.$+,J
_/$irectoryR
Defna que e acceso haca e drectoro =sarg= (que en adeante podr ser acceddo como
ttp*++pro*(.red-local.net+sarg+ o ben ttp*++1+,.1-..1,/.1,/+sarg+) se permtr soo a
usuaros autorzados que autentcarn a travs de archvo =var=PPP=claves(sarg.
3lias /sarg /var/www/sarg
_$irectory /var/www/sargR
$irectory'ndex index@html
order denyBallow
deny !rom all
allow !rom 156@#@#@1 -%,.-'8.-,3.$+,J
A23N4/e "So)o s4r#os 42or#B45os."
A23Ty.e B4s#6
reC#re "4)#5-ser
A23UserF#)e +"4r+***+6)4"es-s4r7
_/$irectoryR
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/www/clavessarg
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/www/clavessarg
Utce e mandato c$oPn para defnr que e archvo =var=PPP=claves(sarg pertenece a usuaro
apache y grupo apache:
chown apache"apache /var/www/clavessarg
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:
htpasswd /var/www/clavessarg administrador
569
|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$Kcon&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*++pro*(.red-
local.net+sarg+S=-2"/ST+ o ben ttp*++1+,.1-..1,/.1,/+sarg+S=-2"/ST+.
Podr ver un reporte generado automtcamente todos os das en a dreccn ttp*++pro*(.red-
local.net+sarg+daily+ o ben ttp*++1+,.1-..1,/.1,/+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.
570
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
9+. Apndice- istas y reglas de control de
acceso para >#uid
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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+.O.+. 'eglas aplicadas
A 0ista Jue de!ine metodo de autenticaciQn"
acl password proxy-auth R%h='R%$
A 0istas de control de acceso por de!ecto"
acl all src #@#@#@#/#@#@#@#
acl localhost src 156@#@#@1/588@588@588@588
A 0istas 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 175@164@1@58>
A 0istas Jue de!inen palabras contenidas en un =R0
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 0ista de sitios inocentes Jue accidentealmente sean bloJueados
acl noporno url-regex */etc/sJuid/noporno*
A (ontenido"
A
A missingheart
A wirelessexcite
A msexchange
A msexcel
A !reetown
A geekgirls
A adulteducation
A 0istas Jue de!inen tipos de extensiones
A $e!ine una lista estricta de extensiones prohibidas
acl multimedia urlpath-regex */etc/sJuid/multimedia*
571
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A (ontenido"
A
A P@mp?F
A P@aviF
A P@movF
A P@mpgF
A P@batF
A P@pi!F
A P@sysF
A P@lnkF
A P@scrF
A P@exeF
A $e!ine una lista moderada de extensiones prohibidas
acl peligrosos urlpath-regex */etc/sJuid/peligrosos*
A (ontenido"
A
A P@batF
A P@pi!F
A P@sysF
A P@lnkF
A P@scrF
A P@exeF
A $e!ine una sola extensiQn
acl realmedia urlpath-regex P@rmF
A Reglas de control de acceso
A Regla por de!ecto"
http-access allow localhost
A %Memplos de reglas de control de acceso
http-access allow restringidos password dporno dmultimedia
http-access allow redlocal password dporno dpeligrosos
http-access allow privilegiados password dpeligrosos
http-access allow administrador
http-access allow noporno all
A Regla por de!ecto"
http-access deny all
572
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
9*. Cmo con&igurar un muro corta&uegos con
>$orePall y tres inter&aces de red
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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*.+.+. 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 enlaceL dispositivo de
encaminamiento y servidor.
URL: http://www.shorewa.net/
9*.+.*. Acerca de %pta!les y )et&ilter.
)et&ilter es un con|unto de gancos (EooKs, 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/
9*.+.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.
573
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
URL: http://nux-net.osd.org/ndex.php/Iproute2
9*.+.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:c, tras a cua se podrn coocar servdores.
Interfaz para acceso haca a A) (acrnmo de oca Area )etwork o Area de
Red Loca).
9*.*. Conceptos re#ueridos.
9*.*.+. Bu es una 8ona desmilitari8ada?
Una zona desmtarzada (D:c), 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.
574
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
9*.*.*. 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).
9*.*.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.
9*.*.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@.
9*.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 Eata "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/
wget + http"//www@alcancelibre@org/al/server/30Server@repo
cd
Este archvo, que se guarda como /etc=yum.repos.d=A(>erver.repo, debe tener e sguente
contendo:
D30ServerE
name)30 Server para %nterprise 0inux Freleasever
mirrorlist)http"//www@alcancelibre@org/al/elFreleasever/alserver
gpgcheck)1
gpgkey)http"//www@alcancelibre@org/al/30R;,H%:
575
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
La nstaacn a travs de mandato yum requere utzar o sguente:
yum y install shorewall
9*.4. <rocedimientos.
9*.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.
9*.4.+.+. <rocedimiento para crear poltica.
Crear e drectoro /usr=s$are=selinu2=pacKages=s$orePall:
mkdir /usr/share/selinux/packages/shorewall
Cambarse a drectoro /usr=s$are=selinu2=pacKages=s$orePall:
cd /usr/share/selinux/packages/shorewall
Descargar desde Alcance i!re e archvo
$ttp-==PPP.alcanceli!re.org=linu2=secrets=s$orePall.te:
wget http"//www@alcancelibre@org/linux/secrets/shorewall@te
Edtar e archvo s$orePall.te:
vim s3ore*4)).2e
Verfcar que e archvo s$orePall.te tenga e sguente contendo:
module shorewall 1@#Y
reJuire Z
type shorewall-tY
type usr-tY
class !ile Z execute execute-no-trans [Y
[
A))))))))))))) shorewall-t ))))))))))))))
allow shorewall-t usr-t"!ile Z execute execute-no-trans [Y
Crear e archvo de mduo s$orePall.mod a partr de archvo s$orePall.te:
checkmodule , m o shorewall@mod shorewall@te
Crear e archvo de potca s$orePall.pp a partr de archvo s$orePall.mod
576
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
semodule-package o shorewall@pp m shorewall@mod
Incur a potca a sstema:
semodule i /usr/share/selinux/packages/shorewall/shorewall@pp
9*.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 bes.
S/3R/=;-%+390%$):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 bes, Shorewa cacuar e :>> ms apropado para a conexn. S se es osado, puede
tambn especfcarse un nmero en paquetes SYN. La recomendacn es estabecer bes s se
cuenta con un enace tpo PPP.
(03,;,SS):es
9*.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;03: .;/'.+S
!w !irewall
net ipv>
loc ipv>
dmC ipv>
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
9*.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:c 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:c, y en todas se socta se
cacue automtcamente a dreccn de transmsn (Broadcast):
AG.+% '+/%R<3(% 9R.3$(3S/ .;/'.+S I3/%23:
net ppp# detect
loc eth# detect
dmC eth1 detect
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
577
|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:c, y en todas se
socta se cacue automtcamente a dreccn de transmsn (Broadcast):
AG.+% '+/%R<3(% 9R.3$(3S/ .;/'.+S I3/%23:
net eth# detect
loc eth1 detect
dmC eth5 detect
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ 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:c:
AG.+% '+/%R<3(% 9R.3$(3S/ .;/'.+S I3/%23:
net ppp# detect 536.
loc eth1 detect 536.
dmC eth5 detect
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
9*.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(% $%S/ ;.0'(: 0.I 0','/"9=RS/
loc net 3((%;/
dmC net 3((%;/
!w net 3((%;/
net all $R.; in!o
all all R%a%(/ in!o
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ 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:
578
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
AS.=R(% $%S/ ;.0'(: 0.I 0','/"9=RS/
net all $R.; in!o
all all R%a%(/ in!o
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ 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(% $%S/ ;.0'(: 0.I 0','/"9=RS/
!w net 3((%;/
net all $R.; in!o
all all R%a%(/ in!o
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ 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.
9*.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'+/%R<3(% S=9+%/ 3$$R%SS ;R./. ;.R/(S) ';S%(
ppp# eth#
ppp# eth1
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ 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'+/%R<3(% S=9+%/ 3$$R%SS ;R./. ;.R/(S) ';S%(
eth# 175@164@#@#/5>
eth# 175@164@1@#/5>
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ 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'+/%R<3(% S=9+%/ 3$$R%SS ;R./. ;.R/(S) ';S%(
ppp# eth1 175@164@?@58 tcp 58B11#
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
9*.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.
579
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
9*.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.
A3(/'.+ S.=R(% $%S/ ;R./. $%S/
A ;.R/
3((%;/ net !w tcp 4#B58B11#
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
9*.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:c sern redrgdas haca e puerto 8080 de cortafuegos, en donde hay
un >ervidor %ntermediario (Proxy) confgurado de modo transparente.
A3(/'.+ S.=R(% $%S/ ;R./. $%S/
A ;.R/
R%$'R%(/ loc 4#4# tcp 4#
R%$'R%(/ dmC 4#4# tcp 4#
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
9*.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:c. 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.
A3(/'.+ S.=R(% $%S/ ;R./. $%S/
A ;.R/
$+3/ net dmC"1#@1#@1#@54 tcp 4#B58B11#B8?
$+3/ net dmC"1#@1#@1#@54 udp 8?
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
9*.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:c:
A3(/'.+ S.=R(% $%S/ ;R./. $%S/
A ;.R/
580
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3((%;/ loc dmC tcp 55
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ 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:c:
A3(/'.+ S.=R(% $%S/ ;R./. $%S/
A ;.R/
3((%;/ loc"175@164@5@?> dmC tcp 55
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ 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:c:
A3(/'.+ S.=R(% $%S/ ;R./. $%S/
A ;.R/
3((%;/ loc"175@164@5@?> dmC"1#@1#@1#@8 tcp 55
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ 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:c:
A3(/'.+ S.=R(% $%S/ ;R./. $%S/
A ;.R/
$+3/ net dmC"1#@1#@1#@1 tcp 4#
$+3/ net dmC"1#@1#@1#@5 tcp 58B11#
$+3/ net dmC"1#@1#@1#@? tcp 8?
$+3/ net dmC"1#@1#@1#@? udp 8?
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ 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:c:
581
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A3(/'.+ S.=R(% $%S/ ;R./. $%S/
A ;.R/
$+3/ loc dmC"1#@1#@1#@1 tcp 4#
$+3/ loc dmC"1#@1#@1#@5 tcp 58B11#
$+3/ loc dmC"1#@1#@1#@? tcp 8?
$+3/ loc dmC"1#@1#@1#@? udp 8?
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ 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:c y mtar a taza de conexones a dez por segundo con rfagas de hasta cnco
conexones para cada servco:
A3(/'.+ S.=R(% $%S/ ;R./. $%S/ S.=R(% .R'I'+30 R3/%
A ;.R/ ;.R/(S) $%S/ 0','/
$+3/ net dmC"1#@1#@1#@1 tcp 4#
1#/sec"8
$+3/ net dmC"1#@1#@1#@5 tcp 58B11#
1#/sec"8
$+3/ net dmC"1#@1#@1#@? tcp 8?
1#/sec"8
$+3/ net dmC"1#@1#@1#@? udp 8?
1#/sec"8
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ 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)).
A3(/'.+ S.=R(% $%S/ ;R./. $%S/ S.=R(% .R'I'+30 R3/%
A ;.R/ ;.R/(S) $%S/ 0','/
R%$'R%/ loc 4#4# tcp 4# 5#/sec"8
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
9*.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 shorewall start
Para hacer que os cambos hechos a a confguracn surtan efecto, utce:
service shorewall restart
Para detener e cortafuegos, utce:
service shorewall stop
582
|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'+/%R<3(% 1.S/(S) .;/'.+S
eth# 175@164@1@#/5>
eth# 175@164@5@?#B175@164@5@?1
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
Para aadr Shorewa a arranque de sstema, utce:
chkcon!ig shorewall on
583
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
93. Cmo con&igurar un servidor de 0penF<).
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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.
93.+.+. Acerca de 0penF<).
0penF<) 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
93.+.*. Breve e2plicacin de lo #ue se lograr; con este documento.
Este documento descrbe a confguracn de una F<) 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 caso de clientes Linu*) 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 (0indows/Linu*) 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.
584
|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).
93.*. %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.
93.*.+. %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/30Server@repo
585
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Aadr a este nuevo arc$ivo e sguente contendo:
D30ServerE
name)30 Server para %nterprise 0inux Freleasever
mirrorlist)http"//www@alcancelibre@org/al/elFreleasever/alserver
gpgcheck)1
gpgkey)http"//www@alcancelibre@org/al/30R;,H%:
Importar a frma dgta de Alcance i!re e|ecutando o sguente desde a termna:
rpm import http"//www@alcancelibre@org/al/30R;,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 shorewall vimenhanced
93.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 Fi (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 0penF<) 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&, pKitool y vars, que se ocazan en =etc=openvpn=easy(
rsa=*.O=:
cp /usr/share/openvpn/easyrsa/5@#/openssl@cn! @/
cp /usr/share/openvpn/easyrsa/5@#/whichopensslcn! @/
cp /usr/share/openvpn/easyrsa/5@#/pkitool @/
cp /usr/share/openvpn/easyrsa/5@#/vars @/
Utzar e edtor de texto y abrr e archvo =etc=openvpn=vars:
vi /etc/openvpn/vars
586
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
De este archvo, soamente edtar as tmas neas, que corresponden a o sguente:
export H%:-(.=+/R:)*=S*
export H%:-;R.&'+(%)*(3*
export H%:-('/:)*San<rancisco*
export H%:-.RI)*<ort<unston*
export H%:-%,3'0)*meSmyhost@mydomain*
Reempazar por vaores reaes, como os de sguente e|empo:
export H%:-(.=+/R:)*,X*
export H%:-;R.&'+(%)*$<*
export H%:-('/:)*,exico*
export H%:-.RI)*servidor@midominio@com*
export H%:-%,3'0)*!ulanitoSmidominio@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/easyrsa/5@#/cleanall
Lo anteror reaza un rm (&r (emnacn recursva) sobre e drectoro =etc=openvpn=Keys, 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/easyrsa/5@#/buildca
Se crea e archvo dh1024.pem, e cua contendr os parmetros de protocoo Dffe-Eeman, de
1024 bts:
sh /usr/share/openvpn/easyrsa/5@#/builddh
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/easyrsa/5@#/buildkeyserver server
587
|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/easyrsa/5@#/buildkey cliente1
sh /usr/share/openvpn/easyrsa/5@#/buildkey cliente5
sh /usr/share/openvpn/easyrsa/5@#/buildkey cliente?
sh /usr/share/openvpn/easyrsa/5@#/buildkey cliente>
sh /usr/share/openvpn/easyrsa/5@#/buildkey cliente8
sh /usr/share/openvpn/easyrsa/5@#/buildkey 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/servidorvpnudp117>@con!
Para a F<) 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 F<) a 253 centes. Tomando en
cuenta o anteror, e contendo de archvo =etc=openvpn=servidorvpn(udp(++S4.con&, debe ser
e sguente:
port 117>
proto udp
dev tun
A Seccion de llaves
ca keys/ca@crt
cert keys/server@crt
key keys/server@key
dh keys/dh1#5>@pem
A
server 175@164@?6@# 588@588@588@#
i!con!igpoolpersist ipp@txt
keepalive 1# 15#
complCo
persistkey
persisttun
status openvpnstatusservidorvpnudp117>@log
verb ?
Descrpcn de os parmetros anterores:
1ort: Especfca e puerto que ser utzado para que os centes vpn puedan conectarse a servdor.
1roto: tpo de protocoo que se empear en a conexn a travs de VPN
de2: 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).
ser2er: Se asgna e rango IP vrtua que se utzar en a red de tne VPN.
34con4ig-pool-persist: Archvo en donde quedarn regstrado as dreccones IP de os centes que se
encuentran conectados a servdor OpenVPN.
588
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
5eepali2e 10 1,0 : 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-l6o: Especfca os datos que recorren e tne vpn ser compactados durante a trasferenca de
estos paquetes.
persist-!e(: Esta opcn soucona e probema por aves que perssten a travs de os rea|ustes
SIGUSR1, as que no necestan ser reedos.
1ersist-tun: Permte que no se cerre y re-abre os dspostvos TAP/TUN a correr os guones up/down
status: archvo donde se amacenar os eventos y datos sobre a conexn de servdor |.og|
2erb: 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 lRango de uso norma. 5 ((Sada 'y
Wcaracteres 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 openvpnstatusservidorvpnudp117>@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 openvpnstatusservidorvpnudp117>@log
chcon r obMect-r ipp@txt
chcon r obMect-r openvpnstatusservidorvpnudp117>@log
chcon t openvpn-etc-rw-t ipp@txt
chcon t openvpn-etc-rw-t openvpnstatusservidorvpnudp117>@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$Kcon&ig de a sguente forma:
589
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
chkcon!ig openvpn on
93.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.
V O.enH8N ----
re/ #."J
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ 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.
V O.enH8N ----
re/ 2n$ 5e2e62 536.
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ 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 F<) 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.
!w all 3((%;/
loc all 3((%;/
V O.enH.n ----
re/ <* ACCE8T
re/ ne2 ACCE8T
re/ )o6 ACCE8T
V ------------
net all $R.; in!o
all all R%a%(/ in!o
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ 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 F<).
3((%;/ net !w udp 117>
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
Fnamente, se edta e archvo =etc=s$orePall=tunnels a fn de defnr e tne SSL que ser
utzado para e servdor de F<) y que permta conectarse desde cuaquer ubcacn.
A/:;% G.+% I3/%23: I3/%23:
A G.+%
590
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
openvpnserver"117> rem #@#@#@#/#
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ 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 F<).
Para apcar os cambos, es necesaro rencar s$orePall con e mandato service, de sguente
modo:
service shorewall restart
93.3.*. Con&iguracin de clientes WindoPs.
93.3.*.+. A travs de 0penF<) ?,%.
Instaar 0penF<) ?,% desde http://openvpn.se/. Se requere nstaar a versn de desarroo
+.O.3 de 0penF<) ?,%, 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:
591
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
client
dev tun
proto udp
remote dominiooip@del@servidor@vpn 117>
!loat
resolvretry in!inite
nobind
persistkey
persisttun
A S%(('.+ $% 003&%S
ca *("PP3rchivos de ;rogramaPP.pen&;+PPcon!igPPca@crt*
cert *("PP3rchivos de ;rogramaPP.pen&;+PPcon!igPPcliente1@crt*
key *("PP3rchivos de ;rogramaPP.pen&;+PPcon!igPPcliente1@key*
nscerttype server
A
complCo
verb ?
Descrpcn de os parmetros anterores:
client: Especfca e tpo de confguracn, en este caso tpo cente OpenVPN.
1ort: Especfca e puerto que ser utzado para que os centes VPN puedan conectarse a servdor.
1roto: tpo de protocoo que se empear en a conexn a travs de VPN
de2: 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-l6o: Especfca os datos que recorren e tne VPN ser compactados durante a trasferenca de
estos paquetes.
persist-!e(: Esta opcn soucona e probema por aves que perssten a travs de os rea|ustes
SIGUSR1, as que no necestan ser reedos.
1ersist-tun: Permte que no se cerre y re-abre os dspostvos TAP/TUN a correr os guones up/down
2erb: 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 lRango de uso norma. 5 ((Sada 'y
Wcaracteres en a consoa par os paquetes de ectura y escrtura, mayscuas es usada por paquetes
TCP/UDP mnscuas es usada para paquetes TUN/TAP.
592
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
E cente necestar que os archvos ca.crt, cliente+.crt, cliente+.Key y cliente+(udp(
++S4.ovpn estn presentes en e drectoro /C-]Arc$ivos de <rograma]0penF<)]con&ig]/.
Estos archvos fueron creados, a travs de un procedmento descrto en este documento, dentro
de drectoro =etc=openvpn=Keys= de servdor.
S se quere que os centes de a F<) 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 F<) sea ndependente a a red oca y cuaquer otra red, unendo os
servdores y centes a a F<), ndependentemente de s stos estn en a red oca o una red
pbca.
S es mperatvo hacer que os centes de a F<) 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 F<) 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 F<) 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 F<) 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 F<):
route 175@164@#@# 588@588@588@#
dhcpoption $+S 175@164@#@1
Opconamente, tambn se puede defnr un servdor Wns.
dhcpoption 2'+S 175@164@56@1
E|empo, consderando que a red oca es +S*.+69.*6.O=*55.*55.*55.O:
client
dev tun
proto udp
remote dominiooip@del@servidor@vpn 117>
!loat
resolvretry in!inite
nobind
persistkey
persisttun
ro2e -%,.-'8.,'.$ ,55.,55.,55.$
536.-o.2#on DNS -%,.-'8.,'.-
536.-o.2#on XLNS -%,.-'8.,'.-
A S%(('.+ $% 003&%S
ca *("PP3rchivos de ;rogramaPP.pen&;+PPcon!igPPca@crt*
cert *("PP3rchivos de ;rogramaPP.pen&;+PPcon!igPPcliente1@crt*
key *("PP3rchivos de ;rogramaPP.pen&;+PPcon!igPPcliente1@key*
nscerttype server
A
complCo
verb ?
593
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
93.3.3. Clientes ?),=inu2.
93.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 0penF<) ?,% para Wndows, pero defnendo rutas en e sstema de archvos de
GNU/Lnux. E|empo:
client
dev tun
proto udp
remote dominiooip@del@servidor@vpn 117>
!loat
resolvretry in!inite
nobind
persistkey
persisttun
A S%(('.+ $% 003&%S
ca /etc/openvpn/keys/ca@crt
cert /etc/openvpn/keys/cliente1@crt
key /etc/openvpn/keys/cliente1@key
nscerttype server
A
complCo
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=Keys=.
Para ncar a conexn haca a F<), 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$Kcon&ig de a sguente manera:
chkcon!ig openvpn on
93.3.3.*. A travs de )etPorK:anager.
)etPorK: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 F<).
594
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Se requere que os centes Lnux tengan nstaado e paquete )etPorK: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 )etPorK:anager(openvpn,
por o que soo podr conectarse a a F<) 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 +etwork,anageropenvpn
Se puede rencar e sstema para que tengan efectos os cambos, o smpemente rencar e
servco )etPorK:anager:
service +etwork,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 0penF<) ?,% para Wndows, pero defnendo rutas
en e sstema de archvos de GNU/Lnux. E|empo:
client
dev tun
proto udp
remote dominiooip@del@servidor@vpn 117>
!loat
resolvretry in!inite
nobind
persistkey
persisttun
A S%(('.+ $% 003&%S
ca /etc/openvpn/keys/ca@crt
cert /etc/openvpn/keys/cliente1@crt
key /etc/openvpn/keys/cliente1@key
nscerttype server
A
complCo
verb ?
Este archvo se puede utzar con a nterfaz grfca de )etPorK:anager. Soo hay que hacer cc
sobre e cono en e mrea de noti&icacin de pane de GNOME y uego hacer cc en Con&igurar
F<).
595
|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=Keys= 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 )etPorK:anager.
Desde a ventana de redes VPN de a nterfaz de )etPorK:anager, hacer cc en Aadir.
596
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Aparecer un dogo donde se debe seecconar que se trata de una F<) con 0penF<).
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.
597
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Luego, se hace cc en Avan8ado para especfcar que se utzar compresn c0.
Para evtar confctos de conectvdad, se hace cc en a pestaa A.ustes %<F4, y se defne un
servdor DNS que permta a cente navegar a travs de Internet y dentro de a red de a F<).
598
|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 F<), 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 F<), a fn de
evtar confctos de red.
599
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Fnamente se hace cc en apcar. Para conectarse a a red F<), soo basta hacer cc sobre e
cono de )etPorK:anager en e mrea de noti&icacin de pane de GNOME y seecconar a red
F<) recn confgurada.
93.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 William pe8 Jimne8, pubcados en
Alcance i!re, cumpendo cabamente con os trmnos de a cenca Creative Commons
Reconocmento-NoComerca-CompartrIgua 2.1.
600
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
94. Cmo con&igurar >):<.
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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.
94.+.+. 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.
94.+.*. 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/
94.*. "#uipamiento lgico necesario.
94.*.+. %nstalacin a travs de yum.
S utza Cent0> 4 y 5, 'ed Eat "nterprise inu2 5 o W$ite Bo2 "nterprise inu2 4 y 5, soo
se necesta reazar o sguente para nstaar o actuazar e equpamento gco necesaro:
yum y install netsnmp netsnmputils
601
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
94.*.*. %nstalacin a travs de up*date.
S se utza 'ed Eata "nterprise inu2 4, soo bastar reazar o sguente para nstaar o
actuazar e equpamento gco necesaro:
up5date i netsnmp netsnmputils
94.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!.0$
touch snmpd@con!
94.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:
com5sec local 156@#@#@1/?5 (l>v?d?3cc?s#
com5sec miredlocal 175@164@1@#/5> (l>v?d?3cc?s#
602
|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
0local1 y que corresponder soo a +*7.O.O.+=3*, asgnando %lMvL2dL2AccLs4 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).
94.3.+.*. De&inicin de grupos.
Se crean a menos dos grupos: :y'W?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'W?roup se asoca a local y :y'0?roup a miredlocal.
ASe asigna local al grupo de )e62r4 es6r#2r4
group ,yR2Iroup v1 local
group ,yR2Iroup v5c local
group ,yR2Iroup usm local
ASe asigna miredlocal al grupo de so)o )e62r4
group ,yR.Iroup v1 miredlocal
group ,yR.Iroup v5c miredlocal
group ,yR.Iroup usm miredlocal
94.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)
view all included @1 4#
94.3.+.4. Asignacin de permisos a los grupos.
Se debe especfcar que permsos tendrn os dos grupos, :y'0?roup y :y'W?roup. Son de
especa nters as tmas coumnas.
AA group context sec@model sec@level pre!ix read write noti!
access ,yR.Iroup ** any noauth exact all none none
access ,yR2Iroup ** any noauth exact all all all
94.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 0inux en S=S%R&'$.R@algundominio@net
syscontact 3dministrador (!ulanoSalgundominio@net)
603
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
94.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 0istas de control de acceso (3(0)
AA sec@name source community (alias clave de acceso)
com5sec local 156@#@#@1/?5 (l>v?d?3cc?s#
com5sec miredlocal 175@164@1@#/5> (l>v?d?3cc?s#
ASe asigna 3(0 al grupo de lectura escritura
group ,yR2Iroup v1 local
group ,yR2Iroup v5c local
group ,yR2Iroup usm local
ASe asigna 3(0 al grupo de solo lectura
group ,yR.Iroup v1 miredlocal
group ,yR.Iroup v5c miredlocal
group ,yR.Iroup usm miredlocal
A Ramas ,'9 Jue se permiten ver
AA name incl/excl subtree mask(optional)
view all included @1 4#
A %stablece permisos de lectura y escritura
AA group context sec@model sec@level pre!ix read write noti!
access ,yR.Iroup ** any noauth exact all none none
access ,yR2Iroup ** any noauth exact all all all
A 'n!ormaciQn de (ontacto del Sistema
syslocation Servidor 0inux en m#6>@alcancelibre@org
syscontact 3dministrador (!ulanoSalgundominio@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:
com5sec /#6e"4 175@164@1@581 (l>v?d?3cc?s#
Agregar un |uego regas que asgnen a grupo, en este caso micueva, con o sguente:
group o2ro7r.o v1 local
group o2ro7r.o v5c local
group o2ro7r.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
94.3.3. %niciarL detener y reiniciar el servicio snmpd.
Para e|ecutar por prmera vez e servco snmpd, utce:
604
|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
94.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
94.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.
snmpwalk v 1 -%,.-'8.-.,5J c C)J"3-53-A663s$ system
snmpwalk v 1 -%,.-'8.-.,5J c C)J"3-53-A663s$ inter!aces
94.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:
A3(/'.+ S.=R(% $%S/ ;R./. $%S/ S.=R(%
A ;.R/ ;.R/(S)1
3((%;/ net !w udp 161B165
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ 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:
A3(/'.+ S.=R(% $%S/ ;R./. $%S/ S.=R(%
A ;.R/ ;.R/(S)1
3((%;/ loc !w udp 161B165
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
605
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
95. Cmo con&igurar :'@?.
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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.
95.+.+. 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.
95.*. "#uipamiento lgico necesario.
95.*.+. %nstalacin a travs de yum.
S utza Cent0> 4 o W$ite Bo2 "nterprise inu2 4, soo se necesta reazar o sguente para
nstaar o actuazar e equpamento gco necesaro:
yum y install mrtg
95.*.*. %nstalacin a travs de up*date.
S se utza 'ed Eata "nterprise inu2 4, soo bastar reazar o sguente para nstaar o
actuazar e equpamento gco necesaro:
up5date i mrtg
95.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.
606
|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/www/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.0$
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 P
global *workdir" /var/www/mrtg/miredlocal* P
global *.ptionsD-E" bitsBgrowright* P
output /etc/mrtg/mrtg@c!g P
C)J"3-53-A663s$S175@164@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 P
global *workdir" /var/www/mrtg/miredlocal* P
global *.ptionsD-E" bitsBgrowright* P
output /etc/mrtg/mrtg@c!g P
community)C)J"3-53-A663s$ P
175@164@1@1 P
175@164@1@5 P
175@164@1@? P
175@164@1@>
95.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 03+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
607
|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*++7GU.4.4.7+mrtg+miredlocal+1+,.1-..1.1JG.tml, consderando, como e.emplo, que se
desea observar e reporte de e sstema con a dreccn IP 192.168.1.1.
608
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
96. Cmo con&igurar Freeradius con :y>B en
Cent0> 5.
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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.
96.+.+. 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 Fo%< (Foce 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
96.+.*. 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/
609
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
96.+.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/.
96.*. <rocedimientos.
Instae os paquetes necesaros:
yum y install !reeradius5 !reeradius5mysJl !reeradius5utils
yum y install mysJl mysJlserver
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 password X15?JweX
Genere una nueva base de datos denomnada radius:
mysJladmin uroot p15?Jwe create radius
Acceda a ntrprete de mandatos de MySOL:
mysJl uroot p15?Jwe
Desgne e usuaro y cava de acceso para acceder a a base de datos recn creada:
610
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
IR3+/ all .+ radius@O /. radiusSlocalhost '$%+/'<'%$ 9: X15?JweXY
Saga de MySOL:
exitY
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 p15?Jwe radius _ /etc/raddb/sJl/mysJl/cui@sJl
mysJl uradius p15?Jwe radius _ /etc/raddb/sJl/mysJl/ippool@sJl
mysJl uradius p15?Jwe radius _ /etc/raddb/sJl/mysJl/nas@sJl
mysJl uradius p15?Jwe radius _ /etc/raddb/sJl/mysJl/schema@sJl
mysJl uradius p15?Jwe radius _ /etc/raddb/sJl/mysJl/wimax@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'+(0=$% 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*
password ) *15?Jwe*
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/sitesenabled/de!ault
Descomente en a seccn aut$ori8e, o cua se ocaza aproxmadamente arededor de a nea
159:
611
|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 p15?Jwe 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%R/ '+/. radcheck (usernameB attributeB value) &30=%S (X!ulanoXB X;asswordXB
X15?JweX)Y
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 O !rom radcheck where username)X!ulanoXY
Debe regresar ago smar a os sguente:
NNNNNN
^ id ^ username ^ attribute ^ op ^ value ^
NNNNNN
^ 6 ^ !ulano ^ ;assword ^ )) ^ 15?Jwe ^
NNNNNN
1 row in set (#@## sec)
Saga de mysq:
exitY
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 15?Jwe localhost 1415 testing15?
612
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Lo anteror debe devover ago smar como o sguente:
Sending 3ccessReJuest o! id 555 to 156@#@#@1 port 1415
=ser+ame ) *!ulano*
=ser;assword ) *15?Jwe*
+3S';3ddress ) 156@#@#@1
+3S;ort ) 1415
rad-recv" 3ccess3ccept packet !rom host 156@#@#@1 port 1415B id)555B length)5#
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 p15?Jwe 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%R/ '+/. nas (nasnameB shortnameB typeB secret) &30=%S (X-%,.-'8.$.-XB XM#-
R2e45orXB Xo23erXB X-,3C*eX)Y
Para verfcar, e|ecute desde e smboo de sstema de MySOL o sguente:
select O !rom nas where shortname)X,iRuteadorXY
Lo anteror debe regresar ago smar a o sguente::
NNNNNNNNN
^ id ^ nasname ^ shortname ^ type ^ ports ^ secret ^ community ^ description ^
NNNNNNNNN
^ ? ^ 175@164@#@1 ^ 2R/8>I ^ other ^ +=00 ^ 15?Jwe ^ +=00 ^ R3$'=S (lient ^
NNNNNNNNN
1 row 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 -%,.-'8.$.- Z
secret ) 64)C#er-6)4"e-5e-466eso
shortname ) XRT5JG
nastype ) o23er
[
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%R/ '+/. nas (nasnameB shortnameB typeB secret) &30=%S (X-%,.-'8.$.,5JXB XO2ro-
R2e45orXB Xo23erXB X-,3C*eX)Y
613
|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 15?Jwe ;.;.;.; 1415 15?Jwe
Lo anteror debera devover ago smar a o sguente.
Sending 3ccessReJuest o! id 558 to ;.;.;.; port 1415
=ser+ame ) *!ulano*
=ser;assword ) *15?Jwe*
+3S';3ddress ) 156@#@#@1
+3S;ort ) 1415
rad-recv" 3ccess3ccept packet !rom host ;.;.;.; port 1415B id)558B length)5#
96.*.+. %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 phpmysJl phpgd phppear phppear$9
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/www
Descargue desde sourceforge.net/pro|ects/daoradus e archvo correspondente a a versn ms
recente de Daoradus:
wget http"//cdnetworksus
1@dl@source!orge@net/proMect/daloradius/daloradius/daloradius#@74/daloradius#@7
4@tar@gC
Descomprma e archvo descargado:
tar Cxv! daloradius#@74@tar@gC
Cambe os permsos de todo e contendo de drectoro recn descomprmdo para que
pertenezcan a usuaro y grupo apac$e:
chown R apache"apache daloradius#@74
614
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Cambe a drectoro daloradius(O.S(9:
cd daloradius#@74
cargue as tabas de Daloradius en a base de datos utzada por Freeradus.
mysJl uradius p15?Jwe _ contrib/db/mysJldaloradius@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&aluesDX(.+<'I-$9-1.S/XE ) X156@#@#@1XY
Fcon!ig&aluesDX(.+<'I-$9-=S%RXE ) XradiusXY
Fcon!ig&aluesDX(.+<'I-$9-;3SSXE ) X15?JweXY
Fcon!ig&aluesDX(.+<'I-$9-+3,%XE ) XradiusXY
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:
3lias /daloradius */var/www/daloradius#@74/*
.ptions +one
order denyBallow
deny !rom all
allow !rom 156@#@#@1
allow !rom x@x@x@x
Rence e servco $ttpd:
service httpd restart
Acceda con cuaquer navegador moderno haca ttp*++direci#n2ip2servidor+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.
96.3. Bi!liogra&a.
Settng Up A FreeRadus Based AAA Server Wth MySOL & Management Wth Daoradus.
Wkpeda.
615
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
97. Cmo instalar Java +.6 en Cent0> 5.
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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.
97.+. %ntroduccin.
De modo predetermnado, Cent0> 5 y 'ed Eata "nterprise inu2 5 ncuyen a versn 1.4.2 y
1.6.0 de 0penJDI, 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 JDI +.6.O, a mpementacn
|ava comerca y prvatva de 0racle, en Cent0> 5 y 'ed Eata "nterprise inu2 5.
97.*. %nstalacin del e#uipamiento lgico necesario.
97.*.+. %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 rpmbuild gcc gcccNN redhatrpmcon!ig automake autocon!
yum y install xorgx11!ontutils chk!ontpath ttmk!dir
97.3. <rocedimientos.
97.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
passwd rpmbuilduser
97.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 T/rpmbuild/ZS.=R(%SBSR;,SBS;%(SBR;,SB/,;B9='0$[
616
|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:
V-topdir /home/rpmbuilduser/rpmbuild
V-tmppath VZ-topdir[//,;
V-unpackaged-!iles-terminate-build #
Vpackager ,i nombre
Vdistribution ,i distribuciQn o crea de trabaMo@
Vvendor ,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=.pacKage=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 Mdk6u1>linuxi846@bin
Y mover ste tmo dentro de Y=rpm!uild=>0,'C">=
mv Mdk6u1>linuxi846@bin T/rpmbuild/S.=R(%S/
S utza una arqutrectura x86_64, debe hacer e|ecutabe e archvo descargado utzando e
sguente mandato:
chmod Nx Mdk6u1>linuxx6>@bin
Y mover ste tmo dentro de Y=rpm!uild=>0,'C">=
mv Mdk6u1>linuxx6>@bin T/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 Mava1@6@#sun1@6@#@1>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
617
|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 T/rpmbuild/R;,S/i846/
su
rpm =vh Mava1@6@#sun1@6@#@1>1Mpp@i846@rpm Mava1@6@#sunalsa1@6@#@1>
1Mpp@i846@rpm Mava1@6@#sun!onts1@6@#@1>1Mpp@i846@rpm Mava1@6@#sunplugin
1@6@#@1>1Mpp@i846@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 T/rpmbuild/R;,S/x46-6>/
su
rpm =vh Mava1@6@#sun1@6@#@1>1Mpp@x46-6>@rpm Mava1@6@#sunalsa1@6@#@1>
1Mpp@x46-6>@rpm Mava1@6@#sun!onts1@6@#@1>1Mpp@x46-6>@rpm Mava1@6@#sunplugin
1@6@#@1>1Mpp@x46-6>@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:
1ay 5 programas Jue proporcionan XMavaX@
SelecciQn (omando
ON 1 /usr/lib/Mvm/Mre1@>@5gcM/bin/Mava
5 /usr/lib/Mvm/Mre1@6@#sun/bin/Mava
;resione 'ntro para mantener la selecciQn actualDNEB o escriba el
n`mero de la selecciQn"
Seeccone a versn +.6 de de >un :icrosystems pusando a teca de nmero 2 y uego a
teca ")@"'.
618
|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/Mava1@6@#sun1@6@#@1>/Mre/lib/O/libMavaplugin-Mni@so @/
619
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
99. Cmo con&igurar esc;ner en red
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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.
99.+. %ntroduccin.
99.+.+. 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<% @WA%), 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/
99.+.*. 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/
620
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
99.*. "#uipamiento lgico necesario.
99.*.+. %nstalacin del servicio saned.
99.*.+.+. %nstalacin a travs de yum.
S utza Cent0> 4 o W$ite Bo2 "nterprise inu2 4, soo se necesta reazar o sguente para
nstaar o actuazar e equpamento gco necesaro:
yum y install sanebackends sane!rontends xinetd
99.*.+.*. %nstalacin a travs de up*date.
S se utza 'ed Eata "nterprise inu2 4, soo bastar reazar o sguente para nstaar o
actuazar e equpamento gco necesaro:
up5date i sanebackends sane!rontends xinetd
99.*.*. %nstalacin del cliente Dsane.
99.*.*.+. %nstalacin a travs de yum.
S utza Cent0> 4 o W$ite Bo2 "nterprise inu2 4, soo se necesta reazar o sguente para
nstaar o actuazar e equpamento gco necesaro:
yum y sanebackends sane!rontends xsanegimp xsane sane!rontends
99.*.*.*. %nstalacin a travs de up*date.
S se utza 'ed Eata "nterprise inu2 4, soo bastar reazar o sguente para nstaar o
actuazar e equpamento gco necesaro:
up5date i sanebackends sane!rontends xsanegimp xsane sane!rontends
99.3. <rocedimientos
99.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 want to allow access through the network"
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
621
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A saned@con!
A
A /he contents o! the saned@con! !ile is a list o! host
A names or '; addresses that are permitted by saned to
A use local S3+% devices in a networked con!iguration@
A /he hostname matching is not casesensitive@
A
Ascanclient@somedomain@!irm
A175@164@#@1
175@164@1@58>
175@164@1@58?
175@164@1@585
175@164@1@581
175@164@1@58#
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 6866/tcp saned A S3+% network 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
Z
socket-type ) stream
server ) /usr/sbin/saned
protocol ) tcp
user ) root
group ) root
wait ) no
disable ) no
[
Una vez hecho todo o anteror, se especfca a actvacn de servco saned con e mandato
c$Kcon&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 6866
Lo anteror debe devover ago como o sguente:
/rying 156@#@#@1@@@
(onnected to localhost@
%scape character is XWEX@
Para sar de ntrprete de mandato telnet, soo se debe ngresar Juit y pusar a teca ENTER.
622
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
99.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 /his 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@
175@164@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.
623
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
9S. Cmo con&igurar un servidor de respaldos
con BacKup<C.
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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.
9S.+. %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 BacKup<C es a 3.1.0, y es a recomendada para sstemas en
produccn.
,'. http://backuppc.sourceforge.net/.
9S.*. %nstalacin del e#uipamiento lgico necesario.
Fedora 9 en adeante ncuye e paquete BacKup<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.
9S.*.+. %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/30Server@repo
Aadr a este nuevo arc$ivo e sguente contendo:
D30ServerE
name)30 Server para %nterprise 0inux Freleasever
mirrorlist)http"//www@alcancelibre@org/al/elFreleasever/alserver
gpgcheck)1
gpgkey)http"//www@alcancelibre@org/al/30R;,H%:
Importar a frma dgta de Alcance i!re e|ecutando o sguente desde a termna:
624
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
rpm import http"//www@alcancelibre@org/al/30R;,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 9ackup;( httpd mod-perl sambaclient
Lo anteror crear automtcamente e usuaro !acKuppc e nstaar os archvos necesaros con
os permsos correspondentes.
9S.3. <rocedimientos.
9S.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 BacKup<C ncuye e archvo /etc=$ttpd=con&.d=BacKup<C.con&.
Este vene confgurado para soo permtr conexones haca a herramenta de admnstracn de
BacKup<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 BacKup<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:
_$irectory /usr/share/9ackup;(/sbin/R
A 9ackup;( reJuires valid authentication in order !or the web inter!ace to
A !unction properly@ .ne can view the web inter!ace without authentication
A though all !unctionality is disabled@
A
A htpasswd c /etc/9ackup;(/apache@users yourusername
A
order denyBallow
deny !rom all
allow !rom 156@#@#@1 175@164@1@#/5>
3uth/ype 9asic
3uth=ser<ile /etc/9ackup;(/apache@users
3uth+ame *9ackup;(
reJuire validuser
_/$irectoryR
625
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
3lias /9ackup;(/images /usr/share/9ackup;(/html/
Script3lias /9ackup;( /usr/share/9ackup;(/sbin/9ackup;(-3dmin
Recargue a confguracn en e servco $ttpd, a fn de que surtan efecto os cambos:
/sbin/service httpd reload
9S.3.*. Con&iguracin de BacKup<C.
Se deben asgnar os contextos correspondentes para SELnux a fn de que ste permta operar
normamente a BacKup<C:
chcon R t httpd-sys-content-t /etc/9ackup;(
chcon R t httpd-sys-script-rw-t /etc/9ackup;(/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=BacKup<C=apac$e.users y e usuaro denomnado administrador:
htpasswd c /etc/9ackup;(/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=BacKup<C=con&ig.pl:
vim /etc/9ackup;(/con!ig@pl
De este archvo soo es necesaro ocazar y modfcar os sguentes parmetros:
$Con&\>erverEost_: Se ocaza en a nea 44 de archvo /etc=BacKup<C=con&ig.pl.
Srve para defnr e nombre de anftrn (ostname) de sstema.
$Con&\CgiAdmin,sers_: Se ocaza en a nea 1918 de
archvo /etc=BacKup<C=con&ig.pl. Srve para defnr e usuaro admnstrador.
$Con&\Cgi,'_: Se ocaza en a nea 1923 de archvo /etc=BacKup<C=con&ig.pl. Srve
para defnr e URL de a herramenta de admnstracn.
$Con&\anguage_: Se ocaza en a nea 1934 de archvo /etc=BacKup<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!ZServer1ost[ ) servidor@redlocal@net
F(on!Z(gi3dmin=sers[ ) administrador
626
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
F(on!Z(gi=R0[ ) http"//servidor@redlocal@net/9ackup;(
F(on!Z0anguage[ ) 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&\Cgi,'_ como ttp*++direcci#n2ip2
servidor+Bac(upE%. 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!ZServer1ost[ ) servidor@redlocal@net
F(on!Z(gi3dmin=sers[ ) administrador
F(on!Z(gi=R0[ ) http"//175@164@1@1/9ackup;(
F(on!Z0anguage[ ) es
Incar y agregar a os servcos de arranque de sstema a servco !acKuppc:
/sbin/service backuppc start
/sbin/chkcon!ig backuppc on
Ingresar con cuaquer navegador haca ttp*++servidor.redlocal.net+Bac(upE%, o ben
ttp*++7YG.7VT.7.7+Bac(upE%, 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.
9S.3.3. Con&iguracin de los sistemas ?),=inu2 a respaldar.
Desde a nterfaz de admnstracn de BacKup<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.
627
|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 !acKuppc de servdor que hospeda BacKup<C, a cua se copa en a
cuenta de usuaro root de equpo remoto a respadar, en e archvo -/.ss$=aut$ori8edQKeys,
archvo que deber tener permsos de soo ectura para e usuaro propetaro.
Cambe a usuaro !acKuppc 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:
sshkeygen t dsa
Cuando se socte una cave de acceso, smpemente pusar a teca ")@'A' (-=T-?) 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 which 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@
/he key !ingerprint is"
5c"6?"?#"!e"85"51"a8"45"64">7"86"cd"?6"a!"?6"d! usuarioScliente
628
|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## T/@ssh/Zid-dsaBid-dsa@pub[
Crear en a cuenta de usuaro root de equpo remoto a respadar e drectoro -/.ss$ y e archvo
-/.ss$=aut$ori8edQKeys, con premsos de soo ectura y escrtura para root.
ssh rootSeJuipo mkdir m #6## T/@ssh
ssh rootSeJuipo touch T/@ssh/authoriCed-keys
ssh rootSeJuipo chmod 6## T/@ssh/authoriCed-keys
Copar e contendo de -/.ss$=idQdsa.pu! dentro de archvo -/.ss$=aut$ori8edQKeys de a
cuenta de usuaro root de equpo a respadar:
cat T/@ssh/id-dsa@pub ^ ssh rootSeJuipo *cat RR T/@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.
9S.3.4. Con&iguracin de los sistemas WindoPs a respaldar.
E mtodo ms smpe es reazar os respados de BacKup<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 BacKup<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.
629
|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(upE%+ 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.
630
|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
631
|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.
632
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
633
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
SO. Cmo con&igurar un racimo MclusterN de alta
disponi!ilidad con Eeart!eat en Cent0> 5.
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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.
SO.+. %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 Mhostna"eNL de&inido en el arc$ivo =etc=syscon&ig=netPorKL 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 Mhostna"eNL de&inido en el arc$ivo =etc=syscon&ig=netPorKL 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.
SO.+.+. 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/
634
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
SO.*. <rocedimientos.
SO.*.+. >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 avahidaemon stop
service avahidnscon!d stop
chkcon!ig avahidaemon o!!
chkcon!ig avahidnscon!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.
SO.*.*. >"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.
SO.*.*.+. 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=pacKages.
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:
635
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
wget + http"//www@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@#Y
reJuire Z
type proc-tY
type urandom-device-tY
type !tpd-tY
type httpd-tY
type iptables-tY
type ndc-tY
type initrc-tY
type named-tY
class unix-stream-socket Z read write [Y
class !ile readY
class chr-!ile readY
[
A))))))))))))) !tpd-t ))))))))))))))
allow !tpd-t initrc-t"unix-stream-socket Z read write [Y
A))))))))))))) httpd-t ))))))))))))))
allow httpd-t initrc-t"unix-stream-socket Z read write [Y
A))))))))))))) iptables-t ))))))))))))))
allow iptables-t initrc-t"unix-stream-socket Z read write [Y
A))))))))))))) named-t ))))))))))))))
allow named-t initrc-t"unix-stream-socket Z read write [Y
A))))))))))))) ndc-t ))))))))))))))
allow ndc-t initrc-t"unix-stream-socket Z read write [Y
allow ndc-t proc-t"!ile readY
allow ndc-t urandom-device-t"chr-!ile readY
Lo anteror, que fue obtendo de a sada de mandato dmesghgrep audithaudit*alloP (m
$eart!eat+i$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$ecKmodule 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
636
|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 soo 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/
dmesg^grep audit^audit5allow m heartbeat5Rheartbeat5@te
checkmodule , m o heartbeat5@mod heartbeat5@te
semodule-package o heartbeat5@pp m heartbeat5@mod
semodule i /usr/share/selinux/packages/heartbeat/heartbeat5@pp
rm ! heartbeat5@te heartbeat5@mod
service heartbeat restart
SO.*.*.*. 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 /his !ile controls the state o! S%0inux on the system@
A S%0'+=X) can take one o! these three values"
A en!orcing S%0inux security policy is en!orced@
A permissive S%0inux prints warnings instead o! en!orcing@
A disabled S%0inux is !ully disabled@
SELLNUX=.er/#ss#"e
A S%0'+=X/:;%) type o! policy in use@ ;ossible values are"
A targeted .nly targeted network daemons are protected@
A strict <ull S%0inux protection@
S%0'+=X/:;%)targeted
A S%/0.(30$%<S) (heck local de!inition changes
S%/0.(30$%<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.
637
|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.
SO.*.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 !ollowing lineB or various programs
A that reJuire network !unctionality will !ail@
156@#@#@1 localhost@localdomain localhost
""1 localhost6@localdomain6 localhost6
175@164@1@1## no/!re..!)#6o.6)s2er.6o/
175@164@1@1#1 no/!re..!)#6o.no5o-.6o/
175@164@1@1#5 no/!re..!)#6o.no5o,.6o/
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 !ollowing lineB or various programs
A that reJuire network !unctionality will !ail@
156@#@#@1 localhost@localdomain localhost
""1 localhost6@localdomain6 localhost6
175@164@1@1## nombre@publico@cluster@com
175@164@1@1#1 nombre@publico@nodo1@com
175@164@1@1#5 nombre@publico@nodo5@com
175@164@5@1 no/!re..r#"45o.no5o-.6o/
175@164@5@5 no/!re..r#"45o.no5o,.6o/
Instaar os servcos que se van a gestonar a travs de agrupamento (cluster):
yum y install httpd php vs!tpd wget
Utzando un edtor de texto smpe, crear e archvo /var=PPP=$tml=inde2.p$p:
638
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
vim /var/www/html/index@php
Y aadr e sguente contendo:
_htmlR
_headR
_titleR%ste es el nodo 1_/titleR
_/headR
_bodyR
_h1R%ste es el nodo 1_/h1R
_pR%ste es el servidor principal Jue se presenta normalmente@_/pR
_/bodyR
_/htmlR
Crear e archvo /etc=$ttpd=con&.d=cluster.con& con e sguente contendo:
A $e!inir valores con el nombre p`blico y la direcciQn
A '; p`blica del cluster
+ame&irtual1ost 175@164@1@1##"4#
_&irtual1ost 175@164@1@1##"4#R
Server+ame nombre@publico@cluster@com
$ocumentRoot /var/www/html
%rror0og logs/clustererror-log
(ustom0og logs/clusteraccess-log combined
Server3dmin alguienSalgo@com
_/&irtual1ostR
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)9ienvenido al servicio </; 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/
wget http"//www@alcancelibre@org/al/server/30Server@repo
Instae Shorewa:
yum y install shorewall
Cambe a drectoro /etc=s$orePall:
639
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
cd /etc/shorewall
Edte con vm e archvo /etc=s$orePall=s$orePall.con& y cambe >@A'@,<Q")AB"DR)o por
>@A'@,<Q")AB"DRyes:
S/3R/=;-%+390%$):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# 175@164@1@1#5 critical
eth1 175@164@5@5 critical
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
Defna as zonas de mudo cortafuegos en e archvo /etc=s$orePall=8ones:
!w !irewall
net ipv>
loc ipv>
A03S/ 0'+% 3$$ :.=R %+/R'%S 39.&% /1'S .+% $. +./ 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
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
Defna as sguentes potcas en e archvo /etc=s$orePall=policy:
!w all 3((%;/
loc !w 3((%;/
loc net R%a%(/ in!o
net all $R.; in!o
A03S/ 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:
3((%;/ all !w tcp 5#B51
3((%;/ all !w tcp 4#B>>?
3((%;/ all !w tcp ??#6
3((%;/ all !w tcp 55
3((%;/ all !w icmp 4 8/sec"5
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
Debdo a un error en e gun %pre (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 >76 haclient
useradd , g haclient u >74 d /var/lib/heartbeat/cores/hacluster hacluster
640
|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/heartbeatO/ha@c! @/ha@c!
cp /usr/share/doc/heartbeatO/haresources @/haresources
cp /usr/share/doc/heartbeatO/authkeys @/authkeys
Aadr a fna de archvo aut$Keys ago smar a o sguente:
A $e!ine el esJuema de autenticaciQn por S131 y una clave de acceso@
423 ,
5 s34- .$n3r-4C--nJ-6)4"3-53-466eso-s37rJ
Puede generar e contendo de archvo /etc=$a.d=aut$Keys, con un crptograma adecuado,
utzando e sguente gun:
( echo ne *auth 5n5 sha1 *Y P
dd i!)/dev/urandom bs)815 count)1 ^ openssl md8 ) R /etc/ha@d/authkeys
Por motvos de segurdad, este archvo soo 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:
)o7<#)e +"4r+)o7+34-)o7
)o7<46#)#2y )o64)$
:ee.4)#"e ,
A /iempo de espera para iniciar servicios si nodo principal deMa de
A responder@ ;uede aMustarse a cualJuier tiempo raConable@ %Memplo" 1# segundos@
5e452#/e ,$
#n#25e45 %$
A inter!aC de comunicaciQn ente nodos
!64s2 e23-
5..or2 '%J
42o_<4#)!46: on
A +ombres de los nodos Jue participarcn en el cluster@
A $eben ser di!erentes a los nombres de an!itriQn utiliCados para las ';
A p`blicas de la las inter!aces eth#@ Solo son para uso interno@
A 0os nombres deben estar resueltos en el archivo /etc/hosts
641
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A con direcciones '; privadas en las inter!aces eth1B la cuales corresponden a
A las inter!aces privadas del clusterB a traves de la cual se comunican los
A nodos del cluster@
no5e no/!re..r#"45o.no5o-.6o/
no5e no/!re..r#"45o.no5o,.6o/
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 continuaciQn"
A nombre@privado@nodo1@com ) nombre de an!itriQn del nodo principal
A 175@164@1@1## ) direcciQn '; p`blica del cluster
A 5> ) mcscara en !ormato de bits
A eth# ) inter!aC p`blica del cluster
A 175@164@1@1#1 ) direcciQn '; del nodo principal a supervisar
A vs!tpd httpd ) servicios a brindar a traves del cluster
no/!re..r#"45o.no5o-.6o/ -%,.-'8.-.-$$+,J+e23$+-%,.-'8.-.,55 s3ore*4)) "s<2.5 322.5
Desactvar os servcos que se van a gestonar a travs de agrupamento (cluster):
chkcon!ig httpd o!!
chkcon!ig vs!tpd o!!
chcon!ig shorewall 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.
SO.*.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
642
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Utzando un edtor de texto smpe, crear e archvo /var=PPP=$tml=inde2.p$p:
vim /var/www/html/index@php
Y aadr e sguente contendo:
_htmlR _headR _titleR%ste es el nodo 5_/titleR _/headR _bodyR _h1R%ste es el nodo
5_/h1R _pR%ste es el servidor secundario Jue se presenta cuando !alla o se apaga el
_bRnodo 1_/bR@_/pR _/bodyR _/htmlR
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 175@164@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)9ienvenido al servicio </; del +odo 5@
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 shorewall
Cambe a drectoro /etc=s$orePall:
cd /etc/shorewall
Edte con vm e archvo /etc=s$orePall=s$orePall.con& y cambe >@A'@,<Q")AB"DR)o por
>@A'@,<Q")AB"DRyes:
S/3R/=;-%+390%$):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# 175@164@1@1#1 critical
eth1 175@164@5@1 critical
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
643
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Defna as zonas de mudo cortafuegos en e archvo /etc=s$orePall=8ones:
!w !irewall
net ipv>
loc ipv>
A03S/ 0'+% 3$$ :.=R %+/R'%S 39.&% /1'S .+% $. +./ 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
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
Defna as sguentes potcas en e archvo /etc=s$orePall=policy:
!w all 3((%;/
loc !w 3((%;/
loc net R%a%(/ in!o
net all $R.; in!o
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
Defna as sguentes regas para e archvo /etc=s$orePall=rules:
3((%;/ all !w tcp 5#B51
3((%;/ all !w tcp 4#B>>?
3((%;/ all !w tcp ??#6
3((%;/ all !w tcp 55
3((%;/ all !w icmp 4 8/sec"5
A03S/ 0'+% 3$$ :.=R %+/R'%S 9%<.R% /1'S .+% $. +./ R%,.&%
Crear e usuaro y grupo que utzar $eart!eat:
groupadd g >76 haclient
useradd , g haclient u >74 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:
scp p 175@164@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 175@164@1@1#1"/etc/ha@d/O /etc/ha@d/
Desactvar os servcos que se van a gestonar a travs de agrupamento (cluster):
644
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
chkcon!ig httpd o!!
chkcon!ig vs!tpd o!!
chkcon!ig shorewall 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 soo cuando $eart!eat
detecte que ha faado e nodo + o se ha perddo conectvdad con ste.
SO.*.5. Feri&icando el agrupamiento MclusterN.
La me|or forma de verfcar que todo funcona correctamente es acceder con e navegador haca
ttp*++nombre.publico.cluster.com+ o ttp*++7YG.7VT.7.744+, o ben acceder a travs de un cente
FTP haca nombre.publico.cluster.com o 192.168.1.100. 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 +.
SO.*.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 +:
S1%00)/bin/bash
;3/1)/sbin"/bin"/usr/sbin"/usr/bin
,3'0/.)root
1.,%)/
A runparts
#1 O O O O root runparts /etc/cron@hourly
#5 > O O O root runparts /etc/cron@daily
55 > O O # root runparts /etc/cron@weekly
>5 > 1 O O root runparts /etc/cron@monthly
## O O O O roo2 rsyn6 -4"B e
e;6)5e 9@)o79 --e;6)5e 9@2/.+@9 -e ss3 --5e)e2e-4<2er e
roo2O-%,.-'8.-.-$-?+"4r+<2.+.! +"4r+<2.+.!
645
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
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:
Ad/bin/sh
A
A /his script will be executed Oa!terO all the other init scripts@
A :ou can put your own initialiCation stu!! in here i! you donXt
A want to do the !ull Sys & style init stu!!@
touch /var/lock/subsys/local
rsyn6 -4"B e
e;6)5e 9@)o79 --e;6)5e 9@2/.+@9 -e ss3 --5e)e2e-4<2er e
roo2O-%,.-'8.-.-$,?+"4r+<2.+.! +"4r+<2.+.!
646
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S+. ,sando >martd para anticipar los desastres
de disco duro
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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.
S+.+. %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).
S+.*. <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 alguienSdominio@com
/dev/sda d scsi a m alguienSdominio@com
/dev/sdb d scsi a m alguienSdominio@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 1 i c 3 l error l sel!test l selective
Y en dscos SCSI equvae a:
/dev/sda 1 i 3 l error l sel!test
Donde:
E
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.
647
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
6
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)<2es2
Incuye en e reporte a btcora de pruebas de S.M.A.R.T.
) se)e62#"e
Agunos dscos tpo ATA-7 (e|empo: Maxtor) ncuyen una btcora de pruebas seectvas.
/
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 1 m alguienSdominio@com
/dev/sda d scsi 1 m alguienSdominio@com
/dev/sdb d scsi 1 m alguienSdominio@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 1 /dev/hda
648
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S*. Cmo crear un disco con instalacin
personali8ada de Cent0> 5.
Autor: $oel Barrios 'ue!as
Correo electrnico: dar!shra"#g"ail.co"
sitio 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.
S*.+. %nstalacin de e#uipamiento lgico necesario.
Se requere a herramenta mKiso&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 systemcon!igkickstart createrepo
La herramenta system(con&ig(KicKstart esta ncuda en todas as versones de Cent0>,
Fedora y 'ed Eat "nterprise inu2, as como as dstrbucones de GNU/Lnux dervadas de
stas.
S*.*. <rocedimientos.
S*.*.+. Creacin de arc$ivo de con&iguracin de instalacin
personali8ada.
Se utza e programa system(con&ig(KicKstart, 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 Ks.c&g,y que ser utzado posterormente en este
documento.
S se carece de system(con&ig(KicKstart 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=DFD, 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:" DesKtop (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 Fideo (programas para sonodo y vdeo) y >panis$ >upport (soporte a espao):
A Hickstart !ile automatically generated by anaconda@
install
649
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
cdrom
lang es-%S@=/<4
keyboard es
network device eth# bootproto dhcp
rootpw iscrypted F1F<vs?o=8cF>!!47riow;b1%ma6.@ht$#
!irewall enabled port)55"tcp
authcon!ig enableshadow enablemd8
selinux en!orcing
timeCone utc 3merica/,exico-(ity
bootloader location)mbr driveorder)sda
A /he !ollowing 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 work
Aclearpart linux
Apart /boot !stype ext? siCe)5## onpart)sda1
Apart / !stype ext? siCe)1#5> ondisk)sda5 grow maxsiCe)88###
Apart swap ondisk)sda? siCe)5#>4
Vpackages
Sbase
Score
Seditors
S!onts
Sgnomedesktop
Sgraphicalinternet
SMava
So!!ice
Sprinting
Ssoundandvideo
Sspanishsupport
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.
S*.*.*. 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 T/centos8personal
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/centos8
mount /dev/cdrom /media/centos8
Se copa competo e contendo de DVD de CentOS 5 en e drectoro de traba|o defndo
prevamente:
cp r /media/centos8/O T/centos8personal/
650
|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/centos8/@discin!o T/centos8personal/
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 Ks.c&g creado con system(con&ig(KicKstart dentro de drectoro de traba|o
Y=centos5(personal=:
cp /donde/este/ks@c!g T/centos8personal/
Edtar e archvo Y=centos5(personal=isolinu2=isolinu2.c&g y aadr e parmetro
KsRcdrom-=Ks.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
<5 options@msg
<? general@msg
<> param@msg
<8 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 memtest46
kernel memtest
append
Soo se necesta aadr KsRcdrom-=Ks.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
<5 options@msg
<? general@msg
<> param@msg
<8 rescue@msg
label linux
kernel vmlinuC
4..en5 #n#2r5=#n#2r5.#/7 :s=65ro/?+:s.6<7
label text
651
|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 memtest46
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 Ks.c&g a nvocar
desde e daogo de !oot- esta defncn.
de!ault linux
prompt 1
timeout 6##
display boot@msg
<1 boot@msg
<5 options@msg
<? general@msg
<> param@msg
<8 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 memtest46
kernel memtest
append
)4!e) /#-4rr4nCe
:erne) "/)#nB
4..en5 #n#2r5=#n#2r5.#/7 :s=65ro/?+:s-.6<7
Para utzar o anteror, a posterormente ncar e DVD de nstaacn personazado, en e dogo
de !oot- se ngresa:
boot" miarranJue
S*.*.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 T/respaldos/
652
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
cp T/centos8personal/repodata/comps@xml T/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/esten/paJuetes/O@rpm T/centos8personal/(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 T/respaldos/comps@xml T/centos8personal/
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.
S*.*.4. Creacin de la imagen %>0.
Una vez termnadas as modfcacones, se crea a magen ISO:
cd T/centos8personal/
mkiso!s 3 *(ent.S-8@5-<inal-;ersonal* o T/midvdcentos8@iso b isolinux/isolinux@bin
c isolinux/boot@cat noemulboot bootloadsiCe > bootin!otable R a v /
T/centos8personal
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 I3!, 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:
growiso!s dvdcompat G /dev/dvd)midvdcentos8@iso
653
|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.
654
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S3. ".ercicios
S3.+. ".ercicio )F>
S3.+.+. %ntroduccin
Haga equpo con agn compaero de curso a fn de poder reazar e procedmento, pruebas y
depuracn entre s.
S3.+.*. <rocedimientos
S3.+.*.+. >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 1666 /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 175@164@#@n(rwBsync)
3. Como root inicie o reinicie e servco de nfs.
service n!s restart
S3.+.*.*. 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).
175@164@#@n"/var/n!s/publico /mnt/publico n!s
noautoBrwBso!tBbgBuserBintr # #
3. Como usuaro (fuano) ntente montar e voumen NFS:
mount /mnt/publico
655
|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 l1ola mundo* R holamundo@txt
ls
656
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S3.*. ".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.
S3.*.+. <rocedimientos
1. Defna que dreccn IP y mascara de subred tene e servdor utzando os sguentes
mandatos:
/sbin/i!con!ig eth# ^ grep inet ^ cut d " ! 5 ^ cut d P ! 1
/sbin/i!con!ig eth# ^ grep ,as ^ cut d " ! >
E prmer mandato donde aparece un \, debe haber dos espacios entre ] 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 sambaclient sambacommon
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:
workgroup ) cursolinux
hosts allow ) 175@164@#@ 156@
inter!aces ) loB eth#B 156@#@#@1/?5B 175@164@#@XXX/5>
remote announce ) 175@164@#@588/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:
657
|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
smbpasswd a Me!e
smbpasswd 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 166# /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
writable ) yes
browseable ) yes
public ) no
printable ) no
valid users ) Me!e contador
directory mode ) 166#
create mode ) #66#
veto !iles ) /O@mp?/O@wma/O@avi/O@wmv/O@mpg/O@mpeg/O@mov/
658
|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 + 0 156@#@#@1
smbclient //156@#@#@1/contabilidad = Me!eV15?Jwe
14.Reace cuaquer tpo de transferenca utzando mget o mput desde e ntrprete smb. A
termnar, utce e2it para sar.
659
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S3.3. ".ercicio Apac$eC y F>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.
S3.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:
175@164@1#@n ***@/#-5o/#n#o.or7 /4#)./#-5o/#n#o.or7 /#-5o/#n#o.or7
175@164@1#.n <2../#-5o/#n#o.or7 5ns./#-5o/#n#o.or7
2) Proceda a crear e archvo de confguracn de dspostvo vrtua en e archvo
=etc=syscon&ig=netPorK(scripts=i&c&g(et$O-+ con e sguente contendo:
$%&'(%)e23$?-
';3$$R)175@164@1#@n
+%/,3SH)588@588@588@#
3) Rence e servco de red de sstema y compruebe que haya evantado a nterfaz vrtua
et$O-+ que acaba de confgurar:
service network restart
i!con!ig e23$?-
4) Genere e rbo de drectoros necesaro e|ecutando o sguente:
mkdir m 1688 /var/www/midominio
mkdir m ?668 /var/www/midominio/public-html
mkdir m #688 /var/www/midominio/ZetcBlogsBmail[
5) Genera a cuenta de usuaro que ser utzada para admnstrar e anftrn vrtua:
useradd s /sbin/nologin d +"4r+***+/#-5o/#n#o midominio
usermod c l3dministrador de midominiom midominio
passwd midominio
6) Confgure os permsos apropados a =var=PPP=mi(dominio y su contendo, e|ecutando o
sguente:
660
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
chown root"apache /var/www/midominio
chown /#-5o/#n#o"apache /var/www/midominio/public-html
chown /#-5o/#n#o"apache /var/www/midominio/etc
chown midominio"midominio /var/www/midominio/mail
chown midominio"midominio /var/www/midominio/logs
chcon t httpd-sys-content-t /var/www/midominio/public-html
ln s! @@/@@/@@/log/httpd/midominioerror-log /var/www/midominio/logs/error-log
ln s! @@/@@/@@/log/httpd/midominioaccess-log /var/www/midominio/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&irtual1ost 175@164@1#@n
_&irtual1ost 175@164@1#@nR
$ocumentRoot /var/www/midominio/public-html
Server+ame www@/#-5o/#n#o.or7
Server3lias /#-5o/#n#o.or7
Server3dmin webmasterS/#-5o/#n#o.or7
%rror0og logs/midominioerror-log
(ustom0og logs/midominioaccess-log combined
_/&irtual1ostR
8) Rence apache y haga comprobacones y dagnstco s fuese necesaro.
service httpd restart
S3.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:
_htmlR
_headR
_titleR9ienvenido a ***./#-5o/#n#o.or7_/titleR
_/headR
_bodyR
_h1R9ienvenido a ***./#-5o/#n#o.or7_/h1R
_pRkiexclY1ola mundod_/pR
_/bodyR
_/htmlR
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):
661
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
!tp <2../#-5o/#n#o.or7
(onnected to amdk6 (175@164@1@1)@
55# 9ienvenido al servidor </; de 3lcance 0ibre@
+ame (<2../#-5o/#n#o.or7"!ulano)"/#-5o/#n#o
??1 ;lease speci!y the password@
;assword"
5?# 0ogin success!ul@ 1ave !un@
Remote system type is =+'X@
=sing binary mode to trans!er !iles@
!tpR65 .!)#6_32/)
!tpR.2 #n5e;.32/)
!tpR!ye
4. Fnamente vsuace a pgna PPP.mi(dominio.org prncpa utzando enks.
elinks http"//***./#-5o/#n#o.or7/
662
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S3.4. ".ercicio- Cuotas de discoL Apac$eL F>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.
S3.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:
175@164@5#@n ***.s-no/!re.6o/ /4#).s-no/!re.6o/ <2..s-no/!re.6o/
175@164@5#@n 5ns.s-no/!re.6o/ s-no/!re.6o/
2) Proceda a crear e archvo de confguracn ocazado en a ruta =etc=syscon&ig=netPorK(
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:
$%&'(%)e23$?,
';3$$R)175@164@5#@n
+%/,3SH)588@588@588@#
3) Rence e servco de red de sstema y compruebe que haya evantado a nterfaz vrtua
et$O-* que acaba de confgurar:
service network restart
i!con!ig e23$?,
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:
663
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
F//0 46>##
S '+ S.3 6rso@4)64n6e)#!re.or7@ usuario@7/4#).6o/@ (
,$$%$8$3$- Y n`mero de serie
544## Y tiempo re!resco
65## Y tiempo entre reintentos
6#>4## Y expiraciQn
46>## Y tiempo total de vida
)
S '+ +S 6rso@alcancelibre@org@
S '+ ,X 1# mail
S '+ /X/ lv)sp!1 a mx allm
S '+ 3 175@164@5#@n
www '+ 3 175@164@5#@n
mail '+ 3 175@164@5#@n
dns '+ 3 175@164@5#@n
!tp '+ 3 175@164@5#@n
5) Modfque =var=named=c$root=etc=named.con& y aada a zona correspondente:
Cone ls-no/!re.6o/f Z
type masterY
!ile ls-no/!re.6o/.BonefY
allowupdate Z noneY [Y
[Y
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/
chown named@named s-no/!re.6o/@Cone
chcon u system-u r obMect-r t named-Cone-t s-no/!re.6o/@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 4# /var/log/messages ^grep named
9) Compruebe que e domno resueve correctamente:
host s-no/!re.6o/ -,I.$.$.-
dig S-,I.$.$.- s-no/!re.6o/
dig S-,I.$.$.- s-no/!re.6o/ ,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$:
664
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Y ;arte superior del archivo /etc/resolv@con!
search 4)64n6e)#!re.or7
search s-no/!re.6o/
n4/eser"er -,I.$.$.-
11) Genere e rbo de drectoros necesaro para e anftrn vrtua a travs de Apache utzando
os sguentes mandatos:
mkdir m 1688 /var/www/sunombre
mkdir m ?688 /var/www/sunombre/public-html
mkdir m #688 /var/www/sunombre/ZlogsBetcBmail[
chcon t httpd-sys-content-t /var/www/sunombre/public-html
12) Genere a cuenta de usuaro que ser utzada para admnstrar e anftrn vrtua:
useradd s /sbin/nologin d /var/www/sunombre sunombre
usermod c lSu +ombre (ompletom sunombre
passwd sunombre
13) Confgure os permsos apropados a =var=PPP=su(nom!re y os drectoros en su nteror
utzando lo siguientes mandatos:
chown root"apache /var/www/sunombre
chown s-no/!re"apache /var/www/sunombre/public-html
chown s-no/!re"apache /var/www/sunombre/etc
chown s-no/!re"s-no/!re /var/www/sunombre/mail
chown s-no/!re"s-no/!re /var/www/sunombre/logs
ln s! @@/@@/@@/log/httpd/sunombreerror-log /var/www/sunombre/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&irtual1ost 175@164@5#@n
_&irtual1ost 175@164@5#@nR
$ocumentRoot /var/www/sunombre/public-html
Server+ame ***@s-no/!re.6o/
Server3lias s-no/!re.6o/
Server3dmin webmasterSs-no/!re.6o/
%rror0og logs/error-log
(ustom0og logs/access-log combined
_/&irtual1ostR
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-no/!re.6o/ s-no/!re.6o/
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:
665
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
webmasterSs-no/!re.6o/ sunombre
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:
sunombre webmasterSs-no/!re.6o/
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 sunombre (uid 8#4)"
<ilesystem blocks so!t hard inodes so!t hard
/dev/hda6 # # # # # #
/dev/hda? 5> # 3$I,$$ 1# # #
S3.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!regsu(nom!re.com=pu!licQ$tml=
Vsuace desde e navegador e anftrn vrtua que se confgur.
Pruebe envar correo a a cuenta vrtua Pe!mastergsu(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:
666
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
_htmlR
_headR
_titleR9ienvenido a ***.s-no/!re.6o/_/titleR
_/headR
_bodyR
_h1R9ienvenido a ***.s-no/!re.6o/_/h1R
_pRkiexclY1ola mundod_/pR
_/bodyR
_/htmlR
3. Pubque como e usuaro su-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 <2..s-no/!re.6o/
(onnected to amdk6 (175@164@1@1)@
55# 9ienvenido al servidor </; de 3lcance 0ibre@
+ame (<2..s-no/!re.6o/"!ulano)"s-no/!re
??1 ;lease speci!y the password@
;assword"
5?# 0ogin success!ul@ 1ave !un@
Remote system type is =+'X@
=sing binary mode to trans!er !iles@
!tpR65 .!)#6_32/)
!tpR.2 #n5e;.32/)
!tpR!ye
4. Fnamente, vsuace a pgna PPP.su(nom!re.com prncpa de utzando e navegador
enks.
e)#n:s 322.?++***.s-no/!re.6o//
5. Utce mutt y enve un mensa|e a usuaro Pe!mastergsu(nom!re.com.
echo l,ensaMe de prueba* ^ mutt s l,ensaMe de prueba* *e!/4s2erOs-
no/!re.6o/
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"//www@sunombre@com+*e!/4#)+
667
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S3.5. ".ercicio- >ervidor %ntermediario M<ro2yN
S3.5.+. %ntroduccin.
Utzando como referenca os sguentes documentos, eabore un reporte por escrto de cada uno
de os mandatos y parmetros utzados en este e|ercco.
Cmo confgurar Squd: Parmetros bscos para servdor de ntermedacn (Proxy).
Cmo confgurar Squd: Acceso por Autentcacn.
Cmo confgurar Squd: Restrccn de acceso a Stos de Red.
Cmo confgurar Squd: Restrccn de acceso a contendo por extensn.
Cmo confgurar Squd: Restrccn de acceso por horaros.
Cmo confgurar Squd: Como confgurar e admnstrador de cache.
<rocedimientos
1@ ;roceda a instalar sJuid y el navegador lynx"
sudo yum y install sJuid lynx
5@ (on!igure la polbtica de S%0inux para permitir conexiones desde cualJuier direcciQn"
setsebool ; sJuid-connect-any 1
?@ (ambie al directorio /etc/sJuid
cd /etc/sJuid
>@ Ienere el subdirectorio listas"
sudo mkdir listas/
5. Genere os archvos que se utzarn para as stas de contro de acceso y caves de
acceso:
sudo touch listas/ZlibresBredlocalBpornoBextensionesBclavesBinocentes[
6. Lstar as propedades de archvo que ser utzado para amacenar as caves de acceso:
ls l listas/claves
7. Cambar atrbutos de ectura y escrtura soo para e usuaro propetaro:
sudo chmod 6## listas/claves
8. Cambar e propetaro de archvo de caves de acceso haca e usuaro s#uid:
sudo chown sJuid@sJuid listas/claves
668
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
9. Lstar de nuevo as propedades de archvo que ser utzado para amacenar as caves
de acceso, y observar cambos:
ls l listas/claves
10.E|ecutar o sguente y asgnar caves de acceso a os usuaros vrtuaes (para este e|ercco,
asgnar a todos #Perty como cave de acceso)
!or usuario in Muanito pepito pedrito paJuito
do
sudo htpasswd listas/claves Fusuario
done
11.Edtar e archvo stas/bres:
sudo vim listas/libres
Poner como nco contendo a dreccn IP de su mquna.
12.Edtar e archvo stas/redoca:
sudo vim listas/redlocal
Poner como contendo as dreccones IP de resto de a LAN. Un rengn por IP.
13.Edtar e archvo stas/porno:
sudo vim listas/porno
Poner como contendo o sguente:
www@sitioporno@com
www@otrositioporno@com
sitioindeseable@com
otrositioindeseable@com
napster
sex
porn
mp?
xxx
adult
wareC
celebri
youtube
babosas
orgasm
petarda
14.Edtar e archvo stas/extensones:
sudo vim listas/extensiones
669
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
15.Poner como contendo:
P@aviF
P@mp5F
P@mp?F
P@mp>F
P@mpgF
P@mpegF
P@movF
P@raF
P@ramF
P@rmF
P@rpmF
P@vobF
P@wmaF
P@wmvF
P@wavF
P@docF
P@xlsF
P@mbdF
P@pptF
P@ppsF
P@aceF
P@batF
P@exeF
P@lnkF
P@pi!F
P@scrF
P@sysF
P@CipF
P@rarF
16.Edtar e archvo stas/nocentes:
sudo vim listas/inocentes
Poner como contendo:
@alcancelibre@org
@google@com@mx
@eluniversal@com@mx
@milenio@com@mx
@edu@mx
@gob@mx
17.Edtar e archvo squd.conf:
sudo vim sJuid@con!
18.Desde vm, e|ecutar a sguente bsqueda:
/http-port ?154
Reempazar por:
670
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
http-port -%,.-'8.$.XXX"4#4#
Donde +S*.+69.O.DDD corresponde a a dreccn IP de su servdor.
19.Desde vm, reazar a sguente bsqueda:
/1## 16 586
Reempazar:
A cache-dir u!s /var/spool/sJuid 1## 16 586
Por:
cache-dir u!s /var/spool/sJuid 815 16 586
20.Desde vm, reazar a sguente bsqueda:
/Aauth-param basic program _uncomment and complete this lineR
Reempazar:
Aauth-param basic program _uncomment and complete this lineR
Por:
auth-param basic program /usr/lib/sJuid/ncsa-auth /etc/sJuid/listas/claves
21.Desde vm, reazar a sguente bsqueda:
/Aacl password proxy-auth R%h='R%$
Descomentar a nea, qutando e smboo #
22.Desde v, reazar a sguente bsqueda:
/acl to-localhost dst 156@#@#@#
Deba|o de sta nea, agregar:
acl redlocal src */etc/sJuid/listas/redlocal*
acl libres src */etc/sJuid/listas/libres*
acl porno url-regex */etc/sJuid/listas/porno*
acl extensiones urlpath-regex */etc/sJuid/listas/extensiones*
acl inocentes dstdomain */etc/sJuid/listas/inocentes*
acl matutino time ,/21< #4"##17"##
23.Desde vm, reazar a sguente bsqueda:
671
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
/http-access deny all
Arrba de dcha nea, agregar:
http-access allow matutino redlocal password dporno dextensiones
http-access allow inocentes redlocal password
http-access allow libres
24.Desde vm, reazar a sguente bsqueda:
/A error-directory
Reempazar o sguente:
A error-directory /usr/share/sJuid/errors/%nglish
Por:
error-directory /usr/share/sJuid/errors/Spanish
25.Rence o, en su defecto, nce a confguracn de Squd a fn de verfcar s hubo errores
fataes:
sudo service sJuid restart
S hay errores, corregros. S no devueve errores pero e servco faa a ncar, examnar
=var=log=s#uid=s#uid.out y reazar correccones:
sudo tail ! /var/log/sJuid/sJuid@out
26.Recargar a confguracn de Squd a fn de verfcar s hubo errores no fataes:
sudo service sJuid reload
S hay errores, reazar correccones pertnentes.
27.Reazar comprobacones utzando navegador en modo texto:
Defna e propo servdor como e vaor para a varabe de ambente http_proxy:
export http-proxy)*http"//-%,.-'8.$.XXX"4#4#/*
Donde +S*.+69.O.DDD corresponde a a dreccn IP de su servdor.
28.Reace una prueba de bsqueda a travs de Googe Mxco para a paabra se2:
lynx *http"//www@google@com@mx/searchjJ)sexo*
672
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Deber permtr reazar a bsqueda e ngresar haca stos cuyo URL contenga a cadena
de caracteres se2.
Defna otro servdor donde a IP de sstema donde est traba|ando est en a sta de
redlocal como e vaor para a varabe de ambente http_proxy:
export http-proxy)*http"// '; de la ;( de al lado"4#4#/*
Reace una prueba de bsqueda a travs de Googe Mxco para a paabra se2:
lynx -466e.2_4))_6oo:#es *http"//www@google@com@mx/searchjJ)sexo*
Deber permtr reazar a bsqueda pero denegar e ngreso haca stos cuyo URL
contenga a cadena de caracteres se2.
673
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S4. ".ercicio- >ervidor D)> Din;mico y >ervidor
DEC<.
Autor: $oel Barrios 'ue!as Correo electrnico: dar(sram en gmail punto com
Sitio de Red: ttp*++))).alcancelibre.org+
7abber 3): dar(sramRjabber.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 Mincluyendo su
pu!licacinL a travs de cual#uier medioL por entidades con &ines de lucroN. 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.
S4.+. %ntroduccin.
Este e|ercco est dseado para ser puesto en prctca en Cent0> 5, "lasti2 +.5, 'ed Eat
"nterprise inu2 5 y W$ite!o2 "nterprise inu2 5 o sstemas operatvos smares, basados
sobre 'ed Eat "nterprise inu2 5. Requere haber estudado en su totadad os sguentes
documentos:
Cmo confgurar un servdor DHCP en una LAN.
Cmo confgurar un servdor de nombres de domno (DNS).
Durante este e|ercco se confgurar un servdor DNS dnmco y un servdor DHCP, ambos
utzando a msma frma dgta a fn de permtr a os centes actuazar sus regstros en e
servdor DNS, un servdor ntermedaro (Proxy) con >#uid y un muro cortafuegos con >$orePall.
S4.*. "#uipamiento lgico necesario.
Ingrese a sstema como e usuaro root.
Proceda a nstaar os paquetes d$cp, !ind, !ind(c$root, cac$ing(nameserver y a versn
me|orada de V (paquete vim(en$anced):
yum y install dhcp bind bindchroot cachingnameserver vimenhanced
S4.3. <rocedimientos
S4.3.+. :odi&icacin de la inter&a8 de acceso $acia %nternet.
1. En caso de utzar una nterfaz con dreccn IP esttca, gnore este paso y os 3 sguentes.
S a nterfaz et$O obtene sus parmetros de red a travs de DHCP, edte con vm e
archvo =etc=syscon&ig=netPorK(scripts=i&c&g(et$O.
vim /etc/syscon!ig/networkscripts/i!c!geth#
2. Puse a teca %nsert.
674
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Modfque e vaor de parmetro <""'D)> de yes a no a fn de evtar que se modfque
automtcamente e archvo =etc=resolv.con& cuando nce e sstema o se refresque a
conexn DHCP. Evte modfcar e vaor de parmetro EWADD', e vaor
DD-DD-DD-DD-DD-DD corresponde a a dreccn MAC espec&ica de dspostvo et$O.
$%&'(%)eth#
123$$R)XX?XX?XX?XX?XX?XX
.+9../)yes
9../;R./.)dhcp
8EERDNS=no
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
3. Rence e servco netPorK a fn de que surtan efecto os cambos.
service network restart
4. Puse a teca %nsert.
Edte con vm e archvo =etc=resolv.con& y asegrese de que est defndo un servdor DNS
vdo para poder acceder haca Internet. E vaor +*3.+*3.+*3.+*3 debe corresponder a
a dreccn IP de servdor DNS de proveedor de servco de acceso haca Internet o de
modem ADSL.
search gateway@5wire@net
nameserver -,3.-,3.-,3.-,3
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
Con&iguracin de servidor D)>.
1. Se debe crear e drectoro =var=named=c$root=var=named=dynamics y confgurar ste
para qu pertenezca a usuaro y grupo named, tenga permsos de ectura, escrtura y
e|ecucn para e usuaro y grupo named (770) y tenga os contextos de SELnux de usuaro
de sstema (systemQu), ro de ob|eto (o!.ectQr) y tpo cache de servco named
(namedQcac$eQt) a fn de permtr escrtura en este drectoro.
cd /var/named/chroot/var/named/
mkdir dynamics/
chmod 66# dynamics/
chown named@named dynamics/
chcon u system-u r obMect-r t named-cache-t dynamics/
cd
2. Genere con e mandato touc$ e archvo =var=named=c$root=var=named=dynamics=red(
local.net.8one:
touch /var/named/chroot/var/named/dynamics/re5-)o64).ne2.Bone
3. Edte con vm e archvo =var=named=c$root=var=named=dynamics=red(local.net.8one:
675
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
vim /var/named/chroot/var/named/dynamics/re5-)o64).ne2.Bone
4. Puse a teca %nsert.
Aada e sguente contendo, donde pro2y.red(local.net corresponde a nombre de
anftrn de servdor que se est confgurando, red(local.net corresponde a nombre de
domno de a red de rea oca con a que se est traba|ando y +S*.+69.+*3.+*3
corresponde a a dreccn IP de servdor para a nterfaz et$+:
F//0 46>##
S '+ S.3 .ro;y.re5-)o64).ne2@ root@re5-)o64).ne2@ (
5##7#418#1 Y n`mero de serie
544## Y tiempo re!resco
65## Y tiempo entre reintentos
6#>4## Y tiempo Jue expira la Cona si deMa de resolver
46>## Y tiempo total de vida
)
S '+ +S .ro;y.re5-)o64).ne2@
S '+ 3 -%,.-'8.-,3.-,3
proxy '+ 3 -%,.-'8.-,3.-,3
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
5. Confgure os permsos de archvo =var=named=c$root=var=named=dynamics=red(
local.net.8one para que ste pertenezca a e usuaro y grupo named y tenga os
contextos de SELnux de usuaro de sstema (systemQu), ro de ob|eto (o!.ectQr) y tpo
zona de servco named (namedQ8oneQt):
cd /var/named/chroot/var/named/dynamics/
chown named"named re5-)o64).ne2.Bone
chcon u system-u r obMect-r t named-Cone-t re5-)o64).ne2.Bone
cd
6. Genere con e mandato touc$ e archvo
=var=named=c$root=var=named=dynamics=+*3.+69.+S*.in(addr.arpa.8one:
touch /var/named/chroot/var/named/dynamics/-,3.-'8.-%,.#n-455r.4r.4.Bone
7. Edte con vm e archvo =var=named=c$root=var=named=dynamics=+*3.+69.+S*.in(
addr.arpa.8one:
vim /var/named/chroot/var/named/dynamics/-,3.-'8.-%,.#n-455r.4r.4.Bone
8. Puse a teca %nsert.
Aada e sguente contendo, donde pro2y.red(local.net corresponde a nombre de
anftrn de servdor que se est confgurando, red(local.net corresponde a nombre de
domno de a red de rea oca con a que se est traba|ando y +*3 corresponde a tmo
octeto de a dreccn IP de servdor para a nterfaz et$+:
F//0 46>##
676
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S '+ S.3 .ro;y.re5-)o64).ne2@ root@re5-)o64).ne2@ (
5##7#418#1 Y n`mero de serie
544## Y tiempo re!resco
65## Y tiempo entre reintentos
6#>4## Y tiempo Jue expira la Cona si deMa de resolver
46>## Y tiempo total de vida
)
S '+ +S .ro;y.re5-)o64).ne2@
15? '+ ;/R .ro;y.re5-)o64).ne2@
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
9. Confgure os permsos de archvo
=var=named=c$root=var=named=dynamics=+*3.+69.+S*.in(addr.arpa.8one para que
ste pertenezca a e usuaro y grupo named y tenga os contextos de SELnux de usuaro
de sstema (systemQu), ro de ob|eto (o!.ectQr) y tpo zona de servco named
(namedQ8oneQt):
cd /var/named/chroot/var/named/dynamics/
chown named"named -,3.-'8.-%,.#n-455r.4r.4.Bone
chcon u system-u r obMect-r t named-Cone-t -,3.-'8.-%,.#n-455r.4r.4.Bone
cd
10.Genere con e mandato touc$ e archvo =var=named=c$root=etc=named.con&:
touch /var/named/chroot/etc/named@con!
11.Edte con vm e archvo =var=named=c$root=etc=named.con&:
vim /var/named/chroot/etc/named@con!
12.Puse a teca %nsert.
Aada o modfque e contendo para que ncuya todo o sguente, donde
192.168.+*3.0/*4 corresponde a a dreccn IP y mscara de subred (en formato de bts)
de a red de rea oca (LAN) con a cua est traba|ando, red(local.net corresponde a
nombre de domno que se utza en a red de rea oca (LAN) con a cua se est
traba|ando y +*3.+69.+S*.in(addr.arpa corresponde a a zona de resoucn nversa de
RFC1918 para a red de rea oca (LAN) con a cua est traba|ando. Modfque a sta de
servdores DNS de parmetro &orParders para que correspondan a os servdores DNS de
su proveedor de acceso haca Internet.
acl *redlocal* Z
156@#@#@1/?5Y
175@164@-,3@#/,JY
[Y
options Z
directory */var/named*Y
dump!ile */var/named/data/cache-dump@db*Y
statistics!ile */var/named/data/named-stats@txt*Y
memstatistics!ile */var/named/data/named-mem-stats@txt*Y
allowrecursion Z redlocalY [Y
allowJuery Z redlocalY [Y
677
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
!orwarders Z ,$$.33.-J'.,$-Y ,$$.33.-J'.-%3Y ,$$.33.-J'.,-I[ [Y
!orward !irstY
[Y
include */etc/named@r!c1715@Cones*Y
include */etc/rndc@key*Y
Cone *re5-)o64).ne2* Z
type masterY
!ile */var/named/dynamics/re5-)o64).ne2@Cone*Y
allowupdate Z key *rndckey*Y [Y
[Y
Cone *-,3.-'8.-%,.#n-455r.4r.4* Z
type masterY
!ile */var/named/dynamics/-,3.-'8.-%,.#n-455r.4r.4@Cone*Y
allowupdate Z key *rndckey*Y [Y
[Y
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
13.Utzando e mandato c$con, confgure os contextos de SELnux para e archvo
=var=named=c$root=etc=named.con&, defnendo ste con ro de ob|eto (o!.ectQr), usuaro
de sstema (systemQu) y archvo de confguracn de servco named (namedQcon&Qt):
chcon u system-u r obMect-r t named-con!-t /var/named/chroot/etc/named@con!
14.Ince (o smpemente rence, s es necesaro) e servco named.
service named start
15.S e servco named 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.
16.S e servco named nc sn errores, utce e mandato c$Kcon&ig para que e servco
named nce automtcamente a prxma vez que arranque e sstema.
chkcon!ig named on
17.Edte con vm e archvo =etc=resolv.con&:
vim /etc/resolv@con!
18.Puse a teca %nsert.
Modfque e contendo para defna como nco servdor DNS a +*7.O.O.+ y defna e
domno predetermnado para a red de rea oca (LAN) con a que se est traba|ando:
search re5-)o64).ne2
nameserver -,I.$.$.-
678
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
Con&iguracin de servidor DEC<.
1. Edte con vm e archvo =etc=d$cpd.con&:
vim /etc/dhcpd@con!
2. Puse a teca %nsert.
Aada o modfque e contendo para que ncuya todo o sguente, donde pro2y.red(
local.net corresponde a nombre de anftrn de servdor que se est confgurando,
+S*.+69.+*3.O corresponde a a dreccn IP de a red de rea oca (LAN) con a cua est
traba|ando, *55.*55.*55.O corresponde a a mscara de subred en formato decma de a
red de rea oca (LAN) con a cua est traba|ando, +*3.+69.+S*.in(addr.arpa
corresponde a a zona de resoucn nversa de RFC1918 para a red de rea oca (LAN)
con a cua est traba|ando, +S*.+69.+*3.+*3 corresponde a a dreccn IP de servdor
que est confgurando, +S*.+69.+*3.*55 corresponde a a dreccn IP de dfusn
(broadcast) de a red de rea oca (LAN) con a cua est traba|ando, red(local.net
corresponde a nombre de domno que se utza en a red de rea oca (LAN) con a cua se
est traba|ando y +S*.+69.+*3.+OO y +S*.+69.+*3.+SS corresponden a os mtes
nferor y superor de rango de dreccones IP que se van a asgnar de manera dnmca.
include */var/named/chroot/etc/rndc@key*Y
serveridenti!ier .ro;y.re5-)o64).ne2Y
ddnsupdatestyle interimY
ddnsdomainname *re5-)o64).ne2@*Y
ddnsrevdomainname *inaddr@arpa@*Y
ignore clientupdatesY
authoritativeY
de!aultleasetime 7##Y
maxleasetime 65##Y
option domainname *re5-)o64).ne2*Y
option ip!orwarding o!!Y
Cone localdomain@ Z
primary 156@#@#@1Y
key rndckeyY
[
Cone -,3.-'8.-%,.#n-455r.4r.4@ Z
primary 175@164@15?@15?Y
key rndckeyY
[
Cone re5-)o64).ne2@ Z
primary 175@164@15?@15?Y
key rndckeyY
[
subnet -%,.-'8.-,3.$ netmask ,55.,55.,55.$ Z
option routers -%,.-'8.-,3.-,3Y
option subnetmask ,55.,55.,55.$Y
option broadcastaddress -%,.-'8.-,3.,55Y
option domainnameservers -%,.-'8.-,3.-,3Y
option ntpservers 5##@5?@81@5#8B 1?5@5>4@41@57B 1>4@5?>@6@?#Y
range -%,.-'8.-,3.-$$ -%,.-'8.-,3.-%%Y
679
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
[
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
3. Edte con vm e archvo =etc=syscon&ig=d$cpd:
vim /etc/syscon!ig/dhcpd
4. Puse a teca %nsert.
Modfque e contendo estabecendo et$+ como argumentos para e servco d$cpd, con a
fnadad de que ste soo funcone a travs de a nterfaz et$+, a cua corresponde a a
nterfaz por donde acceder a red de rea oca (LAN).
A (ommand line options here
$1(;$3RIS)e23-
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
5. Ince (o smpemente rence, s es necesaro) e servco d$cpd.
service dhcpd start
6. S e servco d$cpd 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.
7. S e servco d$cpd nc sn errores, utce e mandato c$Kcon&ig para que e servco
d$cpd nce automtcamente a prxma vez que arranque e sstema.
chkcon!ig dhcpd on
Este documento puede compementarse sguendo os procedmentos de e|ercco ".ercicio-
>ervidor %ntermediario M<ro2yN y corta&uegos con >$orePall.
680
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S5. ".ercicio- >ervidor %ntermediario M<ro2yN y
corta&uegos con >$orePall.
Autor: $oel Barrios 'ue!as Correo electrnico: dar(sram en gmail punto com
Sitio de Red: ttp*++))).alcancelibre.org+
7abber 3): dar(sramRjabber.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 Mincluyendo su
pu!licacinL a travs de cual#uier medioL por entidades con &ines de lucroN. 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.
S5.+. %ntroduccin.
Este e|ercco est dseado para ser puesto en prctca en Cent0> 5, "lasti2 +.5, 'ed Eat
"nterprise inu2 5 y W$ite!o2 "nterprise inu2 5 o sstemas operatvos smares, basados
sobre 'ed Eat "nterprise inu2 5. Requere haber estudado en su totadad os sguentes
documentos:
Cmo confgurar Squd: Parmetros bscos para servdor de ntermedacn (Proxy).
Cmo confgurar Squd: Restrccn de acceso a Stos de Red.
Cmo confgurar squd con soporte para dreccones MAC.
Cmo nstaar y confgurar a herramenta de reportes Sarg.
Cmo confgurar un muro cortafuegos con Shorewa y tres nterfaces de red.
Requere tambn haber reazado os procedmentos descrtos en e e|ercco >ervidor D)>
Din;mico y >ervidor DEC<.
S5.+.+. <oltica- cerrar todo y a!rir solo lo necesario.
Durante este e|ercco se crearn soo tres stas de contro de acceso para Squd. La sta que ser
denomnada li!res permtr acceder bremente y sn restrccones haca Internet. La sta que
ser denomnada red(local soo podr acceder a os stos de Internet cuyos domnos estn
defndos en a sta denomnada sitios(li!res. Es decr, se apcar una potca estrcta que
cerrar e acceso a quenes estn defndos en a sta red(local permtendo soo acceder a sta
sta de stos de Internet controada por e admnstrador.
E muro cortafuegos se confgurar a travs de Shorewa y soo permtr a sada a a red de rea
oca (LAN) para acceder a os servcos de DNS, NTP, FTP-Data, FTP, HTTP, HTTPS, SMTP, SMTP
Submsson, SMTPS, POP3, IMAP, POP3S e IMAPS.
E e|ercco consdera que se dspone de dos nterfaces de red en dos dferentes dspostvos, y que
et$O se utza para acceder haca Internet y et$+ se utza para acceder haca a red de rea oca
(LAN). Cuaquer servco dstnto a DNS, NTP, FTP-Data, FTP, HTTP, HTTPS, SMTP, SMTP
Submsson, SMTPS, POP3, IMAP, POP3S e IMAPS, estar boqueado haca Internet para a red de
rea oca (LAN). Es decr, estarn boqueados para a red de rea oca (LAN) os dversos servcos
de mensa|era nstantnea, redes entre guaes (P2P), BtTorrent, Lmewre y muchos otros
servcos ms.
681
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S5.*. "#uipamiento lgico necesario.
Ingrese a sstema como e usuaro root.
Proceda a mpar a confguracn de cuaquer e|ercco anteror, restaurando e archvo de
confguracn predetermnado de Squd y emnando e drectoro de stas, s acaso ste exstese:
cp a /etc/sJuid/sJuid@con!@de!ault /etc/sJuid/sJuid@con!
rm !r /etc/sJuid/listas
Proceda a nstaar os paquetes $ttpd, a versn me|orada de V (paquete vim(en$anced), a
herramenta de descargas Pget y e navegador para modo texto lyn2:
yum y install httpd wget lynx vimenhanced
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/
wget + http"//www@alcancelibre@org/al/server/30Server@repo
cd
Proceda a nstaar sarg, paquete que consste en una herramenta de reportes para Squd, squd-
arp, paquete modfcado por Acance Lbre y que consste en Squd con soporte para dreccones
MAC, as como tambn e paquete s$orePall, e cua ser utzado para confgurar
posterormente e muro cortafuegos, y e paquete Pe!min, herramenta que se utzar a
termnar todos os procedmentos para admnstrar e servdor competo desde una nterfaz HTTPS.
yum y install sarg sJuidarp shorewall webmin
S5.3. <rocedimientos
S5.3.+. Con&iguracin de >#uid.
1. Confgure a potca de SELnux para permtr conexones desde cuaquer dreccn:
setsebool ; sJuid-connect-any 1
2. Cambe a drectoro /etc/squd
cd /etc/sJuid
3. Genere e subdrectoro listas:
mkdir listas/
4. Genere os archvos que se utzarn para as stas de contro de acceso y caves de
acceso:
682
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
touch listas/ZlibresBredlocalBsitioslibres[
5. Edtar e archvo stas/bres:
vim listas/libres
6. Puse a teca %nsert.
Poner como nco contendo a dreccn MAC de su mquna (por e|empo:
OO-O+-O3-DC-67-*3).
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
7. Puse a teca %nsert.
Edtar e archvo stas/red-oca y aadr a este todas as dreccones MAC de resto de os
equpos de a red de rea oca (LAN):
vim listas/redlocal
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
8. Edtar e archvo stas/stos-bres:
vim listas/sitioslibres
9. Puse a teca %nsert.
Aada como contendo o sguente, susttuyendo os domnos en negrta por domnos
reaes:
.re5-)o64).ne2
./#s-e/.res4s.6o/./;
./#s-.ro"ee5ores.6o/./;
./#s-6)#en2es.6o/
./#s-!4n6os.6o/
./#s-<4!r#64n2es-5e-6o/.245or4s.6o/
./#s-.er#o5#6os-<4"or#2os.6o/
./#s-4n2#"#rs.6o/
@google@com@mx
@docs@google@com
@maps@google@com
@alcancelibre@org
@centos@org
@!edoraproMect@org
@redhat@com
@clamav@net
@moCilla@com
@adobe@com
@Mava@sun@com
@wikipedia@org
683
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
@edu@mx
@gob@mx
@windowsupdate@com
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
10.Edtar e archvo squd.conf:
vim sJuid@con!
11.Desde vm, reace a bsqueda de a cadena $ttpQport 3+*9 e|ecutando:
/http-port ?154
Reempazar por:
A '! you run SJuid on a dualhomed machine with an internal
A and an external inter!ace we recommend you to speci!y the
A internal address"port in http-port@ /his way SJuid will only be
A visible on the internal address@
A
A SJuid normally listens to port ?154
http-port -%,.-'8.-,3.-,3"4#4# transparent
A /3I" https-port
A =sage" Dip"Eport cert)certi!icate@pem Dkey)key@pemE Doptions@@@E
A
Donde +S*.+69.+*3.+*3 corresponde a a dreccn IP para a red de rea oca (LAN) de
servdor que se est confgurando.
12.Desde vm, reazar a bsqueda de a cadena +O +6 *56 e|ecutando o sguente:
/1## 16 586
Reempazar:
A cache-dir u!s /var/spool/sJuid 1## 16 586
Por:
cache-dir u!s /var/spool/sJuid 815 16 586
13.Desde vm, reazar a sguente bsqueda:
/acl to-localhost dst 156@#@#@#
14.De!a.o de sta nea que acaba de buscar y ocazar, agregar o sguente:
684
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
acl all src #@#@#@#/#@#@#@#
acl manager proto cache-obMect
acl localhost src 156@#@#@1/588@588@588@588
acl to-localhost dst 156@#@#@#/4
46) re5-)o64) 4r. "+e26+sC#5+)#s24s+re5-)o64)"
46) )#!res 4r. "+e26+sC#5+)#s24s+)#!res"
46) s#2#os-)#!res 5s25o/4#n "+e26+sC#5+)#s24s+s#2#os-)#!res"
acl SS0-ports port >>?
acl Sa!e-ports port 4#7# A http
acl Sa!e-ports port 51 A !tp
acl Sa!e-ports port >>? A https
15.Desde vm, reazar a sguente bsqueda:
/http-access deny all
16.Arri!a de a nea que acaba de buscar y ocazar, agregar o sguente:
A %xample rule allowing access !rom your local networks@ 3dapt
A to list your (internal) '; networks !rom where browsing should
A be allowed
Aacl our-networks src 175@164@1@#/5> 175@164@5@#/5>
Ahttp-access allow our-networks
A 3nd !inally deny all other access to this proxy
http-access allow localhost
322._466ess 4))o* s#2#os-)#!res re5-)o64)
322._466ess 4))o* )#!res
http-access deny all
A /3I" http-access5
A 3llowing or $enying access based on de!ined access lists
17.Confgure e soporte a espao para os mensa|es de error que mostrar Squd.
Desde vm, reazar a sguente bsqueda:
/A error-directory
Reempazar o sguente:
Aerror-directory /usr/share/sJuid/errors/%nglish
A
A$e!ault"
V error_5#re62ory +sr+s34re+sC#5+errors+En7)#s3
A /3I" maximum-single-addr-tries
A /his sets the maximum number o! connection attempts !or a
Por:
685
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Aerror-directory /usr/share/sJuid/errors/%nglish
A
A$e!ault"
error_5#re62ory +sr+s34re+sC#5+errors+S.4n#s3
A /3I" maximum-single-addr-tries
A /his sets the maximum number o! connection attempts !or a
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
18.Rence o, en su defecto, nce a confguracn de Squd a fn de verfcar s hubo errores
fataes:
service sJuid restart
S hay errores, corregros. S no devueve errores pero e servco faa a ncar, examnar
=var=log=s#uid=s#uid.out y reazar correccones:
tail ! /var/log/sJuid/sJuid@out
19.Recargar a confguracn de Squd a fn de verfcar s hubo errores no fataes:
service sJuid reload
S hay errores, reazar correccones pertnentes.
20.Aada e servco s#uid a os servcos de arranque de sstema:
chkcon!ig sJuid on
21.Reazar comprobacones utzando navegador en modo texto:
Defna a dreccn IP de servdor que acaba de confgurar como e vaor para a varabe de
entorno $ttpQpro2y:
export http-proxy)*http"//-%,.-'8.-,3.-,3"4#4#/*
Donde +S*.+69.+*3.+*3 corresponde a a dreccn IP de servdor que acaba de
confgurar.
22.Genere un aas para e mandato lyn2 que especfque se se acepten todas as gaetas de
todos os stos cuando sea necesaro:
alias lynx)*lynx -6oo:#es -2r46e*
23.Reace una prueba de bsqueda a travs de Googe Mxco para a paabra se2:
lynx *http"//www@google@com@mx/searchjJ)sexo*
686
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Deber permtr reazar a bsqueda e ngresar haca cuaquer sto en Internet mentras
que a dreccn MAC de propo servdor est ncuda en a sta li!res, es decr e archvo
=etc=s#uid=listas=li!res.
24.Reace as comprobacones para as restrccones de acceso que soo permten acceder
haca os stos de Internet cuyos domnos estn defndos en a sta sitios(li!res. Tene
una de dos opcones:
a. S exste otro servdor con dntca confguracn, defna ahora a dreccn IP de ste
como e vaor de a varabe de entorno $ttpQpro2y:
export http-proxy)*http"//direcciQn '; otro servidor similar"4#4#/*
b. S soo exste e servdor que se acaba de confgurar, edte de nuevo s#uid.con&:
vim sJuid@con!
Reace a sguente bsqueda:
/http-access allow libres
Reempace $ttpQaccess alloP li!res por o sguente, a fn de que a sta li!res
soo pueda acceder a os stos de Internet cuyo domno est en a sta sitios(
li!res, es decr e archvo =etc=s#uid=listas=sitios(li!res:
http-access allow s#2#os-)#!res libres
Recargue a confguracn de Squd.
service sJuid reload
Defna a dreccn IP de servdor que acaba de confgurar como e vaor para a
varabe de entorno $ttpQpro2y:
export http-proxy)*http"//-%,.-'8.-,3.-,3"4#4#/*
Donde +S*.+69.+*3.+*3 corresponde a a dreccn IP de servdor que acaba de
confgurar.
)0@A- A termnar las prue!as, es mportante reverta este 1ltimo cam!io a fn
de restabecer a potca de sada bre a quenes estn en a sta li!res.
25.Utce e navegador lyn2 reazando una bsqueda a travs de Googe Mxco para a
paabra se2:
lynx *http"//www@google@com@mx/searchjJ)sexo*
Lo anteror deber permtr reazar a bsqueda pero soo permtendo e ngreso cuaquer
sto de Internet cuyo domno est ncudo en a sta sitios(li!res, es decr e archvo
=etc=s#uid=listas=sitios(li!res.
687
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
26.A fn de concur e e|ercco, emne os vaores de a varabe de entorno $ttpQpro2y:
unset http-proxy
Con&iguracin de >$orePall.
1. S todo o anteror funcon correctamente, contne con a confguracn de >$orePall. En
caso contraro, regrese sobre os pasos que sean necesaros hasta hacer as correccones
necesaras.
2. Cambe a drectoro =etc=s$orePall:
cd /etc/shorewall
3. Edte con vm e archvo s$orePall.con&:
vim shorewall@con!
4. Puse a teca %nsert.
Cambe >@A'@,<Q")AB"DR)o por >@A'@,<Q")AB"DRyes:
S/3R/=;-%+390%$):es
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
5. Edte con vm e archvo 8ones.
vim Cones
6. Puse a teca %nsert.
Deba|o de a zona &P y antes de a tma nea, a cua deber respetar y |ams modfcar o
coocar datos despus de sta, aada as zonas net y loc defnendo que son de tpo ipv4:
!w !irewall
ne2 #."J
)o6 #."J
A03S/ 0'+% 3$$ :.=R %+/R'%S 39.&% /1'S 0'+% $. +./ R%,.&%
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
7. Edte con vm e archvo inter&aces:
vim inter!aces
8. Puse a teca %nsert.
688
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Defna que a zona net corresponder a a nterfaz et$O, con auto-deteccn de dreccn
de dfusn (broadcast) y con opcones de d$cp y !lacKlist (para e uso de archvo de sta
negra). Repta de msmo modo para a zona loc, pero defnendo que corresponde a a
nterfaz et$+:
ne2 e23$ 5e2e62 536.A!)46:)#s2
)o6 e23- 5e2e62 536.A!)46:)#s2
A03S/ 0'+% 3$$ :.=R %+/R'%S 39.&% /1'S 0'+% $. +./ R%,.&%
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
9. Edte con vm e archvo mas#:
vim masJ
10.Puse a teca %nsert.
Defna que todo e trfco provenente de a nterfaz eth1 ser enmascarado con a dreccn
IP de a nterfaz eth0:
e23$ e23-
A03S/ 0'+% 3$$ :.=R %+/R'%S 39.&% /1'S 0'+% $. +./ R%,.&%
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
11.Edte con vm e archvo !lacKlist:
vim blacklist
12.Puse a teca %nsert.
Defna estar en sta negra a dreccn IP *O9.9+.+S+.++O, que corresponde a
meebo.com, un servco que ofrece un cente HTTP para mensa|era nstantnea para e
servco MSN Messenger, boqueando soo as conexones TCP haca ste a travs de e
puerto 443:
,$8.8-.-%-.--$ 26. 8$AJJ3
A03S/ 0'+% 3$$ :.=R %+/R'%S 39.&% /1'S 0'+% $. +./ R%,.&%
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
Nota: Puede repetr esta operacn para otros stos de Internet que ofrezcan centes HTTP
para os dversos servcos de mensa|era nstantnea a travs de HTTPS (puerto 443).
13.Edte con vm e archvo policy:
vim policy
689
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
14.Puse a teca %nsert.
Defna como potcas predetermnadas que a zona &P puede acceder haca cuaquer otra
zona, que se descartarn (D'0<) as conexones provenentes desde a zona net haca
cuaquer otra zona guardando en a btcora de sstema toda a actvdad descartada, y
que se rechazarn ('"J"C@) conexones provenentes desde a zona loc haca cuaquer
otra zona guardando en a btcora de sstema toda a actvdad rechazada.
<* 4)) ACCE8T
ne2 4)) DRO8 #n<o
)o6 4)) REYECT #n<o
A03S/ 0'+% 3$$ :.=R %+/R'%S 39.&% /1'S 0'+% $. +./ R%,.&%
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
15.Edte con vm e archvo rules:
vim rules
16.Puse a teca %nsert.
Defna que todo e trfco provenente de a red de rea oca (LAN) (zona loc) ser
redrgdo a puerto 8080 de servdor que acaba de confgurar cuando as conexones sean
soo por TCP para pueto 80 (E@@<).
REDLRECT )o6 8$8$ 26. 8$
A03S/ 0'+% 3$$ :.=R %+/R'%S 39.&% /1'S 0'+% $. +./ R%,.&%
17.Defna que a red de rea oca (LAN) (zona loc) podr acceder haca Internet (zona net)
soo a os servcos de DNS, NTP, FTP-Data, FTP, HTTPS, SMTP, SMTP Submsson, SMTPS,
POP3, IMAP, POP3S e IMAPS.
R%$'R%(/ loc 4#4# tcp 4#
ACCE8T )o6 ne2 26. ,$A,-A,5AJJ3
ACCE8T )o6 ne2 26. ,5AJ'5A58I
ACCE8T )o6 ne2 26. --$A-J3A%%3A%%5
ACCE8T )o6 ne2 26. 53A-,3
ACCE8T )o6 ne2 5. 53A-,3
A03S/ 0'+% 3$$ :.=R %+/R'%S 39.&% /1'S 0'+% $. +./ R%,.&%
18.Defna que a red de rea oca (LAN) (zona loc) podr acceder haca e cortafuegos (zona
&P) para a os servcos de SSH, DNS, HTTP y Webmn (en caso de estar nstaado).
R%$'R%(/ loc 4#4# tcp 4#
3((%;/ loc net tcp 5#B51B58B>>?
3((%;/ loc net tcp 58B>68B846
3((%;/ loc net tcp 11#B1>?B77?B778
3((%;/ loc net tcp 8?B15?
3((%;/ loc net udp 8?B15?
ACCE8T )o6 <* 26. ,,A53A8$A-$$$$
ACCE8T )o6 <* 5. 53
A03S/ 0'+% 3$$ :.=R %+/R'%S 39.&% /1'S 0'+% $. +./ R%,.&%
690
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
Puse a teca "sc, guarde cambos y saga de vm pusando a combnacn de tecas -2 y
uego a teca = (")@"').
19.Ince e servco s$orePall.
service shorewall start
20.S e servco s$orePall nco 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.
21.S e servco s$orePall nc sn errores, utce e mandato c$Kcon&ig para que e servco
s$orePall nce automtcamente a prxma vez que arranque e sstema.
chkcon!ig shorewall on
22.Para reazar pruebas, se necesta confgurar un equpo que acceda desde a nterfaz et$+
y que use a dreccn IP de servdor que acaba de confgurar como puerta de enlace
predeterminada. Es mportante recordar que cuaquer servco dstnto a DNS, NTP, FTP-
Data, FTP, HTTP, HTTPS, SMTP, SMTP Submsson, SMTPS, POP3, IMAP, POP3S e IMAPS,
estar boqueado para a red de rea oca (LAN).
%nstalar y con&igurar la $erramienta de reportes >arg.
Por favor, sga os procedmentos descrtos en e documento ttuado Cmo instalar y
con&igurar la $erramienta de reportes >arg.
691
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S6. ".ercicio- con&iguracin del sistema para
inu2L Apac$eL <E< y :y>B
Este e|ercco e mostrar como confgurar e sstema para hacer uso de nux, Apache, <HP y
:ySOL, o que se conoce como L.A.M.P., y mostrar tambn agunas funcones bscas de PHP.
Este e|ercco se reaza como cortesa a fn de preparar os sstemas para poder ser utzados por
quenes tomarn e curso de PHP y MySOL.
1. S acaso exstera, por favor emne a confguracn en Apache hecha durante as prctcas
anterores:
rm ! /etc/httpd/con!@d/virtuales@con!
rm ! /etc/httpd/con!@d/misvariables@con!
2. A fn de mpar e sstema de as confguracones dervadas de este curso, emne os servcos
que no sern necesaros e|ecutando o sguente:
yum y remove bind cachingnameserver n!sutils samba
yum y remove vs!tpd sJuirrelmail sJuid <#res24r2er #.24!)es
3. Instae o verfque que est nstaado todo o necesaro e|ecutando o sguente:
yum y install httpd php phpmysJl blue!ish mysJl mysJlserver
4. Aada os servcos de Apache y MySOL a nco de sstema:
chkcon!ig httpd on
chkcon!ig mysJld on
5. Proceda a crear e drectoro de traba|o =var=PPP=cursolamp y e rbo de traba|o
correspondente, sobre e cua podr reazar pruebas de confguracn de servcos sn
necesdad de tocar archvos de confguracn centra e|ecutando o sguente:
mkdir p /var/www/cursolamp/
mkdir p /var/www/cursolamp/public-html/
mkdir p /var/www/cursolamp/cgibin/
mkdir p /var/www/cursolamp/etc/
mkdir p /var/www/)o7-6rso)4/./
ln s /var/www/)o7-6rso)4/. /var/www/cursolamp/log
6. Proceda a crear un usuaro especfco para traba|ar con e drectoro de traba|o
/var/www/cursoamp/. Dcho usuaro deber daro de ata con acceso a ntrprete de mandatos
(She) a fn de poder permtr acceso por SSH, asgnando como clave de acceso a paabra
#Perty. E|ecute o sguente:
useradd s /bin/bash m d +"4r+***+6rso)4/. cursolamp
passwd 6rso)4/.
7. Asgne os permsos necesaros a drectoro de traba|o y drectoros subordnados en e nteror,
e|ecutando o sguente:
692
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
chown 6rso)4/..4.463e /var/www/cursolamp
chmod 1688 /var/www/cursolamp
chown cursolamp@apache /var/www/cursolamp/public-html/
chown cursolamp@apache /var/www/cursolamp/cgibin/
chown cursolamp@apache /var/www/cursolamp/etc/
chown root@root /var/www/)o7-6rso)4/./
ln s /var/www/cursolamp/public-html
/var/www/cursolamp/$esktop/public-html
8. Confgure apache para que utce e domno PPP.dominio(red(local asocado a de a
dreccn IP 192.168.0.n en e archvo de confguracn =etc=$ttpd=con&.d=cursolamp.con&
utzando e sguente contendo:
+ame&irtual1ost O"4#
_&irtual1ost O"4#R
Server+ame ***@5o/#n#o-re5-)o64)
Server3lias ***
$ocumentRoot /var/www/cursolamp/public-html/
Server3dmin cursolampS/4#).5o/#n#o-re5-)o64)
%rror0og /var/www/)o7-6rso)4/./error-log
(ustom0og /var/www/)o7-6rso)4/./access-log combined
A ;ermitir ver contenido de directorio y activar uso de archivos @htaccess
_$irectory /var/www/cursolamp/public-html/R
.ptions 'ndexes 'ncludes <ollowSym0inks
3llow.verride 3ll
.rder allowBdeny
3llow !rom all
_/$irectoryR
A (on!igurar directorio cgibin independiente al del sistema@
Script3lias /cgibin/ */var/www/cursolamp/cgibin/*
_$irectory */var/www/cursolamp/cgibin*R
.ptions 'ncludes
3llow.verride +one
.rder allowBdeny
3llow !rom all
_/$irectoryR
_/&irtual1ostR
9. Rence o nce e servco de Apache e|ecutando o sguente:
service httpd restart
10.Cerre a sesn de root e ingrese como e usuaro cursolamp.
11.Como e usuaro cursolamp, cambe a drectoro -/htm/
cd T/html/
12.Utzando cuaquer edtor de texto (v o buefsh, por e|empo), genere e archvo
-/htm/cabecera.php utzando e sguente contendo:
_html lang)*es*R
_headR
693
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
13.Utzando cuaquer edtor de texto (v o buefsh, por e|empo), genere e archvo
-/htm/cuerpo.php utzando e sguente contendo:
_/headR
_body style)*backgroundcolor" redY color" A<<<<##Y !ontweight" bolderY *R
14.Utzando cuaquer edtor de texto (v o buefsh, por e|empo), genere e archvo
-/htm/pe.php utzando e sguente contendo:
_/bodyR
_/htmlR
15.Utzando cuaquer edtor de texto (v o buefsh, por e|empo), genere e archvo
-/htm/e|empo-ncudes.php utzando e sguente contendo:
_jphp !unction titulo() Z echo *;kaacuteYgina de prueba ;1;*Y [ jR
_jphp include *cabecera@php*Y jR
_titleR_jphp titulo() jR_/titleR
_jphp include *cuerpo@php*Y jR
_h1R_jphp titulo() jR_/h1R
_pR$ocumento de eMemplo de !unciones bkaacuteYsicas de ;1;@_/pR
_pR1oy es _jphp echo date(*l dS o! < : h"i"s 3*)YjR_/pR
_jphp include *pie@php*Y jR
16.Utce cuaquer navegador, ya sea en modo texto o ben en modo grfco y vsuace e
documento ocazado en e ur http://PPP.dominio(redlocal/e|empo-ncudes.php.
elinks http"//***.5o/#n#o-re5)o64)/eMemploincludes@php
694
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
S7. ".ercicio- Con&iguracin del sistema como
estacin de tra!a.o
1. Edte e archvo /etc/nttab y ocace a sguente nea:
id"3"initde!ault"
2. Lo anteror estabece que e sstema nca en nve de e|ecucn 3; es decr, en modo
mutusuaro competo, sn modo grfco actvo. A fn de que e sstema nce en modo grfco,
cambe a nea anteror por esta otra:
id"5"initde!ault"
3. Locace ms adeante en este msmo archvo o sguente:
A Run gettys in standard runlevels
1"5?>5"respawn"/sbin/mingetty tty1
5"5?>5"respawn"/sbin/mingetty tty5
?"5?>5"respawn"/sbin/mingetty tty?
>"5?>5"respawn"/sbin/mingetty tty>
8"5?>5"respawn"/sbin/mingetty tty8
6"5?>5"respawn"/sbin/mingetty tty6
4. Lo anteror especfca que as ses termnaes de texto estarn habtadas en os nvees de
e|ecucn 2, 3, 4 y 5. Se deshabtarn as ses termnaes soamente en e nve de e|ecucn 5.
Edte o anteror de modo que quede de sguente modo:
A Run gettys in standard runlevels
1"5?>"respawn"/sbin/mingetty tty1
5"5?>"respawn"/sbin/mingetty tty5
?"5?>"respawn"/sbin/mingetty tty?
>"5?>"respawn"/sbin/mingetty tty>
8"5?>"respawn"/sbin/mingetty tty8
6"5?>"respawn"/sbin/mingetty tty6
5. Edte e archvo /etc/rc.oca y aada a nstruccn /usr/bn/cear, de modo que a pantaa sea
mpada una vez que haya concudo e arranque.
Ad/bin/sh
A
A /his script will be executed Oa!terO all the other init scripts@
A :ou can put your own initialiCation stu!! in here i! you donXt
A want to do the !ull Sys & style init stu!!@
touch /var/lock/subsys/local
/usr/bin/clear
6. Modfque /etc/grub.conf y ocace a nea de nceo:
title (ent.S (5@6@14154@5@1@el8)
root (hd#B#)
kernel /vmlinuC5@6@14154@5@1@el8 ro root)039%0)/
initrd /initrd5@6@14154@5@1@el8@img
695
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
7. Aada os parmetros r$g! y #uiet a a nea que especfca e nceo a e|ecutar, teniendo
cuidado de de.ar un espacio despus de rootRAB"R= ya #ue de otro modo no podr;
iniciar el sistema:
title (ent.S (5@6@14154@5@1@el8)
root (hd#B#)
kernel /vmlinuC5@6@14154@5@1@el8 ro root)039%0)/ r37! C#e2
initrd /initrd5@6@14154@5@1@el8@img
8. Instae e paquete denomnado r$g!, e cua es un programa que har que e sstema tenga un
arranque grfco ms amstoso para e usuaro no-tcnco:
yum y install rhgb
9. Ince una sesn grfca con e mandato xnt. Esto ncar una sesn grfca smpe con una
nca termna xrvt. )o olvide posicionar el puntero del ratn so!re la terminal a &in de
darle &oco.
10.E|ecute e mandato gdmsetup y estabezca que e sstema nce automtcamente con e
usuaro cursoamp.
11."limine todas las inter&aces virtuales; es decr, todos os archvos i&c&g(et$O-` ocazados
dentro de drectoro =etc=syscon&ig=netPorK(scripts=
rm -f /etc/sysconfg/network-scrpts/fcfg-eth0:*
12.Edte e archvo =etc=$osts y emne todas a resoucones ocaes asocadas a as dferentes
dreccones IP que fueron confguradas a o argo de curso. E archvo =etc=$osts debe quedar
ncamente con e sguente contendo:
696
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
A $o not remove the !ollowing lineB or various programs
A that reJuire network !unctionality will !ail@
156@#@#@1 localhost@localdomain localhost
13.Edte tambn e archvo /etc=syscon&ig=netPorK y estabezca de nuevo
local$ost.localdomain como E0>@)A:" de sstema. Emne tambn a nea que
deshabta a confguracn de Zeroconf. De modo ta, e archvo =etc=syscon&ig=netPorK debe
quedar ncamente con e sguente contendo:
+%/2.RH'+I)yes
1.S/+3,%)localhost@localdomain
14.Confgure de nuevo a nterfaz eth0; esta vez como DEC< y utzando e mandato netcon&ig.
Desde cuaquer termna, como e usuaro root, e|ecute e mandato netcon&ig.
15.'einicie el sistema y compruebe que ste o hace con rhgb y que adems nca
automtcamente con a sesn de usuaro cursoamp.
697
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
)otas
698
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
)otas
699
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
)otas
700
|oe Barros Dueas Confguracn de Servdores con GNU/Lnux
)otas
701