Entrevista a un ex funcionario público

octubre 13, 2008

Jorge Niedbalski es un estudiante pronto a egresar de la Universidad Central. Tiene una basta experiencia laboral (en repartición pública) y es un férreo defensor del software libre. A continuación responderá algunas preguntas basado en su experiencia.

¿Se utiliza software libre en las reparticiones del Estado Chileno?

Me basaré en mi experiencia personal para responderle. Si se utiliza, probablemente en una relación de 1:5 con respecto al software comercial. Es introducido a la administración publica a través de  gestiones “personales” (muchas veces con características de lucha) por gente que ha sido capaz de poner las ventajas técnicas y culturales que impone el software libre por sobre los acuerdos comerciales. (Comprenda usted el sentido figurado).

Circunstancialmente el software libre ha entrado como un verdadero caballo de troya en el perímetro de las redes disfrazado como un firewall TCP/IP , balanceador de enlaces, servidor de MTA, filtro SPAM, servidor de DNS en otras ocasiones entra al datacenter como servidor NAS, servidor de aplicaciones, central telefónica, servidor web entre algunos otros usos incluyendo incursiones de desarrollo de algunos valientes. Respecto a las aplicaciones, hay algunas que han tenido una importante aceptación, principalmente gestores de contenido, software de e-learning, monitores de estado de dispositivos, motores de bases de datos libres como MySQL, PostgreSQL, etc. Es extremadamente poco probable que el software libre no exista en una repartición publica siempre encontrarás un servidor web Apache o basado en, un motor Oracle (basado en UNIX db) , aplicaciones que corren sobre la JVM (ahora opensource) generalmente sobre servidores de aplicacion libres, appliances propietarios corriendo algún UNIX libre, entre otros detalles curiosos.

¿A que se refiere con ventajas culturales?

El software libre impone cambios en varios paradigmas erróneos que subyacen en la administración publica y del país en general.

La primera regla es que si algo no te agrada , probablemente debas hacerlo tu mismo, ¿Esta la administración publica dispuesta a hacer el trabajo por ellos mismos?

Segunda regla ¿Es menor el gasto en desarrollar software extensible y heredable a otras reparticiones  versus comprar software con licencias temporales y nulamente extensibles con contratos que amarran con imposiciones legales para que sea irreutilizable?.

Tercera regla : El soporte técnico asociado y el respaldo corporativo a la solución. Frente a esto mis argumentos nuevamente se basan en la experiencia , sobre el soporte técnico asociado a las soluciones que se entregan por empresas del software privativo donde la tasa de resolución de conflictos es de 1:10 y los tiempos medios bordean las 72 horas (incluyendo en componentes de misión críticos). Lo anterior, puesto en una balanza con leer documentación, preparar y cualificar al personal técnico o armar una librería en tu oficina con documentación técnica.

Visto desde el punto de vista de desarrollo país , empresas nacionales que presten soporte técnico de calidad al software libre fomentaría positivamente una pequeña industria local.

¿Propondría usted una estrategia para introducir software libre en la administración publica?

En un algoritmo simple:

  1. Identifique el problema a solucionar.
  2. Busque una alternativa viable en el espectro del software libre.
  3. Si se encuentra , buscar sus ventajas técnicas comparativas sobre el software comercial existente.
  4. Sume las ventajas heredadas de su condición de ser software libre.
  5. Si es necesario “hacerlo por tu cuenta” salta a 11 sino continua.
  6. Implemente un modelo de pruebas y realice todos los posibles casos de uso.
  7. Documente fielmente los resultados de tus ensayos.
  8. Dimensione las implicancias de tiempo/esfuerzo y hardware que requerirá su implementación.
  9. Proponga un plan de mantenimiento de la solución.
  10. Presente el resultado de su estudio a los tomadores de decisiones y espere mientras se concreta.
  11. Dimensione tiempo/esfuerzo de desarrollo y compárelo con el valor de una alternativa comercial.
  12. Probablemente el paso anterior usted la alternativa comercial triunfe, multiplique el valor de la alternativa comercial por la cantidad de casos probables de que se presente la misma necesidad en otra repartición. Si es mayor que el costo de implementar salte a paso 13, sino salte a 14.
  13. Implementelo.
  14. Deje el trabajo al área comercial, ellos sabrán hacerlo.

Según la web de OpenBSD, el MOP duerme tranquilamente cada noche gracias a la seguridad de
este Sistema Operativo. ¿Que destacaria de OpenBSD?

Destacaría de OpenBSD :

En general es un buen proyecto que no revoluciona nada pero si es bastante estable y muy funcional para tareas que requieran seguridad y estabilidad como foco primario.

El versionamiento estricto a su arbol de fuentes y su proceso de release es bastante metodico.

El orden de su documentacion y el poco dinamismo entre versiones de los ficheros/utils de configuracion para las tareas de adminstracion comun.

Las tecnicas de proteccion para metodos omunes de explotacion , como la activacion por defecto Propolice en gcc , lo que permite prevenir ataques  sobre funciones que utilizan el stack, como stack overruns o stack overflows y la forzosa utilizacion de las funciones de manejo de strings “seguras”.

Tambien me parece interesante el paginamiento W^X lo que fuerza a una pagina perteneciente al address space de un proceso a tener solo el flag de ejecuccion o escritura, pero nunca ambas (mutuamente excluyente), para prevenir la explotacion exitosa de errores de desbordamiento, similar en cierta tecnologia a PAX en Linux. Adicionalmente se han implementado tecnicas de direccionamiento aleatorio, validacion de direcciones de retorno y algunas otras tecnicas de prevencion.

Otra cosa interesante es la utilizacion de syscall tracer (systrace) que permite definir politicas por sobre syscalls a ejecutables y sobre sus argumentos, como por ejemplo denegar un bind, permitir un exec, negar un connect a una direccion IP particular, etc.Hace un tiempo Robert Watson (FreeBSD core team member)  encontro algunos errores de concepto en los syscall tracers y publico sus resultados, haciendo realmente inservible esta implementacion.

Adicionalmente me llamo la atencion la existencia de un framework de privilege separation, todos los demonios activos por defecto corren en un entorno chroot incluyendo los routing daemons engines (que incluye los protocolos RIP, OSPF , DVMRP, BGP4) todos con separacion de privilegios.

Otra cosa destacable es todo el soporte de networking en todas las capas de la red desde la interface bridge, trunk, soporte para 802.11, encapsulamiento GIF, soporte de IPSEC nativo (y muy simple de configurar), todos los routing daemons, y por supuesto el genial firewall PF (packet filter) que permite un numero casi ilimitado de opciones para filtrar el trafico incluyendo statefull inspection hasta relayd para load balancing en capas superiores de aplicacion.

Otros proyectos tambien pertenecientes al mismo grupo de desarrollo son destacables como OpenNTP , OpenBGPD, OpenOSFD, OpenCVS, OpenSSL y el archiusado OpenSSH, lo que desmuestra la calidad del software incluido.

About these ads

One Response to “Entrevista a un ex funcionario público”


Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.

%d personas les gusta esto: