Acarus: APT para Pentesting

Pocas cosas dan tanto miedo como las siglas APT: "Una amenaza persistente avanzada, también conocida por sus siglas en inglés, APT (Advanced Persistent Threat), es un conjunto de procesos informáticos sigilosos y continuos, a menudo orquestados por humanos, dirigidos a penetrar la seguridad informática de una entidad específica. Una APT, generalmente, fija sus objetivos en organizaciones o naciones por motivos de negocios o políticos. Los procesos de APT requieren un alto grado de cobertura…

Contenido completo del post en http://ift.tt/mDaonR o haciendo clic en el título de la noticia

desde Segu-Info – Noticias de Seguridad Informática http://ift.tt/1FnX6aJ
via IFTTT

Arc Theme, un nuevo tema para tus ventanas en Ubuntu

Arch Theme es una nueva forma de personalizar tu gestor de ventanas que ofrece temas visuales con elementos transparentes para escritorios basados en GTK 3 y GTK 2, así como para GNOME Shell. Es una nueva opción que se añade a las ya existentes para dar a nuestro escritorio el aspecto visual que más nos convenza,…

El artículo Arc Theme, un nuevo tema para tus ventanas en Ubuntu ha sido originalmente publicado en Ubunlog.

desde Ubunlog http://ift.tt/1ET01rH
via IFTTT

5 de los mejores plugins para crear Formularios de Contacto para WordPress | GeeksRoom

Una parte importante del blog para que los lectores se puedan comunicar con ustedes los webmasters o editores es la página de contacto. En esa página de contacto en su blog pueden tener una dirección de email para que el usuario haga clic y con su cliente de email les envíe directamente un email o algo más profesional y mucho más cómodo para el lector, un formulario de contacto. En WordPress hay muchos plugins que permiten agregar un formulario de contacto y 5 de los mejores son los siguientes, Contact Form 7 Es el que utilizamos en este blog.  Ofrece muchas características y permite al usuario crear un formulario personalizado.  Si no quieren personalizar, viene con un formulario preestablecido que solicita al lector escribir su nombre (obligatorio), dirección de email (obligatorio), página web (opcional) y la caja de texto para escribir el mensaje.  Ahora no es algo fácil de personalizar intuitivamente, pero muestran varios ejemplos como para en poco tiempo poder crear uno formulario

Origen: 5 de los mejores plugins para crear Formularios de Contacto para WordPress | GeeksRoom

Tilda, la terminal instantánea estará en Ubuntu MATE 15.04

Según las últimas noticias oficiales por parte del equipo de desarrollo de Ubuntu MATE, la próxima versión de este sabor tendrá Tilda como terminal por defecto. Tilda es una aplicación interesante cuya inclusión en este sabor puede que haga que finalmente termine en el resto de los sabores oficiales de Ubuntu e incluso en la…

El artículo Tilda, la terminal instantánea estará en Ubuntu MATE 15.04 ha sido originalmente publicado en Ubunlog.

desde Ubunlog http://ift.tt/1GT4ZJG
via IFTTT

Cómo activar la verificación en dos pasos para acceder a tu PC con Linux

Activar la verificación en dos pasos en Linux es una de las mejores formas de mejorar la seguridad, incluso robando nuestra contraseña nadie tendrá la capacidad de entrar a nuestro PC si no posee nuestro smartphone.

A estas alturas todos sabemos que usar la misma contraseña en multitud de sitios diferentes es un grave fallo de seguridad. Si dicha contraseña es robada, un atacante podría tener acceso a todo lo que hayamos protegido con esa clave. Sin embargo, llevar la cuenta de todas esas contraseñas distintas que hagamos puede ser realmente difícil, necesitando al final ayudas como programas que nos las organicen. Muchos de estos organizadores de claves a su vez, necesitan de una contraseña maestra, la cual, si es robada concede acceso a las demás claves.

Para proteger nuestras cuentas existen otros métodos que ofrecen un paso de seguridad extra, como por ejemplo la verificación en dos pasos. Este método es muy sencillo, pues solo se necesitan dos cosas diferentes. La primera es algo que sabemos, nuestra contraseña y lo segundo es algo que tenemos, nuestro smartphone. Con la verificación en dos pasos, para entrar a nuestra cuenta tendremos que usar un usuario y contraseña, pero después nos pedirá una clave de verificación aleatoria que conseguiremos de nuestro teléfono. Por lo tanto, para que alguien entre en una cuenta nuestra no le valdrá con saber la contraseña de la cuenta, porque también necesitará nuestro teléfono para ingresar una clave de verificación que además está constantemente en cambio.

En este artículo, vamos a usar el servicio de verificación en dos pasos que proporciona Google para fortalecer la seguridad de nuestro usuario en un sistema Linux. El resultado final será una cuenta a la que después de ingresar nuestro usuario y contraseña, nos pedirá una clave de verificación que se generará en nuestro smartphone y que cambiará cada treinta segundos.

Paso 1: Instalar las herramientas necesarias

Los pasos de está guía han sido realizados en la distribución Ubuntu 14.10, en un entorno Unity con el administrador de sesiones LightDM, pero los principios son aplicables para otras distribuciones.

En el PC: Google Authenticator PAM

Lo primero que debemos hacer es abrir una terminal y ejecutar el comando de instalación (para otras distros puede que tenga un nombre diferente):

$ sudo apt-get install libpam-google-authenticator

En el smartphone: Google Authenticator (u otra que haga una función similar)

Instalamos Google Authenticator desde Google Play si estamos en Android. También está disponible para iOS.

Paso 2: Configurar la verificación en dos pasos en Linux

En el ordenador:

verificacion-en-dos-pasos-para-linux

Para conseguir mejorar la seguridad con la verificación en dos pasos en Linux, haremos una clave secreta, a partir de la cual nuestro smartphone creará las claves de verificación que nuestro PC pedirá al hacer login. Para ello, en una terminal ejecutaremos el siguiente comando:

$ google-authenticator

Nos pregunatará si queremos que las claves de verificación estén basadas en el tiempo, contestaremos que sí con y. Lo que veremos ahora será un código QR que nuestro smartphone podrá reconocer vía Google Authenticator. También podemos introducir la clave secreta directamente en la aplicación, es la que pone your new secret is: clave. En este punto, nos da una serie de códigos de emergencia por si no llevamos el móvil encima, que sería conveniente tenerlos a mano por si las moscas. También nos dará más opciones sobre las claves de identificación, a las que contestaremos con y o n dependiendo de nuestras preferencias personales. Ahora debemos abrir el archivo de configuración del administrador de sesiones LightDM:

