miércoles, 10 de septiembre de 2014

Restringir login en Windows con Active Directory

En un dominio necesité restringir el acceso de un usuario a ciertos equipos. Cuando se crea el usuario active directory este queda habilitado para acceder a todos los equipos del dominio. Si se quiere restringir a un equipo en particular, se listan los equipos a los que puede acceder. 




Una pista de que esta restricción está activa puede ser un mensaje como este: La configuracion de su cuenta no permite que use este equipo. Pruebe con otro equipo. Habilité a un usuario a acceder a un equipo adicional, no recordaba que había configurado esta restricción, de ahi este post..

miércoles, 27 de agosto de 2014

Aprender electrónica

Quiero aprender más electrónica. En mi adolescencia hice cursos de "Técnico en Radio y TV". Esos cursos se centraban en el diagnostico y reparación de fallas comunes en radios, equipos de audio y televisores. Cubrían poca cosa de fundamentos de electrónica, necesaria para diseñar y/o adaptar circuitos. Algo de eso me sirvió para diagnosticar fallos en fuentes y algún equipo periférico.

En facultad tuve un curso de arquitectura de computadoras, que dedicaba un tiempo importante a fundamentos de electrónica digital. Trabajé con compuertas lógicas y simulamos unos cuantos circuitos.

Libros

 Me gusta recurrir a libros, no reniego de los recursos en linea pero tengo habito de lectura. Acá van algunos libros que a mi entender pueden ser útiles para el autoaprendizaje. 

  • Electrónica básica para ingenieros: Este libro esta pensado para quienes necesitan saber electrónica, sin ser el centro de su actividad profesional. El libro esta disponible en la pagina personal del autor.Es de los pocos que he visto en español que van hacia lo que busco. 
  • Understanding Basic Electronics: Este libro de ARRL está orientado a radioaficionados, es igualmente útil al aficionado. Tiene dos libros complementarios, que cubren temas de radio y antenas. 
  • Basic Electronics: Una reimpresión de un viejo libro de la US Navy, aun vigente.No es un libro profundo, apunta a que el personal embarcado adquiera conocimientos básicos que puedan serle de utilidad en su trabajo diario. Tiene un libro complementario de electricidad. 
  • Make: Electronics: Libro de la revista make, aparenta ser bastante llano.Pone énfasis en aprender haciendo (learn by doing).

Sitios

Me queda mucho por escribir, especialmente de software. La simulación por software de circuitos tiene ventajas y baja costos; para llegar a armar un circuito eliminando errores.

lunes, 18 de agosto de 2014

Direcciones virtuales en Zimbra

Un problema que tuve que resolver días atrás en Zimbra: tengo que redirigir el correo que llega a una direccion a otra direccion externa.

Conozco algo la estructura interna de Zimbra, como el MTA es Postfix salí a buscar la solución por el lado de tablas de direcciones virtuales. Y no dudo que sea posible hacerlo, pero implica cambiar archivos de configuración de zimbra.

La "forma zimbra" de resolver esto es con listas de Correo. Soy consciente de estar abusando de una herramienta, pero no implica hacer cambios que en un upgrade puedan dejar de andar.

Me queda en mi lista de pendientes tratar de resolverlo con direcciones virtuales, de alguna forma que sea compatible con la configuración interna de zimbra.

lunes, 21 de julio de 2014

Diagramas de Red con Software libre

El blog viene quieto, con poca actividad. Lejos de poder sentarme a escribir, los últimos meses han venido bastante atareados. Hoy leí a Suren, en Google+, me hizo acordar algo interesante a compartir.

En mayor o menor medida, muchos tenemos necesidad de representar gráficamente topologias de redes o arquitecturas física de soluciones a desplegar. El estándar de facto para esta tarea es Visio, un paquete opcional para de Microsoft Office. Con todas las contras que esto tiene, empezando por el costo. 

