1
Es un grato honor poder reabrir la editorial de Tuxinfo luego de más de 2 años de inactividad. El último número que publicamos fue el 71 y su fecha diciembre de 2014. Luego del cierre de nuestra revista es que recibo muchas consultas relacionadas a la re apertura. El motivo por el cual dejamos de publicarla fue netamente una cuestión podríamos decir económica ya que la revista en todos los años que se edito no genero rédito suficiente para poder abonar a los que gratuitamente colaboraban en la misma. Con lo cual fueron quedando huecos en cada publicación, los cuales fui absorbiendo de a poco para continuar con Tuxinfo. Llegó un momento en el cual se me hizo muy cuesta arriba llevar adelante la publicación y decidí cerrarla de forma temporal. Obvio sabía que en algún momento íbamos a poder editarla nuevamente; y con el correr del tiempo, las consultas y los ofrecimientos constantes que recibí para escribir artículos; es que decidí darle una nueva oportunidad. Desde ahora las publicaciones saldrán de forma mensual, el diseño será más austero, el contenido iremos mejorándolo con el correr del tiempo; y se publicará de forma automática en dos versiones. Por un lado en PDF y por el otro en Epub. La cantidad de artículos de cada número no superar 4 en total; donde iremos ingresando notas relacionadas a GNU/Linux; Desarrollo; Diseño; Android; ChromeOS; Seguridad; Opinión; etc. Espero les guste el primer número, si desean colaborar con nosotros lo pueden hacer contactando a nuestro email info(arroba)infosertec.com.ar o bien al mail personal arielmcorg(arroba)gmail.com Saludos a todos! y esperamos sus comentarios como así también contribuciones!. Ariel M. Corgatelli Twitter @arielmcorg
● ● ● ●
Página 3 - MPIS - Ayudando a los novatos en Manjaro Linux Página 6 - Atom: Un editor de texto para el siglo 21 Página 13 - El fin de la seguridad ciega Página 15 - WHONIX “La seguridad desde la virtualización”
2
MPIS - Ayudando a los novatos en Manjaro Linux Si sos usuario de GNU/Linux seguramente escuchaste de la distribución Manjaro Linux, una distribución derivada de ArchLinux y la cual es semi rolling release. Es decir que no toma los repositorios directos de ArchLinux sino que los llevan a repositorios propios para darle un poco más de testing y recién ahí publicarlos como estables. Con unos amigos hemos desarrollado una herramienta la cual permite hacer el proceso de post-instalación de una manera más simple y sencilla. Hablamos de M PIS. MPIS es la sigla que se refiere a Manjaro Post Install Script. Una herramienta desarrollada en Python que permite configurar el sistema, instalar aplicaciones, desinstalar aplicaciones e incluso tunearlo desde una misma interfaz.
¿De donde nace este proyecto? Básicamente de la idea de un grupo de usuarios en Telegram, específicamente de @ManjaroLinuxEs, siendo este el grupo en español de usuarios de Manjaro. Después de que varios armamos las ideas generales, fuimos 3 personas los que empezamos con el proyecto, mientras que los restantes se encargaban de administrar el grupo (hoy con más de 350 miembros). El equipo de MPIS está conformado por: 3
-
Harrinson Gaviria (Venezuela): Desarrollador principal del proyecto. José Maruno Cadima (Bolivia): Tester y encargado de subir las versiones estables a AUR (ArchLinux User Repository). Natanael Garrido (Argentina): Tester, desarrollador, spam master. Encargado de la difusión del proyecto.
¿Qué cosas se pueden hacer con MPIS? Principalmente la herramienta está apuntada a usuarios novatos que quieren empezar a usar la terminal pero que muchos comandos los agobian o marean. Y también a los usuarios avanzados que se aventuran a instalar la versión Net de Manjaro y pueden preparar la distro para un uso cotidiano de una manera muy fácil. Con MPIS podemos actualizar por completo el sistema, refrescar mirrors, limpiar el sistema de paquetes huérfanos y limpiar la caché. También se pueden instalar o desinstalar aplicaciones (separadas en diversas categorías), instalar y desinstalar entornos de escritorios y administradores de ventanas e incluso listar los paquetes instalados que nuestro sistema tiene. A través de simples opciones podemos ir desplazandonos a través de la aplicación para realizar todas éstas opciones:
Portada de la aplicación
Menú Principal con todas las opciones. La aplicación
viene por defecto en inglés pero se puede setear en español también.
Menú de actualización del sistema. Desde actualizaciones por partes hasta la actualización completa y limpieza del sistema. Menú de instalación de aplicaciones. Separadas por categorías, podemos encontrar las aplicaciones que más se necesitan a la hora de empezar a usar el sistema.
4
Menú de instalación de Entornos de Escritorio y Manejadores de Ventanas. Los entornos disponibles para instalar.
Los Manejadores de Ventanas disponibles para instalar. El menú “Look & Feel” sirve para instalar diferentes temas de escritorio o paquetes de íconos. Por ahora no está disponible.
El menú de preferencias propio de la aplicación el cual permite setear algunas cosas como el idioma de la aplicación, la apariencia de la misma (modificando colores en los menúes y en las opciones), la opción para hacer una multi instalación de aplicaciones o también setear por defecto el parámetros “--noconfirm” para instalaciones desde AUR. Por último, el menú About el cual permite ver los últimos cambios que tuvo la aplicación respecto a versiones anteriores, ver el archivo README o incluso reportar un bug en el caso de que se detecte alguno. “Si sos usuario de Manjaro te animo a probar la aplicación y a dar tu apoyo al equipo desarrollador aportando ideas, código fuente o incluso reportando bugs”. Repositorio en github: https://github.com/kernelpanicblog/mpis Blog del proyecto: https://kernelpanicblog.wordpress.com Natanael Garrido www.neositelinux.com 5
Atom: Un editor de texto para el siglo 21
Una de las herramientas que todo programador o desarrollador de software requiere para realizar su trabajo y convertir una idea en un programa es un editor de texto. Esto que podría sonar simple, no lo es, ya que la elección de un mal editor puede llevar a pérdidas de tiempo y reducción de la productividad. Es por eso que hoy les traemos un editor, que tiene un gran potencial y es una excelente opción a tener en cuenta. Los editores de código La importancia de esta herramienta radica a que no solo sirven para escribir el código que posteriormente será compilado. Existen editores que incorporan características que agilizan y facilitan el trabajo gracias a indicadores de sintaxis, autocompletados, mapas de proyectos, indentadores e incluso acceso a opciones avanzadas como una consola. A lo largo de este artículo expondremos las cualidades que hacen de Atom una muy buena opción.
Ventana principal de Atol luego de la instalación inicial 6
¿Qué es atom? Como lo dicen sus mismos creadores “Atom es un editor de texto hackeable para el siglo 21” (Atom is a hackable text editor for the 21st century) desarrollado empleando el framework Electron. Es de mencionarse, que a pesar de que la palabra hackeable (españolización de la palabra) puede dejar a entrever problemas de seguridad y un producto inferior. La realidad es exactamente la contraria. Lamentablemente los derivados de “Hack” suelen malinterpretarse como algo maligno e ilegal, pero esto requiere de una pequeña explicación.
¿A qué se refiere la expresión Hackable? Dentro de la cultura hacker, se define a los mismos como individuos que disfrutan de desafíos intelectuales creativamente superando las limitaciones de sistema de software para la obtención de resultados nuevos y más inteligentes. Estas personas muchas veces son consideradas peligrosas por su gran conocimiento, pero recordemos que estas prácticas son una herramienta muy valiosa que puede ser utilizada tanto para el “bien como para el mal”. Lamentablemente con el paso de los años, gracias en parte al mal uso de los medios de comunicación, se asoció la palabra a la ciberdelincuencia. El término correcto para referirse al grupo de personas que realiza estas actividades delictivas es “cracker”.
Atom un editor de texto “hackeable” Teniendo en cuenta el significado de la palabra hacker podemos continuar. Atom tiene la curiosa característica de ser un editor desarrollado por la plataforma de desarrollo GitHub, razón por la cual el mismo sitio incentiva el uso del programa brindando la opción de descargarlo desde su sitio y herramientas. Esto es acompañado con la licencia open source (Licencia MIT) la cual permite a los usuarios entender su funcionamientos, crear forks y además personalizarlo. Justamente por esta última consecuencia es que el poder de la herramienta puede superar con creces a las funciones bases incorporadas gracias a los complementos que veremos más adelante.
¿Por qué debería invertir tiempo utilizando Atom? Editores de texto como Sublime y TextMate ofrecen comodidad pero solo una extensibilidad limitada. Por otra parte existen Vim y Emacs con la capacidad de personalización extrema. Estos últimos lamentablemente tienen una curva de aprendizaje lenta junto a la necesidad de aprender a utilizar lenguajes de scriptings específicos para hacer diversas tareas, entre ellas los ajustes. Atom es la solución que junta las ventajas de ambos extremos en un solo programa. El editor es una poderosa herramienta que puede ser utilizado por un simple estudiante en su primer dia escribiendo código, pero a la vez que la personalización se hace mediante ajustes simples y el uso de complementos intuitivos. Otra de las ventajas a disfrutar es la capacidad open source de expansión mediante el aporte de los usuarios y la posibilidad de disfrutar de sus bondades tanto en sistemas Windows, Mac como GNU/Linux. El proyecto entero está disponible en GitHub el repositorio completo de la empresa donde se almacena tanto el programa junto con su documentación y sus agregados.
7
La terminología. Para poder utilizar este programa introduciremos algunos conceptos fundamentales, que acompañado con un poco de curiosidad pueden mejorar muchísimo la experiencia de uso.
Paleta de comandos
Paleta de comandos de Atom en acción Como ocurre en editores como Vim o Emacs en Atom se pueden ejecutar comandos para activar funciones del programa como de sus complementos. Para utilizarlos simplemente hay que abrir la paleta de comandos utilizando el atajo de teclado Ctrl + Shift + P. Al hacerlo se abrirá un panel con un campo de texto donde se deben ingresar los nombres de los comandos. La ventaja que brinda la herramienta para esto es la posibilidad de escribir el nombre de los comandos con palabras en inglés. A esto se le agrega una lista de sugerencias en tiempo real lo cual hace muy intuitivo el uso. Además de la forma tradicional algunos comandos pueden ser lanzados mediante atajos de teclado modificables en los ajustes.
Configuraciones y preferencias
Panel de configuraciones de Atom Un gran número de configuraciones y preferencias son modificables con en el panel de configuraciones. Este es accesible tanto desde el menú Edit > Preferences como el atajo de teclado Ctrl + , . Allí se incluyen ajustes como cambiar el tema, espaciado, tamaño de tabulación, velocidad de scrolling y mucho más. También es posible usar el panel para instalar nuevos paquetes o temas.
8
Paquetes de Atom
Panel de instalación de paquetes de Atom Como muchas partes de Atom, la vista de árbol de proyectos no está incorporada por defecto en el editor, pero su paquete estándar lo contiene. Los paquetes podríamos verlos como los complementos de los navegadores: Incorpora nuevas funciones sin necesidad de rehacer el programa flexibilizando su uso. Los paquetes pueden dividirse en dos grupos: ● Paquetes del núcleo: Son los incorporados por el editor por defecto. ● Paquetes comunitarios: Aquí es donde se listan todos los complementos externos. Esta es una de las capacidades interesantes de Atom. Muchas de las características son actualmente paquetes que implementan nuevas funcionalidades. Esto significa que si, por ejemplo, la vista de árbol no nos interesa, podemos eliminarla o deshabilitarla desde las configuraciones. A su vez existe la posibilidad de incorporar una innumerable cantidad de nuevos atributos que convierten un simple editor de texto a una extremadamente poderosa herramienta de trabajo.
Abriendo más que archivos Atom no solo es capaz de abrir, modificar y guardar múltiples archivos sino que es posible abrir directorios. Estos son tratados como proyectos dentro de los cuales es posible acceder a las subcarpetas y archivos.
9
Panel de proyectos incluido en Atom A su vez permite manejar diversos proyectos al mismo tiempo dentro de una o múltiples ventanas según se desee. Una de las formas de acceder a la opción es mediante el la combinación de teclas Ctrl + Shift + O, además de por supuesto emplear el submenú dentro del menú archivos y el respectivo comando dentro de la paleta. Los proyectos son manejables tanto mediante comandos como con un panel que contiene un árbol mostrando las estructuras de los directorios similar a un sistema de archivos. Así pues es posible reorganizar y modificar el orden de los elementos visualmente.
No todo es color de rosa Como todo en esta vida Atom no es perfecto, una de las desventajas más grandes que posee el editor es estar por defecto en idioma inglés. Esto puede ser algo molesto para algunos usuarios, pero el nivel requerido para utilizarlo es muy básico. Por otra parte algunos paquetes requieren de ciertas dependencias, por lo tanto es recomendable leer la ficha de cada uno antes de instalarlos para corroborar qué elementos previos son necesarios, y llegados a ciertos casos qué versiones y sistemas son compatibles.
Ya estamos decididos ¡es hora de instalar Atom! La principal ventaja de este editor, como ya vimos, es ser multiplataforma. Tanto en Windows como Mac la instalación es tan simple como descargar el asistente de instalación desde la página oficial. En GNU/linux, por su parte, contamos con dos formas de instalar este software: gráficamente y empleando la consola.
10
Instalación Gŕafica Desde la página de atom podemos descargar los paquetes .deb como .rpm según el sistema operativo.
Página oficial de Atom (atom.io)
Instalación con consola Como prácticamente todo en Linux contamos con la posibilidad de instalar la herramienta utilizando la consola. Primero que nada es necesario descargar los paquetes e instalarlo mediante el administrador de paquetes que utilicemos. Aquí supondremos un uso puro de la consola Los enlaces de descarga son los siguientes: DEB: https://atom.io/download/deb RPM: https://atom.io/download/rpm
Debian y Ubuntu (deb/apt) Para instalar Atom en Debian, Ubuntu, o sistemas relacionados: # Instalando Atom sudo dpkg -i atom-amd64.deb # Instalando las dependencias si es necesario # (Se hace luego de instalar el paquete) sudo apt-get -f install
RedHat y CentOS (yum) Para instalar Atom en CentOS, Oracle Linux, RedHat Enterprise Linux, Scientific Linux o sistemas relacionados que usan el manejador de paquetes yum: 11
sudo yum install -y atom.x86_64.rpm
Fedora (dnf) Para instalar la última versión de Atom en Fedora u otros sistemas que usan el manejador de paquetes DNF: sudo dnf install -y atom.x86_64.rpm
SUSE (zypp) Para instalar la última versión de atom en openSUSE u otros sistemas que usan el manejador de paquetes Zypp: sudo zypper in -y atom.x86_64.rpm
Veamos un ejemplo completo Para facilitar un poco el trabajo a los nuevos en el uso de la terminal simularemos la instalación de Atom desde la consola en un equipo con Ubuntu: # Descarga del paquete del programa wget -O atomInstall.deb https://atom.io/download/deb # Instalando Atom sudo dpkg -i atom-amd64.deb # Instalando las dependencias si es necesario sudo apt-get -f install # Eliminado del instalador rm atomInstall.deb Conclusión Atom es una excelente herramienta de trabajo tanto para un estudiante o entusiasta como para un profesional. Contiene una gran cantidad de funciones que pueden ser expandidas mediante la incorporación de paquetes desarrollados por la comunidad. Además cuenta con la virtud de ser altamente personalizable brindando una muy buena experiencia y agilizando mucho el trabajo. Aun así los beneficios del editor no se remontan a su uso sino también a todo el código fuente disponible en el repositorio. De esta manera podemos aprender cómo funciona y si queremos mejorarlo aún más. Por lo tanto esta herramienta puede servir tanto como editor o como fuente para otros proyectos por lo que no está demás probarlo, estamos seguros que puede convertirse en el favorito de muchos.
David Giordana https://twitter.com/DavidGiordana
12
El fin de la seguridad ciega Normalmente las empresas hacen grandes esfuerzos financieros para promocionar sus productos, todos dicen ofrecer lo mejor. En el área del Software y de los Sistemas operativos, comúnmente hacen grandes inversiones en el desarrollo, cientos de programadores, analistas, testers y gente dedicada al área de soporte. La división de marketing siempre hace algo en forma consciente o inconsciente, resalta y a veces exagera los puntos a favor y por el contrario calla, oculta o minimiza los aspectos negativos. Publicidad, empresas de hardware y periodistas son llamados a promocionar el producto. Pero qué pasa cuando la realidad los contradice. Las pesadillas de todo CEO es saber que su producto tiene un fallo grande. 1- Se puede minimizar para salir en la fecha prevista y luego solucionar el problema en un parche. Y rogar que nadie se tope con el problema en el entretiempo. Muchos han hecho uso de esta opción. La lista parcial es increíblemente larga. 2- Reconocer el problema de inmediato y tomar la decisión más difícil. Retrasar la salida del producto a una fecha posterior. Mark Shuttleworth Se enfrentó a esta opción el marzo del 2006 y retrasó la salida de Ubuntu 6.04 dos meses. Y Ubuntu 6.06 (las primera con soporte LTS), salió en tiempo y forma.
13
Pero cuando se toma la 1er opcion falla y se desata la debacle, que pasa con aquellos que promocionan el producto como "Lo mejor que cualquier otro". ● ● ● ●
El fabricante de hardware queda con equipos expuestos a un fallo que no es de ellos. Los que publicitan quedan como unos mentirosos. Los periodistas quedan como “comprados”. Los expertos quedan en descrédito o ridiculizados.
Si algo bueno sale después de los sucesos del 12/may/2017 con el Wannacryp0r, es que en materia de seguridad ya no se puede confiar en la primera opción.
Si alguien me dice que el sistema es más seguro. OK Demuestrenlo. No con una empresa fabricante, ni con un experto de seguridad. Que lo demuestren en crudo, realizando varias reuniones con expertos, testeando el producto en forma abierta, completa y pública. En un mundo donde alguien hace un click en un link o documento malicioso y 24 horas después 45000 empresas en 74 países se ven afectados. Ya no se puede seguir con "la confianza ciega". Con datos comprometidos por Miles de millones y la reputación y/o continuidad de las operaciones de las empresas en juego. Ya no se puede confiar en el azar del "Si pasa, Pasa. Sino, veremos". Desde ahora, Si dicen que es seguro Demuestrenlo, Sino tómenlo con muchísimo más cuidado. Claudio De Brasi https://twitter.com/doldraug
14
WHONIX “La seguridad desde la virtualización”
Luego de unos años de inactividad en esta prestigiosa publicación, me puse a pensar en el tema con el cual se podría volver; y visto y considerando la histeria generalizada por la seguridad por los casos de público conocimiento en estos tiempos, me decante por volver al ruedo con una distribución construida y dedicada a la seguridad desde un enfoque diferente… las máquinas virtuales… Este proyecto se encuentra basado en Debian Linux y la red Tor, siendo esta la encargada de servir como una gran pasarela forzando así el tránsito de todas las comunicaciones por la misma. Todo esto a través de una máquina virtual como pueden ser Virtualbox, Qubes-OS o KVM.
Información y descarga Hay que tener en cuenta que esta distribución cuenta con dos máquinas virtuales una denominada Whonix-Gateway (la más importante a mi parecer), la cual es una especie de puerta de enlace que se encarga de manejar todo el tráfico que circula desde la otra máquina virtual denominada Whonix-Workstation (la estación de trabajo). La misma funciona como una distribución común donde el usuario instala sus programas y trabaja. En definitiva cada una de las máquinas virtuales se manejan de forma totalmente aislada, en especial el anfitrión. 15
Para la descarga nos dirigimos a su página web: https://www.whonix.org/ y procedemos a descargar las 2 máquinas virtuales que se encuentran en formato .ova (Open Virtual Appliance). En mi caso corro esta distro desde Virtualbox (https://www.virtualbox.org/) por lo que recomiendo descargar la última versión disponible junto con el VirtualBox Extension Pack. Una vez en el disco y ya habiendo instalado Virtualbox le hacemos doble-click a las imágenes y veremos que se empiezan a importar los datos; en el caso que la máquina virtual no halla asociado los archivos con extensión .ova ir al menú del Virtualbox, Archivo→Importar servicio virtualizado.
Cabe destacar que en el caso de tener poca memoria RAM (2GB o menos), podremos configurar la Whonix-Gateway con 128MB RAM, lo que nos dará un rendimiento más que aceptable. Ya que es solo una puerta de enlace y en ese caso se podría prescindir del entorno gráfico. Con respecto a la Whonix-Workstation, solo hay que destacar que es una máquina virtual armada con los programas más importantes y básicos, pudiendo luego instalarle los programas que necesitemos como a cualquier distribución Debian. Una vez importados los datos arrancamos primero el Gateway y luego la Workstation teniendo presente que el nombre de usuario y password por defecto son los siguientes: Nombre de Usuario: user Password: changeme
Esta de mas decir que estos datos por default deben ser cambiados de forma inmediata una vez ingresado al sistema. Conclusiones Podemos escribir sobre muchos sistemas dedicados a la seguridad con largas explicaciones técnicas, pero ese no es la función del artículo, sino dar a conocer la existencia de Whonix de una forma básica. Volviendo a lo importante tengamos en cuenta que ninguna de las máquinas virtuales es amnésica con los pro y contras que esto con lleva; pero también 16
consideremos que no es fácil realizar alguna acción a este tipo de sistema, por el simple hecho de estar cada máquina en una ”isla” virtual. Esto dicho a grandes rasgos obviamente para que no sea difícil de comprender. Cabe destacar que la puerta de enlace o Whonix-Gateway puede ser usada con otra máquina virtual con otra distribución diferente y hasta con Windows®; en mi caso el combo que recomiendo si poseen tiempo y ganas de configurar es combinarlo con Kali Linux, aprovechando que también tiene una imagen preparada para máquina virtual (https://www.offensive-security.com/kali-linux-vmware-virtualbox-image-download/); siempre va a depender del nivel y tiempo del usuario para lograr las combinaciones que cada uno desee. Algo importante la Gateway se actualiza con los clásicos comandos Debian (sudo apt-get update && sudo apt-get dist-upgrade -y). Espero les haya gustado el artículo y les sea útil. Como dato adicional en estos momentos los desarrolladores están pidiendo donaciones para mantener el proyecto, así que aprovechen ya que no sabemos si seguirá...hasta la próxima!!
Amonal Novell amonal@mail2tor.com twitter: @Amonal_ G+: Amonal Novell
17