Documentos de Académico
Documentos de Profesional
Documentos de Cultura
DebianHackers Elementals
DebianHackers Elementals
Elementals
2014
Editorial
En Debian Hackers estamos de celebracin.Ya son cuatro aos
desde que a Dabo y Diego les di por abrir una web en la que contar sus
fechoras a mandos de la espiral rosada; ms de dos desde que nos unimos
Euge y un servidor. Y esto sigue con la misma fuerza de siempre.
Supongo que el secreto est en esa especie de ciberanarqua reinante que
hace que publiquemos nuestra particular celebracin una semana y pico
despus del aniversario. Cuando y como surja, sin presiones, sin
obligaciones. Cualquier otra cosa sera contraria a la naturaleza del sitio, al
espritu con el que naci Debian Hackers. Pero mentira si dijera que ese
es el nico secreto. Porque la verdad es que el motor de todo esto sois
vosotros. S, vosotros, que nos leis, que nos escribs, que nos ayudis a
dar forma a esta pequea comunidad debianita. Es por vosotros que nos
metimos en este fregao y hemos cargado cincuenta y tantas pginas de
ilusin, ganas y conocimiento libre. Hablo en nombre de los cuatro
cuando digo que es un verdadero orgullo publicar el Elementals y que
confamos en que lo disfrutis al menos tanto como hemos disfrutado
nosotros preparndolo.
Y que sean, por lo menos, otros cuatro.
DH Elementals
3
ndice de contenidos
De puertos y frewalls..........................................................................................................................................4
Nmap: escner de puertos...................................................................................................................................8
Entendiendo la multiarquitectura en Debian GNU/Linux con Citrix......................................................12
Instalar Skype en debian multiarquitectura..................................................................................................15
S.M.A.R.T monitoring o como evitar lgrimas y sudores con tus discos duros.......................................18
Para programar, primero entiende a tu ordenador......................................................................................22
Entendiendo los lenguajes de programacin.................................................................................................28
Cmo crear backups cifrados e incrementales en Debian y derivados con Dj Dup...........................34
Seguridad y optimizacin de servidores GLAMP........................................................................................40
CC by-sa 2009-2014 DebianHackers.net
4
DH Elementals
Publicado originalmente el 19 de Marzo de 2012
Debish
Cientfco en construccin y curioso por naturaleza. Defensor del
conocimiento libre como motor del desarrollo social, tecnolgico e
intelectual. Debianita confeso desde tiempos de Sarge. Multitarea.
A diario establecemos conexiones in!nidad de conexiones con m"ltit"d de e#"i$os
con sede %&sica en el l"'ar m(s rec)ndito #"e $"edas ima'inar. Conexiones #"e deben
ser '"iadas y com$artidas entre *arias a$licaciones $ara #"e todo %"ncione como
es$eramos desde la m(s modesta +A, hasta el con-"nto de la .orld .ide .eb.
/eamos c)mo se 'estiona el tr(!co de datos entre n"estras m(#"inas y las del resto
del m"ndo.
01"2 es "n $"erto de red3
Un puerto de red es una inter%a4 no fsica mediante la cual dos muinas
intercambian datos a tra!"s de un ser!icio concreto. Seg#n el modelo 567 $Open
System Interconnection% su administracin se corresponde con la capa & $transporte%.
Cada puerto debe estar identifcado por un n#mero ue lo 'ace #nico y permite asociarlo a un
ser!icio determinado, de tal forma ue las aplicaciones puedan saber u" tipo de informacin
encontrarn en "l. (racias a esta identifcacin un!oca, es posible la m"lti$lexaci)n $en su
acepcin correspondiente a redes y modelo )S*%, o lo ue es lo mismo, la posibilidad de en!iar
informacin desde !arias aplicaciones de forma simultnea a tra!"s de una cone+in.
,l n#mero de puerto se indica mediante una palabra $cadena fnita de bits% de -. bits, por lo ue
e+isten /01 2 .3343 puertos diferentes. 5unue en principio podemos utilizar cualuiera de ellos
para cualuier ser!icio, la 7A,A
1
$Internet Asigned Names Authority% establece una relacin
estndar puerto6ser!icio, en !irtud de la cual clasifcamos los puertos de red en7
8"ertos bien conocidos9 los inferiores al -8/&. Suelen estar reser!ados para procesos
del sistema y como su nombre indica son utilizados por protocolos 9bien conocidos: como
pueden ser 'ttps, ftp, ss', etc. Su utilizacin reuiere permisos de administrador. Suelen ir
del lado del ser!idor.
- ,n Debian, pod"is ec'ar un !istazo al fc'ero /etc/services para !er una relacin de los puertos y ser!icios a
los ue se encuentran asociados.
CC by-sa 2009-2014 DebianHackers.net
DH Elementals
:
8"ertos re'istrados9 ;os comprendidos entre el -8/& y el &<-3-. Son de libre
aplicacin y adems e+iste un listado en la *5=5 ue especifca ue protocolo usa
cada uno de ellos.
8"ertos din(micos o $ri*ados9 del &<-3/ al .3343. Son puertos efmeros o de uso
temporal. =ormalmente son utilizados por la muina cliente.
8"erto 6er*icio
/- >?@
// SSA
/3 SM?@
34 D=S
B8 A??@
--8 @)@4
-&4 *M5@
&&4 A??@S
<<4 *M5@ SS;
<<3 @)@ SS;
;abla1.- @uertos predeterminados para algunos de los ser!icios ms utilizados.
0C)mo $"edo saber #"2 $"ertos ten'o abiertos en mi m(#"ina3
5 pesar de ue e+isten di!ersas aplicaciones on6line ue escanean los puertos ms comunes de
tu muina para comprobar si estn abiertos, la meCor opcin es utilizar una 'erramienta propia.
,n sistemas (=UDlinu+ contamos con netstat7
user@machine:~ $ netstat -tuna
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address orei!n Address State
tc" # # $%&'#'#'$:%( #'#'#'#:) LIS*+,
tc" # # #'#'#'#:-.-&/ #'#'#'#:) LIS*+,
tc" # # #'#'#'#:$$$ #'#'#'#:) LIS*+,
tc" # # $/%'$.0'$'$.%:1%&/( &-'$%('%1#'%%0:0# +S*A2LIS3+4
tc". # # ::$:%( :::) LIS*+,
tc". # # :::1//-# :::) LIS*+,
tc". # # :::$$$ :::) LIS*+,
ud" # # #'#'#'#:($0&1 #'#'#'#:)
ud" # # #'#'#'#:0## #'#'#'#:)
ud". # # :::0## :::)
ud". # # :::$$$ :::)
ud". # # :::(1(1 :::)
ud". # # :::(1((- :::)
ud". # # :::(-.-1 :::)
CC by-sa 2009-2014 DebianHackers.net
<
DH Elementals
;os parmetros -t y -u indican a netstat ue muestre las cone+iones realizadas mediante los
protocolos ;C8 y =D8 respecti!amente, pod"is fltrar la salida a !uestro antoCo $muy
recomendable ec'ar un oCo al man de netstat%.
Gestin de puertos: Iptables y ufw
Como ya sab"is, net!lter es el frameEorF encargado de manipular y procesar pauetes de red
en el Fernel linu+. , i$tables una de las 'erramientas ms potentes construdas sobre dic'o
frameEorF, un freEall ue permite confgurar las tablas, cadenas y reglas de netflter. @or tanto,
la meCor manera de gestionar el trfco de pauetes desde y 'acia nuestra muina es 'acer uso
de la mencionada 'erramienta.
Sin embargo, la confguracin de iptables se puede complicar ms de la cuenta, as ue
optaremos por utilizar otra aplicacin ue nos permita 'acerlo de forma ms sencilla. Me refero a
"%>, un sencillo y completo freEall ue nos ayudar en la tarea y ue adems dispone de
interfaz grfca $'"%>%. @od"is encontrarlo sin problema en los repositorios Debian.
root@machine:~ # aptitude install ufw
Como cada muina es un mundo y adems cumple una serie de funciones, es imposible dar una
receta uni!ersal a seguir al pie de la letra. Sin embargo, una buena forma de proteger nuestras
muinas es cerrar de forma predeterminada todos los puertos y luego abrir tan slo auellos ue
necesitemos.
Geamos cmo 'acerlo7
-% 5rrancamos el freEall
root@machine:~ # ufw enable
/% Cerramos todos los puertos de forma predeterminada
root@machine:~ # ufw default deny
CC by-sa 2009-2014 DebianHackers.net
DH Elementals
?
4% 5Hadimos reglas para abrir los puertos ue nos interesen. Se puede indicar el nombre del
ser!icio o bien del puerto7
root@machine:~ # ufw allow ssh
root@machine:~ # ufw allow 21
Si en alg#n momento ueremos eliminar alguna de las reglas creadas basta con teclear7
root@machine:~ # ufw delete allow ssh
5dems, podemos !er el estado del freEall mediante7
root@machine:~ # ufw status
I acti!ar un registro de logs, ue se almacenarn en /var/log/messages, tecleando7
root@machine:~ # ufw logging on
@or #ltimo, decir ue tambi"n se podra 'aber realizado el proceso in!erso, esto es, abrir todos los
puertos por defecto $idem ue el punto /, pero con el parmetro allow% e ir cerrando uno por uno
$idem ue el punto 4, pero indicando deny%. Si ec'is un oCo al manual !er"is ue tambi"n es
posible permitir o denegar las cone+iones desde una determinada *@ o rango de *@Js, permitir el
acceso a una *@ a un slo ser!icio y casi tantas combinaciones en forma de reglas como se os
ocurran.
root@machine:~ # ufw allow from 192.168.1.!2"
root@machine:~ # ufw allow from 192.168.1.!2" to any app ssh
I eso es todo, como !eis 'a sido un artculo bastante generalista en el ue se 'a tratado lo ms
bsico de entre lo bsico. 5 !er si con esta peueHa introduccin os animis a indagar ms en el
apasionante mundo de las redes.
CC by-sa 2009-2014 DebianHackers.net
DH Elementals
@
Publicado originalmente el 8 de Octubre de 2012
Debish
Cientfco en construccin y curioso por naturaleza. Defensor del
conocimiento libre como motor del desarrollo social, tecnolgico e
intelectual. Debianita confeso desde tiempos de Sarge. Multitarea.
6i'"iendo con la estr"ct"ra del art&c"lo anterior hablaremos de nma$. ,"e*amente a
ni*el b(sico $ara #"e sir*a de recordatorio a #"ienes ya lo conoc&an y de introd"cci)n
a los m(s no*eles. En este caso la doc"mentaci)n y cantidad de o$ciones de "so son
in!nitas as& #"e $ara todo lo #"e no cabe en esta entrada recomiendo "sar la '"&a de
re%erencia de nma$.
0A $or #"2 nma$3
@orue no slo es una 'erramienta fundamental para los profesionales de la seguridad en sus
procedimientos de data gathering sino ue adems puede ser de tremenda utilidad para el
usuario en multitud de ocasiones. @uede ser!irte para !er uien est conectado a tu red Eif,
securizar tu ser!idor, detectar los nodos de una red y mil y una cosas ms. Su funcin ms
e+tendida, no obstante, suele ser la de comprobar u" puertos de una muina estn abiertos
con la fnalidad de re'"lar s" tr(!co y detectar posibles *"lnerabilidades asociadas a las
aplicaciones trabaCando a tra!"s de ellos.
01"2 es nma$3
,ma$ es una 'erramienta para la e+ploracin de redes y, de forma idnea, la realizacin de
auditoras de seguridad. Se trata de un softEare desarrollado para escanear redes com$letas,
aunue funciona sin problemas contra un ser!idor concreto. =map rastrea los puertos de la
muina o muinas en cuestin y establece si un puerto est abierto, cerrado o protegido por un
cortafuegos. 5s, es capaz de identifcar muinas dentro de una red, determinar u" ser!icios
utiliza dic'a muina, defnir cul es su sistema operati!o e incluso de!ol!er cierta informacin
sobre el 'ardEare de la muina.
0C)mo %"nciona3
5 grandes rasgos, de dos formas7 en*iando $a#"etes o reali4ando "na llamada de conexi)n
$connect system call%. Una !ez 'ec'o esto, =map es capaz de distinguir entre seis estados
diferentes para cada puerto7
CC by-sa 2009-2014 DebianHackers.net
9
DH Elementals
Abierto (open)7 uiere decir ue 'ay una aplicacin aceptando cone+iones ?C@,
data'ramas UD@ o asociaciones 6C;8 en el puerto.
Cerrado (closed)7 el puerto es accesible pero no e+iste ninguna aplicacin escuc'ando
en "l.
iltrado (!ltered)7 el pauete ue se 'a en!iado 'a sido fltrado por un freEall, reglas
del router, etc y nmap no puede determinar si est abierto o no.
"in !ltrar (un!ltered)7 uiere decir ue el puerto es accesible pero nmap no es capaz
de determinar si est abierto o cerrado. ,ste estado slo lo de!uel!e el tipo de escaneo
5CK $lo !eremos ms adelante%.
Open # !ltered $ closed # !ltered7 nmap no es capaz de defnir si el puerto est
abiertoDcerrado o fltrado. )curre cuando los puertos abiertos no generan una respuesta.
Una sinta+is general simplifcada de la orden sera7
user@machine:~# nmap $opciones%escaneo& $m'(uina%a%escanear&
5unue en funcin del tipo de escaneo, es posible ue se reuieran pri!ilegios de superusuario.
;i$os de escaneo
,+isten -4 tipos de escaneo, !eamos algunos de ellos7
Escaneo ;C8 6A,7 es el predeterminado y probablemente el ms utilizado. ?ambi"n el ms
rpido y discreto, ya ue no llega a completar una cone+in ?C@. Su funcionamiento consiste en
en!iar un pauete SI= y esperar una respuesta por parte del ser!idor7 si se recibe un SI=D5CK el
puerto est abierto $si lo recibe sin el Lag 5CK tambi"n lo considera as%, si se recibe un MS?
$reset% est cerrado y si no se recibe respuesta tras !arios intentos se considera fltrado.
Comando7
root@machine:~# nmap )s* $m'(uina&
Escaneo ;C8 connect7 el predeterminado cuando no tenemos acceso root y por tanto no
podemos en!iar pauetes en crudo. =map solicita al sistema ue establezca una cone+in con la
muina obCeti!o a tra!"s del puerto elegido mediante una llamada de tipo connect. Se trata de
una opcin menos efciente ue ?C@ SI=, ya ue reuiere ms tiempo y pauetes para obtener la
misma informacin.
Comando7
user@machine:~# nmap )s+ $m'(uina&
CC by-sa 2009-2014 DebianHackers.net
DH Elementals
10
Escaneo =D87 dado ue el escaneo de puertos UD@ es ms lento y difcultoso ue el de ?C@,
muc'as !eces se deCa de lado su auditora. ,s un error, ya ue tanto D=S $puerto 34%, como S=M@
$puertos -.-D-./% y DAC@ $puertos .ND.B% 6ser!idorDcliente6 corren sobre "ste. ,l escaneo UD@
funciona mediante el en!o de un pauete UD@ a los puertos seleccionados, de tal forma ue si se
de!uel!e un error 9*CM@ unreac'able: el puerto se considera cerrado o fltrado $en funcin del
cdigo de error% mientras ue si 'ay respuesta mediante un pauete UD@ se considera abierto.
Comando7
root@machine:~# nmap )s, $m'(uina&
Escaneo 6C;8 7,7;7 este tipo de escaneo se establece como alternati!a a los ?C@ y UD@ y sera
el eui!alente a un escaneo ?C@ SI= en el mbito 6C;8. Se trata de un tipo de escaneo rpido y
ue distingue bien entre los estados abierto, cerrado y fltrado. 5dems, es muy poco intrusi!o,
ya ue no completa la asociacin S?C@ sino ue en!a un pauete *=*? como si se pretendiera
abrir una cone+in y espera la respuesta7 si recibe un *=*?65CK, el puerto est abierto, mientras
ue si recibe un 5O)M? el puerto est cerrado. ,n caso de no recibir respuesta tras !arios
intentos, el puerto se marca como fltrado.
Comando7
root@machine:~# nmap )s- $m'(uina&
Escaneo ;C8 $ersonali4ado9esta modalidad tiene como fnalidad permitir ue el usuario defna
su anlisis a la carta, especifcando las ?C@ Lags a utilizar $UM(, 5CK, @SA, MS?, SI=, >*=% y el tipo
de escaneo ?C@ $6s>, 6s5%.
Comando7
root@machine:~# nmap )s.!s/ ))scanflags ,01
$@or eCemplo%
Mecuerda ue e+iste una com$let&sima '"&a sobre nma$ a la ue puedes acudir para
cada caso en concreto. ,ste artculo tan slo recoge algunos de los usos ms comunes.
Trabajando en modo grfco: zenmap
CC by-sa 2009-2014 DebianHackers.net
11
DH Elementals
5unue no es lo 'abitual en los usuarios de nmap $normalmente con conocimientos a!anzados y
ms ue acostumbrados a trabaCar en la terminal%, cabe la posibilidad de ue por una u otra
razn necesiten o preferan una interfaz grfca para trabaCar con nmap. @ara esos casos e+iste
Benma$ ue recoge toda la potencia de nmap en una (U* muy intuiti!a, completa y #til tanto
para anlisis sencillos como auellos ms compleCos o personalizados.
5u, un par de capturas de pantalla para ue os 'agis una idea de su aspecto, aunue lo ms
recomendable es ue lo prob"is !osotros mismos7
Ms informacin
Si uer"is ms informacin sobre el uso de nmap, eCemplos prcticos, sugerencias sobre cmo
afrontar casos reales mediante nmap, etc os recomiendo aduirir su libro7
CC by-sa 2009-2014 DebianHackers.net
DH Elementals
12
Publicado originalmente el 12 de Marzo de 201%
n1mh Caka Die'o Dart&ne4 CastaEedaF
+inu+ user, debian user, blogger, podcaster, geeF y escritor sin ideas.
5sturiano en M"rida. =adador contra corriente.
Me doy perfecta cuenta de ue el ttulo es, cuando menos, confuso. I est 'ec'o
aposta, debo aHadir. ,l moti!o7 ue este sencillo tutorial no da para comprender la
multiaruitectura ue 'an implantado en Debian, pero un poco s ue se acerca.
5dems, 'e conseguido aplicarlo para un programa concreto y muy orientado al
mundo empresarial, el cliente Citri+ pero me falta el ue considero el caballo de
batalla del ambiente dom"stico, SFype.
Puien uiera ampliar sus conocimientos sobre la multiaruitectura, en el EiFi de
Debian tiene la meCor de las guas.
,ste cambio de aruitectura 'a !enido propiciado porue 'e Cubilado a mi !ieCa
estacin de trabaCo $Qgracias por todoR =o !uel!as S%% y me 'an dado otro ordenador,
ms moderno, con un procesador de .& bits. @or supuesto, 'e instalado Debian para
.& bits $amd.-%, confgurado y actualizado todo desde cero, como corresponde. Con
algunos programas tu!e ms lo $5ire5o675lash78ava%, simplemente por no recordar
ue 'aba cambiado de aruitectura pero, una !ez unifcados criterios, todo funcion
como se esperaba.
Aasta llegar al cliente *C5.
CC by-sa 2009-2014 DebianHackers.net
13
DH Elementals
Como es de suponer, se parte con un euipo actualizado correctamente $en mi caso,
con sid%, sin pauetes atascados ni cosas raras.
;o primero es aHadir la segunda aruitectura a d"9! y actualizar la base de datos de
pauetes.
$ sudo d"9! --add-architecture i10.
$ sudo a"titude u"date
Despu"s instalamos la dependencia ms peliaguda de Citri+, ia1%-libs. 5'ora nos
tiene ue deCar, sin ms. Como estos pauetes slo estn disponibles para una
aruitectura, no 'ay ue especifcar nada.
T sudo aptitude install ia4/6libs ia4/6libs6gtF ia4/6libs6gtF6i4B. ia4/6libs6i4B.
Seguimos instalando dependencias.
T sudo aptitude install libmotif&7i4B.
,n esta ocasin 'ay ue especifcar la aruitectura para ue no instale la de amd.-,
ue sera la opcin por defecto. ,n caso de ue esto suceda, la eCecucin del
programa dar el siguiente error7
DoptDCitri+D*C5ClientDEfcmgr7 error E'ile loading s'ared libraries7 libUm.so.&7 Erong
,;> class7 ,;>C;5SS.&
I, por #ltimo, instalamos nspluginErapper para .& bits. 5l igual ue con ue
libmot5i-, la instalacin de la aruitectura incorrecta se traducira en un bonito error.
,ste pauete, adems, 'e tenido ue baCarlo directamente de la Eeb de Debian
porue slo est disponible para sueeze.
T sudo dpFg 6i .DnspluginErapperV-.4.86-Vamd.&.deb
Cumplidas las dependencias $Qpor fnR%, ya podemos instalar el pauete ofcial de
Citri+ para .& bits, sin ue re!iente por alg#n sitio7
T sudo dpFg 6i icaclientV-/.-.8Vamd.&.deb
,s probable ue de un error durante la instalacin, con salida de error /7
CC by-sa 2009-2014 DebianHackers.net
DH Elementals
14
dpFg7 error processing icaclient $66confgure%7
el subproceso instalado el script post6installation de!ol!i el cdigo de salida de
error /
Si buscamos el error en el script de post6instalacin, !eremos ue el cliente *C5,
paradCicamente, no est preparado para reconocer los sistemas de esta
aruitectura. Se puede ob!iar puesto ue el softEare est instalado y ya funciona
pero, aparecer en todos las actualizaciones posteriores, como un error.
@or eso recomiendo perder dos minutos y, siguiendo las e+plicaciones de la *net
Sur!i!al (uide, editar el fc'ero 4+2IA,:"ostinst y comentar la lnea /.N8, es decir,
deCarla de esta guisa7
We+it /
Una !ez compilado el pauete, se instala de nue!o, la salida ser limpia esta !ez.
,n este punto, slo ueda iniciar s;na"se y buscar <itri6 Receiver , paladeando el
momento.
CC by-sa 2009-2014 DebianHackers.net
DH Elementals
1:
Publicado originalmente el & de Mayo de 201%
n1mh Caka Die'o Dart&ne4 CastaEedaF
+inu+ user, debian user, blogger, podcaster, geeF y escritor sin ideas.
5sturiano en M"rida. =adador contra corriente.
Si, lo s", los ttulos empiezan a rayar lo imposible pero prometo estarme tranuilo
una temporada.
Una de las partes, a mi Cuicio, ms interesantes del anuncio de la liberacin de
Debian (=UD;inu+ N, XE'eezyY, es la inclusin ofcial de la multiaruitectura. ;a
posibilidad de instalar un softEare 'ec'o a medida para una determinada
aruitectura en otra y sin ue esto suponga un uebradero de cabeza $como !ena
siendo #ltimamente%, es un a!ance enorme.
Aace alg#n tiempo publiu" una entrada dedicada a este tema, ,ntendiendo la
multiaruitectura en Debian (=UD;inu+ con Citri+ y ya en la primera lnea deCaba
claro ue el cliente *C5 es para un entorno corporati!o y ue la !erdadera prueba de
fuego sera SFype. Oien, pues 'a llegado el da de las pruebas.
Aan coincidido !arios factores. @or un lado, la #ltima actualizacin ya estaba pidiendo
la desinstalacin de la librera ia1%-libsS 'ace dos das se liber E'eezy con este
tema presente en todas las notas, a!isos y comentariosS y, adems, 'oy estoy de ese
'umor en ue el cuerpo te pide riesgos.
@ero !ol!amos al tema. ;o primero de todo es 'acer una peueHa actualizacin y
limpieza del sistema antes de empezar7
die!o@deno6:~$ sudo a"titude u"date
die!o@deno6:~$ sudo a"titude 5ull-u"!rade
CC by-sa 2009-2014 DebianHackers.net
1<
DH Elementals
@robablemente, desinstalar !arios pauetes, entre ellos la mencionada ia1%-libs y
todas sus dependencias. =ada de lgrimas, eso es lo ue perseguimos. 5
continuacin, aHadimos la segunda aruitectura a d"9!, en mi caso, i10.7
die!o@deno6:~$ sudo d"9! --add-architecture i10.
,l resto es sencillo. @odra usar d"9! para comprobar las dependencias pero ya 'e
dic'o ue 'oy estoy guerrero, as ue instalo directamente sFype $baCado de la Eeb
ofcial%7
die!o@deno6:~$ sudo d"9! -i s9;"e-debian=-'$'#'%#-$=i10.'deb
Seleccionando el "a>uete s9;"e "reviamente no seleccionado'
(Le;endo la base de datos ''' $%./0% 5icheros o directorios instalados
actualmente')
4esem"a>uetando s9;"e (de s9;"e-debian=-'$'#'%#-$=i10.'deb) '''
d"9!: "roblemas de de"endencias im"iden la con5i!uraci?n de s9;"e:
s9;"e de"ende de lib>t@eb9it- (AB %'$'#~%#$$@ee9$1)'
d"9!: error al "rocesar s9;"e (--install):
"roblemas de de"endencias - se de8a sin con5i!urar
Procesando dis"aradores "ara mime-su""ort '''
Procesando dis"aradores "ara !nome-menus '''
Procesando dis"aradores "ara des9to"-5ile-utils '''
Se encontraron errores al "rocesar:
s9;"e
,os comenta >ue de"ende de lib>t@eb9it- ;C al tratar de instalar dicha
librerDa sin indicar la ar>uitecturaC nos corri!e:
die!o@deno6:~$ sudo a"titude install lib>t@eb9it-
Se con5i!urarEn los si!uientes "a>uetes >ue estEn ahora "arcialmente
instalados:
s9;"e:i10.FbG
,o se instalarEC actualiHarE o eliminarE nin!In "a>uete'
# "a>uetes actualiHadosC # nuevos instaladosC # "ara eliminar ; # sin
actualiHar'
,ecesito descar!ar # 2 de 5icheros' 4es"uJs de desem"a>uetar se usarEn
# 2'
,o se satis5acen las de"endencias de los si!uientes "a>uetes:
s9;"e:i10. : 4e"ende: lib>t@eb9it-:i10. (AB %'$'#~%#$$@ee9$1) "ero no
serE instalado'
Las acciones si!uientes resolverEn estas de"endencias
+liminar los "a>uetes si!uientes:
$) s9;"e:i10.
KAce"ta esta soluci?nL MN:n:>:LO
Aace 'incapi" !arias !eces en ue tanto sFype como la librera de la ue depende
estn disponibles para la aruitectura i4B., #nicamente. 5s pues, slo tenemos ue
complacer al dpFg, indicndole la aruitectura deseada7
die!o@deno6:~$ sudo a"titude install lib>t@eb9it-:i10.
CC by-sa 2009-2014 DebianHackers.net
DH Elementals
1?
Se instalarEn los si!uiente "a>uetes ,P+QRS:
lib!streamer-"lu!ins-base#'$#-#:i10.FaG lib!streamer#'$#-#:i10.FaG
liborc-#'--#:i10.FaG lib>t@eb9it-:i10.
Se con5i!urarEn los si!uientes "a>uetes >ue estEn ahora "arcialmente
instalados:
s9;"e:i10.
# "a>uetes actualiHadosC - nuevos instaladosC # "ara eliminar ; # sin
actualiHar'
,ecesito descar!ar 0'0&. 92 de 5icheros' 4es"uJs de desem"a>uetar se
usarEn 1%C( S2'
KQuiere continuarL MN:n:LO
I pensar ue tena cierto reparo y 'asta miedoZ
CC by-sa 2009-2014 DebianHackers.net
DH Elementals
1@
Publicado originalmente el 1' de Marzo de 2012
n1mh Caka Die'o Dart&ne4 CastaEedaF
+inu+ user, debian user, blogger, podcaster, geeF y escritor sin ideas.
5sturiano en M"rida. =adador contra corriente.
*magnate el siguiente escenario7 un da cualuiera llegas a casa por la noc'e y
enciendes el ordenador para leer el correo y !er las no!edades en debian'acFers,
ue se rumorea ue tienen nue!os fc'aCes. ,l arranue es normal, sin mensaCes
apocalpticos ni !olcados de pila y, entonces, al iniciar la sesin en gnome, aparece
un mensaCe ue no 'abas !isto antes.
CC by-sa 2009-2014 DebianHackers.net
19
DH Elementals
,s muy tranuilizador leer, en color roCo y may#sculas, los mensaCes A((A)*O y +(
A((O *+( *,"CO +" ,)M,)+)-+ e, inmediatamente debaCo, Respaldar todos los datos
y reemplazar el disco. ;o ue realmente te pone de mala u!a es saber ue el
dispositi!o tiene menos de un aHo de uso, ue es disco principal del ordenador y ue
es de un terabyte, el mayor espacio de almacenamiento del ue 'as disfrutado nunca
y donde tienes absolutamente todo. [Dnde se supone ue !oy a !olcar los datos\
[Cuntos de mis discos duros de -/ giga bytes necesitar" para respaldar a semeCante
monstruo\ ;as preguntas surgen sin cesar...
Un momento despu"s, ms tranuilo y de !uelta de la cocina con una taza de caf" $la
noc'e no !a a ser larga, !a a ser eterna, intuyes%, te tomas un tiempo en analizar el
mensaCe antes de deCarte lle!ar por el pnico.
CC by-sa 2009-2014 DebianHackers.net
DH Elementals
20
,l programa ue muestra el mensaCe es "alim"sest, tambi"n conocido como la
Utilidad de discos, ue forma parte del pauete gnome6disF6utility y ue desconocas
completamente. ,ste programa se encarga, principalmente de realizar ciertas
operaciones con discos duros y particiones $particionado, asignacin del sistema de
fc'eros, etiuetado, montaCe, desmontaCe% y de la monitorizacin S.M.5.M.?. de los
mismos.
.M.A.R.T. es una tecnologa que
incorporan las placas base y los
discos duros para prevenir muertes
sbitas
S
5 esas 'oras de la noc'e, leer de u" !a la monitorizacin smart $!oy a omitir los
puntos en el resto de la entrada%, mientras 'aces una copia de seguridad de todo
fc'ero !alioso ue puebla tu disco duro, para u" negarlo, se 'ace cuesta arriba.
@ero recuerdas $porue ya te las 'abas !isto con ella% ue es una tecnologa ue
incorporan las placas base y los discos duros para pre!enir muertes s#bitas y
lgrimas de desconsuelo.
,n otras palabras, monitoriza ciertos !alores de los discos para pre!enir la aparicin
CC by-sa 2009-2014 DebianHackers.net
21
DH Elementals
de fallos o, en caso de ue ocurran $s'it 'appens%, para disponer de un tiempo
precioso con el ue sal!ar tu informacin.
,n este caso, el parmetro dscolo, Contador de sectores reubicados no te suena
de nada, as ue decides !er u" test te deCa efectuar "alim"sest, en la opcin
+.ecutar autocomprobaci/n.
5 eso de las dos de la maHana, con todos los datos sal!ados en tres discos duros
con!enientemente desconectados y puestos sobre la mesa $ya no te fas ni de la
electricidad%, te das cuenta ue da igual ue realices un test u otro porue todos
terminan en un par de segundos, con el mismo resultados7 dos frases escritas en
color roCo y letras may#sculas ue, a esas 'oras, ya no te parecen tan feas.
5s pues, smart funciona y, aunue esos mensaCes apocalpticos asustan bastante
por muy curtido ue est" uno, fnalmente reconoces ue la otra opcin, esa en ue
sabes ue el dispositi!o est mal en el mismo instante en ue certifcas su defuncin,
es muc'o peor. ;a comunicacin entre placa base y monitor smart permite comprar
tiempo, ue es muc'o.
[Cmo termina esta 'istoria\ *nstalando el programa ue la marca del disco duro 'a
creado $slo para ]indoEs, por supuesto% para !ol!er a otros errores escritos en color
roCo y may#sculas y una in!itacin a en!iarlo a 5lemania para su sustitucin por otro
nue!o. Mientras tanto, instalas Debian en otro disco duro, ms modesto y !ieCo, para
seguir tirando.
Un mes despu"s de !er por primera !ez el mensaCe $creo ue terminar"
tatundomelo en el pec'o%, recibes una caCa con un terabyte de espacio, limpio,
nue!o, esperando particiones y datos y comienzas a instalar Debian a eso de la
medianoc'e.
CC by-sa 2009-2014 DebianHackers.net
DH Elementals
22
Publicado originalmente el ' de Marzo de 2012
E"'enia Gahit
(;5M@ AacFer y @rogramadora eUtrema, a!ocada a la docencia en el
mbito de la *ngeniera de SoftEare y a la in!estigacin de nue!as
t"cnicas, metodologas y paradigmas relacionadas con la seguridad de
aplicaciones. Miembro de la >ree SoftEare >oundation y ?'e ;inu+
>oundation.
0De *erdad crees #"e conoces con exactit"d la ar#"itect"ra de t" ordenador3 6i
#"ieres $ro'ramar lo me-or #"e $"edes hacer es conocer con $recisi)n como est(
%ormado t" ordenador y #"e %"nci)n exacta c"m$le cada com$onente. En este art&c"lo
intentaremos Hdestri$arH *irt"almente n"estro ordenador $ara $oder entenderlo
ay"d(ndonos del comando lshw al c"al $odremos acceder como s"$er-"s"ario.
Arquitectura de computadoras: conociendo el hardware
Un ordenador, con respecto al 'ardEare, se encuentra compuesto por una serie de
dispositi!os, clasifcados seg#n la funcin ue "stos desempeHen. Dic'a clasifcacin,
se compone de7
Dispositi!os de entrada
Dispositi!os de salida
Dispositi!os de comunicacin
Dispositi!os de almacenamiento
Dispositi!os de cmputo
root@cocochito:~T lshw )short
CC by-sa 2009-2014 DebianHackers.net
23
DH Elementals
2us in5o 4evice <lass 4escri"tion
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
s;stem *o 2e illed 2; R'+'S'
bus &&(i.(U'
memor; .-Vi2 2IRS
c"u@# "rocessor Intel(R) <eleron(R) <PP %'0#U3H
memor; $.Vi2 L$ cache
memor; %(.Vi2 L% cache
memor; %Ui2 S;stem Semor;
memor; $Ui2 4ISS S4RAS S;nchronous
memor; $Ui2 4ISS S4RAS S;nchronous
"ci@####:##:##'# brid!e 0%0.(U:P+:P 4RAS <ontroller:3ost-3ub Inter5ace
"ci@####:##:#$'# brid!e 0%0.(U:P+:P P<I to AUP <ontroller
"ci@####:#$:##'# dis"la; ,Q1- MUeorce W ((##O
"ci@####:##:#.'# !eneric 0%0.(U:P+:P Processor to I:R Semor; Inter5ace
"ci@####:##:$d'# bus 0%0#$+2:+R (I<3(:I<3(R) PS2 P3<I <ontroller T$
"ci@####:##:$d'$ bus 0%0#$+2:+R (I<3(:I<3(R) PS2 P3<I <ontroller T%
"ci@####:##:$d'% bus 0%0#$+2:+R (I<3(:I<3(R) PS2 P3<I <ontroller T1
"ci@####:##:$d'1 bus 0%0#$+2:+R (I<3(:I<3(R) PS2 P3<I <ontroller T-
"ci@####:##:$d'& bus 0%0#$+2:+R (I<3(:I<3(R) PS2% +3<I <ontroller
"ci@####:##:$e'# brid!e 0%0#$ P<I 2rid!e
"ci@####:#%:##'# @lan# net@or9 R*%(.$:R*.$ 0#%'$$! P<I
"ci@####:#%:#%'# communication SS(. 4ata a6 Sodem
"ci@####:#%:#('# eth# net@or9 R*L-0$1/:0$1/<:0$1/<7
"ci@####:##:$5'# brid!e 0%0#$+2:+R (I<3(:I<3(R) LP< Inter5ace 2rid!e
"ci@####:##:$5'$ scsi$ stora!e 0%0#$+2:+R (I<3(:I<3(R) I4+ <ontroller
scsi@$:#'#'# :dev:cdrom dis9 4Q4RAS USA-3-%,
scsi@$:#'$'# :dev:sda dis9 $%%U2 Sa6tor .N$%#L#
scsi@$:#'$'#C$ :dev:sda$ volume $#/Ui2 +W*- volume
scsi@$:#'$'#C% :dev:sda% volume -0#(Si2 +6tended "artition
:dev:sda( volume -0#(Si2 Linu6 s@a" : Solaris "artition
"ci@####:##:$5'1 bus 0%0#$+2:+R (I<3(:I<3(R) SS2us <ontroller
"ci@####:##:$5'( multimedia 0%0#$+2:+R (I<3(:I<3(R) A<X/& Audio <ontroller
usb@(:$'$ scsi% stora!e
scsi@%:#'#'# :dev:sdb dis9 S<SI 4is9
;os dis$ositi*os de entrada son todos auellos ue permiten la entrada de datos a
un ordenador. ,stos dispositi!os, son los ue permiten al usuario interactuar con el
ordenador. ,Cemplos7 teclado, mouse $ratn%, micrfono, Eebcam, scanner, etc.
;os dis$ositi*os de salida, son todos auellos ue permiten mostrar la informacin
procesada por el ordenador. ,Cemplos7 monitor, impresora, auriculares, alta!oces, etc.
;os dis$ositi*os de com"nicaci)n son auellos ue permiten la comunicacin
entre dos o ms ordenadores. ,Cemplos7 modem, router, placa de red, bluetoot', etc.
;os dis$ositi*os de almacenamiento, son todos auellos ue permiten almacenar
datos en el ordenador. ,Cemplos7 disco duro, pendri!e, disFet, CD, DGD, etc.
;os dis$ositi*os de c)m$"to, son auellos encargados de realizar las operaciones
de control necesarias, sobre el resto de los dispositi!os del ordenador. ,stos
dispositi!os, se encuentran disponibles, en todos los ordenadores, y los mismos se
describen a continuacin.
CC by-sa 2009-2014 DebianHackers.net
DH Elementals
24
CPU
;a C8= $Central @rocessing Unit ^ Unidad Central de @rocesamiento%, tambi"n
llamada $rocesador o micro$rocesador, es un circuito microscpico ue interpreta
y eCecuta instrucciones. ;a C@U se ocupa del control y del proceso de datos en las
computadoras. (eneralmente, la C@U es un microprocesador fabricado en un c'ip, un
#nico trozo de silicio ue contiene millones de componentes electrnicos. ,l
microprocesador de la C@U est formado por una unidad aritm"tico6lgica ue realiza
clculos y comparaciones y toma decisiones lgicas $determinando si una afrmacin
es cierta o falsa mediante las reglas del lgebra de Ooole. @ara aceptar rdenes del
usuario, acceder a los datos y presentar los resultados, la C@U se comunica a tra!"s
de un conCunto de circuitos o cone+iones llamado bus. ,l bus conecta la C@U a los
dispositi!os de almacenamiento $por eCemplo un disco duro%, los dispositi!os de
entrada $por eCemplo un teclado o un mouse% y los dispositi!os de salida $por eCemplo
un monitor o una impresora%.
root@cocochito:~T lshw )2 bus )short
3:Y "ath 4evice <lass 4escri"tion
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
:# bus &&(i.(U'
:#:$##:$d bus 0%0#$+2:+R (I<3(:I<3(R) PS2 P3<I <ontroller
T$
:#:$##:$d'$ bus 0%0#$+2:+R (I<3(:I<3(R) PS2 P3<I <ontroller
T%
:#:$##:$d'% bus 0%0#$+2:+R (I<3(:I<3(R) PS2 P3<I <ontroller
T1
:#:$##:$d'1 bus 0%0#$+2:+R (I<3(:I<3(R) PS2 P3<I <ontroller
T-
:#:$##:$d'& bus 0%0#$+2:+R (I<3(:I<3(R) PS2% +3<I <ontroller
:#:$##:$5'1 bus 0%0#$+2:+R (I<3(:I<3(R) SS2us <ontroller
Cuando se eCecuta un programa, el registro de la C@U, llamado contador de
programa, lle!a la cuenta de la siguiente instruccin del programa, para garantizar
ue las instrucciones se eCecuten en la secuencia adecuada.
;a unidad de control de la C@U coordina y temporiza las funciones de la C@U, tras lo
cual recupera la siguiente instruccin desde la memoria. ,n una secuencia tpica, la
C@U localiza la instruccin en el dispositi!o de almacenamiento correspondiente. ;a
instruccin !iaCa por el bus desde la memoria 'asta la C@U, donde se almacena en el
registro de instruccin. ,ntretanto, el contador de programa se incrementa en uno
para prepararse para la siguiente instruccin.
5 continuacin, la instruccin actual es analizada por un decodifcador, ue
determina lo ue 'ar la instruccin. Cualuier dato reuerido por la instruccin es
recuperado desde el dispositi!o de almacenamiento correspondiente y se almacena
en el registro de datos de la C@U.
;uego, la C@U eCecuta la instruccin y, los resultados se almacenan en otro registro o
CC by-sa 2009-2014 DebianHackers.net
2:
DH Elementals
se copian en una direccin de memoria determinada
/
.
Memoria
;a memoria es la encargada de almacenar toda la informacin ue el ordenador se
encuentra utilizando. ,+isten tres tipos de memoria7 memoria IAD, memoria I5D
y memoria cach2.
root@cocochito:~T lshw )2 memory )short
3:Y "ath 4evice <lass 4escri"tion
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
:#:# memor; .-Vi2 2IRS
:#:-:( memor; $.Vi2 L$ cache
:#:-:. memor; %(.Vi2 L% cache
:#:e memor; %Ui2 S;stem Semor;
:#:e:# memor; $Ui2 4ISS S4RAS S;nchronous
:#:e:$ memor; $Ui2 4ISS S4RAS S;nchronous
Listando componentes de memoria
Memoria RAM
;a memoria IAD $Mandom 5ccess Memory%, es la
memoria desde la cual, el procesador recibe las
instrucciones y guarda los resultados. Se utiliza como
memoria de trabaCo para el sistema operati!o, los
programas y la mayora del softEare. ,s all donde se
cargan todas las instrucciones ue eCecutan el procesador
y otras unidades de cmputo. Se denominan _de acceso
aleatorio_ $random access% porue se puede leer o escribir
en una posicin de memoria con un tiempo de espera
igual para cualuier posicin, no siendo necesario seguir
un orden para acceder a la informacin de la manera ms
rpida posible. Durante el encendido del ordenador, la
rutina @)S? !erifca ue los mdulos de memoria M5M
est"n conectados de manera correcta. ,n el caso ue no
e+istan o no se detecten los mdulos, la mayora de
tarCetas madres $mot'erboard% emiten una serie de pitidos ue indican la ausencia de
memoria principal.
/ >uente7 'ttp7DDes.EiFi!ersity.orgDEiFiD,structuraVdelVcomputador
CC by-sa 2009-2014 DebianHackers.net
DH Elementals
2<
?erminado ese proceso, la memoria O*)S
4
$memoria M)M% puede realizar un test
bsico sobre la memoria M5M indicando fallos mayores en la misma
&
.
root@cocochito:T lshw )2 memory )short 3 grep )i ram
:#:e:# memor; $Ui2 4ISS S4RAS S;nchronous
:#:e:$ memor; $Ui2 4ISS S4RAS S;nchronous
>iltrando la memoria M5M
Memoria ROM
;a memoria I5D $Mead )nly Memory%, es permanente, ya ue lo ue permanece en
la M)M no se pierde aunue el ordenador se apague. Su funcin principal es guardar
informacin inicial ue el ordenador necesita para colocarse en marc'a una !ez ue
se enciende. @ermite solo la lectura de la informacin y no su escritura,
independientemente de la presencia o no de una fuente de energa. ;os datos
almacenados en la M)M no se pueden modifcar, o al menos no de manera rpida o
fcil. Se utiliza principalmente para contener el frmEare $programa ue est
estrec'amente ligado a 'ardEare especfco, y es poco probable ue reuiera
actualizaciones frecuentes% u otro contenido !ital para el funcionamiento del
dispositi!o, como los programas ue ponen en marc'a el ordenador y realizan los
diagnsticos
3
.
root@cocochito:T lshw )2 memory )short 3 grep )i bios
:#:# memor; .-Vi2 2IRS
Filtrando la memoria RO !tam"i#n llamada $IOS%
Memoria Cach
;a memoria cach2 es auella ue se usa como puente entre el C@U y la memoria
M5M para e!itar demoras en el procesamiento de los datos. ,+isten !arios n#cleos de
esta memoria $denominados con la letra ; y un n#mero, por eCemplo ;-%. Cuanto
menor el n#mero ms rpida es la memoria. @or pro+imidad a la C@U, es muc'o ms
rpida ue la memoria M5M y tambi"n, muc'o mas peueHa.
4 ,n este caso, el t"rmino O*)S 'ace referencia a la memoria M)M $descripta anteriormente%, y =), al Sistema
Osico de ,ntrada y Salida.
& >uente7 'ttp7DDes.EiFipedia.orgDEiFiDMemoriaVM5M
3 >uente7 'ttp7DDes.EiFipedia.orgDEiFiDMemoriaVM)M
CC by-sa 2009-2014 DebianHackers.net
2?
DH Elementals
root@cocochito:~T lshw )2 memory )short 3 grep cache
:#:-:( memor; $.Vi2 L$ cache
:#:-:. memor; %(.Vi2 L% cache
Filtrando la memoria cach#
Bus de datos
,l b"s de datos $o canal de datos% es un sistema digital ue transfere datos entre
los componentes de una computadora o entre computadoras. ,st formado por
cables o pistas en un circuito impreso, dispositi!os como resistores y condensadores
adems de circuitos integrados.
)otas adicionales sobre el comando lshw
Como 'emos podido notar, el comando lshw nos permite listar el hard>are de
n"estro e#"i$o. ,n este artculo, 'emos utilizado el comando lshw con las
siguientes opciones7
)short
Utilizada para listar el 'ardEare en formato compacto.
)2 tipo_de_componente
Utilizada para fltrar la salida, por el tipo de componente indicado.
)tras opciones pueden conocerse mediante man lshw.
?ambi"n 'emos concatenado $con 3% el comando lshw con el comando grep
patrn a fn de ue la salida de lshw sea a la !ez, fltrada por el patrn indicado.
Cuando utilizamos la opcin )i del comando grep, lo 'icimos para ue la b#sueda
no distinga entre may#sculas y min#sculas.
CC by-sa 2009-2014 DebianHackers.net
DH Elementals
2@
Publicado originalmente el 29 de ebrero de 2012
E"'enia Gahit
(;5M@ AacFer y @rogramadora eUtrema, a!ocada a la docencia en el
mbito de la *ngeniera de SoftEare y a la in!estigacin de nue!as
t"cnicas, metodologas y paradigmas relacionadas con la seguridad de
aplicaciones. Miembro de la >ree SoftEare >oundation y ?'e ;inu+
>oundation.
+os len'"a-es de $ro'ramaci)n %orman $arte del 'r"$o de len'"a-es in%orm(ticos.
Am$liamente $"ede decirse #"e "n len'"a-e in%orm(tico es "n idioma arti!cial
"tili4ado $or ordenadores c"yo !n es transmitir in%ormaci)n de al'o a al'"ien.
;os len'"a-es in%orm(ticos, pueden clasifcarse en7
lenguaCes de programacin $@yt'on, @A@, @erl, C, etc.%S
lenguaCes de especifcacin $UM;%S
lenguaCes de consulta $SP;%S
lenguaCes de marcas $A?M;, UM;%S
lenguaCes de transformacin $US;?%S
protocolos de comunicaciones $A??@, >?@%S entre otros.
un lenguaje informtico es
un idioma artifcial
utilizado por ordenadores