sudo gedit /etc/pam.d/lightdm

Al final del archivo añadiremos la siguiente línea:

auth required pam_google_authenticator.so nullok

verificacion-en-dos-pasos-en-linux

Guardamos el archivo y la próxima vez que iniciemos sesión comprobaremos que nos pide una clave de verificación. El nullok es para que los usuarios que no hayan configurado la verificación puedan entrar normalmente a su sesión.

En el móvil:

Necesitamos el teléfono para que nos cree las claves de verificación. Una vez añadida a Google Authenticator la clave secreta creada en el paso anterior vía código QR o manualmente, le pondremos el nombre que queramos a esta nueva cuenta y seleccionaremos la opción «basada en el tiempo». Ahora en nuestro teléfono veremos como cada 30 segundos va cambiando la clave de verificación para nuestro PC.

verificacion-en-dos-pasos-para-linux

Con esto la tenemos una verificación en dos pasos en Linux. Si un día queremos retirar esta verificación, solo tendremos que borrar la línea que añadimos al archivo /etc/pam.d/lightdm.

desde Hipertextual http://ift.tt/1CpfxvK
via IFTTT

Instalar phpIPAM para manejar direcciones IP y subredes de una red local

Para un administrador de sistema es fundamental disponer de buenas herramientas que le permitan realizar su tarea en forma ordenada y lo más simple y ágil que le sea posible, y aunque la linea de comandos y los editores como Vi siguen siendo de lo más utilizados, lo cierto es que con el paso del tiempo vemos llegar apps que ofrecen a quienes lo deseen la posibilidad de trabajar de una forma más visual y precisa para realizar algo que es de extrema importancia.

Estamos hablando del manejo de redes y subredes, algo que es imperativo no sólo por cuestiones de seguridad sino también para garantizar un rendimiento acorde y también para ordenar el tráfico. Para estos menesteres tenemos una herramienta open source muy interesante llamada phpIPAM (IP Adress Manager), que nos ofrece no sólo la gestión de las subredes sino además la posibilidad de acceder a ella desde cualquier equipo de nuestra red dado que funciona via web, a lo Webmin (otra herramienta de administración muy conocida en el mundo Linux).

Entre las características de phpIPAM podemos mencionar su soporte tanto para IPv4 como para IPv6, no sólo en cuanto a la gestión sino también a través de complementos siempre útiles e interesantes como una calculadora de red. También hay soporte para MySQL, que es la base de datos que se utilizará para guardar toda la información respecto de las direcciones IP y las estaciones de trabajo y departamentos a los cuales corresponden. También podemos gestionar los permisos de usuarios y de grupos desde aquí, y hay un potente buscador para encontrar un determinado equipo dentro de una red, algo que siempre se agradece porque hay que tener en cuenta que esta herramienta puede utilizarse en grandes corporaciones donde los equipos se cuentan de a centenares.

Para instalar phpIPAM en Ubuntu necesitamos un servidor LAMP, así que primero satisfacemos las dependencias y para ello ejecutamos lo siguiente:

sudo apt-get install apache2 mysql-server php5 php5-gmp php-pear php5-mysql php5-ldap wget

Luego establecemos la contraseña para MySQL:

mysqladmin -u root password CONTRASEÑA

Por defecto, phpIPAM se instala en el subdirectorio /phpipam/, aunque nosotros podemos estableder otro si así lo preferimos. Para comenzar descargamos el paquete de instalación desde su sitio en SourceForge (en la actualidad la versión estable es la 1.0).

Luego extraemos su contenido a la carpeta /phpipam/:

cp phpipam-1.0.tar /var/www/
cd /var/www/
tar xvf phpipam-1.0.tar
rm phpipam-1.0.tar

Ahora llega el momento de especificar el usuario y contraseña en la configuración de MySQL, al igual que el directorio base, para lo cual abrimos el archivo de configuración para edición:

sudo gedit /var/www/phpipam/config.php

Ingresamos los valores deseados:

$db['host'] = "localhost";
## Usuario MySQL para ipam ##
$db['user'] = "phpipam";
## Contraseña para el usuario MySQL ##
$db['pass'] = "phpipamadmin";
## Base de datos MySQL ##
$db['name'] = "phpipam";
## Directorio base ##
define('BASE', "/phpipam/");

Guardamos los cambios, y ahora vamos a otorgarle permiso a este directorio base, lo cual como siempre en el caso de Apache realizamos desde el archivo .htaccess:

sudo gedit /var/www/phpipam/.htaccess

Añadimos lo siguiente, y guardamos los cambios:

RewriteBase /phpipam/

Ahora llega el momento de preparar el servidor Apache, y para ello lo primero es activar el módulo rewrite, que phpIPAM requiere para su funcionamiento:

a2enmod rewrite

Tras lo cual debemos dedicarnos a la configuración de Apache, así que ejecutamos lo siguiente:

sudo gedit /etc/apache2/sites-enabled/000-default

Debemos dejarlo tal cual vemos debajo:

    <Directory /var/www/>

    Options Indexes FollowSymLinks MultiViews

    AllowOverride all

    Order allow,deny

    allow from all

    </Directory>

Luego reiniciamos el servidor Apache:

sudo service apache2 restart

Eso es todo, ya hemos instalado phpIPAM y para comprobarlo simplemente debemos iniciar el navegador web e ingresar la dirección que se corresponda con nuestro servidor, seguido de /phpIPAM. Por ejemplo www.nuestroservidor.com/phpipam, tras lo cual veremos que se nos muestra el panel de administración de phpIPAM. Luego veremos cómo comenzar a gestionar las direcciones IP de nuestra red local desde esta herramienta, pero eso lo dejamos para un próximo post.

 

El artículo Instalar phpIPAM para manejar direcciones IP y subredes de una red local ha sido originalmente publicado en Ubunlog.

desde Ubunlog http://ift.tt/1vL4poK
via IFTTT

Cómo instalar Monitorix para monitorizar tu servidor web

Tiempo atrás vimos cómo monitorizar un servidor Nginx con Linux-dash, pero como ya sabemos todos los que estamos en esto si algo nos sobra en el gran sistema operativo libre son opciones, tanto en lo referente a los servidores como a las formas que tenemos de estar al tanto de todo lo que acontece con…