Una de las primeras herramientas que utilicé es Xfig, un programa bastante antiguo. Tiene una buena biblioteca para dibujar diagramas. Es capaz de exportar SVG, que ayuda a integrar esos diagramas en otros documentos. La interface de usuario es difícil de aprender, hay opcionesmodernas y amigables al usuario.
Circuito dibujado en XFig
 DIA es una opción muy popular, ademas de ser pensado como una alternativa a Visio. Kivio/Calligra Flow es otra alternativa, aparentemente más pulida. Con DIA supe trabajar, los resultados finales son adecuados.

DIA en acción


Lo que me motivó a escribir es la posibilidad de usar Libre Office (u OpenOffice) para dibujar diagramas de red. Hace mucho tiempo Sebastian Criado publicó al respecto en su blog, creo que lo comentó en una de las listas del UYLUG. El post del blog esta aqui, para el quiera leerlo. Suren contaba de un POST que en el sitio de VRT Systems hay disponible para descarga formas y clipart para diagramas de redes, para Libre/Open Office.

Los gráficos son de muy buena calidad, cubren equipo actual de uso corriente.

jueves, 3 de julio de 2014

OpenCobol: vivo y activo !!!!!!

A fines de Febrero nos visitó oficina un vendedor, ofreciendo actualizar el compilador de COBOL que utilizamos en uno de nuestros servidores. No programo en COBOL, estoy familiarizado con el lenguaje. Destacaba la conectividad con Bases de datos y facilidades para desarrollo WEB de la nueva versión.

La visita despertó mi curiosidad por el estado de los compiladores de COBOL libres. Recordaba haber leído sobre los mismos hace mucho, en Linux Journal. En ese momento los compiladores solo podían compilar programas sencillos, SQL embebido o conexión a bases de datos era un sueño. Recordaba un compilador llamado Tiny Cobol, con el que compile algún programa de Pruebas. Este proyecto está detenido desde principios del 2011. Buscando información rencontré el proyecto opencobol, actualmente conocido como GNU COBOL.

Y mirando el proyecto encontré:
  • Un compilador que soporta una parte sustancial del COBOL 85 y COBOL 2002. 
  • Muchas extensiones de los compiladores COBOL existentes.
  • Binding a GTK, para aplicaciones gráficas de escritorio.
  • Integración con MySQL y PostgreSQL. No es soporta SQL embebido, lo anterior requiere algo de programación en C. Hay ejemplos de integración con Oracle y DB/2.
  • Hay reportes de usuarios en ambientes de producción, desde el 2005. Como caso emblemático esta la prefectura de Nagasaki, que tiene un sistema de sueldos y jornales portado a OPENCobol.
No esperaba encontrar un producto tan fuerte y con un desarrollo tan activo. Me animo a decir que es una alternativa a considerar, para migrar código existente de ambientes cerrados.

jueves, 26 de junio de 2014

Ayudas para programar en C

Estoy escribiendo un pequeño programa en C, para sacar texto desde un archivo binario. Estaba necesitando refrescar algunos conocimientos y el particular algunas funciones de la biblioteca estandar.

Un recurso obligado a tener a mano es El lenguaje de Programacion C, también conocido como el "Kernighan y Ritchie". Un libro que intimida y asusta al novicio, pero un invaluable ayuda como referencia.
El Lenguaje de Programación C, segunda edicion.
No encuentro en mi casa el libro de marras, perdido entre tantas cosas que aun no acomodé desde la ultima mudanza. Buscando recursos en linea encontré esta referencia de la biblioteca estandard. Tiene buenos ejemplos, es una suerte de man versión hipertexto.

miércoles, 21 de mayo de 2014

¡¡Segundo !!!!

El mes de mayo viene movido. De ahí las pocas publicaciones del blog. No me falta inspiración, si tiempo para plasmarla en el blog. Antes de empezar a escribir este post terminé uno sobre mi experiencia con el modem bandluxe, que tenia en el tintero hace varias semanas. No quería dejar pasar que en Mayo este blog cumple dos años. 

 Mirando el año

Desde febrero el blog es parte de agujero del mate, invitado por Rodolfo Pilas. No tengo elementos objetivos para cuantificar como ha variado el trafico a Raiz de esto. 

Tengo la impresión de tener más trafico latinoamericano, especialmente de Mexico, Ecuador y Peru. El trafico ha continuado creciendo, a un ritmo mas lento que en el primer año. Sobre fin de año vi un aumento importante de trafico.

