Está en la página 1de 55

Direccin y Coordinacin General

Esteban Saavedra Lpez (esteban.saavedra@atixlibre.org)

Diseo y Maquetacin
Jenny Saavedra Lpez (jenny.saavedra@atixlibre.org) Esteban Saavedra Lpez (esteban.saavedra@atixlibre.org)

Revisiones
Esteban Saavedra Lpez Jenny Saavedra Lpez

Noticias
Jenny Saavedra Lpez Lucy Ayarde o!ero

Autores Frecuentes
Esteban Saavedra Lpez Josep" Sandoval #ario $arrion #art%n #&r'uez enzo #art%nez a(ael endn

Herramientas
La edicin de esta revista (ue realizada de (or!a integra "aciendo uso de So(t)are Libre

Se dice que la vida no es vida si no hay problemas, pues bien ste fue el turno de nuestra revista, que en estos ltimos tiempos tuvo que afrontar una serie de dificultades tcnicas por las dificultades que representa tener un equipo reducido, otro factor fueron y son las intromisiones de personas malintencionadas que de una u otra forma trataron y tratan an de hacer fracasar nuestro proyecto. El mundo necesita Libertad, un ttulo con el que deseamos expresar cuan importante es el tema de libertad en todas y cada una de las actividades que realizamos da a da. Son varios los proyectos que incluyen la libertad como un aspecto filosfico dentro sus actividades, en este ltimo tiempo los proyectos tecnolgicos no han estado exentos del mismo, m s al contrario en los nuevos inventos e iniciativas por defecto se han considerado temas de libertad y medio ambiente que hoy por hoy son fundamentales para nuestro mundo y nuestra vida. !n aspecto a destacar, es el cambio de periodicidad en la liberacin de nuestra revista que ser de " meses a partir de la fecha. #or ltimo para todas aquellas personas que desean el fracaso de nuestra revista y quieren hacer valer intereses totalmente personales carentes de toda libertad y criterio tico, les amos un revs que en su momento la comunidad mundial que apoya el soft$are libre os dar en respuesta a su actitud totalmente mezquina y llena de pre%uicios mal intencionados que desean privar de libertad a un proyecto como el nuestro.

La revista Atix, naci Libre y seguir siendo Libre, para todos aquellos que deseen compartir conocimiento.
&ienvenidos a nuestro dcimo sptimo nmero

Esteban Saavedra Lpez Presidente Fundacin AtixLibre

Usando Perfiles UML: Perfil para representar Sistemas de Informacin Geogrfica


El desarrollo de Sistemas de Informacin Geogrfica se ha convertido en una prctica interesante en la actualidad. Uno de los principales problemas enfrentados en este campo es el de la representacin mediante modelos de algunos conceptos asociados al software, como son: representacin de informacin geoespacial, de interacciones entre clases geogrficas de dispositivos hardware. U!", el lengua#e de modelado por e$celencia sigue siendo, aun%ue &til, mu general para representar temas espec'ficos como los anteriormente mencionados. (ara ello se aconse#a el uso de los (erfiles U!", una opcin propuesta por )!G *)b#ect !anagement Group+ dentro de las especificaciones para U!" ,.$ refinadas para U!" -.. *,+. En este art'culo se describe un perfil para la representacin de diagramas de clases de despliegue durante modelado dentro del proceso desarrollo de software SIG. "a propuesta %ue a continuacin se detalla forma parte de una ms general %ue abarcar otros tipos de diagramas necesarios para el modelado de Sistemas de Informacin Geogrfica.

Introduccin
U!", sin dudas, sigue siendo el lengua#e de modelado por e$celencia para la representacin del software a escala global. Es utili/ado desde pe%ue0as aplicaciones acad1micas hasta grandes aplicaciones de gestin de la industria. 2un%ue es cierto %ue U!" ha demostrado a lo largo de los a0os ser mu &til, ha presentado algunas insuficiencias una ve/ %ue las aplicaciones se van haciendo ms espec'ficas comple#as. En el caso de los Sistemas de Informacin Geogrfica *SIG+ la necesidad surge por causas similares a otros dominios de aplicacin, por%ue la sinta$is o la semntica de U!" no permiten e$presar los conceptos espec'ficos del dominio, o cuando se desea restringir especiali/ar los constructores propios de U!", %ue suelen ser demasiado gen1ricos numerosos. *-+

3al es as' %ue los propios creadores concibieron dentro de las especificaciones los llamados (erfiles U!" *U!" (rofiles+. "os perfiles U!" son mecanismos %ue nos permiten adaptar las metaclases %ue a e$isten a dominios ms espec'ficos *E#. en las plataformas E45, 6)!+ %ue estn disponibles desde U!" ,.$ han sido refinados en U!" -... *,+ En el rea de investigacin asociada a los SIG se han hecho algunas propuestas de perfiles, fundamentalmente asociados a la representacin de los datos geogrficos en algunos casos asociados a estndares internacionales para la representacin de informacin geoespacial. *7+ *8+. (or otro lado, se han hecho propuestas de lengua#es visuales como e$tensiones de U!", como es el caso de )!EG2, %ue facilita el dise0o de aplicaciones SIG personali/adas *9+. En *:+ se hace un anlisis interesante se propone un perfil para U!", espec'ficamente para el dise0o de bases de datos geogrficas, partiendo de una clasificacin general para los ob#etos denominada ;geogrfico< *Geographic+. 2un%ue e$isten propuestas, cuando revisamos *=+ podemos identificar %ue ha numerosos re%uerimientos sin satisfacer, fundamentalmente relacionados con restricciones con eventos asociados a los ob#etos geogrficos. Un e#emplo visual ilustrativo de un problema descrito en *=+ es el siguiente:

Fig. 1 Inconsistencia entre conceptos (or supuesto es una clara inconsistencia conceptual %ue aparece cuando utili/amos una herramienta de >oom? *ale#ar+ en un SIG. Este otros problemas a&n deben ser resueltos la idea de utili/ar perfiles U!" pues a uda a encontrar respuestas. El presente traba#o est distribuido en 9 secciones. (osterior a la introduccin, la seccin presenta los pasos seguidos para la definicin del (erfil U!" para GIS, donde de describen los diferentes estereotipos, los valores eti%uetados las clases de U!" a las %ue se aplican. "uego, la seccin 7 describe en profundidad las diferentes restricciones utili/ando )6" *)b#ect 6onstraint "angua#e+. (osteriormente la seccin 8 presenta un caso de estudio de e#emplo donde se pone en prctica el perfil finalmente la seccin 9 presenta las conclusiones el traba#o futuro asociado a la investigacin reali/ada.

2.

efinicin del perfil

E$isten reglas bsicas %ue se deben cumplir al definir perfiles U!", %ue estn establecidas en el ep'grafe ,@.,.- de *,+. Un (erfil se define en un pa%uete U!", estereotipado AAprofileBB, %ue e$tiende a un metamodelo o a otro (erfil. Ca tres elementos %ue se utili/an para definir (erfiles: estereotipos *stereot pes+, restricciones *constraints+ valores eti%uetados *tagged values+. 2 continuacin se muestra el diagrama de la propuesta reali/ada estereotipos. la e$plicacin de los

Fig. 2 Depresentacin de los estereotipos del perfil GIS Ee la figura anterior podemos concluir lo siguiente: 6ada estereotipo tiene asociado un nombre %ue lo identifica la*s+ metaclase*s+ sobre la cual*es+ se puede aplicar. En este caso se definen F posibles estereotipos %ue son aplicados a diferentes metaclases de U!". 2 continuacin 1sto se muestra en detalle dentro de una tabla: !stereotipo "a er G)b#ect Giew !ap E5Server 2pplServer !apServer Het6onnector G6lientEevice Metaclase UML asociada 6lass 6lass 6lass 6lass Hode Hode Hode 2ssociation Eevice Significacin 6apa )b#eto geogrfico Gista !apa Servidor de base de datos Servidor de 2plicaciones Servidor de mapas 6onector de red Eispositivo cliente metaclases afectadas

"a#la 1 Eescripcin de estereotipos propuestos

"o mostrado en la figura significa %ue, por e#emplo, el estereotipo AAHet6onnectorBB solo puede ser aplicado a las clases *class+ de U!" %ue las mismas deben especificar un protocolo de comunicacin. Un valor eti%uetado es un meta?atributo adicional %ue se asocia a una metaclase del metamodelo e$tendido por un (erfil. 3odo valor eti%uetado ha de contar con un nombre un tipo, se asocia un determinado estereotipo. Ee esta forma, el estereotipo AAHet6onnectorBB puede contar con un valor eti%uetado denominado ;protocol<, de tipo pt pe, %ue es un enumerativo *AAenumerationBB+ definido %ue indicar el tipo de protocolo de comunicacin %ue utili/a cual%uier clase estereotipada como un AAHet6onnectorBB. "os valores eti%uetados se representan de forma grfica como atributos de la clase %ue define el estereotipo *ver Iig. -+. (or supuesto, la utili/acin del perfil anteriormente mostrado nos permite adaptar elementos del metamodelo de U!" a nuestro dominio espec'fico representar aplicaciones de una manera ms entendible por nuestros especialistas *ar%uitectos, analistas, desarrolladores+, de manera %ue se realice de forma eficiente el proceso de desarrollo. (or otra parte, %ueda todav'a definir las restricciones %ue se pueden establecer para el perfil. Este paso es sumamente importante pues establece posibles valores de los atributos, multiplicidades en las relaciones, composiciones otros elementos esenciales %ue deben ser respetados al modelar. Geamos entonces el siguiente ep'grafe, %ue trata esta parte.

$. %estricciones &'L
Uno de los elementos %ue se establece en *,+ como premisa esencial para la elaboracin de perfiles U!" es el tema de modelos ;bien formados<, %ue puedan ser intercambiados entre diferentes herramientas de modelado. "as restricciones permiten apo ar la idea de ;bien formado<, pues limitan posibles acciones errneas de los dise0adores previendo futuras e%uivocaciones en la implementacin fallos en el software, causados fundamentalmente por malas interpretaciones de diagramas. El lengua#e por e$celencia para definir las restricciones es el )b#ect 6onstraint "angua#e *)6"+, aun%ue pudieran ser definidas en lengua#e natural, pero 1sto pudiera dar lugar a ambigJedades. 6omo )6" es un lengua#e formal, es el seleccionado para especificarlas. 2lgunas de las restricciones establecidas son las siguientes:
context UML::InfrastructureLibrary::Core::Constructs::Node self.isStereotyped("DBSer er"! i"plies store#data self.isStereotyped("$pplSer er"! i"plies store#standard self.isStereotyped("MapSer er"! i"plies store#"apfile

"a restriccin anterior est asociada a los Hodos de U!" tiene %ue ver con el tipo de servidor a representar el valor del atributo store K por e#emplo para %ue sea un servidor de mapas el valor de dicho atributo debe ser mapfile, puesto %ue el servidor de mapas utili/a las configuraciones establecidas en el mapfile *fichero %ue define la relacin entre ob#etos geogrficos, indica a !apServer donde estn los datos brinda elementos para la representacin de los mismos+ para su funcionamiento. El e#emplo siguiente aplica una restriccin para el atributo position de las capas *la ers+, pues para cada vista las capas deben tener posiciones diferentes.
context UML::InfrastructureLibrary::Core::Constructs::Class in : self.isStereotyped(%Layer&!i"plies self.allInstances'(for$ll(p)*p+ , p)-(p+, i"plies p).position -( p+.position!

(or supuesto %ue se pueden definir muchas ms restricciones siempre

cuando sean

necesarias. "a creacin de restricciones )6" est garanti/ada a&n si ocurriese un cambio de herramienta 62SE de modelado, puesto %ue todas las herramientas de modelado e$istentes soportan )6".

(. 'aso de estudio e)emplo


Geamos un pe%ue0o e#emplo de aplicacin del perfil en cuestin. (ara ello tenemos un caso en el cual se desea reali/ar un diagrama de clases %ue represente elementos de un sistema de informacin geogrfica como lo son: ob#etos geogrficos, capas determinadas vistas %ue agrupan dichas capas. "a siguiente figura muestra un caso de diagrama de clases:

Fig. $ Eiagrama de clases SIG (or supuesto, es un e#emplo poco comple#o pero sirve para mostrar %ue tan espec'ficas son ahora las representaciones de U!" %ue se utili/an en el diagrama. (or e#emplo, si recordamos el problema representado al inicio *ver Iig. ,+ pues al introducir la representacin de vistas *Giew+ somos capaces ahora de asignar comportamientos diferentes a un mismo elemento, pues es posible %ue un edificio se comporte como un pol'gono para una vista como un punto para otra, sin perder el significado real ni violar conceptos por supuesto seg&n el nivel de abstraccin seguido. Geamos ahora otro e#emplo pero de diagrama de despliegue *Iig. 8+. En el diagrama de despliegue se representan un con#unto de clases similares a las utili/adas para otros tipos de aplicaciones, pero se introducen nuevos conceptos como dispositivos clientes mviles servidores de mapas. "a esencia de la propuesta para este tipo de diagramas no est solamente en la representacin visual, sino adems en las restricciones %ue se establecen en cuanto al protocolo de comunicacin del AAHet6onnectorBB, %ue var'a en diferentes casos. )tros aportes en los %ue se traba#a especificarn elementos de comunicacin inalmbrica.

Fig. ( Eiagrama de Eespliegue

*. 'onclusiones + tra#a)o futuro


En este traba#o se ha presentado el uso de los perfiles U!" como un mecanismo %ue permite adaptar a un dominio ms espec'fico las innumerables venta#as de U!" para el modelado de aplicaciones. Se ha aplicado al modelado de Sistemas de Informacin Geogrfica, demostrando la importancia %ue tiene acercar el modelo a la realidad del software representado. 2dems, se ha introducido la relevancia del uso del )6" en lugar del lengua#e natural para representar restricciones asociadas a estereotipos meta?atributos, ganando en la semntica representativa de las mismas. Es importante se0alar %ue muchas de las herramientas de modelado e$istentes no soportan la creacin de perfiles U!" las %ue lo hacen, permiten crearlos en muchos casos seg&n las especificaciones de U!" ,.$ de forma grfica, sin %ue se verifi%uen completamente las restricciones asociadas a los estereotipos. "a propuesta est soportada por Enterprise 2rchitect =...@,9 %ue permite crear los perfiles para U!" -... 2lgunas herramientas utili/adas hasta ho como Gisual (aradigm soportan la creacin de perfiles solo desde la versin =.$ en adelante en muchos casos se tiene disponible hasta la :.8. Ho obstante se espera el desarrollo pr$imo de herramientas %ue permitan el intercambio total de perfiles su uso adecuado. En los pr$imos meses se continuar traba#ando en la propuesta con el ob#etivo de abarcar otro con#unto de diagramas importantes para la representacin de SIG, inclu endo propuestas espec'ficas asociadas al desarrollo de este tipo de aplicaciones en el entorno Leb, por supuesto, manteniendo las e$tensiones propuestas por 6onallen *@+, aun%ue incorporando nuevas ideas.

%eferencias
M,N )!G. Unified !odeling "anguage: Superstructure version -.,.,. -..=. M-N Gallecillo, 2ntonio and Iuentes, "idia. Una Introduccin a los (erfiles U!". Eepartamento de "engua#es 6iencias de la 6omputacin. Universidad de !laga. M)nlineN -..F. M6ited: !ar/o -9, -.,..N http:OOwww.lcc.uma.esOPavO(ublicacionesO.8OU!"(rofiles? Hovatica.8.pdf. M7N !odelling Geospatial 2pplication Eatabases using U!"?based Depositories 2ligned with International Standards in Geomatics. 5rodeur, 4ean, 51dard, Qvan and (roul$, !arie?4os1. Med.N 26!. Lashington E.6. : s.n., -.... @ th 26! S mposium on GIS ,,O... IS5H ,?9@,,7?7,F?=O..,..,. M8N (inet, Irancoise, Rang, ! oung?2h and Gigier, Ir1d1ric. Spatial 6onstraint !odelling with a GIS E$tension of U!" and )6": 2pplication to 2gricultural Information S stems. MbooS auth.N Uffe RocS Liil. !etainformatics: International S mposium !IS -..8. 5erlin : Springer? Gerlag, -..9, pp. ,:.?,=@. M9N 2 Gisual !odelling "anguage for Eistributed Geographic Information S stems. (inet, Irancoise and "bath, 2hmed. s.l. : IEEE, -.... (roceedings of -... IEEE International S mposium on Gisual "anguages. .?=:F9?.@8.?9O... M:N Rang, ! oung?2h, (inet, Irancoise and Schneider, !ichel. 2GI"E Lebsite. M)nlineN -.,.. M6ited: Iebrero 9, -.,..N http:OOplone.itc.nlOagileToldO6onferenceOgreece-..8OpapersO7?7?9TRang.pdf. M=N De%uirements and Desearch Issues in Geographic Eata !odeling. Iriis?6hristensen, 2nders, 3r fona, Hectaria and 4ensen, 6hristian S. 2tlanta, Georgia, US2 : 26!, -..,. GISU.,, Hovember F?,.,-..,. I?9@,,7887?:O.,O..,,. M@N !odeling Leb 2pplication 2rchitectures with U!". 6onallen, 4im. ,., ,FFF, 6ommunications of the 26!, Gol. 8-.

,utor

-uniel !liades Proen.a ,rias (rofesor de (rogramacin, Iacultad F, Universidad de las 6iencias Informticas proen/aVuci.cu

Trabajando LINQ para XML con Monodevelop


LINQ es una tecnologa integrada en .NET que proporciona la capacidad para consultar o manipular diversas fuentes de datos, independientes del proveedor, utilizando de forma nativa la sintaxis de cualquier lenguaje de programaci n soportado por .NET
documentos, validaci n, navegaci n, serializaci n, transformaci n ' %)squedas. *unque estas clases son suficientes para tra%ajar con !"L su utilizaci n no es sencilla ' puede producir c digo difcil de mantener, por lo que .NET incorpora LINQ para !"L +LINQ to !"L, como una mejor manera de tra%ajar con !"L.

Introduccin
!"L se #a convertido en un excelente est$ndar a%ierto para el intercam%io de informaci n entre aplicaciones de soft&are de%ido a la manera de representar informaci n estructurada, independiente de la plataforma, lenguaje de programaci n o sistema operativo, es utilizado extensamente en arc#ivos ' protocolos de Internet por ser un formato f$cil de leer ' suficientemente flexi%le para adaptarse a muc#os prop sitos. (e%ido a estas caractersticas !"L ' sus tecnologas est$n completamente integradas ' soportadas por la plataforma .NET mediante un conjunto de clases que proporcionan lectura ' escritura de

Trabajando LINQ XML con Monodevelop


*ntes de empezar de%emos tener instalado ' configurado la )ltima versi n del entorno de programaci n "ono(evelop el cual puede descargarse de http://monodevelop.com/ , empezaremos con un programa que nos mostrar$ como crear un arc#ivo !"L que utilizaremos en un segundo programa para consultar con los operadores de LINQ. *unque LINQ para !"L proporciona la misma funcionalidad para tra%ajar con !"L como las clases dentro del ensam%lado System.XML +ver revista *TI! No -., la diferencia al tra%ajar con LINQ es que se cam%ia de una programaci n imperativa a una programaci n declarativa.

Creando el archivo XML


/ara mostrar de una manera pr$ctica la utilizaci n de LINQ para !"L, ejecutamos "ono(evelop ' creamos una nueva soluci n en el men) 0*rc#ivo1, del lado derec#o de la ventana de nueva soluci n, seleccionamos el icono que dice 02oluci n en %lanco1 ' en el cuadro de texto nom%re, escogemos 0LinqXML1, 3sta ser$ la soluci n que contenga los dos pro'ectos de este tutorial.

*gregamos a nuestra soluci n un pro'ecto de consola, al cual llamaremos CrearXML , como se muestra en la siguiente imagen.

/ara que el soporte de LINQ a !"L es importante #acer referencia a los siguientes ensam%lados4
System.Linq System.Xml.Linq

Es el ensam%lado principal ' %$sico que contiene todas las clases e interfaces para tra%ajar con LINQ. 5ontiene las clases ' extensiones para manipular LINQ. !"L con

Esto se logra #aciendo clic6 derec#o so%re el arc#ivo de pro'ecto ' en el men) desplega%le escogemos la opci n 0Editar referencias1 +Edit 7eferences, como se muestra en la imagen siguiente.

*#ora completamos el c digo generado por monodevelop, para que el programa completo quede como en el siguiente listado.
using System; using System.Linq; using System.Xml.Linq; namespace CrearXML{ class MainClass { public static void Main (string[] args { X!ocument doc " ne# X!ocument(ne# X$lement(%&rticulos%' ne# X$lement(%&rticulo%'ne# X$lement(%(d&rticulo%'%)% ' ne# X$lement(%Codigo%'%C*)+*)+C),)-*% ' ne# X$lement(%.ombre%'%C&/01/ C23M(C3 -+* 4*CM C),)-5,+4*% ne# X$lement(%&rticulo%'ne# X$lement(%(d&rticulo%'%,% ' ne# X$lement(%Codigo%'%C*)+*)+C,6)*7% ' ne# X$lement(%.ombre%'%&C$23 , -8CM C,6)*79,% ' ne# X$lement(%&rticulo%'ne# X$lement(%(d&rticulo%'%4% ' ne# X$lement(%Codigo%'%C*)+*)+C-*87*% ' ne# X$lement(%.ombre%'%:3L($S/$2 , ;8CM C-*87% ; Console.<riteLine(doc./oString( ; doc.Save(%articulos.9ml% ; Console.<riteLine(%XML creado% ; = = =

'

La diferencia de la sintaxis para crear documentos !"L con respecto a la sintaxis empleada con las clases del ensam%lado System.Xml +ver revista *tix No -., , es que esta sintaxis se enfoca m$s en los elementos +representados por la clase XElement, que en el documento +representado en la clase Xdocument ,.

En este listado creamos el documento !"L de una manera declarativa anidando varias o%jetos XElement dentro de un o%jeto Xdocument , al final llamamos al m3todo 2ave para guardar el !"L en el disco. 5onstruimos la aplicaci n pulsando la tecla 89 ' al ejecutarse veremos el resultado en la ventana de salida de "ono(evelop como se muestra en la imagen siguiente.

Consultando XML con LINQ


*#ora agregamos un segundo pro'ecto a nuestra soluci n, este pro'ecto ser$ una aplicaci n :T;< que llamaremos 0SegundoLinqXML1 como se muestra en la siguiente imagen ' que nos mostrar$ como consultar el arc#ivo !"L con LINQ creado con la aplicaci n de consola anterior.

=tilizando el dise>ador agregaremos ' acomodaremos los siguientes controles :T;< al formulario.
Gtk.Entry Gtk.Button Gtk.RadioButton

txtQuer' ?tn?uscar 7%5 digo r%Id*rtculo r%Nom%re 7esultados

Gtk.TreeView

El formulario de%er$ verse como la siguiente imagen.

El listado completo de este segundo pro'ecto se muestra a continuaci n4


using using using using using System; 0t>; System.Xml.Linq; System.Collections.0eneric; System.Linq;

public partial class Main<indo# ? 0t>.<indo# { public Main<indo# ( ? base(0t>.<indo#/ype./oplevel { @uild ( ; &ddColumns(2esultados ; = protected void 3n!elete$vent (obAect sender' !elete$vent&rgs a { &pplication.Buit ( ; a.2etCal " true; =

protected virtual void 3n@tn@uscarClic>ed (obAect sender' System.$vent&rgs e { ListStore store " ne# ListStore(typeoD(string ; iD(System.(3.Eile.$9ists(%articulos.9ml% { string col " %Codigo%; iD(rb.ombre.&ctive col " %.ombre%; iD(rb(d&rticulo.&ctive col " %(d&rticulo%; 2esultados.$nable0ridLines " /reeCie#0ridLines.ForiGontal; X$lement 9ml " X$lement.Load(%articulos.9ml% ; var q " Drom s in 9ml.$lements(%/able% .$lements(col #Here s.Calue.Contains(t9tBuery./e9t select s; DoreacH(string r in q { store.&ppendCalues(r ; = 2esultados.Model " store; =else using(!ialog dia " ne# Message!ialog(tHis'!ialogElags.Modal' Message/ype.$rror' @uttons/ype.3>'%.o e9iste el arcHivo XML%'null { dia.2un( ; dia.!estroy( ; = = 55se crear las columnas del 0rid void &ddColumns (/reeCie# treeCie# { Cell2enderer/e9t renderer/e9t " ne# Cell2enderer/e9t ( ; string[] s " {%2esultado%=; /reeCie#Column column; Dor(int i " *;i I s.LengtH;iJJ { column " ne# /reeCie#Column (s[i]' renderer/e9t' %te9t%' i ; treeCie#.&ppendColumn (column ; = = =

El siguiente fragmento de c digo muestra como realizar la consulta del arc#ivo !"L donde la varia%le col adquiere el valor de cualquier elemento dentro del elemento ta%le ' donde el valor contenga el texto escrito dentro de txtQuer', es aqu donde en esencia se utilizan las expresiones de consulta de LINQ una vez que se carga el documento !"L en memoria.
X$lement 9ml " X$lement.Load(%articulos.9ml% ; var q " Drom s in 9ml.$lements(%/able% .$lements(col #Here s.Calue.Contains(t9tBuery./e9t select s;

5onstruimos la aplicaci n pulsando el %ot n 89, seleccionamos el arc#ivo de pro'ecto ' #aciendo clic6 con e %ot n secundario del rat n seleccionamos la aplicaci n para que se inicie al ejecutar la soluci n@ al ejecutarla teclear un valor ' pulsar el %ot n consultar, o%servaremos cualquiera de los siguientes resultados dependiendo del control radio seleccionado.

que LINQ sea una #erramienta indispensa%le que a'uda a unificar la sintaxis de las consultas en !"L evitando aprender diferentes maneras de llegar a los mismos resultados. Los ejemplos pueden ser descargados de
http://www.humansharp.com/

Este documento est$ protegido %ajo la licencia de documentaci n li%re 8ree (ocumentacion License del /ro'ecto :N=, para consulta ver el sitio http://www.gnu.org/licenses/fdl.txt , toda persona que lo desee est$ autorizada a usar, copiar ' modificar este documento seg)n los puntos esta%lecidos en la BLicencia 8(LC

Autor

Conclusin
LINQ para !"L nos ofrece una forma r$pida ' eficiente de manipular documentos !"L teniendo en cuenta que el tra%ajo con !"L es inevita%le al estar presente en la plataforma .NET desde arc#ivos de configuraci n #asta Ae% 2ervices, 3sto #ace I S Mart!n M"rque# xomalliDgmail.com

Instalacin de Certificados Digitales en Apache


Es muy importante la confiabilidad que demos en nuestras pginas web, ya sea en internet o en intranets, para conseguir este objetivo necesitamos que nuestras pginas web tengan instalados los muy conocidos certificados digitales.
En este ejemplo utilizaremos la !erramienta %pen&& y como servidor web al '('C)E*.

Pasos para instalar certificado digital

un

+sicamente para la instalacin de certificados digitales en servidores web se necesitan seguir los siguientes pasos:

Introduccin
Con el creciente manejo de pginas web y la manipulacin de todo tipo de informacin, es necesario garantizar:

a autenticacin de la identidad del emisor y del receptor de la informacin. a integridad de la informacin, es decir que la informacin no !aya sido manipulada. a confidencialidad de la informacin, es decir que slo el emisor y receptor vean la informacin. El no repudio de la comunicacin, es decir que una vez aceptada la comunicacin, "sta no pueda ser negada de !aber sido emitida#recibida.

,. -enerar un arc!ivo de solicitud de firma de certificado CSR (Certificate Signing Request), en el cual se especifican los datos que llevar el certificado digital. Este arc!ivo y la llave privada, los generaremos con la !erramienta %pen&& . *. El C&. debe ser procesado por una entidad emisora de certificados digitales CA (Certificate Authority), e/isten varios C's gratuitos como por ejemplo www.cacert.org o www.openca.org. 0. 1na vez que el C' !a procesado la solicitud C&., el C' nos proporcionar el certificado digital, 2por lo general tarda de uno a dos d$as en procesar la solicitud3. 4. (or 5ltimo se debe cargar la llave privada y el certificado digital en el servidor web.

Estos puntos son garantizados con el uso de certificados digitales en las pginas web, en este art$culo veremos la forma ms sencilla de instalar un certificado digital.

Procedimiento
El procedimiento detallado a continuacin es utilizado para generar y activar certificados digitales y ponerlos a disposicin por medio de apac!e.

Generar un archi o de solicitud de firma de certificado CSR


(ara generar el C&. utilizaremos la !erramienta %pen&& , la cual viene instalada por defecto en la mayor$a de distribuciones linu/. Creamos el directorio para almacenar nuestros certificados y llaves:
# mkdir /etc/ssl/crt # cd /etc/ssl/crt

Con el siguiente comando generaremos la llave privada servidor.key y el C&. servidor.csr:


# openssl req -new -nodes -keyout servidor.key -out servidor.csr Generating a 1024 bit !" private key ..........###### ...................................###### writing new private key to $servidor.key$ ----%ou are about to be asked to enter in&ormation t'at will be incorporated into your certi&icate request. ('at you are about to enter is w'at is called a )istinguis'ed *ame or a )*. +'ere are quite a &ew &ields but you can leave some blank ,or some &ields t'ere will be a de&ault value.& you enter $.$- t'e &ield will be le&t blank. ----/ountry *ame 02 letter code1 2"34567 !tate or 8rovince *ame 0&ull name1 2!ome-!tate459a 8a: 9ocality *ame 0eg- city1 2459a 8a: 7rgani:ation *ame 0eg- company1 2.nternet (idgits 8ty 9td459inu; 6olivia 7rgani:ational 3nit *ame 0eg- section1 245)epartamento de !istemas /ommon *ame 0eg- %73 name1 245servidor1.test <mail "ddress 245ren:omp=lycos.com 8lease enter t'e &ollowing $e;tra$ attributes to be sent wit' your certi&icate request " c'allenge password 245 "n optional company name 245 #

6onde los campos ms importantes son:


/ommon *ame 0eg- %73 name1 245servidor1.test >- dominio- subdominio ? ip de la p@gina web para el certi&icado. <mail "ddress 245ren:omp=lycos.com >- correo electr?nico del administrador de la p@gina web.

istamos el contenido del directorio /etc/ssl/crt:


# ls -l -rw-r--r-- 1 root root -rw-r--r-- 1 root root #

ABA 2010-0B-21 215B4 servidor.csr CCA 2010-0B-21 215B4 servidor.key

Solicitar el certificado digital a un CA!


E/isten varios C's gratuitos como por ejemplo www.cacert.org www.openca.org, en estos sitios debemos suscribirnos y cargar el C&., una vez que el C' !a procesado la solicitud nos informar por correo electrnico y nos proporcionara el certificado digital, para nuestro ejemplo el arc!ivo servidor.crt, el C' por lo general tarda de uno a dos d$as en procesar la solicitud. 1na vez obtenido el arc!ivo con el certificado digital servidor.crt, copiamos el mismo a la carpeta /etc/ssl/crt:
# ls -l -rw-r--r-- 1 root root 101A 2010-0B-21 2154D servidor.crt -rw-r--r-- 1 root root ABA 2010-0B-21 215B4 servidor.csr -rw-r--r-- 1 root root CCA 2010-0B-21 215B4 servidor.key #

Cargar la lla e pri ada y el certificado digital en el ser idor "e#!


(ara este ejemplo utilizamos el servidor web '('C)E* y nuestra pgina web est definida como sitio por defecto en el servidor web. ' continuacin !abilitaremos el sitio por defecto para que pueda manejar certificados digitales. (rimero nos aseguramos que el puerto 440 est" !abilitado en el servidor web '('C)E*:
# cat /etc/apac'e2/ports.con&

*ameEirtualFost G5C0 9isten C0 >.&Hodule modIssl.cJ # !!9 name based virtual 'osts are not yet supported- t'ere&ore no # *ameEirtualFost statement 'ere 9isten 44B >/.&HoduleJ #

Como segundo paso debemos configurar la ubicacin de la llave privada y del certificado en el arc!ivo de configuracin del sitio por defecto:

# vi /etc/apac'e2/sites-available/de&ault-ssl . . . . #" sel&-signed 0snakeoil1 certi&icate can be created by installing #t'e ssl-cert package. !ee #/usr/s'are/doc/apac'e2.2-common/ <")H<.)ebian.g: &or more in&o. #.& bot' key and certi&icate are stored in t'e same &ile- only t'e #!!9/erti&icate,ile directive is needed. !!9/erti&icate,ile /etc/ssl/crt/servidor.crt !!9/erti&icateKey,ile /etc/ssl/crt/servidor.key . . . . #

Como tercer paso !abilitamos el sitio por defecto && de '('C)E*:


# a2ensite de&ault-ssl <nabling site de&ault-ssl. un $/etc/init.d/apac'e2 reload$ to activate new con&igurationL #

Como cuarto paso !abilitamos el mdulo && para '('C)E*:


# a2enmod ssl <nabling module ssl. !ee /usr/s'are/doc/apac'e2.2-common/ <")H<.)ebian.g: on 'ow to con&igure !!9 and create sel&-signed certi&icates. un $/etc/init.d/apac'e2 restart$ to activate new con&igurationL #

Como 5ltimo paso cargamos la nueva configuracin al servidor web '('C)E*:


# /etc/init.d/apac'e2 &orce-reload eloading web server con&ig5 apac'e2. #

Prue#a de la instalacin del certificado digital


7ngresamos a la pgina web, que para este ejemplo es el https://server1.test

8emos el contenido del certificado digital !aciendo un clic al recuadro azul:

uego ingresamos a 9:'& 7;<%.:'C7=;> y luego 98E. CE.?7<7C'6%>:

Conclusin
Con la instalacin de certificados digitales en nuestras pginas web, podemos asegurar la identidad, integridad, confidencialidad y el no repudio de la informacin que viaja a trav"s de nuestros servidores web.

Referencias
@,A @*A !ttp:##!ttpd.apac!e.org# !ttp:##openssl.org#

Autor

Ren$o %artine$ Pardo 7ngeniero &istemas Electrnicos renzompBlycos.com

GPXE Arranque de Sistemas Operativos en Red con Software Libre


El arranque de los sistemas operativos en red actualmente contribuye a solucionar varios tipos de problemas encontrados al hacer uso de mecanismos tpicos de arranque y adems permite ofrecer alternativas muy atractivas al respecto.
cantidad de personas que saben de la e2istencia de un proyecto denominado g34E y que hace posible el arranque por red utili5ando Soft are Libre6.

Motivacin
El arranque de los sistemas operativos en red puede solucionar varios de los problemas encontrados al usar el tpico arranque local a ms de ofrecer alternativas atractivas dentro de los entornos de red)

Introduccin
El paso del tiempo no ha podido evitar percibir los grandes beneficios que ha otorgado el uso y desarrollo del FLOSS (Free Soft are and Open Source Soft are! o Soft are Libre y Soft are de "#digo $bierto% principalmente en cuanto a innovaci#n y accesibilidad de las tecnologas de la informaci#n se refiere. &no de los campos en donde ha calado fuertemente este movimiento filos#fico'tecnol#gico es el de los Sistemas Operativos. (uchos sabemos que un Sistema Operativo tiene ms de una forma de iniciar o arrancar) ya sea usando un dis*ette (floppy dis*!% "+ o +,+% dispositivos de almacenamiento &S- y los tpicos discos duros empotrados localmente en nuestros computadores. pero es menor el n/mero de personas que conocen que un Sistema Operativo tambi0n puede arrancar a trav0s de una red cableada o inalmbrica. 1 de seguro ser menor la

3roblemas de fallo muy frecuentes de los discos o dispositivos locales La actuali5aci#n distribuida dificultosa en un entorno interconectado. es no

Los nuevos sistemas necesitan constantemente de una instalaci#n y configuraci#n id0ntica. Los modernos computadores de los usuarios inciden con frecuencia en problemas de incompatibilidad al arrancar localmente su sistema operativo preferido. Los archivos que son los mismos para cualquiera de la red solamente e2isten en un lugar) el me7oramiento del sistema es algo sencillo y rpido. 8ener un solo servidor central fantstico es ms que ahorrarse en

comprar varios discos duros a nivel de consumidor.

peligroso a su disco duro.

Los clientes pueden arrancar por red dentro de un entorno especial sin reali5ar ning/n cambio indebido o

Las herramientas de diagn#stico e instaladores de sistemas operativos pueden e7ecutarse sin necesidad de acarrear un pu9ado de "ds.

Evo ucin de as tecno o!"as de arranque en red


:;;< =et or* -oot >mage (=->!) 8ransferencia del control al *ernel y enlace de drivers. :;;? Etherboot) "ompatible con imgenes =-> :;;@ 3reboot e4ecution Environment (34E!) &n servidor +A"3 que especifca el nombre de archivo de un programa de arranque de red (=-3! descargado a trav0s de un servidor 8F83% el cual a su ve5 continua descargando el *ernel y dems imgenes del Sistema Operativo. 34E se convirti# en el estndar sacado a la lu5 por >ntel en ese a9o. :;;; "ontinua el desarrollo del proyecto Etherboot BCCC rom'o'matic) Denerador va eb de imgenes de arranque Ethernet en http)EE .rom'o'matic.netE

BCC? (arty "onnor y (ichael -ro n reescriben el proyecto Etherboot dando lugar al nacimiento de g34E% una implementaci#n FOSS de 34E. BC:C g34E versi#n :.C

#ue es !PXE$ii
Fg34E es un cargador de arranque de red e2tensible% poderoso% Open Source y de licencia D3L. "onstituye un reempla5o directo para las 34E GO(s propietarias% con muchas caractersticas e2tras tales como +=S% A883% iS"S>% etc. F

Soporte +=S para uso de nombres de host (hostnames! ,ariados protocolos de descarga soportados) 8F83% A883% A883S% F83% =FS +iversidad de formatos de imagen de Sistemas Operativos) ELF% "O(<B% 34E% Linu2 y otros 3osee una lnea de comandos con amplio soporte de scripts. Si el driver de una tar7eta de red no soporta 34E para arrancar% se puede FquemarI una imagen del cargador de arranque en red g34E)

%ondades de !PXE

>ncluye docenas de drivers para tar7etas de red% incluyendo la mayora de uso com/n. -uena compatibilidad con inalmbricas ( ireless! HCB.:: redes

Encadenador de arranque compatible con drivers 34E

En un chip dentro de una tar7eta de e2pansi#n En el mismo ->OS

En una dis*ette o floppy En un "+E+,+ En una memoria &S-.

que le asignar% la direcci#n del servidor 8F83 o A883 dependiendo del protocolo que se haya elegido para el arranque. El cliente recupera la imagen e7ecutable del cargador de arranque desde el servidor utili5ando 8F83% A883 u otro protocolo. El cliente e7ecuta la imagen e2trada. +ependiendo de la imagen de arranque y del archivo de configuraci#n o script g34E el cliente empie5a a solicitar la imagen del *ernel y la del sistema de archivos ra5 inicial.

E proceso de arranque con !PXE iii

El ->OS del computador cliente pregunta por su configuraci#n >3 y por la informaci#n de arranque en red va +A"3. El servidor +A"3 le provee al ->OS del cliente los parmetros de arranque necesarios tales como la direcci#n >3

&a er pr'ctico de !PXE


3ara poder reali5ar las diferentes pruebas y configuraciones g34E se utili5# ,irtual -o2 <.: de Sun% con el cual se cre# una mquina virtual cliente con un disco duro vaco aunque no es necesario ni el disco vaco. El servidor es una mquina con +ebian D=&ELinu2 ?.C de arquitectura i<HJ. $mbas mquinas con la configuraci#n de red establecida en F$daptador 3uenteI para que se puedan comunicar en la red que se formar dentro de ,irtual -o2 . La direcci#n >3 del servidor es :;B.:JH.:CC.:

(onfi!uracin de Servidor
El servidor debe tener instalado los servicios de +A"3 y A883 adems de la utilidad syslinu2 para facilitar las configuraciones posteriores. Si hay necesidad de instalarlos% en +ebian bastar hacer)
miltonlab@debianlab:~$ apt-get install dhcp3-server apache2 syslinux

$unque% en ve5 de apache podemos usar otro servidor http. &n aspecto importante antes de arrancar correctamente el servicio dhcp<% es tener fi7ada ya la >3 de la tar7eta de red del servidor de tal manera que 0sta quede dentro del rango de la subred que se especificar en dhcp. La configuraci#n que estableceremos para asignar las >3s y adems servir el binario de g34E a trav0s de +A"3 es la siguiente)
miltonlab@debianlab:~$ emacs /etc/dhcp3/dhcpd.conf subnet !2. "#.$.$ netmas% 2&&.2&&.2&&.$ ' ( definici)n del rango de direcciones range !2. "#. $$.3 !2. "#. $$.!* ( nombre del archivo de imagen a descargar filename +http:// !2. "#. $$. /gpxe/gpxelinux.$+* option broadcast-address !2. "#. $$.2&&* next-server !2. "#. $$. *

3reparamos el directorio en donde vamos a almacenar todos los archivos de configuraci#n de gp2e e imgenes de Sistemas Operativos que desearemos arrancar. Se llamar gpxe y lo colocaremos en el root de los sitios de apache) /var/www/gpxe
miltonlab@debianlab:~$ m%dir /var/---/gpxe

"opiamos las imgenes del *ernel y del sistema de archivos inicial de cada Sistema operativo que desearemos arrancar por red al directorio preparado. Estos archivos generalmente los obtendremos descomprimiendo el iso de la distribuci#n del sistema operativo. $s por e7emplo para disponer de +amm Small Linu2 podramos reali5ar la copia de los archivos de la siguiente manera)
miltonlab@debianlab:~$ cp linux2. /var/---/gpxe/dsl/ miltonlab@debianlab:~$ cp minirt2..g/ /var/---/gpxe/dsl/

"opiamos el archivo binario de gp2elinu2 al directorio preparado para la configuraci#n)


miltonlab@debianlab:~$ cp /usr/lib/syslinux/gpxelinux.$ /var/---/gpxe

$s mismo copiamos el archivo vesamenu.c<B para generar el men/ de arranque con una interfa5 grfica que permita escoger el sistema operativo con el cual iniciar la mquina cliente.
miltonlab@debianlab:~$ cp /usr/lib/syslinux/vesamenu.c32 /var/---/gpxe

Luego crearemos y colocamos los archivos requeridos por el tpico pxelinux.0 creando en primer lugar la carpeta pxelinux.cfg y dentro de la misma el archivo default con el contenido que se muestra ad7unto)

miltonlab@debianlab:~$ m%dir /var/---/gpxe/pxelinux.cfg miltonlab@debianlab:~$ emacs /var/---/gpxe/pxelinux.cfg/default menu title 0ervidor g123 de 4istros 55678097 2$ $:: menu bac%ground flisol2$ $.png prompt $ default vesamenu.c32 7;<37 dsl =3>?37 dsl/linux2. ;113?4 ramdis%@si/eA"$$$$ initA/etc/init langAus vgaAB! initrdAdsl/minirt2..g/ Cuiet 7;<37 pmagic ...

"omo se observa% el binario vesamenu.c32 nos permite especificar un ttulo% una imagen de fondo entre algunas otras opciones. Se debe adems incluir obligatoriamente una entrada del tipo L$-EL ... KEG=EL ... por cada Sistema Operativo que se desee tener disponible para arrancar.

Arranque de a M'quina ( iente


Luego de activados los servicios y configurado el servidor adecuadamente procederemos a obtener una imagen autoarrancable de g34E (.iso% .ds* o .usb! para arrancar la mquina cliente. 3odemos hacerlo obteni0ndola directamente desde el sitio http://www.rom-omatic.net o en su defecto compilando los fuentes de g34E para generar la imagen en binario que necesitemos)
miltonlab@debianlab:~$ miltonlab@debianlab:~$ miltonlab@debianlab:~$ miltonlab@debianlab:~$ tar -xv/f gpxe- .$.$.tar.g/ cd gpxe- .$.$/ cd src/ ma%e

Finalmente encontraremos las imgenes en el directorio src/bin. 3ara una correcta compilaci#n se necesitarn que est0n instalados previamente los paquetes binutils% gcc% ma*e% perl% m*isofs% mtools. &na ve5 obtenida la imagen autoarrancable de g34E procederemos a LquemarL dicha imagen en el medio adecuado (cdrom% floppy% usb ...! Finalmente procedemos a arrancar la mquina cliente desde el medio que contenga la imagen de g34E. $ continuaci#n se muestran algunas imgenes de la mquina virtual cliente arrancando con g34E y cargando luego el Sistema Operativo +amm Small Linu2% una distribuci#n D=&ELinu2 liviana y verstil. "abe se9alar que las imgenes son parte de una charla demostrativa que se efectu# en el FL>SOLBC:C en la ciudad de Lo7a M Ecuador)

(onc usiones)

g34E puede ampliar el tiempo de vida /til de computadoras dadas de ba7a. g34E genera amplia e2pectativa en las aplicaciones relacionadas con la $dministraci#n de Gedes y "entros de "#mputo g34E tiene una gran proyecci#n. E7. arranque a trav0s de redes inalmbricas ya soportado en el versi#n :.C

Los 3royectos FLOSS generan altos ndices de innovaci#n y liberan el conocimiento

$gradecimientos especiales a)

Shao (iller% miembro de la lista de discusion gp2eNetherboot.org (arty "onnor% lider del 3royecto Etherboot A. 3eter $nvin% de >ntel y del proyecto Syslinu2 Ooshua Oreman% del (assachusetts >nstitute of 8echnology (>8.

3or sus valiosas aclaraciones a trav0s de correo electr#nico y por su invaluable contribuci#n a la masificaci#n del conocimiento.

Autor

Mi ton Labanda Estudiante del (ster en Soft are Libre (&O":! +ocente "arrera >ngeniera en Sistemas (&=LB! >ngeniero en >nformtica (&83L<! $ctivista del Soft are Libre :CCCton.labNgmail.com

Obtener contraseas de redes Wifi desde Fedora


Una forma de poder conseguir contraseas de AP, sin salir de nuestra distro, sin pausar nuestras labores y lo mas importante con la misma herramienta de los LiveCD ms famosos en el campo.

Comencemos
/ui.n dec&a %ue desde nuestra distro ()edora 01 Constantine* instalado, no podr&as conseguir las contraseas de la !ifi %ue detecte nuestra PC o porttil, ahora ya no es necesario descargar alg,n LiveCD, como son los famosos y super buenos !ifi!ay, bac"trac", !ifisla#. -olo necesario instalar el pa%uete de a%uellos programas dedicados a descifrar las contraseas de alguna !ifi. Para ello necesitamos cargar un terminal y loguearnos como usuario root.
Aircrack-ng

es

NOTA2 De ahora en adelante se usar con el usuario root.

Introduccin
Para muchos de nosotros nos es un poco incomodo de ar de hacer cosas para reiniciar nuestro ordenador e insertar un LiveCD como !ifi!ay, bac"trac", !ifisla#$ solo para poder encontrar la contrasea del AP %ue detecta nuestra !ifi$ y esperar mientras se capturan pa%uetes, descencriptar y mostrar la clave. Lo ideal ser&a, traba ar mientras conseguimos la contrasea, este manual tiene esa intenci'n, para ello solo es necesario instalar en nuestra distro ()edora* el pa%uete Aircrac"+ng, es ms %ue suficiente para poder conseguir una contrasea de alg,n AP. -e e#plicar lo ms detallado posible los pasos %ue nos llevar a conseguir con .#ito la contrasea del AP detectado.

Damos

clic"

en
del

Herramientas Terminal.

Aplicaciones sistema

--> -->

Una ve3 cagado el terminal colocamos 4su4, para cambiarnos de usuario, y nos pedir la contrasea del mismo (no se preocupen si no se ve lo %ue escribimos, es una buena forma de proteger nuestra privacidad*. Una ve3 ya en modo root, pasamos a copiar lo siguiente2 yum -y install aircrack-ng, listo eso es todo, es cosa de esperar la instalaci'n del pa%uete.

5a instalado, pasamos a probar como es %ue se encuentra nuestra !ifi, para ello, en el terminal hacemos uso de iwconfig, lo %ue hacemos, es ver en detalle muestra tar eta !ifi.

Nota2 6n este caso ya estoy conectado con la red, en la cual he probado toda esta teor&a, por cierto dice tener 4mucha seguridad4. Como vemos, mi tar eta est con el nombre eth0, no olviden este nombre ya %ue les va ser de mucha utilidad, nos fi amos en el modo en %ue se encuentra nuestra tar eta, por defecto la encontraremos en modo 7anaged. Una ve3 %ue nos fi amos en el estado de nuestra tar eta, debemos ponerla a modo 7onitor$modo 7anaged y 7onitor, la respuesta son muy sencillas. 7odo 7anaged, en este estado de la tar eta se pone visible ante cual%uier AP, 8outer, lo cual de a 4huella4 cuando hace

un 4movimiento4, es el estado normal de toda tar eta cuando reali3a una cone#i'n para una navegaci'n$ en cambio en 7odo 7onitor, la tar eta est en un estado invisible y captura todos los pa%uetes %ue se transmita por la !ifi sin %ue el administrador se de cuenta de %ue alguien se a colgado de su red, .sto tiene varias utilidades buenas y malas, ya %ue podemos ver todos los datos y mensa es %ue se transmiten, ver los usuarios %ue se encuentren conectados a la red y muchas cosas ms$ muy interesante no9. :lustramos algunos conceptos para poder entrar ms en ambiente, falta ahora lo ms importante, colocar a la tar eta en modo monitor. Para ello en la terminal introducimos airmonng start eth1, con esto ponemos a nuestra tar eta en modo monitor$ pero si %uisieran salir de ese modo, pues detenemos el proceso colocando airmon-ng stop eth1. 6n esta imagen vemos %ue ya activamos el estado monitor a mi tar eta. Ahora veremos como lo desactivamos el estado.

Una ve3 %ue nuestra tar eta se encuentra en modo monitor, nos interesa saber cuantas son las redes !ifi %ue nuestra tar eta detecta, para ello necesitaremos reali3ar un escaneo, vamos al terminal e introducimos airodump-ng eth1, no olvidar %ue eth0 es el nombre de mi tar eta, ustedes pondrn lo %ue le salga cuando e ecutan el comando iwconfig.

Como vemos, estamos reali3ando un escaneo de todas las redes !ifi %ue detect' mi tar eta, si nos fi amos, en la parte superior vemos C; <, nos est indicando el canal por el cual en este momento esta escaneando$ seguidamente nos muestra el tiempo %ue llevamos reali3ando la operaci'n, la fecha y hora, por ,ltimo el nombre de nuestra tar eta y el estado. 6n seguida vemos una l&nea de t&tulos como2

BSSID, es la columna donde nos mostrar todas las 7AC Address de las redes !ifi %ue detect'. Direcci'n 7AC del AP. PWR, nivel de seal reportado por la tar eta. -u significado depende del controlador, pero conforme te acercas al AP o a la estaci'n la seal aumenta. -i P=8 >> +0, el controlador no soporta reportar el nivel de seal. Beacons, n,mero de pa%uetes+anuncio enviados por el AP. Cada punto de acceso env&a unos die3 beacons por segundo al ritmo (rate* m&nimo (07*, por lo %ue normalmente pueden ser recogidos desde muy le os. #Data, n,mero de pa%uetes de datos capturados (si es =6P, s'lo cuenta :?s*, incluyendo pa%uetes de datos de difusi'n general. # s, n,mero de pa%uetes de datos capturados por segundo calculando la media de los ,ltimos 0@ segundos. C!, n,mero de canal (obtenido de los pa%uetes beacon*. Aota2 algunas veces se capturan pa%uetes de datos de otros canales aun%ue no se est. alternando entre canales debido a las interferencias de radiofrecuencia. "B, velocidad m#ima soportada por el AP. -i 7B > 00, entonces se trata de C@1.00b, si 7B > 11 entonces es C@1.00bD y velocidades mayores son C@1.00g. #NC, algoritmo de encriptaci'n en uso. EPA > sin encriptaci'n, F=6P9F > =6P o mayor (no hay suficiente datos para distinguir entre =6P y =PA*, =6P (sin la interrogaci'n* indica =6P esttica o dinmica, y =PA si GH:P o CC7P estn presentes. CIP!#R, detector cipher. Puede ser CC7P, =8AP, GH:P, =6P, =6PI@, o =6P0@I. A$T!, nos est indicando con %ue tipo identificaci'n se encuentra la red. #SSID, conocida como F--:DF, puede estar vac&a si el ocultamiento de --:D est activo.

6n este caso airodump tratar de recuperar el --:D de las respuestas a escaneos y las peticiones de asociaci'n.

STATION, Direcci'n 7AC de cada cliente asociado. 6n la captura de pantalla, vemos %ue se han detectado dos clientes (@@2@J2KB26B2CK21B y @@2@121D2C02KD20)*. %ost, el n,mero de pa%uetes perdidos en los ,ltimos 0@ segundos. Pac&ets, el n,mero de pa%uetes de datos enviados por el cliente. Probes, los 6--:Ds a los cuales ha intentado conectarse el cliente.

Como ya hemos visto todas las redes a nuestro alcance y nos hemos decidido por una, pues nos colocamos en su canal y guardamos los pa%uetes recibidos en un archivo para luego descifrar y poder sacar la contrasea esperada. ?olvemos a nuestro terminal y colocarnos la siguiente l&nea airodump+ng +! clave +c 0 eth0, donde2 +! indicamos %ue es escritura, clave el nombre del archivo a guardar los pa%uetes, +c 0 es el canal donde se encuentra el AP v&ctima y eth0 el nombre de nuestra red. Uso2 airodump-ng -w <nombre del archivo> -c [canal]
<interfaz>

Como ya hemos comen3ado a capturar los pa%uetes, necesitamos reali3ar un ata%ue al AP donde los pa%uetes %ue capture nuestra tar eta sean los adecuados, para ello e#istes varios como son2

Ata'ue (2 Desautentificaci'n Ata'ue )2 Autentificaci'n falsa Ata'ue *2 -elecci'n interactiva del pa%uete a enviar Ata'ue +2 8einyecci'n de petici'n A8P Ata'ue ,2 6l FchopchopF de HoreH (predicci'n de C8C*

-i nos damos cuenta en la Lrfica @K, vemos %ue e#isten varios clientes conectados a un solo AP, es un buen punto a favor, ya %ue podemos utili3ar el Ata%ue 02 Autentificaci'n falsa, de esta forma tendremos un ata%ue e#itoso. Por lo tanto consiste en crear nosotros mismos un cliente

%ue se asociar a ese AP. ;ay %ue recordar llegando a este punto %ue siempre ser me or un cliente verdadero ya %ue el falso no genera trfico A8P. -e recomienda %ue antes de reali3ar este ata%ue cambiemos nuestra direcci'n 7AC de la tar eta para %ue envi. correctamente ACHs (peticiones*. Lo %ue hacemos es desmontar la unidad de red, cambiar la 7AC por una obtenida de alg,n cliente conectado y levantamos la tar eta.
ifconfig eth1 down ifconfig eth1 hw ether 00:11:22:33:44:55 ifconfig eth1 up

La otra forma es todo en una sola l&nea


ifconfig eth1 down hw ether 00:11:22:33:44:55

Una ve3 reali3ado .sto lan3amos el ata%ue de la siguiente forma2


aireplay-ng -1 0 -e 'the ssid' -a 00:13:10:30:24:9C -h 00:11:22:33:44:55 ath0

Por ,ltimo nos debe salir2


Sending uthentication !e"uest uthentication successful Sending ssociation !e"uest ssociation successful :-#

4the ssid4 sin las comillas es el nombre del AP @@2002112MM2II2KK Cliente falso Algunos puntos de acceso re%uieren de reautentificaci'n cada M@ segundos, sino nuestro cliente falso ser considerado desconectado. 6n este caso utili3a el retardo de re+asociaci'n peri'dica2
aireplay-ng -1 30 -e 'the ssid' -a 00:13:10:30:24:9C -h 00:11:22:33:44:55 ath0

-i en ve3 de M@ segundos %ueremos 1@ pues escribimos 1@ si fuesen 0@ modificamos por 0@ y as& sucesivamente. -i este ata%ue parece fallar (aireplay permanece enviando pa%uetes de petici'n de autenticaci'n*, puede %ue est. siendo usado un filtrado de direcciones 7AC. Aseg,rate tambi.n de %ue2

6sts lo suficientemente cerca del punto de acceso, pero o o no demasiado por%ue tambi.n puede fallar. 6l controlador est correctamente parcheado e instalado. La tar eta est configurada en el mismo canal %ue el AP. 6l B--:D y el 6--:D (opciones +a N +e* son correctos.

Una ve3 reali3ada esta operaci'n debemos esperar %ue capture un m&nimo de M@@@@ pa%uetes para poder obtener la clave sin problemas. Luego de una pe%uea o larga espera y pasado el m&nimo, ponemos al terminar en ventana activa y presionamos CtrlDC para detener el proceso de captura.

Como vemos ya hemos pasado ms de los M@@@@ (I<1MI datos* ahora podemos comen3ar a descifrar el archivo, de amos la tarea a aircrac"2
aircrack-ng <nombre del archivo>-01.cap

Aos mostrara una lista de AP %ue se capturo en ese canal

6scogemos el B--:D deseado y a traba ar2

Despu.s de unos segundos aircrac" nos estar mostrando la contrasea esperada.

La clave %ue nos dar est en he#adecimal y para usarla hay %ue %uitar los 2 %ue hay entre cada n,mero, y listoOOO

Conc-usin
Con esta clase de herramienta instalada en nuestro ordenador podemos saber %uien est colgado en nuestra red y muchas cosas ms. Un mal uso de esta herramienta nos puede llevar a cometer muchos per uicios, lo cual de o a criterio del lector. 6n este e emplo se mostr' una forma bsica de poder conseguir una contrasea de AP detectados. -e recomienda visitar el sitio de referencia donde se pueden encontrar ms informaci'n sobre la herramienta utili3ada.

Autor

!ans Cru. Buc/e--i Bachiller en Ciencias de la Computaci'n han#Rfedorapro ect.org

Referencias
P0Q P1Q http2NN!!!.aircrac"+ng.orgN http2NNforum.aircrac"+ng.orgN

Willay news
Cloud Expo Europe 2010
Expo Cloud es el nico evento europeo que se dedica a todos los aspectos de la computacin en nube, del centro de datos, almacenamiento y seguridad de cdigo abierto en Cloud Computing. !sistiendo a un evento de esta naturale"a, se puede apreciar plenamente las amplias oportunidades que Cloud Computing tiene para o/recer. (i usted es un usuario /inal, un pro/esional de #-, un proveedor o un revendedor de la in/raestructura de Cloud, aplicaciones o servicios en la nube, la nube Expo Europa tiene algo para todo el mundo para llevar. El modelo de nube o/rece una /orma muc)o ms barata para las empresas a adquirir y utili"ar la in/ormacin. En una recesin econmica, el atractivo de que la venta0a de costo ser muc)1simo ms. Esta venta0a es especialmente importante para las empresas peque*as y medianas, un sector que ser clave ob0etivo en cualquier plan para la recuperacin.

El evento de Cloud Expo 2009 reunio a algunas de las ms respetadas empresas del sector como oogle, !ma"on, #$%, &ed 'at, Cisco, (un, (ugarC&% y muc)os ms para presentar el caso de Cloud Computing. En un a*o Cloud Computing )a avan"ado de manera dramtica y la investigacin )a demostrado que en 20+2 el 20, de las empresas van a depender exclusivamente de Cloud Computing como un medio para la gestin de sus -#. Este a*o Expo Cloud 20+0 sera coprotagonista de .pen (ource Expo. Estos dos eventos permitirn a los visitantes conocer in/ormacin, recursos, ideas y e0emplos que se pueden aplicar en su propio entorno de traba0o para maximi"ar el rendimiento, me0orar la escalabilidad y minimi"ar los costos.

Da del Administrador de Sistemas


El viernes, 20 de 0ulio 20+0, es la ++ 3 edicin del 41a del !gradecimiento al !dministrador de (istemas. En este d1a especial, debemos brindar al administrador de sistemas algo que muestre que realmente apreciamos su traba0o duro y dedicacin.

Autor

Lucy Ayarde Romero Consultor de #lucy.ayarde8atixlibre.org

(eamos realistas, los administradores de sistemas no obtienen ningn respeto 256 d1as al a*o. Este es el d1a que todos los compa*eros administradores de sistemas en todo el mundo sern reconocidos y apreciados por su gran traba0o diligente, sin costosos y grandes obsequios, solo estamos pidiendo un bonito regalo simblico y algn reconocimiento pblico. Es lo m1nimo que pod1a )acer. Considere todas las tareas de enormes proporciones y las largas )oras, incluidos los /ines de semana tambi7n .(eamos )onestos, a veces no conocemos a nuestros administradores de sistemas, as1 como ellos nos conocen. &ecuerde que este es un d1a para reconocer la contribucin del !dministrador de (istemas en su lugar de traba0o y promover la excelencia pro/esional. 47les las gracias por todas las cosas que )acen por usted y su negocio.

Willay news
Papel electrnico flexible.
LG informa que el nuevo papel electrnico desarrollado es tan flexible como un film de rayos X, aunque no puede ser doblado completamente. Se trata de una pantalla monocromtica de tan solo 0.01 pul adas de espesor !0."mm# y esta conformada por una lamina del ada de metal y una formacin $%$ que le permiten recuperar su forma inicial.

&l nuevo e'aper de LG mide (.) por 1*.+ y utili,a tecnolo -a similar al lector de eboo.s S.iff de 11.* pul adas, del cual la pantalla tambi/n ser fabricada por LG 0isplay. LG utili,a su propia tecnolo -a para lo rar la flexibilidad de la pantalla, la cual elimina controladores de los costados del panel inte rndolos en el panel propiamente dic1o. &l panel pesa solo unas 2.3 on,as, pero LG aun no 1a brindado informacin de la cantidad exacta de contenido que puede ser almacenado o transferido al dispositivo.

'or lo pronto, tampoco se indica la utili,acin de procesador de aplicaciones incorporado, radio c1ipset, lector de tar4etas de memoria, o de cuando el nuevo papel electrnico flexible de LG comen,ara a comerciali,arse.

Rx de la nueva generacin
5oy en d-a existen problemas cuando la ente se va a 1acer un escaneo !o una placa de 6x#, obviamente la radiacin es uno, otro problema es si el aparato revelar los detalles del cuerpo de la persona. 'or esto, una compa7-a llamada $1ru8ision est desarrollando un sistema de prxima eneracin, moderna tecnolo -a y libre de radiacin9 y adems no revela ciertos detalles.

Edificio que informa el clima


<on el cambiante estado del tiempo para las personas es necesario conocer como estar el tiempo el d-a de ma7ana, 1e aqu- un invento que ayuda a conocer el pronostico del tiempo= se trata de un edificio de 3000 ventanas con +>000 luces L&0. Si ests cerca de la 0exia $o?er en @ruselas slo necesitas darle una o4eada a los colores y sabrs como estar el tiempo ma7ana.

Lo que :nico que el $1ru8ision $S2 1ace es buscar el calor corporal. Suena simple, pero podr-a ser muy bien usado en lu ares como aeropuertos o cortes como detector de metales. ;ncluso es capa, de revelar armas o bombas mostrndolos como un punto ne ro, por lo que tambi/n ser :til para combatir el trfico de armas.

$an pronto los residentes locales aprendan el cdi o podrn saber la temperatura, 1umedad, velocidad del viento y precipitaciones de ma7ana. &l cdi o es un misterio para m-, si al uien lo conoce por favor escribirlo en un comentario.

Autor

Jenny aavedra !pe" 0ise7o y &dicin 6evista Atix 4enny.saavedraBatixlibre.or

Contacto
Para solicitar cualquier informacin, puedes contactar a:

Esteban Saavedra Lpez (esteban.saavedra@atixlibre.or ! "enn# Saavedra ($enn#.saavedra@atixlibre.or !

Publicacin
%e invitamos a ser parte de la Revista ATIX. La forma de participar puede ser envi&ndonos: 'rt(culos referidos a &reas como: )nstalacin # personalizacin de 'plicaciones Scriptin *ise+o r&fico Pro ramacin # desarrollo de aplicaciones 'dministracin de servidores Se uridad # cualquier tema enmarcado dentro del uso de Soft,are Libre %rucos # recetas. -oticias. .omics. Lin/s de inter0s.

Empezamos a registrar nuestra historia

También podría gustarte