El artículo Cómo instalar Monitorix para monitorizar tu servidor web ha sido originalmente publicado en Ubunlog.

desde Ubunlog http://ift.tt/1pCWKsf
via IFTTT

Cambia textos por defecto de WordPress sin tocar una línea de código

Ya varias veces hemos visto cómo se cambian textos por defecto de WordPress usando el maravilloso código str_replace pero ¿y si no quieres modificar códigos? Entonces nada mejor que Say what?, una chulada de plugin que viene a hacer lo mismo pero con una interfaz la mar de sencilla. Simplemente añades el texto a modificar, le das al enlace “Edit” y lo cambias a tu gusto, así puedes pasar … Simplemente añade una nueva cadena de texto original de WordPress y le pones el nombre que se te ocurra. Más fácil no se puede.

Visita la pagina del plugin aquí, para mas información.

Aircrack-ng

Según wikipedia Aircrack-ng es una suite de software de seguridad inalámbrica. Consiste en un analizador de paquetes de redes, un crackeador de redes WEP y WPA/WPA2-PSK y otro conjunto de herramientas de auditoría inalámbrica.

Como se trata de una suite de aplicaciones, para auditar redes contamos con muchas herramientas. Entre las herramientas que se incluyen en la suite Aircrack-ng se encuentran las siguientes:

  • airbase-ng
  • aircrack-ng
  • airdecap-ng
  • airdecloak-ng
  • airdriver-ng
  • aireplay-ng
  • airmon-ng
  • airodump-ng
  • airolib-ng
  • airserv-ng
  • airtun-ng
  • easside-ng
  • packetforge-ng
  • tkiptun-ng
  • wesside-ng
  • airdecloak-ng

Las herramientas más utilizadas para la auditoría inalámbrica son:

  • Aircrack-ng (descifra la clave de los vectores de inicio)
  • Airodump-ng (escanea las redes y captura vectores de inicio)
  • Aireplay-ng (inyecta tráfico para elevar la captura de vectores de inicio)
  • Airmon-ng (establece la tarjeta inalámbrica en modo monitor, para poder capturar e inyectar vectores)

La suite está diseñada para trabajar con una distribución Linux, aunque también existe una versión para Windows que no es muy estable debido a conflictos con drivers.
Es necesario dejar en claro que esto es solo una guía educativa, por tanto eldelassombras.blogspot.com, sus colaboradores, editores y quien escribe, no se responsabilizan por la utilización con fines destructivos o ajenos a los de educación y formación técnica.
Se explicará desde su instalación en sistemas como Ubuntu, Debian, OpenSuse (existe una versión para Windows, pero no será explicada) para que posteriormente no existan dudas sobre ninguna distribución.
Debemos asegurarnos de tener instalado en nuestro sistema el Driver del Fabricante de nuestra tarjeta de red,ya que el proceso varia dependiendo de cada distribución será deber del usuario asegurar este requisito, pero en la actualidad la mayoría de las distribuciones aseguran su implementación, aircrack-ng no funciona con drivers emulados por ndiswrapper.

Ubuntu – Debian – Linux Mint

sudo apt-get update && sudo apt-get –y install aircrack-ng

OpenSuse

Lamentablemente los repositorios oficiales no cuentan con este paquete, pero mediante la incorporación de repositorios adicionales lo conseguiremos. El mejor repositorio externo para opensuse es Packman.
Con solo seguir este link se abrirá una nueva ventana y veremos la pagina de aircrack-ng en el repositorio packman.

Con solo hacer click en el botón “click install” se abrirá el instalador de paquetes yast2 solicitando autorización para instalar aircrack-ng y listo.

Los últimos retoques

Una vez instalado aircrack-ng puede ser necesario la instalación de un paquete adicional por lo cual descargaremos “iw”, que es un complemento para poner nuestra tarjeta inalámbrica en modo monitor. Según la distribución será necesario actualizar la librería libnl.

Ubuntu – Debian – Linux Mint

sudo apt-get install –y iw libnl1*
Y de esta forma ya tenemos aircrack-ng y su componente para poner en modo monitor nuestra wireless.

Crackeando redes

Ahora empezamos nuestro trabajo, lo que se realizó anteriormente solo se hace una vez, que es para instalar y configurar de buena forma nuestra suite, lo que se realiza siempre es lo que a continuación se detalla.
Para quienes creen que cambiar su mac es necesario, pueden hacerlo así
macchanger -m 00:11:22:33:44:55 wlan0
Aviso: Las direcciones mac SIEMPRE deben iniciar con 00 (cero cero), además macchanger no suele venir instalado.

Airmon-ng

Airmon-ng es parte de la suite de aircrack-ng la cual permite crear la interfaz mon0 en modo monitor. Su utilización es la siguiente
# airmon-ng start wlan0 (nombre de la interfaz que puede ser wlan0, eth1, etc)

En caso de error podemos utilizar iw que instalamos anteriormente.
# iw dev wlan0 interface add mon0 type monitor

Airodump-ng

Con este programa veremos todas las redes disponibles con sus respectivos canales, para detener la ejecución de airodump-ng presionando Ctrl + C
# airodump-ng mon0
Una vez que decidamos que redes son las que vamos a auditar creamos un filtro.
-c = Filtro de canal 6, 11, 1, etc.
-w = Escribir los resultados en un archivo.
# airodump-ng -c 11 -w cualquierNombre mon0

De esta forma hemos creado un filtro que solo trabajará en el canal indicado en nuestro ejemplo el canal 11, esto dependerá del canal en el cual se encuentra nuestra red a investigar.

Aireplay-Ng

Una vez que airodump-ng ya está trabajando, abrimos una nueva consola donde empezaremos a trabajar con aireplay-ng.
Lo primero que debemos hacer con aireplay-ng es asociarnos a la red a la cual atacaremos.
# aireplay-ng -1 6000 -q 10 -o 1 -e (ESSID victima) -a (Mac Victima) -h (nuestra mac) mon0

muchos se pueden preguntar, ¿de donde obtengo el ESSID y la Mac de la víctima?. Bueno, si recordamos en la consola anterior ejecutamos airodump-ng, de esa pantalla encontramos las columnas BSSID y ESSID que corresponden a la mac y la ESSID o nombre del router respectivamente.
De esta forma estaremos asociados a la red, la cual cada 10 segundos aireplay-ng mandará un paquete llamado “KEEP-ALIVE”, lo que avisará al router que seguimos asociados y así no nos botará a cada rato.
Ya asociados procedemos a enviar y capturar paquetes, para eso en una nueva consola ejecutaremos nuevamente aireplay-ng pero en modo mas agresivo.
#aireplay-ng -3 -b (Mac Víctima) -h (nuestra mac) mon0

