martes, septiembre 11, 2007

Un Mapa para el Bazar

Recuerdo que feliz de la vida salí a olisquear las calles de El Cairo con un mapa y que a la segunda vuelta de la esquina ya me había perdido. Cuando miré el mapa, tranquilo y contento de mi aventura de explorador, me percaté de un pequeño problemita, mi mapa tenía el nombre de las calles en inglés y las callejuelas dónde estaba perdido tenían todas el nombre en árabe. Fue graciosísimo la cara de pringao que se me quedó. Me perdí por un bazar en dónde era el único turista, y mira que ya es chungo eso en El Cairo, y encima el único con melenas, con lo cual me fueron tirando del pelo y tocando la cara. Fue una sensación de pérdida de control muy curiosa.

El Bazar es una de las metáforas que se usan para definir el sistema de desarrollo en el software “libre” / open source y recuerdo que esto siempre fue muy divertido a la hora de montar algo que no fuera exactamente como lo que ponía en el manual, ya que en tu distribución o en tu versión podía haber cambiado algo que justamente hacía que “eso que querías” no rulase. Tras mi caída en el lado del mal me fui olvidando del bazar de babel para acostumbrarme a la MSDN y al Technet.

Pero… los caminos del destino se retuercen y giran y me comprometí a escribir unas 25 hojitas sobre como fortificar Apache en un par de artículos, y como para eso hay que montarlo todo, pues nada, saqué la chilaba, me fume una pipa y me bajé de nuevo al bazar con mi Apache.

Ayer me senté a las 8 de la mañana con mi Linux y mi Apachito y me hice un plan de trabajo. Vamos a configurar los logs, a montar el mod_ssl, luego el mod_chroot, luego congiguramos los sistemas de autenticación con fichero con el mod_authn_file, con base de datos con el mod_authn_dbd, también jugamos un poco con mi querido mod_authnz_ldap y mod_ldap para autenticar con árboles LDAP y luego tocamos configuramos un poco el mod_security.

¿Qué puedo tardar en montar esto? Buscando un buen mapa (documentación) me lo monto en unas horitas.

Efectivamente, fueron unas horitas, de hecho una docenita de horas, ya que a las 9 de la noche estaba acabando de escribir sobre la configuración del mod_security y por el camino me pasaron algunas cosas curiosas, que os paso a relatar.

Esta traducción podría estar obsoleta.


Así, ale, la primera en la frente. Te vas a la documentación de la última versión de Apache en castellano y te dicen eso, qué podría estar obsoleta. A lo mejor sí, a lo mejor no. Si no te gusta, vienes tú y la documentas. ¡Por Dios! ¡Qué estamos en el siglo XXI! Tener esto y no tenerlo es exactamente lo mismo, pues como os imaginaréis ni se me ocurrió leer una línea más de esta documentación en castellano.

Mod_chroot

Con esto se hace una jaula para el sistema de ficheros en Apache. Antes había que montar un pollo copiando directorios y la leche para poder hacerlo. Sin embargo ahora, “You don't need to create a special directory hierarchy containing /dev, /lib, /etc...” ¡Qué guay! Vale, tengo una version Apache 2.2.54 sobre RedHat ¿Rulará? ¿alguna indicación sobre ello?
Sí, esta es toda la info que tienes. ¿Tú crees que rulara?. Puedes creer, pero lo que es saber seguro que no. Ámplia documentación. Nada usemos Internet para buscar más info y todo lo que obtenemos son o copias de porciones de texto de aquí o manuales de cómo montar la puta estructura de directorios “que ya no es necesaria” para montarlo con mod_chroot, o para hacerlo con mod_security, etc…

La doc

Las aventuras con la documentación han sido muy divertidas, ¿no podría cambiar esto? La ingeniería es importante, pero la documentación es parte fundamental de la ingeniería. Esto me recordó el caso de Linux on a Laptop, un sitio que recoge las experiencias de los tipos que montan su linux en el portatil. Como mi primo de Caceres que tenía el IBM ThinkPack 390X y quería instalar su RedHat y lo que tenía era lo que encuentres ahí, es decir, un Debian con el proceso de instalación en Francés. O yo, que en mi DELL Inspiron 6400 al que voy a instalar Ubuntu, para ser más listo, no sé si le va a funcionar el lector de MMC, el modem, el Firewire o la lectora PCMCIA.