Este año me animé a escribir comentarios de libros, comenzando con Hacker epico. Tengo leidos algunos otros libros, pero no he encontrado tiempo para escribir sobre ellos.He escrito más sobre Windows, tengo que lidiar con una cantidad importante de PCs con ese Sistema Operativo. Escribí menos de fotografía de lo que me hubiera gustado, coincide que estoy haciendo menos fotografía.

Mi valoración y respeto a los blogueros que publican activamente ha crecido. Para quienes no contamos con el don de la pluma, escribir una buena entrada es una tarea difícil. Sumarle a eso el tiempo, eventualemente erogaciones, para generar experiencias dignas de ser publicadas en el blog. Me cruzo con blogs como dolce uruguay, con un volumen y calidad de produccion envidiable. O La Frase del Viernes, que casi todas las semanas publica una cronica. No quiero mencionar a aquellos blogueros casi profesionales, una categoría casi imposible de alcanzar.

martes, 20 de mayo de 2014

SCRIPT para Modem BANDLUXE LTE en Linux

Semanas atrás recibí unos de estos modems. El objetivo es utilizarlo para una conexión de emergencia, en caso de caída de la conexión principal cableada; tengo que levantar la conexión mediante un script. ANTEL entrega estos módems como oferta de conexión inalámbrica. Probado en mi notebook la velocidad de conexión es buena, la conexión estable.
Modem BnadLuxe (foto del sitio del fabricante)
 ANTEL informa que el módem esta soportado en Ubuntu. Fuera de esa mención, no hay más datos para hacerlo funcionar en Linux. Buscando información llegue al blog de Fernando da Rosa, donde cuenta en una entrada su experiencia y da instrucciones para utilizar el modem. La información del blog de Fernando es muy clara, pero en mi caso necesito establecer la conexión desde un script sin intervención de un usuario/operador, seguí buscando información.  Otra entrada en el blog Marvin Rebooted me dio una idea. El soporte técnico del fabricante me envió un PDF, con indicaciones similares a lo publicado en los blogs antemencionados. Con un script armado, que no funcionaba bien, hice una pregunta en la lista UYLUG-Linux.

Por correo, Fernando da Rosa me sugirió ver otra pagina, cuyo autor seria también Uruguayo.  Esta menciona a USB-Modeswitch, a lo que podría dedicarle un entrada entera del blog. Uno de los primeros escollos que enfrenté era no tener instalado este paquete, que resolví conversando con Enrique Verdes. Sin él, el módem es reconocido como un disco USB o pendrive. Esta ultima pagina hace un estudio bastante exhaustivo del módem, presentando varias alternativas para utilizarlo. Después de varias pruebas, y una tarde de dedicación casi exclusiva al problema, tengo un script que establece la conexión.

 Configuración Inicial

Para trabajar con más comodidad, decidí sacarle el PIN a la SIM del MÓDEM. Hecho esto, con las instrucciones de Fernando da Rosa seleccioné la conexion de ANTEL. Hecho esto, el modem se puede utilizar con el script que publico a continuación.

El Script

#!/bin/sh
# Start Internet connection with BandLuxe C505 LTE modem

# (c) 2014 Andres Tarallo (atarallo@gmail.com)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, version 3 of the License.
 
# Path might be customized to your particular installation

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
if [ "$(id -u)" != "0" ]; then
   echo "This script must be run as root" 1>&2
   exit 1
fi

if [ "$( dmesg|grep 'Manufacturer: BandRich, Inc.' |wc -l)" = "0" ]; then
        echo "No modem availiable"
        exit 1
else
        # Modem detected, lets get it's parameters and info
        for i in $(dmesg |grep 'GSM modem (1-port) converter now attached'|tail -1); do SERIAL_PORT=${i}; done
        ETHERNET_PORT=$(dmesg |grep 'cdc_ether'|grep ': register '|awk '{print $5}'|cut -f1 -d':'|tail -1)
        echo "Modem detected"
        if [ -c "/dev/${SERIAL_PORT}" ]; then
                TTY="/dev/${SERIAL_PORT}"
        else
                echo "No terminal found, modem might be misconfigured"
                echo "make sure you have usb-modeswitch installed"
                exit 1
        fi
        if [ ! -n ${ETHERNET_PORT} ]; then
                echo "Ethernet port not present or missconfigured"
                exit 1
        fi