Lenguajes, lenguas y dialectos

o García Morales

Case Reas y Ben Fry, en su libro Processing. A Programming Handbook for Visual Designers and Artists sugieren Como los lenguajes humanos, los lenguajes de programación pueden ser agrupados en conjuntos relacionados

Esta conexión podría sugerir una conexión más fuerte, pero no es así. El desarrollo de los lengua­jes de programación nada o poco tiene que ver con sus parientes humanos. De hecho, los len­guajes de programación se parecen mucho más entre sí, son muchos menos y, se puede decir sin herrar demasiado, que tienen casi las mismas raíces; a diferencias de las lenguas.
Se estima que, en las casi 200 naciones del globo, se hab­lan más de 5000 lenguas y 41000 dialectos mientras que existen sólo unos cientos lenguajes de programación dife­rentes producidos por menos de una cuarta parte de todas las naciones.
Según la Wikipedia un lenguaje de programación es un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones, y es utilizado para controlar el comportamien­to físico y lógico de una máquina.

Los ciento y un lenguajes de programación

Mucho han cambiado las cosas desde que IBM lanzó el primer computador personal pero, probablemente, el cambio de mayor impacto en todo este tiempo es que, debido al acelerado desarrollo de la electrónica, las comunicaciones y la informática (lo que hoy se da en llamar TIC, Tecnolo­gías de la Información y Comunicaciones), ha puesto en manos de cualquier ciudadano de a pie, el computador distri­buido más potente del mundo: internet. Cualquier computador tiene varios Giga hertzios de frecuencia en su reloj, o varios procesadores pero incluso, cuando ni aún así es suficiente, siempre se puede echar mano a miles, incluso millones, de computadores distribuidos por todo el mundo, dispuestos a compartir algún tiempo de proceso y garantizar la potencia de proceso requerida.
En el año 2004, O’Reilly diseñó un poster genial de la historia de los lenguajes de programación, donde muestra 50 años dorados, desde 1954 hasta 2004, en el ámbito de la programación (El poster se puede descargar en http:// oreilly.com/news/graphics/prog_lang_poster.pdf ). Por supues­to, no son todos los que están, ni están todos los que son (se­gún O’Reilly son los lenguajes de programación más impor­tantes); sin embargo, lo más interesante de este poster, es que muestra las derivaciones de los distintos lenguajes para crear otros (sus raíces). Por ejemplo, C#, se basa en C++ y Java2. C++, a su vez, se basa en C y Simula que, a su vez, vienen del Algol que proviene de Fortran y Fortran… es el primer lenguaje de programa­ción de alto nivel. Esta evolución evidencia las grandes similitudes y parentescos de la mayoría de los lenguajes entre sí. Los lenguajes se pueden relacionar en con­juntos según su nivel de abstracción, entorno de desarrollo, forma de ejecución o paradigma de programación.

Nivel de abstracción

El nivel de abstracción está relacionado con la capacidad del lenguaje de ocultar los detalles del ordenador. Los lenguajes de alto nivel están formados por elementos de lenguajes naturales, como el inglés. Sin embargo los lenguajes de bajo nivel interactúan con todas las especificidades del procesador (registros, operaciones, etc.). Las instrucciones del len­guaje de máquina son cadenas binarias (0 y 1) directamente legibles por la máquina (procesa­dor) o completamente incomprensibles (o in­tratables) para cualquier ser humano (Es im­portante tener en cuenta que todos los lengua­jes operan, finalmente, a nivel de código de máquina. La función última del compilador o intérprete es la conversión a lenguaje de máquina).

Entorno de desarrollo

Los lenguajes pueden ser textuales o visuales. El conjunto de símbolos y reglas sintácticas y se­mánticas que definen un lenguaje normalmente se pueden expresar textualmente. Sin embargo, los entornos visuales pretenden ayudar a aque­llos programadores que piensan espacialmente y prefieren organizar sus pensamientos como relaciones visuales entre elementos.

Forma de ejecución

Los lenguajes pueden ser compilados o in­terpretados. El compilador es un programa que traduce el código escrito con determina­do nivel de abstracción a código de máqui­na. Sin embargo los lenguajes interpretados no son compilados sino interpretados por otro programa mientras corre. Los lenguajes compilados son más rápidos mientras los programas interpretados pueden ser modifi­cados mientras corren. El refinamiento de tal intérprete ha derivado en máquina virtual. El lenguaje es pseudo compilado a un có­digo intermedio (byte code) que corre en la máquina virtual. Esta técnica facilita la por­tabilidad del código entre las diferentes ar­quitecturas o hardware.

Paradigma de programación

El paradigma de programación representa un enfoque particular o filosofía para la construcción del software. Según tal, los lenguajes pueden ser imperativos o procedimentales (es considerado el más común y está represen­tado, por ejemplo, por el C o por BASIC); funcionales (expresivos y matemáticamente elegantes; por ejemplo LISP); lógicos (cuya característica principal es la aplicación de las reglas de la lógica para inferir conclusiones a partir de datos; por ejemplo PROLOG); u orientado a objetos (este paradigma usa objetos y sus interacciones y está basado en varias técnicas, incluyendo herencia, modula­ridad, polimorfismo y encapsulamiento). Un lenguaje completamente orientado a objetos es Smalltalk.
Si bien puede seleccionarse la forma pura de estos paradigmas, a la hora de programar, en la práctica lo habitual es que se mezclen, dando lugar a la programación multiparadigma.

pilares del lenguaje

Ante el desafío de la realización de un pro­yecto una de las preguntas necesarias, tarde o temprano, es, cuál es el lenguaje adecuado. La respuesta no es fácil y depende de muchos factores. Según se baja el nivel de abstracción los programas son más específicos y difíciles de mantener. Depende del grupo de desarrollo condicionará el entorno (y con ello las herra­mientas de trabajo). ¿Compilado? ¿Interpre­tado? Los lenguajes interpretados son más adecuados para pruebas rápidas. Sin embargo, cuando se requiera toda la eficiencia, habrá que utilizar algún lenguaje compilado. Por último, cuál paradigma será el más adecuado. La res­puesta es: depende del problema.
Esto podría conducirnos a alguna con­clusión del estilo: Hay tantos lenguajes como problemas; e incluso, si el problema es muy complejo probablemente se necesite del uso de más de un lenguaje para abordarlo. Sin embargo la respuesta no es tan simple y es necesario agregar algunas variables más.

Reusabilidad

Un lenguaje se hace potente en la medida que crece; propiedad que finalmente se puede tra­ducir en un buen soporte (muchas funciones y mucha gente detrás resolviendo proble­mas). Las funciones se agrupan en librerías o bibliotecas de funciones. Su potencia depende de quién las mantenga y desarrolle (los proyectos de software libre son mante­nidos por un mayor número de personas sin presiones comerciales). Su interacción con el lenguaje depende de la tecnología software (incrustada junto con el código, dinámica­mente, distribuido, etc.). Desde este punto de vista ¿se podría considerar que C# es un C++ bien soportado?

Disponibilidad

Relacionada con el entorno (arquitectura hard­ware y software). Los lenguajes, y sus respectivos compiladores o intérpretes, están dispo­nibles para determinados entornos con, posi­blemente, ciertas restricciones de uso. Aún cuando, presuntamente, el lenguaje más ade­cuado para nuestro problema sea X, la indis­ponibilidad de las herramientas de desarrollo para el entorno seleccionado será motivo, más que suficiente, de rechazo. La disponibilidad se puede ver igualmente al revés. Suponga que el entorno de trabajo es un navegador web; la aplicación será utilizada vía HTTP. El lenguaje de desarrollo estará limitado por los lenguajes implementados por el navegador (y lo utilizo en modo genérico porque unos a otros convergen en la medida en que se ha­cen compatibles). De nada vale que sea más adecuado programarlo en LISP si luego no encontramos ningún navegador que permita incorporar un intérprete LISP o, lo que es más grave, si el navegador que utiliza la mayoría de los clientes, no lo tiene.

Durabilidad

El propio poster de O’Reilly muestra el ciclo de vida completo de los lenguajes que referen­cia (al menos hasta el 2004). Es fácil ver cómo muchos se convierten en otros y mueren. Qué pasa si la aplicación que queremos desarro­llar simplemente ponga a prueba el paso del tiempo. Qué pasa con aquellas aplicaciones que duran. Cómo elegir un lenguaje duradero. Por muchos lenguajes que existan pocos han resistido al paso del tiempo. Un buen ejemplo de ello es el lenguaje C. De hecho, se podría hacer en C absolutamente todo lo que en C++ con muy poco esfuerzo. ¿Qué es lo que ha hecho a C tan resistente? Probablemente la conjunción de un buen diseño del lenguaje, la gran disponibilidad de herramientas y li­brerías y una buena desconexión con la en­trada/salida.

Pocos son más

Un buen amigo dice que los lenguajes son necesarios para garantizar la variedad (tam­bién para dar de comer a los informáticos) y probablemente tenga algo de razón; pero los lenguajes no son lenguas, ni razas, ni socie­dad, sino instrumentos para programar los pro­cesadores de propósitos generales y garantizar determinado funcionamiento. Sacaremos ma­yor rendimiento a un lenguaje con un dominio perfecto de su sintaxis, reutilizando códigos y fortaleciéndolo.
Supongamos por un momento que dispo­nemos de las herramientas necesarias, para cualquier entorno; para elegir libremente el lenguaje adecuado. Suponga que podemos dividir en tres el nivel de abstracción de las aplicaciones; algo así como bajo, medio y alto. El nivel bajo requiere de un control absoluto del hardware, traducible en código máquina (lenguaje ensamblador) o C, que nos permitirá hacer el mismo trabajo (incluso incluir partes críticas del código en lenguaje ensamblador) con un nivel de abstracción mayor. Para nivel medio el C sería también un excelente candi­dato, incluso si se quiere emplear el paradigma de programación orientado a objetos pero C no es interpretado. Para muy alto nivel probable­mente sería recomendable LISP, con cierto solapamiento con C.
LISP es un lenguaje funcional (utiliza las propiedades matemáticas de las funciones) y multiparadigma, de alto nivel; simbólico (utiliza el símbolo como unidad fundamental) de procesamiento de listas (LISt Procesing); muy flexible (utiliza la misma estructura para datos y código; una de las características de LISP es la posibilidad de tratar las propias funciones como datos (50 años después resulta que es posible considerar XML, tan de moda para el intercambio de datos entre verlo como una máquina virtual susceptible de correr en entornos de bajo nivel de abs­tracción. Como hemos supuesto una buena reusabilidad se da por hecho un buen sopor­te para todo tipo de aplicaciones: web, SOA, imagen y sonido, compiladores, procesa­dores de texto, entornos multiplataforma, matemáticas, etc. y, lo que es más importan­te, un buen soporte de la comunidad de soft­ware libre.

Concluyendo

La diversificación de los lenguajes de pro­gramación es necesaria en la medida que introduzca nuevos paradigmas, debilite la dependencia con los sistemas operativos (potencie multiprocesamiento, distribución y con ello la generalización de entornos de operación), y otras muchas razones. No así la transmisión de sintaxis, o la imposición de determinados usos o tecnologías por razones comerciales; con la excusa de fa­cilitar el trabajo del programador, etcétera. Los ejemplos utilizados en este artículo pretenden demostrar que muchos de los lenguajes más antiguos (como LISP y C) si­guen siendo igual de potentes y útiles, y po­co o nada tienen que envidiar a los últimos de moda; sin embargo la diversificación de los entornos o herramientas no es tan con­siderada como la de los lenguajes. Si con­siderásemos los lenguajes como criaturas y los entornos… vitales, es fácil establecer la conexión. Desde ese punto de vista, po­tenciando el entorno, probablemente en el poster de O’Reilly, 50 años después, las fle­chas serían más largas y menos conectadas entre sí. Sin embargo la naturaleza sigue su curso. ¿Cuál será la próxima bestia?

Quote of the Day:
After three days, fish and guests stink.
–John Lyly

Cambia el Brillo de tu PC Automaticamente, según la hora del dia.

Tal ves no muchos sepan que no es sano tener mucho brillo en las pantallas de nuestros computadores por las noches o en lugares poco iluminados, y no es solo por una mentalidad ecológica, sino mas bien por una instrucción de la OMS para evitar daño en la vista de los usuarios, para evitarlo contamos con xflux que nos regula el brillo dependiendo de la hora.
Pero como funciona?
No soy experto, pero básicamente la aplicación controla la temperatura del color (mostrando tonos de color no tan brillante, los blancos se ven casi amarillos y cosas así) y con ello se obtiene que nuestra vista no se vea afectada por colores demasiado «estridentes», y lo mejor que se adapta según la hora del día mediante las coordenadas geográficas de nuestra ubicación.
Manos a la obra
Descargamos y copiamos el programa a la carpeta /usr/bin para ello usamos el siguiente comando:

wget https://secure.herf.org/flux/xflux.tgz && tar xvf xflux.tgz && rm xflux.tgz && sudo mv xflux /usr/bin

Ahora debemos conocer nuestras coordenadas geográficas, las que podemos obtener entrando aquí y mediante el nombre de nuestra ciudad y país,

nos dará unas coordenadas como estas -33.46912, -70.641997, las introducimos con el siguiente comando:

xflux -l -33.46912, -70.641997

Para no estar ingresando este comando cada vez que encendamos el computador lo añadiremos a las aplicaciones de inicio.
Vamos a Sistema>Preferencias>Aplicaciones al inicio y le damos a agregar y ponemos:
Nombre: xflux
Comando: (el que hayamos puesto antes en mi caso: xflux -l -33.46912, -70.641997)

Añadir xflux al inicio del sistema

y con esto cada ves que encendamos nuestro pc estará ejecutando la aplicación e ira cambiando la temperatura de la pantalla para adaptarse al ciclo lumínico del día.
Si no cumple tus necesidades, solo debes eliminar la entrada anterior y listo.

Instalar VirtualBox 4 Beta 1 en Ubuntu 10.10

VirtualBox 4.0 beta fue lanzado hoy con algunos cambios importantes. El mayor cambio es que algunas funciones se ha movido en un paquete separado (como la compatibilidad con USB 2.0, servidor de RDP y más).

Pero eso no es todo: VirtualBox 4.0 beta también incluye una interfaz de usuario rediseñada, configuración / diseño de archivo de disco para la portabilidad de máquina virtual, y mucho más.

virtualbox4beta

Instalar VirtualBox 4.0 Beta 1 en Ubuntu 10.10

Antes de instalar VirtualBox 4.0, recuerda que se trata de una BETA, por tanto encontrara errores, no lo ocupe en entornos de producción (uselo bajo su propio responsabilidad)

  • Para instalar VirtualBox 4.0 beta,remover versiones anteriores instaladas en tu sistema:
  • sudo apt-get -y remove virtualbox*

  • Solo en Ubuntu 32 Bits, también deberán instalar libstdc++5:
  • sudo apt-get -y install libstdc++5

  • Descargar el paquete .deb desde aqui (este link es para la versión de 32 bits, en ubuntu Maverick) si por el contrario necesitas el paquete para otra arquitectura o plataforma, revisa este directorio
  • En este punto, ejecutando una máquina virtual no funcionara, se necesita el paquete de VirtualBox extensions (ver más abajo).
  • Descargar el VirtualBox extensions pack. Luego, una vez nos aseguremos de que tenemos cerrada todas las ventanas abiertas de VirtualBox, simplemente haga doble clic en el «Oracle_VM_VirtualBox_Extension_Pack-4.0.0_BETA1-68572.vbox-extpack» esto debe instalar el paquete de VirtualBox extensiones y abierto VirtualBox.

Fwd: Bleeding Edge Un shell script para instalar reproductores, codecs, fuentes, drivers en Maverick

Leo en ubuntulife lo siguiente y lo encuentro demasiado practico. Echenle un ojo y cuenten como les va. Saludos cordiales.

Enviado desde mi iPhone

Asunto: Bleeding Edge – Un shell script para instalar reproductores, codecs, fuentes, drivers en Maverick

Si no nos basta Ubuntu Tweak, o Ubuntu Software Center, en Bleeding tenemos un pequeño script para facilitar la instalación en Maverick y poner más a punto nuestro sistema.

Enlace de Descarga y más información | Ubuntu Geek

Sent from my iPhone

Por un Pronpt mas personal y I

Si la terminal es amistosa o solo te causa dolor de cabeza, dependerá únicamente del uso y tiempo que le dediques, pero si ya superaste esa barrera o «timidez» podemos darle un pequeño toque de creatividad y personalizarla, no solo el tipo de letra, sino que podemos crear unas combinaciones de colores muy interesantes, como por ejemplo:

Lo que conseguimos editando muestro archivo .bashrc de nuestro home (el que se encuentra oculto) insertando la siguiente sentencia:

PS1=’${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u\[\033[0m\]@\[\033[00;33m\]\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ‘

¿Pero, podemos ir mas allá? Si, podemos y lo haremos aun mas fácil e interactivo, pudiendo obtener incluso estos resultados:

Podemos utilizar BashStyle_NG el cual podemos descargar desde este enlace en un paquete .deb
gracias a esta aplicación podremos de forma gráfica personalizar nuestra consola y obtener excelentes resultados, a continuación algunas capturas:

Otra opción es Bashish que permite decorar nuestro terminal así:

Ademas de permite crear nuestros propios temas. Para utilizarlo solo debemos descargarlo de su web oficial dependiendo de nuestra distribución, instalar y ejecutar $ bashish

Para añadir el entorno de bashish a nuestro fichero .bashrc. Ahora ya podemos ejecutar:

$ bashishtheme

y se abrirá la ventana que nos permite elegir el tema que queremos usar para el prompt:

Elige el que mas te guste y ya esta. Si en cambio quieres desinstalar bashish ejecuta:

$ bashish uninstall

o elimina las lineas correspondientes de tu fichero .bashrc

Y eso es todo hasta una nuevo Taller.

GNOME-GPRS: Internet desde tu Telefono Móvil

Las comunicaciones móviles han evolucionado a una velocidad de vértigo en los últimos años. Desde la aparición de GSM (2G) en 1990, la telefonía móvil ha superado los 2000 millones de clientes. GPRS (2.5G) y UMTS (3G) permiten el acceso a Internet desde estos dispositivos. GNOME-GPRS te permite acceder a la red sin mas que conectar tu equipo celular a tu sistema Linux.

Uno de los principales objetivos de un sistema de telecomunicaciones es la posibilidad de poder comunicarse en cualquier momento y desde cualquier lugar, independientemente si el usuario se encuentre en un lugar fijo o en movimiento.La telefonía móvil cumple este objetivo, especialmente desde que en 1990 se publicara GSM, un sistema de segunda generación desarrollado para Europa que ha sido adoptado ya por mas de doscientos países en el mundo.

INTRODUCCIÓN

GSM fue diseñado para comunicaciones de voz al estilo de las redes telefónicas tradicionales ( circuitos conmutados ), con la diferencia de que se implementa sobre una red de telefonía móvil. Este sistema a dado muy buenos resultados en los servicios de voz, lo que ha conducido a su enorme éxito. Sin embargo, la demanda de nuevos servicios de datos que no pueden ser ofrecidos por la red GSM por sus características de diseño, ha provocado la aparición de nuevos sistemas como GPRS, que complementa a GSM con una red de paquetes mucho mas eficiente para el trafico de datos. Con GPRS, el acceso a redes como Internet se realiza de forma rápida y segura desde cualquier punto.

Teóricamente, la velocidad máxima alcanzada por GPRS es 171,2 Kbps. Este valor se obtiene de la siguiente forma: cada canal de comunicación se divide en ocho rodajes de tiempo o time-slots. Cada uno de estos slots ofrece una velocidad de entre 9,05 y 21,4 Kbps.

Por lo tanto, si se utilizan los ocho timeslots, podríamos llegar a los 8 x 21,4 = 171,2 Kbps. Este es el throughput máximo teórico que se puede alcanzar con GPRS, aunque en situaciones reales nunca se llegara a conseguir, debido a la saturación de la red y a las limitaciones físicas del teléfono que no permitirán utilizar los ocho slots al mismo tiempo. Hay que decir que las configuraciones mas comunes son del tipo 4+1 (clase 8), que significa que se utilizan cuatro time-slots para los datos de bajada y uno solo para los de subida, es decir, que las velocidades que se obtengan serán mucho menores que las teóricas. Ademas, GPRS introduce el concepto de QoS ( Calidad de Servicio ) en los sistemas de comunicación móviles. Mas adelante veremos que aporta esta característica a nuestras conexiones.

Si GPRS ofrece la posibilidad de estar siempre conectado desde cualquier lugar, la aplicación GNOME-GPRS aumenta las posibilidades al permitir el acceso a Internet desde tu sistema linux de una forma sencilla, simplemente conectando tu teléfono móvil al computador.

El desarrollo de GNOME-GPRS surge del proyecto AGILA http://patanegra.unex.es/agila (Acceso Generalizado a Internet desde Linex Avanzado), un proyecto que forma parte del » II Plan regional de investigación, desarrollo tecnológico e innovación de Extremadura «, financiado por la consejería de infraestructura y desarrollo tecnológico de la junta de Extremadura. GNOME-GPRS ha sido desarrollado para GNU/LinEx y Debian, aunque se ha probado en otras distribuciones Linux y funciona correctamente.

GPRS EN LINUX

Conseguir de forma manual que nuestro sistema Linux sea capaz de conectarse a internet a traves de GPRS no es una tarea sencilla. En este apartado veremos como realizar la conexion de esta forma, mientras que en el siguiente comprobaremos como utilizando la aplicacion GNOME-GPRS, la conexion se simplifica enormemente.

Para la comunicación entre el sistema Linux y el teléfono utilizaremos el protocolo ppp, mientras que es el móvil el que se encargara de enviar paquetes IP al proveedor de servicio de internet correspondiente.

Para crear una conexión, es necesario comunicarse con el teléfono utilizando los comandos AT. Estos han sido definidos con el objetivo de acceder al hardware del terminal del sistema de comunicaciones y tradicionalmente se han utilizado para el control de los módem. una extension a estos comandos (AT+) es la que se utiliza para el dispositivo GPRS, que en nuestro caso actua comom modem.

Antes de esto, es necesario que el sistema operativo reconozca el teléfono móvil que este conectado al computador.

Normalmente, los sistemas Linux activan el modulo correspondiente de forma automática al conectar el dispositivo. Por ejemplo, al conectar el cable de datos USB de un teléfono Motorola, podemos comprobar si el sistema ha activado el modulo encargado de controlarlo. Para ello, desde un terminal ejecutamos el siguiente comando:

dmeg | tail -n 30

ante lo que el sistema muestra los ultimos mensajes emitidos por el nucleo, entre los que aparece algo similar a lo siguiente:

ubuntu kernel: usb 4-2: new full
speed USB device using address 8
ubuntu kernel: cdc_acm 4-2:1.0
ttyAVM0: USB ACM device
ubuntu usb.agent [4930] :
cdc-acm: loaded successfully
ubuntu kernel: usbcore: registered new driver cdc_acm
ubuntu kernel: driver/usb/class/cdc-acm.c: v0.23: USB modems and ISDN adapters

Esto significa que el sistema operativo ( en este caso Ubuntu) ha detectado un nuevo dispositivo USB, y que ha cargado el modulo cdc-acm, que es el necesario para interactuar con el telefono movil. A este dispositivo se puede acceder desde /dev/ttyACM0.

Una vez reconocido el telefono, lo que haremos sera comprovar si responde a los comandos AT. Esto podemos hacerlo de varias formas, utilizando /dev/ttyACM0 directamente para acceder al dispositivo, o a traves de un programa de comunicaciones como Minicom. Veamos loas dos opciones.

1. Utilizar /dev/ttyACM0 directamente: Para comunicarnos de esta forma, abrimos dos terminales. En una de ellas lo que haremos sera enviar un comando AT al movil, en este caso ATZ, mientras que en la otra esperaremos la respuesta que devuelva el telefono. Asi, en uno de los terminales, escribimos el siguiente comando:

cat /dev/ttyACM0

Que hara que se mantenga en espera de una respuesta del dispositivo ttyACM0 (el movil).

En el otro terminal, enviaremos el comando ATZ, para eso tendremos que escribir:

echo «ATZ» > /dev/ttyACM0

Cuando ejecutemos este comando, en la primera terminal aparecera lo siguiente:

ubuntu :/# cat /dev/ttyACM0
ATZ
OK

Asi, ya sabemos que Linux es capaz de conversar con el telefono movil.

2. Utilizando Minicom: Esta es una herramienta que nos va a permitir dialogar con el telefono a traves de comandos AT. Si lo tenemos, escribimos minicom desde una ternimal para arrancarlo y accederemos a la pantalla principal del programa. Si queremos «hablar» con el telefono, lo primero es crear un enlace al modem de la siguiente forma:

ln -sf /dev/ttyACM0 /dev/modem

Esto indica que el modem esta conectado a /dev/ttyACM0, y a partir de ahora, cada vez que iniciemos el programa, buscara en la direccion indicada (/dev/ttyACM0). Al ejecutar Minicon, simplemente tendremos que escribir los comandos AT que queramos enviarle al modem (el telefono) y él respondera. El siguiente paso sera levantar una conexion PPP entre elPc y el telefono. El demonio pppd trabaja junto con el driver del nucleo PPP para establecer y mantener un enlace PPP con otro sistema y para negociar la direccion IP para cada extremo del enlace.

Utilizaremos PPP para obtener la direccion IP y para autentificarnos a la red. El protocolo punto a punto en Linux acepta multitud de comandos o a partir de un fichero:

pppd file nombre_fichero_opciones

Hay que tener en cuenta que el usuario que ejecute esta opcion debera tener, al menos, permisos de lectura sobre el archivo nombre_fichero_opciones.

La autentificacion es otro aspecto muy importante. Para conectarnos a la red GPRS de la compañia de la que somos clientes, necesitamos una serie de parametros que deben ser proporcionados por la propia empresa. Entre esos parametros aparecen un nombre de usuario y una contraseña. Para GPRS, utilizaremos el protocolo de autenticacion PAP (Password Authentication Protocol) para la autentificacion. Si falla, pppd dara por terminado el enlace.

Asi, las opciones las tendremos en un fichero que se llama desde la linea de comandos al ejecutar el comando pppd para conectar. Este Archivo se veria asi;

#Script de opciones de conexion GPRS
debug
/dev/ttyACM0
460800
crtscts
modem
lock
receive-all
nopcomp
noaccomp
novjccomp
nodetach
noipdefault
defaultroute
user movistar
password movistar
usepeerdns
#Script de conexion
connect ´/usr/sbin/chat -e -f /ruta_ficheros/conectar -v´
#Script de desconxion
disconnect ´/usr/sbin/chat -e -f /ruta_ficheros/desconectar -v´

Ademas del puerto, la velocidad, el nombre de usuario y la contraseña de autenticacion, aparecen otras entre las que estan las direciones del fichero de conexion y desconexion. Estos archivos estaran formados por comandos AT que se encargaran de iniciar y finalizar la conexon;

Fichero Conectar

» AT&F
TIMEOUT 240
OK ATV1
OK ´AT+CGDCONT=2, «IP»,»movistar.cl»
OK ATS=0
OK ATDT*99***2#
TIMEOUT 30
CONNECT «»

Estos comandos seran los que ppp necesite para iniciar la conexion. El formato de esta secuencia es el siguiente: la parte izquierda de la linea sera lo que se espera recibir y la parte derecha es el comando que se envia. Asi, por ejemplo, cuando enviemos ATV1 (tercera linea), esperamos recibir un OK (cuarta linea) y sera entonces cuando enviemos el comando AT+CGDCONT, y asi hasta el final, que recibiremos CONNECT.

Los comandos principales de esta secuencia son AT+CDGDCONT y ATD. En el primero se indica que IP es el tipo de protocolo de paquete de datos a movistar.cl el puento de acceso al que nos conectaremos, mientras que el segundo es el encargado de realizar la llamada al proveedor de servicio.

Al igual que tenemos los comandos de conexion, contaremos tambien con los de desconexion, asi tendremos otro fichero llamado desconectar que tendra la secuencia de comandos que sigue:

SAY «\nDisconnecting…\»
«» «\K»
«» «+++ATH»
SAY «\nDisconnected.\n»

Para finalizar la conexion, tras desactivar el cliente PPP se debe enviar la cadena de caracteres +++, con el fin de que el modem cambie de modo datos a modo comandos AT. Una vez que se ha cambiado de modo, cuelga la conexion mediante el comando ATH (colgar llamada).

Con los tres ficheros explicados: opciones_conexion_gprs, conectar y desconectar, para comenzar escribimos desde lal inea de comandos:

#pppd file opciones_conexion_gprs

Con este comando lo que estamos haciendo es lanzar PPP con las opciones que se indican en el fichero opciones_conexion_gprs. La ejecucion de este proceso, desencadena la conexion a internet. Si miramos los mensajes del nucleo atraves del comando dmesg, veremos la secuencia que sigue una conexion PPP, que sera similar a la que se muestra a continuacion

ubuntu-linux pppd [5374]: pppd 2.4.* started by root, uid 0
ubuntu-linux pppd [5374]: Serial connection established.
ubuntu-linux pppd [5374]: Using interface ppp0
ubuntu-linux pppd [5374]: Connect: ppp0 <--> /dev/ttyACM0
ubuntu-linux pppd [5374]: PAP authentication succeeded
ubuntu-linux pppd [5374]: local IP address 62.87.74.75
ubuntu-linux pppd [5374]: remote Ip address 192.168.100.101
ubuntu-linux pppd [5374]: primary DNS address 213.73.32.3
ubuntu-linux pppd [5374]: secundary DNS address 212.73.32.67
ubuntu-linux pppd [5374]: Terminating on signal 2.
ubuntu-linux pppd [5374]: Connection terminated.
ubuntu-linux pppd [5374]: Serial link disconnected.
ubuntu-linux pppd [5374]: Exit.

Vemos como en las diferentes lineas aparecen los pasos típicos en el establecimiento de una conexión, la autenticación, la asignación de direcciones IP, servidores DNS, etc.

GNOME-GPRS

Hasta ahora, y como se ha visto en el apartado anterior, los usuarios de Linux que querian utilizar su telefono para conectarse a internet por medio de GPRS han tenido que aprender complicadas tareas para poder navegar por la red utilizando este sistema. Activar el modulo correspondiente en el sistema operativo, levantar una conexion punto a punto (PPP) entre el telefono y el sistema operativo, e incluso aprender algunos comandos AT para acceder al hardware del terminal GPRS.

GNOME-GPRS es una aplicacion que simplifica estas tareas, con ella el usuario podra acceder a internet desde cualquier lugar, sin mas que conectar un movil (con servicio GPRS) a su sistema Linux.

QUE SEGUIRÁ DESPUÉS

Próximamente se explicara el proceso de instalación y configuración para utilizar la herramienta en si, no se pierdan el próximo post de este tema, para mantenerse actualizados pueden suscribirse al blogs y ver las ultimas actualizaciones.

saludos.