De verdad, yo se que todos quieren ser el delantero centro para marcar goles, pero hacen falta defensas. Las estatus necesitan bases que suelen ser trozos de roca o metal gordos y sin forma que sujetan figuras estilizadas. Con los programas sucede lo mismo. La documentación debe ser buena, fuerte y robusta para que las cosas funcionen. Acabemos con el mensaje de: “a mí me rula así” o “en mi ordenador funciona”. En Spectra un jefe de proyecto se hizo famoso por poner en su puerta: “No me importa si funciona en tu ordenador, nosotros no vamos a distribuir tu ordenador”

Saludos malignos!

PD: En este trabajo he de romper una lanza por la documentación de Apache …en Inglés que es muy buena y por la de mod_security que es muy poco didáctica pero 100 % específica y si sabes que es lo que quieres te resuelve todos tus problemas.

27 comentarios:

Anónimo dijo...

Yo en un intento de migrar la jaula tradicional de toda la vida por un chroot de mod_security, con el PHP me cascaba. Tengo que cacharrear de nuevo con ello a ver.

Nacho dijo...

¿Y las 25 hojitas donde están?

Chema Alonso dijo...

Las pondré aquí a principios de Octubre y a principios de Noviembre. De momento están en la PCWorld de Septiembre y la segunda parten en la PCWorld de Noviembre.

Anónimo dijo...

Estas confundiendo Apache con modulos de terceros, no puedes criticar apache por que otra gente haga modulos y no los documente. Bueno, tu si que puedes...

De todas formas, si no eres un tecnicoless de esos, siempre puedes bajarte el código fuente y ver como lo hace :) (si, aunque no te lo creas la gente lo hace, incluso en windows 2000, tirando del trozo de código ese robado que se publicó).


La documentación en español es una mierda, pero no solo en apache, a mi la falta de internacionalización del español en los productos de Microsoft me crispa, además de que tampoco está tan actualizada como en inglés. Algo que yo veo lógico y que no critico.

En fin, es una pena que el documento no sea de IIS en vez de Apache. Ya solo falta que en barrapunto pongan como fortificar un Windows 2008.

Saludos

Chema Alonso dijo...

Hola aramosf!!

no, no los confundo, me mosqueo con todos!! Con Apache por lo de la "documentación podría estár obsoleta", con algunos otros por tenerlos poco documentados y por la comunidad por no hacer las cosas bien.

El de fortificar IIS lo tendrás también por aquí! ;)

Por cierto... ¿no te animas a subierte al escenario?

Anónimo dijo...

Me encanta cuando convertimos esto en un chat =]

Por desgracia, tengo miedo escénico y yo si no es como se usa el outlook y el project, no se que contar, lo mio es mirar como un voyeur.

Eso si, puede que os hagamos una visita.

FilEMASTER dijo...

¡YA SOY MAS LISTO!

ayer se me ocurrio instalar un ubuntu en el portatil a ver que tal chispaba y eso... y la verdad me siento mas listo...

eso si tb mola el tema de las documentaciones, "apt-get -install ..." y una puta mierda...

A mi el fucking compiz-fusion no me chispa y no hubo manera, al final tuve que poner el beryl para poder tener mis fantasticas ventanas flan, y poder hacer uso de toda la utilidad que proporcionan.

PD: maligno si quieres te lo enseño ;) XDDDDDDDDDDDDDDDD

Anónimo dijo...

Pos yo estoy encantado que alguien de la calidad de Chema exponga los pasos a seguir para asegurar Apache; da lo mismo de que lado estes la seguridad debe de ser primordial en ambos, ono¿?

Por otro lado estoy de acuerdo con Chema en que no es lógico que al visitar la documentación te diga que puede estar obsoleta (joder menuda forma de atraer a la gente al lado luminoso) y de igual forma no entiendo la falta de documentación de los modulos externos; sí soy muy crítico pero solo así algún día se podrá superar al lado oscuro.
Pero Spectra no se va de rositas eh, porque en el trabajo la gente que desarrolla bajo Vi$ta con VS05 lo ha instalado todo en ingles para tener una mejor documentación y curarse en posibles incompatibilidades.

Ala Salud y Suerte!
Ah y me voy comprar la 'ordenadormundo' jojojooooo ''soy la chispa''

Anónimo dijo...

Oye filemaster, bien es verdad que tanto beryl, como Compiz o ahora CompizFusion no tienen mucha funcionalidad propiamente dicha, pero esperate tú haber cuanto tiempo tarda Spectra en hacer algo parecido (que no sea el invento este del Aero) y sale vendiendolo como el último grito en interfaces de usuario.
Ya veremos ya...

Chema Alonso dijo...

@aramosf, luego no digas que no te invitamos a jugar. ;)

@dark_tuxvader, gracias por los piropos. ;)

Respecto a lo de las cosinas esas del interfaz de usuario, tanto lo de las ventanas en 3D del aereo como los demas efectos me parecen algo cargados. Creo que para XP existían cubos y efectos miles para los interfaces de usuario, pero desde los jueguetes del Windows 98 me fastidia cargar el interfaz.

Lo importante del aereo no es los 3D sino la gestion que hace del modo de pintar, aprovechando el DirectX.

Saludos!

Anónimo dijo...

Podrías haber hecho un post algo más interesante con críticas al modelo del bazar, pero me he encontrado un post bastante vacío. No tiene nada que ver que haya o no documentación de un proyecto con que se use este modelo de desarrollo, sino con la mejor o peor gestión del proyecto. De la misma forma que hay "catedrales" cuya documentación es nula o apestosa.

De todas formas te voy a contestar a un par de puntos.
Sobre el aviso de la documentación de Apache en castellano, ésto es lo que te dice la MSDN:
"AVISO: Gracias por utilizar el servicio de Traducción Automática. Este artículo ha sido traducido por un sistema informático sin ayuda humana (Machine Translation). Microsoft ofrece estos artículos a los usuarios que no comprendan el inglés, exclusivamente, con el fin de que puedan entenderlos más fácilmente.Microsoft no se hace responsable de la calidad lingüística de las traducciones ni de la calidad técnica de los contenidos de los artículos así como tampoco de cualesquiera problemas, directos o indirectos, que pudieran surgir como consecuencia de su utilización por los lectores."
Eso sí que da confianza ¿eh?

Sobre que una página personal como linuxonlaptops no contenga la información de la forma que a tí te gustaría, no creo que haya mucho que decir, porque no viene a cuento, básicamente.

@filemaster, que tu no sepas ver las ventajas de algunas de las posibilidades de compiz/beryl no significa que no la tenga (p.ej. zoom, exposé, agrupar ventanas, mostrar todas las ventanas, mejoran la usabilidad del escritorio...)

@maligno, y lo bueno de compiz es que se usa la aceleración por hardware, y de forma bastante más eficiente.

Anónimo dijo...

Seguro que sólo me pasa a mí, pero me da igual que sea Spectra o Linux, pero después de leer la documentación nunca me funciona casi nada a la primera.

Ya me lo decían a mi en la carrera, "la documentación es algo muy importante". Algo que todo el mundo sabe y que pocos hacen.

Como anéctoda, tuve una asignatura de un proyecto software. La documentación valía la mitad de la asignaura. Podías sacar un 9 en lo difícil (programar? :) )y suspender. Una de las veces que más en serio me lo tomé :)

Chema Alonso dijo...

@bastian, los servicios de traducción automática, como bien sabes son sobre le documento actualizado. Te gustará más o menos, pero por lo menos es actualizado. ¿De que me sirve entender perfectamente el perfecto castellano si la doc puede estar obsoleta?

Lo de Linux on Laptop deberían hacerlo aquellas casas que distribuyen linux. La web tiene su gracia pq un día me toco mirar unas instrucciones en checo y no se me dio muy bien.

Respecto a los interfaces, hay muuchas tools desde hace tiempo para hacer mil mariconadas con las ventanitas en XP, hasta el famoso cubo. y para zoom el Zoom it de Russinovich!.

Saludos!

Anónimo dijo...

"¿De que me sirve entender perfectamente el perfecto castellano si la doc puede estar obsoleta?"
Sirve si no sabes inglés y no entiendes la documentación en inglés, igual que la traducción automática de la MSDN. ¿De qué sirve entender el perfecto castellano si la traducción es incorrecta?

Anónimo dijo...

El Zoom it no era aquel que te había instalado Juanito en tu Dell? xDD

Tengo ganas de leer el artículo de Apache, y también el de IIS.

Chema Alonso dijo...

@bastian, incorrecta no, dí mejor que "te puede inducir a una mala interpretación de los términos" :P

Obsoleta es directamente no valida.

;)

@Gura, sí, ese. jeje.

@David, la universidad es así.

Anónimo dijo...

Sí.. si quieres joder tu controlador de la grafica instalate z00m it :D !

Anónimo dijo...

Sr. Maligno, ésta es una de las páginas más lamentables que he visitado últimamente (y eso que acabo de pasar por Libertad Digital).

Pero no se flagele, hombre, que lo de "Maligno" es, a todas luces, excesivo. Usted es simplemente uno más entre los muchos insignificantes y oscuros empleados de Microsoft que pululan por Internet, un incansable mendicante de caricias en el lomo por parte de su superior. Si acaso, puede usted presumir de lucir un poquito más servil que la media.

Desafortunadamente, su Divino Bill no frecuenta este tipo de cochambrosos altares, así que nunca se lo agradecerá. Espero que, al menos, su jefecillo más próximo le pague un café por ser tan prolijo en la generación de basura corporativa. Ánimo.

Anónimo dijo...

Bueno,

Vamos a ensuciar este hilo un poco xDD

A ver, al que pedía pistas del reto, ya se las puedes dar, Chema. Lo he terminado hace un rato (empecé anoche xD). La próxima vez que monteis un reto justo cuando estoy offline, os mato!

Os comento. Era más fácil de lo que me esperaba. Resuelto en menos de 24 horas ;-) Más o menos le echaría unas 2 o 3 horas a última hora de la noche y unas 4 o 5 hoy. Acabo de terminarlo. Muy chula la mús... ;-) La fase 2 la he superado googleando sin problemas (como en 1h, aprox!! Sin pistas adicionales; joder, si está chupao!). En la 1 perdí más tiempo jugando con... esa tecnología que hay que explotar :-P Por cierto, que esa técnica la tenía reservada desde hace años para un hipotético reto que algún día pensaba montar. Me has pisado la idea, Chema :(

@aramosf: Yo nunca he dado una charla en mi vida, no me va mucho ese rollo. Pero tú sí lo has hecho. ¿Cómo va a ser que yo me anime (bueno, me obliguen xDD) y tu no?!!
¡Igualdad!

-r

Anónimo dijo...

Si después de haber montado un apache con un montón de módulos adicionales y haberlos configurado, los únicos problemas que has tenido se reducen a que el mod_chroot no está bien documentado (de los 3 métodos para "chrootear" apache has ido a escoger el peor documentado) y que la documentación de apache en español es mala (joder, en casi cualquier campo de la técnica y la ciencia, la documentación buena está en inglés) pues, macho, te ha ido de puta madre. Teniendo en cuenta que es la primera vez que lo haces, tardar 12 horas tampoco está tan mal. ¿No te parece?

Y, por cierto, para fortificar bien, bien apache (y linux, en general) es muy recomendable usar SELinux. Tú no haces ninguna mención a ese tema. Apúntate ahí un fallo.

FilEMASTER dijo...

bastian, cuando tengas un rato te curras un manual de "utilidades de compiz/beryl" porque tienes razon, yo no las veo...

De todas maneras, las que no veo son las de beryl, porque las de compiz dificilmente si no me chispa en mi superubuntu 7.04, documentación al respecto = 0 o en /dev/null como mas te mole ;)

Anónimo dijo...

La frustración que tenéis los fanboys de micro$oft con el tema de compiz-fusion es tremenda. Desarrollado en menos tiempo, hace muchísimas más virguerías que la mierda esa de aero y consumiendo muchísima menos máquina. Os estáis tirando de los pelos, ¡y me encanta!.

Y si combinas compiz con kiba-dock, la comparación con Vista ya es que duele de verdad. XDDDDDDDDDDDDD

Y Maligno, ahora, sale diciendo que lo importante no es lo que se ve, sino su arquitectura interna. ¡En un programa que es, basicamente, para crear efectos gráficos vistosos ¡Amos, anda ya, no me jodas.!