fi
echo "\nConfiguring Modem (${TTY}) "
echo  "at\$wancall=1" > ${TTY}
echo "\nConfiguring Network Card (${ETHERNET_PORT})"
dhclient -4 ${ETHERNET_PORT}
echo "Done !!!!!"

Pendientes (To do list)

El script publicado funciona correctamente, admite mejoras. Lo probé en mi notebook con OpenSuSE; basado en el mismo tengo en producción, en un PC con Ubuntu 12.04, una versión que agrega algunas rutas estáticas necesarias donde se utiliza el módem. 

Algunos pendientes:
  • Documentación: Un README y quizás manpage.
  • Programación defensiva: Chequear que la conexión no esté activa, verificar que la conexion luego de establecida. Esto ultimo podría  hacerse con pings a los DNS de Google  o alguna otra IP publica que admita pings. En la misma linea, seria interesante chequear la configuración de DNS. Otros chequeos útiles (necesarios) es verificar que los comandos utilizados sean ejecutables por el script.
  • Parametrización: El script tiene algunos valores cableados. Seria util tener un archivo de configuración. 
  • Empaquetarlo: Para facilitarle la vida a usuarios finales y administradores de sistemas. Seria útil contar con paquetes DEB y RPM, para las distribuciones más populares. 
  • Gestion de proyecto: Subir el script a algún repositorio  que permita hacer versionado y llevar listas de bugs. Algo tipo Sourceforge o Savannah

Esta lista de pendientes no es exhaustiva ni está cerrada. Seguramente lo primero que encare sea subir el script a un sitio que me facilite la gestión del desarrollo.

miércoles, 9 de abril de 2014

Vulnerabilidad de OpenSSL (Heartbleed)

OpenSSL es una implementación de fuente abierta de los protocolos SSL y TLS. Es utilizada por la mayoría de los sistemas operativos tipo Unix , OpenVMS y Windows. La biblioteca proporciona funciones criptograficas básicas y de utileria. 

Esta biblioteca se utiliza en muchos paquetes, siendo quizas su cara más visible los servidores WEB seguros. Utilizados para intercambiar información sensible, como datos personales o tarjetas de crédito.

El pasado 9 de abril se publicó la existencia de un bug, que se ha dado a llamar HeartBleed. El numero de vulnerabilidad en MITRE es CVE-2014-0160. Hay un sitio que explica el alcance de la vulnerabilidad. Y para los que quieran revisar si sus servidores web son vulnerables, acceden a este sitio. La mayoría de las distribuciones Linux ya tienen disponibles parches, que mitigan el problema o resuelven el problema.

sábado, 22 de marzo de 2014

FLOSS en AIX

Actualmente estoy trabajando bastante en AIX. Al igual que me pasó con Solaris, siento la falta de muchas de las herramientas a las que estamos acostumbrados en Linux.

Y como el post de unos días atrás, en AIX hay varios recursos a disposición. IBM portó las herramientas para trabajar con paquetes formato RPM. Esto facilita mucho la tarea de empaquetar software para AIX.

Hay varios sitios desde donde bajar software:
  • AIX Toolboox: Mantenido por IBM, las versiones de algunos paquetes son viejas.
  • BULLFreware:   Mantenido por la empresa homónima, cubre las versiones 5 y 6 de AIX.
  • OSS4AIX: Este sitio tiene paquetes para las versiones 5, 6 y 7 de AIX. En general los paquetes son bastante nuevos. El propietario del sitio afirma que sus paquetes son totalmente compatibles con los paquetes de AIX Toolboox.
El contar con las herramientas para gestionar paquetes RPM facilita mucho portar paquetes desde distribuciones Linux. Hace unas semanas atrás instalé algunas herramientas para generar PDFs y Postcript desde OSS4AIX, no tuve mayores problemas de compatibilidad con lo ya existente.