18 de Agosto 2008

Soporte mssql para php en debian

Debian, por defecto, retira el soporte para mssql de la compilación de php. Me parece una buena política, ya que nadie en su sano juicio debería acceder a mssql desde php (ni desde ningún otro lenguaje, si nos ponemos quisquillosos). Sin embargo, hay gente en mi trabajo que no está en su sano juicio, y por necesidades de integración, tenemos una aplicación LAMP que accede a un mssql para recoger datos de otra aplicación.

Dado que ya me ha tocado dos veces recrear el paquete php-mssql para etch me he decidido a documentarlo, para que en la tercera ocasión no me toque volver a buscarlo.

  • Primero, instalamos las dependencias de compilación de php5, descargamos el fuente, y nos metemos dentro:

    # apt-get build-dep php5
    # apt-get source php5
    # cd php5-5.2.0

  • Ahora modificamos unos cuantos archivos:
  • En debian/control, añadimos una entrada nueva:

    Package: php5-mssql
    Architecture: any
    Depends: ${shlibs:Depends}, ${misc:Depends}, ${php:Depends}, php5-common (= ${Source-Version})
    Description: MSSQL module for php5
    This package provides a module for MSSQL using FreeTDS.
    PHP5 is an HTML-embedded scripting language. Much of its syntax is borrowed
    from C, Java and Perl, with a couple of unique PHP-specific features thrown
    in. The goal of the language is to allow web developers to write
    dynamically generated pages quickly.

  • En debian/modulelist, justo debajo de la definición del módulo XSL, añadimos:

    mssql MSSQL

  • En debian/rules, junto a la línea de definición de mysql y mysqli, añadimos:

    –with-mssql=shared,/usr \

  • , y mas abajo, sustituimos

    –without-pdo-dblib \

  • por

    –with-pdo-dblib=shared,/usr \

  • y por último, recompilamos el paquete:

    # dpkg-buildpackage

Y con esto, y un poco de paciencia (tarda un buen rato en recompilar), ya tendremos todos los debs creados, incluido el php-mssql, que es el que nos interesaba.

No Comments yet »

29 de Julio 2008

VMware ESXi gratuito (que no libre)

VMware, sigue con su política de ofrecer gratis cada vez mas productos. Primero el VMware Player, luego, hace dos años, el VMware Server, y ayer, 28 de Julio, VMware ESXi.

Cada nuevo producto liberado supone un paso hacia funcionalidades mas orientadas a la empresa y a mayores cargas de trabajo. Mientras que el Player podía considerarse permitía arrancar una única máquina virtual, mas como prueba de concepto individual que útil para la empresa; Server arranca n máquinas virtuales independientes, está pensado para utilizar en modo servidor, con servicios que paran y arrancan las máquinas según configuración, permite una configuración de red compleja, con subredes privadas compartidas por las máquinas, administración remota con un cliente pesado, o en la versión 2.0 (aún en beta) con un applet via web, y otras funcionalidades pensadas para la empresa.

ESXi es otra vuelta de tuerca en la misma dirección. En lugar de instalar un sistema operativo, y sobre él tu versión de VMware favorita, en el equipo se instala directamente el software de VMware. VMware ESX es un producto que instala un redhat modificado cuyo único objetivo era arrancar las máquinas virtuales de su interior, y permitir su configuracion. Aprovechando la salida de la versión 3.5, lo que ha hecho VMware es regalar la versión ligera, ESXi, que elimina buena parte del sistema operativo host, centrandose en las herramientas de administración remota. Según el Director Senior de Marketing de Producto de VMware, Bogomil Balkansky, ESXi es el futuro, es la dirección en la que va la nueva arquitectura de VMware.

Por ahora, yo me conformaré con esperar ansioso los comentarios de otros, puesto que no tengo equipos disponibles ni en casa, ni en el nuevo curro. Si fuera en el antiguo ya estaba instalado….

No Comments yet »

24 de Julio 2008

La vulnerabilidad de DNS, explotada

La vulnerabilidad en los servidores DNS descubierta por Dan Kaminsky ha visto la luz unos días antes de lo previsto, y ya está disponible el código para atacar con metasploit.

Esto, que mucha gente veía como inevitable a medio plazo, es una muestra mas del error de no hacer una explicación completa del problema. Kaminsky decidió hablar con los responsables de los sistemas operativos y de los servidores DNS para que sacaran parches, pero no publicó los detalles de su trabajo, reservandolos para su conferencia estrella en BlackHat. Por una razón tan estúpida como alimentar su propio ego, dejó que se especulara. Mientras tanto, demasiados servidores no se parchearon, suponiendo que estarían seguros hasta el día 6/7 de Agosto. El hecho de que hubiera un exploit confirmado en dns, y que tuviera algo que ver con que las peticiones se hacen siempre desde el mismo puerto, era mucha pista, y al final ha caído.

Así que, por vuestro propio bien, acercaros a la web de Kaminsky, pulsad el botón “Check my dns”, y si dice que sois vulnerables, lo mejor que podéis hacer hasta que vuestro ISP reaccione es utilizar OpenDNS.

No Comments yet »

24 de Julio 2008

Drizzle

Brian Krow Aker, el director de arquitectura de MySQL ha anunciado un nuevo producto: Drizzle.

La idea, muy interesante, es, mas o menos, cubrir el hueco que hay entre SQLite y MySQL. En los últimos años, MySQL ha ido incorporando cada vez mas funcionalidades, y ha ido creciendo como base de datos. Esto está muy bien para poder llegar a competir con los grandes, pero, ¿qué pasa con la gente que únicamente quiere un motor de SQL para mantener un blog, o cualquier aplicación mas o menos pequeña?

Existe un enorme mercado para una base de datos que sea el equivalente a un MySQL descafeinado, y ese es exactamente el target de Drizzle. Hoy en día, un MySQL configurado con los valores por defecto de debian, consume alrededor de 100M al arrancar. Puede no parecer demasiado en el mundo de los PCs de dos gigabytes, pero si lo que intentas es configurar un servidor mínimo, embebido, o un VPS, es una exageración. Desactivando innodb, y jugando un poco con los parámetros, es relativamente fácil dejarlo en el rango de las 40 megas, o incluso menos. Veremos donde queda Drizzle.

Por ahora, han quitado los procedimientos almacenados, las vistas, los triggers, la cache de queries, las ACLs y los prepared statements, aunque estos últimos tienen prevista su reaparición, pero con otra filosofía, desde el punto de vista del cliente en vez del servidor.

La idea es preparar una arquitectura con un microkernel y una serie de plugins opcionales que implementen ciertas funcionalidades. Por tanto, a largo plazo sería posible reproducir gran parte de la funcionalidad de MySQL, pero seleccionando sólo la que necesitas. Eso debería tanto aumentar la flexibilidad del servidor como incrementar su rendimiento en los casoos en que no se precisen todas las posibilidades.

No Comments yet »

18 de Julio 2008

Wordpress 2.6

Post obligatorio de actualización a Wordpress 2.6.

Muy sencilla, casi sin problemas. Sólo tuve que cambiar la nomenclatura de los tags y las categorías, porque no funcionaba el acceso a los posts individuales.

Nada mas que ver por aquí hoy…

No Comments yet »

Next »