Anónimo dijo...

Chemita ¿Le has echado un vistazo al servidor web cherokee? Va muy bien, es muy ligerito y, dicen, bastante seguro. Además es producto nacional.

http://www.cherokee-project.com/

Por otra parte, ardo en deseos de leerme tu artículo de Apache completo.

Un saludo.

Chema Alonso dijo...

@Sirw2p, sobre todo si es antes de una charla!.

@Cuneyt-Arkin, mira que esperaba que nadie me descubriera, pero no me he escapado a tu mirada perspicaz y el análisis profundo que has realizado de mi blog. Me apena que no regreses aquí, porque verias este abrazo enorme que te envio junto con un beso. Muach! Intelectual! Interesante!. Muach!

@romansoft, estás el....SEXTO. Cuando yo me tomo unos días de asueto sigo cumplimendo con "mi obligación" de estar conectado, así que tú, debías haber cumplido perro!. No hay Bender, negocia con Mandingo. Además, tu ya conocías el lenguaje así contabas con ventaja, No hay excusa!
Ayer alguien a las 23:46 pasó la segunda fase... pero se olvido de las mayusculas justo en la repuesta correcta... repitela!

@aramosf, anímate perra!

@anónimo, no, no es la primera vez que monto Apache con juguetes, de hecho hace alrededor de 10 años que monté mi primer apache, y desde entonces lo habré montado muchas veces, pero para hacer un artículo hay que probar muchas cositas y con las últimas versiones. SELinux es a nivel de SO no quería tocar SO solo servidor Apache.

@FileMaster, vas a tener que escribir tú el manual al final FileMaster, jejeje.

@Anónimo "frustrado", he de reconocer que llevas razón, que a mi me quita la vida ....esos programas que has dicho. Las tonterías de AERO de ponerlo en 3D, las traspas, etc... son mariconadas, creo que para Windows 98 había algo llamado PowerToys o mierdas similares. Sobre que AERO consume muchos recursos....¿Cuanto de muchos? Saludos!

@ ojete cosmico, le echaré un vistazo. He oido hablar de él, pero nunca lo he montado. Me quedé hace años en un interfaz que se llamaba Comanche. El artículo primero está en la revista este mes, en dos semanas o así lo publicaré en el blog. El segundo sale en la revista en Octubre y en el blog en Noviembre. Saludos!

Anónimo dijo...

@maligno: Que a mí la empresa no me da tarjeta UMTS/GPRS... de hecho, ni siquiera móvil de empresa, con eso te lo digo todo :) Y en la playa no hay wifi (ni en los apartamentos; supongo que no le interesa a los vecinos instalar linea telefónica/ADSL para 15 días que van a estar...). De todas formas, incluso de haber tenido internet sólo habría tenido tiempo para mirar el correo de vez en cuando (que me habría venido muy bien, la verdad) y de haber lanzado algún comentario jocoso en tu blog ;-)

Lo de la ventaja por conocer la tecnología es como decir que tiene ventaja el que sabe de auditorias web o se dedica profesionalmente a ello. Es una evidencia, pero es un factor que ya se está teniendo en cuenta en todo reto (lo normal es que lo saquen primero los que más entienden o más experiencia tienen en estos temas; una persona no experimentada siempre jugará con desventaja; es más, no creo que los que sacan tus retos sean precisamente gente principiante... ;-))).

-r

Chema Alonso dijo...

@romansof, cierto, los retos no son muy fáciles, pero es que siempre sois los mismos coño! ;)

No, ahora en serio, la próxima vez te aviso, para que planfiques las vacas XD XD.

Saludos!

Anónimo dijo...

@filemaster, si no le ves utilidad a ninguno de esos efectos que he comentado, no sé chico, será que el uso que haces del ordenador es super básico, pero tenerla la tienen.
Documentación sobre compiz hay abundante y es bien facilito.

Entrada destacada

10 maneras de sacarle el jugo a tu cuenta de @MyPublicInbox si eres un Perfil Público

Cuando doy una charla a algún amigo, conocido, o a un grupo de personas que quieren conocer MyPublicInbox , siempre se acaban sorprendiendo ...

Entradas populares