¿QUE ES OPENBSD? - Fernando Quintero (aka nonroot), http://www.openbsdcolombia.org ¿QUE ES OPENBSD? Autor: Fernando Quintero (aka nonroot) Correo electrónico: [email protected] Fecha de creación : 04/04/07 Ultima modificación: 13/04/07 Índice de contenido 1. Licencia de este documento (BSD).................................................................................................. 2 2.Introducción.......................................................................................................................................2 3.Inicios................................................................................................................................................ 2 3.1.Unix ® ...................................................................................................................................... 2 3.2.Kernel BSD................................................................................................................................3 3.3.Licencias.................................................................................................................................... 3 4.OpenBSD - Libre, funcional y seguro -.............................................................................................4 4.1.Historia.......................................................................................................................................4 4.2.Theo de raadt............................................................................................................................. 5 4.3.Versiones................................................................................................................................... 5 4.4.Mascota...................................................................................................................................... 6 4.5.Seguridad................................................................................................................................... 7 5.Usuario final / Aplicaciones.............................................................................................................. 7 5.1.Paquetes..................................................................................................................................... 8 5.2.Ports (también llamados portes)................................................................................................ 8 6.Forma de trabajo................................................................................................................................9 6.1.Core Team ( el equipo núcleo, los tesos)...................................................................................9 6.2.Hombres de confianza............................................................................................................. 10 6.3.Mantenedores...........................................................................................................................10 6.4.Colaboradores.......................................................................................................................... 10 6.5.Usuarios BSD.......................................................................................................................... 10 6.6.Usuarios finales .......................................................................................................................10 7.Activismo........................................................................................................................................ 10 8.Documentación / Ayuda.................................................................................................................. 11 9.Defendiendo OpenBSD................................................................................................................... 13 10.Enlaces relacionados..................................................................................................................... 15 ________________________________________________________________________________ 1/16 ¿QUE ES OPENBSD? - Fernando Quintero (aka nonroot), http://www.openbsdcolombia.org 1. Licencia de este documento (BSD) Copyright (c) 2007, Fernando Quintero, All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: • • • Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of the OpenBSD Colombia nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 2. Introducción Este documento describe de manera informal lo que es el Sistema Operativo (S.O.) OpenBSD y toda la comunidad que se mueve entorno a este. Se recomienda su lectura para todos aquellos que se inician en el mundo UNIX/BSD y especialmente para todos los interesados en hacer crecer LA COMUNIDAD. Cualquier consulta, corrección, comentario, será bien recibido en el correo del autor. 3. Inicios No voy a describir los detalles de como aparecieron los sistemas operativos en el mundo, porque suficiente documentación hay al respecto1, pero si quiero hablar un poco acerca del nacimiento de los sistemas operativos Unix y por ende de los BSD. 3.1. Unix ® El nacimiento del sistema operativo Unix se le atribuye a dos señores en ese entonces contratados por la empresa AT&T para desarrollar un S.O. muy portable (posibilidad de funcionar en diferentes plataformas, ALPHA, SPARC, INTEL, etc), multiusuario (que tuviera la posibilidad de que varios usuarios estuvieran trabajando al mismo tiempo con diferentes perfiles y conectados desde diferentes partes ) y multitarea (que pudiera ejecutar varios procesos al mismo tiempo), estos señores se llamaban: Ken Thompson y Dennis Ritchie (en este momento usted debe hacer una venia en señal de respeto a estos dos grandes hombres ;) Por un lado podemos pensar en UNIX como un sistema operativo antiguo, demasiado costoso (licencias) y que trató de formar un monopolio en el mundo de los S.O., también puede pensar en 1 Lee la wikipedia, http://es.wikipedia.org ________________________________________________________________________________ 3.Inicios 2/16 ¿QUE ES OPENBSD? - Fernando Quintero (aka nonroot), http://www.openbsdcolombia.org UNIX como una marca cuyo dueño es el Open Group, una organización que “presta” su maca a cualquier Sistema Operativo que cumpla con unos estándares determinados (por eso podremos decir mas adelante que OpenBSD es un sistema UNIX BSD). Podemos decir que UNIX es la otra familia con la que quizás no estas familiarizado, todo el mundo ha escuchado alguna vez sobre los S.O. De la familia Windows (95, NT, Server, Vista, etc), pero no muchos saben que esos no son los únicos sistemas operativos que existen en el mercado, es mas, supongo que si estas leyendo esto es porque alguna noción diferente has de tener, por lo menos habrás utilizado Linux, Solaris o Mac. Pues bien, uno en el mundo puede elegir estar en la familia Windows o en la familia UNIX, no es que no existan mas familias de Sistemas Operativos, es solo que estas dos son las mas influyentes. Si hablamos de UNIX es porque tiene una relación directa con BSD y por lo tanto con el sistema operativo OpenBSD. ! OpenBSD no es Unix ! Sigue leyendo por favor ... 3.2. Kernel BSD Un kernel es el núcleo, la parte fundamental del sistema Operativo, podríamos decir que un S.O. se compone de un núcleo, de un ambiente de usuario (aplicaciones) y de un interprete de comandos (no todos los S.O.), también tendremos los controladores que estarán casi siempre actuando a nivel de kernel para que nuestro hardware sea usable. Los kernels se clasifican de diferentes formas y cada una tiene sus ventajas y desventajas.2, el BSD (Berkeley Software Distribution – Distribución de Software Berkeley) es un S.O. que proviene de la Universidad de California Berkeley, también conocida como la Universidad de Berkeley, esto es para diferenciar a cual Universidad de California hacemos referencia, porque en california hay muchas universidades :). BSD es un núcleo derivado de Unix, la razón fue que AT&T le permitió a la Universidad trabajar con su núcleo y le permitió hacer modificación con fines investigativos. Sin embargo mucho tiempo después quiso quitarle estos permisos y detener el desarrollo que llevaban hasta ese momento, esto llevó a que se iniciara un pleito legal que finalizo en 1994 a favor de La Universidad de Berkeley la cual liberó una versión completamente libre de BSD llamada BSD 4.4-Lite, mas tarde en 1995 la Universidad de Berkeley liberaría una nueva release (2) para toda la comunidad en la cuál están basadas muchas de las distribuciones BSD existentes. Debe quedar claro que cuando hablamos de BSD podemos estar hablando de un Sistema Operativo (todo el conjunto, aplicaciones + kernel), de un kernel (solo el kernel BSD) o de una licencia (Licencia BSD). Entonces para descifrar lo que se esta diciendo, hay que ponerse en el contexto. 3.3. Licencias Para permitir que mas personas pudieran trabajar sobre este núcleo, la Universidad de Berkeley, liberó su software bajo una licencia que tiene el mismo nombre: BSD. Esta licencia es una licencia de Software Libre, por lo que el código liberado bajo la misma se puede estudiar, ejecutar, modificar, distribuir sin pedirle permiso a nadie :) Es una licencia para algunos demasiado permisiva ya que cualquiera puede hacer lo que quiera con 2 Sobre los kernels – http://es.wikipedia.org/wiki/Kernel ________________________________________________________________________________ 3.Inicios 3/16 ¿QUE ES OPENBSD? - Fernando Quintero (aka nonroot), http://www.openbsdcolombia.org el código BSD, inclusive cambiarle la licencia o incorporar código dentro de aplicaciones NO libres. No voy a entrar en opiniones si es bueno o no licenciar algo con BSD, lo que si es claro es que las distribuciones basadas en BSD, han seguido esta filosofía y la mayoría de su código esta liberado bajo esta licencia. Digo la mayoría porque para poder crear una distribución hace falta mas que un kernel y buenas intenciones, se necesita de muchas aplicaciones, compiladores y otras cuantas cosas más que muchas veces pueden no tener licencia BSD, pero si algo compatible con las licencias de Software Libre. 4. OpenBSD - Libre, funcional y seguro 4.1. Historia La historia de OpenBSD es un poco menos común que el surgimiento de muchas otras distribuciones (Sistemas Operativos). OpenBSD es un fork (derivado) de NetBSD3 un S.O. Tipo unix que fue el primero en crear una distribución completamente libre con núcleo BSD4.4-Lite. Theo de raddt4 el fundador de OpenBSD fue uno de los primeros 4 miembros del core team de NetBSD, esto significa que estuvo en los orígenes o en el nacimiento de esta distribución. En 1994/1995 por cosas personales que están bien especificadas en algunos correos5 que se pueden encontrar en el sitio oficial de theo de raadt, este decidió abandonar el proyecto NetBSD y hacer un derivado de este sistema operativo dándole un enfoque diferente, apuntándo a la seguridad y la criptografía como punto fuerte y este fue el nacimiento de OpenBSD. Theo de raddt es el líder fundador del proyecto OpenBSD, desde ese entonces muchas mas personas han ingresado al equipo oficial de OpenBSD sin que el numero crezca demasiado. OpenBSD es un sistema multiplataforma (por supuesto con soporte para i386 y clones de intel) y ademas puede emular binarios de otros sistemas como lo son: Linux, OSF/1, SunOS, SVR4, Solaris, FreeBSD y Ultrix. - esto significa que OpenBSD puede ejecutar binarios compilados para otras plataformas, dandole el respectivo soporte en el kernel - OpenBSD ha tenido unos objetivos claramente marcados desde sus inicios y esto son: la seguridad proactiva, criptografía integrada, portabilidad y estandarización. Por lograr todo esto ha sacrificado que este sistema operativo sea el mas famoso, pero al menos sigue siendo el mas seguro. El eslogan del sitio WEB y del proyecto en general es: “Ningún hueco remoto en la instalación por defecto en mas de X años”, esto varia año a año. Este año (Febrero 2007) el eslogan cambió a “Solo dos huecos remotos en la instalación por defecto en mas de 10 años”, esto debido a que un grupo de investigadores en seguridad descubrieron un segundo hueco en la instalación por defecto y así se lo dejaron saber al proyecto OpenBSD. Sin embargo este lema nos dice muchas cosas de fondo, puede que OpenBSD no sea un S.O. perfecto, pero hasta el momento ha demostrado estar al día en aspectos de seguridad, como son todas las vulnerabilidades reportadas existentes hasta el momento (B.O., Format Strings, Off by one, etc). Así que aún seguimos confiando en OpenBSD, un hueco remoto lo tiene cualquiera :p 3 Sitio web oficial, http://www.netbsd.org/ 4 Sitio de Theo, http://www.theos.com/deraadt/ 5 Correos entre Theo y el equipo NetBSD, http://www.theos.com/deraadt/coremail.html ________________________________________________________________________________ 4.OpenBSD - Libre, funcional y seguro - 4/16 ¿QUE ES OPENBSD? - Fernando Quintero (aka nonroot), http://www.openbsdcolombia.org Si quiere leer el recuento que hicieron de OpenBSD el día de su 11vo cumpleaños (18 de Octubre), haga click en el siguiente enlace: http://www.undeadly.org/cgi?action=article&sid=20061019013207 4.2. Theo de raadt Theo es el fundador del proyecto y actual líder del mismo. La página oficial6 hablará mas sobre su forma de pensar y la filosofía que lo lleva a mantener en marcha este gran proyecto. 4.3. Versiones OpenBSD ha mejorado el código de su núcleo desde que lo incorporó de la versión de la Universidad de Berkeley, también ha hecho cambios importantes en librerías y userland (software en ambiente de usuario). OpenBSD libera aproximadamente cada seis meses (6) una nueva RELEASE de su distribución. Esas releases se pueden tomar como versiones del sistema operativo que salen acompañadas de muchas mejoras, nuevos controladores, nuevas aplicaciones, mas documentación y en general todo el trabajo que se desarrolla durante todo el periodo previo a su salida. La última release es la 4.0, que salió en Noviembre de 2006. En este momento estamos esperando una nueva que será la 4.1 que saldrá el 1ro de Mayo de 2007. Las RELEASES de OpenBSD no se pueden descargar como la mayoría de distribuciones. En el sitio oficial no se encuentran las .iso que nos permiten crear un CD con toda la distribución, en cambio si encontramos todos los archivos fuentes y paquetes necesarios para crearnos un CD por nuestra cuenta. El motivo de esto es que comprar distribuciones oficiales es una de las entradas económicas para el proyecto, por lo tanto es una buena tarea comprarle algo al proyecto, ya sean distribuciones, camisetas, afiches o cualquier cosa que haya en el sitio oficial. Si te estas preguntando entonces como hacer para conseguir OpenBSD, una posible respuesta ya la tienes, ármate una propia distribución bajándote los paquetes y usando el software necesario. Si esta opción no es para tí, puedes descargar la .iso NO oficial de algún sitio7 donde este disponible. Para muchas personas (o ambientes de producción) esto no es lo recomendado, ya que no tendremos la certeza que la información dentro de la distribución es exactamente lo que nosotros queremos. Sin embargo si solo quieres probar y aprender un poco, te puedes descargar una y probarla sin temor, quizás dentro de muy poco estemos colgando en alguna web nuestras propias isos para que se te haga la vida mas fácil ;) Existen otras dos versiones de distribuciones que te ayudaran a entender la documentación. Cuando encontramos el termino current (actual) significa la versión en desarrollo de la distribución OpenBSD, como quien dice, la versión actual sobre la que están trabajando y desarrollando y encontramos la versión stable (estable), esta es como su nombre lo indica es la ideal para tener en ambientes de producción pues es una release que a medida que se descubren nuevos fallos se va parchando y de esa forma la vamos manteniendo. Esta release la vas creando en el momento en que vas aplicando parches a tu versión. Todas las versiones (nuevas release, current y estable) se pueden descargar por medio del CVS. 6 Sitio oficial de Theo deraadt, http://www.theos.com/deraadt/ 7 ISOS NO oficiales http://darkstar.ist.utl.pt/openbsd/ ________________________________________________________________________________ 4.OpenBSD - Libre, funcional y seguro - 5/16 ¿QUE ES OPENBSD? - Fernando Quintero (aka nonroot), http://www.openbsdcolombia.org Fig 1. Versiones de la distribución OpenBSD Si quieres apoyar el proyecto, deberías comprar una distribución oficial en: http://www.at.openbsd.org/orders.html Si quieres hacer una donación al proyecto, por favor entra a: http://www.openbsd.org/donations.html 4.4. Mascota Como es por todos conocido, en el mundo del Software Libre la mayoría de proyectos tienen como mascota un animal o algo que se le asemeje. OpenBSD no es la excepción y al ver que todos los proyectos *BSD tenían como mascotas daemons8, mas exactamente una referencia a nuestro querido diablito beastie9, decidió poner como mascota oficial a Puffy10. Un bello Pez Globo, que no a todo el mundo le gusta ;) Fig 2. diablito, antigua mascota del proyecto OpenBSD Fig 3. Puffy, mascota actual del proyecto OpenBSD 8 Demonios, http://en.wikipedia.org/wiki/BSD_Daemon 9 Todo sobre beastie, http://beastie.com/ 10 Todo sobre puffy, http://en.wikipedia.org/wiki/Puffy_(mascot) ________________________________________________________________________________ 4.OpenBSD - Libre, funcional y seguro - 6/16 ¿QUE ES OPENBSD? - Fernando Quintero (aka nonroot), http://www.openbsdcolombia.org Puedes encontrar mas dibujos relacionados con OpenBSD en: http://www.openbsd.org/art1.html 4.5. Seguridad OpenBSD se considera uno de los Sistemas Operativos mas seguros que existen en el mundo (al menos conocido ;). La diferencia con otras distribuciones de BSD o de otros sistemas operativos como Linux, es que OpenBSD hace un énfasis especial en la auditoria del código fuente de sus componentes principales, todo el código considerado critico ha sido chequeado para encontrar y reparar posibles problemas de seguridad, adicionalmente a estos se les ha integrado criptografía fuerte, estamos hablando de cosas como IPSEC, SSL y SSH, lo que hacen que nuestro sistema operativo luzca mucho mas robusto y seguro que cualquier otro. Pero como todos sabemos tendrá uno que otro problema de seguridad importante que habrá que solucionar. Para eso existen los parches. Los parches son trozos de código que se le agregan al código oficial para crear una nueva versión del software vulnerable quitándole o remediándole las partes afectadas. OpenBSD no distribuye parches en formato binario como lo hacen otras distribuciones (Linux, Solaris, etc), lo que si hace es hacer publico los errores 11 y los parches correspondientes, dejando a voluntad de cada uno el aplicar o no, el parche a su equipo. Aplicar el parche no es un proceso simple para alguien que recién comienza en este mundo, sin embargo no es algo imposible de hacer. Lo que tendrás que hacer es descargarte el parche (código) de la web de erratas (correcciones) y aplicarlo como indica en tu árbol de fuentes (el código fuente de tu OpenBSD – src.tar.gz – sys.tar.gz ). El proceso de aplicar un parche es muy lento, nos toma mucho tiempo ya que implica que recompilemos (rebuild) el sistema y muchas veces nos obliga a recompilar el núcleo. Como lo dijimos no es un proceso sencillo, así que de esto hablaremos en el futuro. Tambien podemos aplicar parches binarios con diferentes técnicas NO oficiales, pero que en algún momento nos pueden ahorrar mucho tiempo. 5. Usuario final / Aplicaciones El tema de las aplicaciones no es tan complejo si vienes de un mundo UNIX, si vienes de un mundo Windows, entonces deberás entender que la mayoría de aplicaciones para sistemas UNIX han sido generadas por el proyecto GNU12. El proyecto GNU busca crear un S.O. totalmente libre y su director es el señor Richard Stallman (RMS), SI, el mismo que fundó en 1984 la Free Software Fundation13 – Fundación para el Software Libre. Como finalmente las aplicaciones GNU en su mayoría fueron integradas con el núcleo Linux, muchas personas que desarrollan código se han visto atraídas a programar en estas plataformas, por lo tanto mucho del software libre o nó que se desarrolla en la actualidad esta trabajado para y desde Linux. ¿Entonces que pasa con los sistemas BSD? Muy buena pregunta, las personas que trabajamos con sistemas operativos BSD por ejemplo OpenBSD usamos aplicaciones del proyecto GNU, aplicaciones que por sus características de 11 Página de errores, http://www.openbsd.org/errata.html 12 Proyecto GNU, http://www.es.gnu.org/ 13 Fundación para el Software Libre, http://www.fsf.org ________________________________________________________________________________ 5.Usuario final / Aplicaciones 7/16 ¿QUE ES OPENBSD? - Fernando Quintero (aka nonroot), http://www.openbsdcolombia.org potabilidad permiten que puedan ser “migradas” fácilmente a otros sistemas operativos incluso con otros kernels. No estoy diciendo con esto que entonces todas las aplicaciones que usa OpenBSD son del proyecto GNU, estoy diciendo que muchas de las herramientas y aplicaciones son del proyecto GNU, pero otras tantas son software libre de otras personas o de otras compañías y otro tanto son aplicaciones nativas de BSD desarrolladas por la Universidad de Berkeley o por cualquiera de las comunidad BSD existentes. Con esto debes entender que quizás la aplicación favorita en tu Windows o Linux no exista tal y como la conoces en OpenBSD, siendo mucho mas pesimista puede ni siquiera existir. Pero no nos desanimemos, para lo que nosotros hacemos, nuestras labores diarias, nuestros campos de investigación es muy probable que encontremos una herramienta adecuada para usar bajo OpenBSD. OpenBSD usa paquetes y ports. 5.1. Paquetes Son aplicaciones que ya fueron compiladas para una plataforma especifica y se pueden instalar usando un simple comando. Por ejemplo: #pkg_add -v mozilla-firefox-1.5.0.7.tgz Esto instalará la aplicación firefox en nuestro sistema en menos de 2 minutos ;) el comando pkg_add hará todo el trabajo pesado de verificar si las dependencias se cumplen y si el sistema puede o no recibir la aplicación (incompatibilidades y otras cosas). Observe que el nombre de los paquetes termina en .tgz , para los que vienen del mundo UNIX sabrán que esta extensión esta asociada normalmente a archivos con código fuente. Es muy fácil confundirnos por esto, pero para eso tenemos el comando file. #file mozilla-firefox-1.5.0.7.tgz este comando me dirá si ese archivo es un paquete para OpenBSD o es un archivo que contiene código fuente. Recuérdalo! Los paquetes son liberados junto con la release oficial, así que desde el sitio oficial de OpenBSD podemos descargarnos los paquetes disponibles. No esperes encontrar allí todas las aplicaciones del mundo, creo que en este momento deben ir por unas 3500 aplicaciones disponibles. El sitio es: ftp://ftp.openbsd.org/pub/OpenBSD/4.0/packages/i386 Otra cosa que debes aprender es a diferenciar los nombres de los paquetes, con el tiempo entenderás cual es el paquete que necesitas y como se llama ;) 5.2. Ports (también llamados portes) Son archivos de texto simple, que tienen las indicaciones de como se debe descargar un paquete, como se debe parchar y como se debe compilar en tu sistema para luego crear un paquete. Son los que permiten “portar” una aplicación de una plataforma a otra o de un sistema operativo a otro. Recurriremos a los ports cuando no tengamos la aplicación que necesitamos en un paquete o queramos compilar nuestra aplicación con unas opciones especificas. ________________________________________________________________________________ 5.Usuario final / Aplicaciones 8/16 ¿QUE ES OPENBSD? - Fernando Quintero (aka nonroot), http://www.openbsdcolombia.org Los ports permiten que se use software de terceros en OpenBSD sin traumatismos, solo basta con ingresar a un directorio (/usr/ports), buscar el port deseado y luego ejecutar las instrucciones para que el paquete sea descargado automáticamente desde el Internet, sea parchado si es necesario y sea compilado e instalado. En pocos minutos tendremos una aplicación descargada desde el sitio oficial corriendo en OpenBSD. Las personas que hacen los ports son miembros de la comunidad (maintainers) que tienen mucha experiencia con compilación de software y otras cuestiones técnicas de las que no hablaré en este momento. Con todos ellos te puedes comunicar en el momento en que ingresas a las listas de correo oficiales de OpenBSD. Página con listas de correo oficiales: http://www.openbsd.org/mail.html Un ejemplo de instalación de un port seria: #cd /usr/ports #make search key=”xmms” #cd audio/xmms #make install clean Ingresamos al directorio de los ports, buscamos una aplicación que tenga como nombre xmms para ubicar la ruta de ports hasta ella, y ejecutamos los comandos para instalar. Si no tienes el directorio /usr/ports es porque aún no has descargado “el árbol de ports” que es como se le conoce a este directorio donde están alojados todos los ports. Para descargarlo usa el mismo enlace de donde bajaste las fuentes del kernel, userland y X11. No te acuerdas? (recuerda cambiar 4.0 por 4.1 cuando cambie la RELEASE) ftp://ftp.openbsd.org/pub/OpenBSD/4.0/ 6. Forma de trabajo La forma en que OpenBSD funciona desde mi punto de vista es la siguiente. 6.1. Core Team ( el equipo núcleo, los tesos) Hay un coordinador general (Theo de Raadt) y un grupo de miembros oficiales (todos los que tienen @openbsd.org) que son los que hacen la parte pesada del asunto, mantener la distribución OpenBSD viva y en constante mejoramiento. Todo se trabaja por medio de las listas de correo oficiales y por medio del CVS, para los que no sepan el CVS es la forma en la que trabajan muchos, si no todos los proyectos grandes de software libre, consiste en tener en un servidor los documentos originales y cada miembro o cada participante puede descargar una copia local, la cual modificará y adaptará según el desarrollo previsto y luego volverá a subir al repositorio original, de esta forma varias personas desde diferentes partes del mundo podrán trabajar en simultaneo sobre el mismo código del proyecto. Cualquier persona que tenga un navegador o un cliente CVS (en consola o no) puede descargar la información del CVS, mas no puede subir si no tiene los privilegios necesarios. Si alguien quiere monitorear como va el proceso de desarrollo, conseguir nuevas características, estar informado de los últimos cambios, etc, etc. Lo que hace es visitar el CVS y conseguir lo que necesite. http://www.openbsd.org/cgi-bin/cvsweb/ ________________________________________________________________________________ 6.Forma de trabajo 9/16 ¿QUE ES OPENBSD? - Fernando Quintero (aka nonroot), http://www.openbsdcolombia.org 6.2. Hombres de confianza Las personas que pueden subir código se llaman commiters, son los que pueden hacer “commits”, los que tienen privilegios para poder subir y cambiar información en el servidor CVS. 6.3. Mantenedores Los maintainers son los encargados de algún port, o sea los responsables de que el port se mantenga actualizado y pueda ser usado por toda la comunidad OpenBSD. No necesariamente el maintainer es un commiter (tiene acceso al CVS), por lo que para subir sus cambios necesita la aprobación de un commiter. 6.4. Colaboradores Los colaboradores son todos aquellos que prestan sus servicios al proyecto OpenBSD, desde los que simplemente escriben documentación, hasta los que tienen servidores como replica de los sitios oficiales, hacen traducciones, mantienen la WEB, las listas de correo y otras cuantas funciones que son necesarias dentro del equipo OpenBSD. 6.5. Usuarios BSD Los usuarios OpenBSD, son los que así como tu o como yo, usamos el Sistema Operativo, reportamos fallos, hacemos requerimientos de nuevas características, defendemos el S.O. (ver mas sobre defensa), programamos y tratamos de crear comunidades en beneficio de todos. 6.6. Usuarios finales El resto son usuarios finales, todos aquellos que se benefician directamente del trabajo de cada uno de los anteriores y que son la razón por la cual todo el resto de personas de la comunidad OpenBSD se toma el trabajo de hacer lo que hace. Todos (core, commiters, maintainers, usuarios) estos en conjunto forman lo que se llama LA COMUNIDAD OPENBSD. ! Bienvenid@! 7. Activismo No pensemos en activismo como protestas, manifestaciones, guerras y todo eso. Pensemos en activismo como defender la filosofía de una causa. El punto es, ¿defenderla como? IMHO (En mi humilde opinión) Theo de raadt y el core de OpenBSD son un grupo activista defendiendo ideas de libertad en el Software. Si pensamos bien al fin de cuentas el movimiento de Software Libre tiene un trasfondo político y social. Se lucha por los intereses de muchos, contra los intereses de unos pocos, pero que son los que tienen el dinero y el poder. Lean que no escribí la fuerza, porque en mi forma de pensar, la fuerza esta del otro lado, en la mayoría. El equipo OpenBSD se ha caracterizado por ser un grupo “revoltoso” en el sentido que no se calla nada cuando lo tiene que decir. Que muchas veces no publica las correcciones de software a terceros de aposta, que muchas veces borran código del árbol oficial por no tener licencias que ellos acepten. Todo el mundo tiene sus normas y OpenBSD no es la excepción. ________________________________________________________________________________ 7.Activismo 10/16 ¿QUE ES OPENBSD? - Fernando Quintero (aka nonroot), http://www.openbsdcolombia.org OpenBSD después de cada release ofrece al púbico una dedicación de esa release. Casi siempre con temas alusivos al software o algo que lo relacione. Muchas de estas dedicaciones van contra grandes multinacionales de software, hardware o contra pequeñas compañías que no creen en la libertad, ni de hardware, ni de software. Esta es una muestra del activismo de OpenBSD, quizás no es muy significativo para muchos, quizás no se considere agresivo, pero lo que ha mostrado la historia es que muchas de estas “dedicatorias” han logrado cambios significativos en la forma de pensar de muchos, haciéndoles entender que el compartir es la única forma de lograr hacer cosas mejores y mas grandes. También tras cada release, OpenBSD libera una canción, esa canción se puede descargar desde el sitio oficial en formato MP3 u OGG y obviamente esta relacionada con la dedicatoria. Los invito a que lean las dedicatorias, las letras de las canciones y como no!, que las escuchen! http://www.openbsd.org/lyrics.html 8. Documentación / Ayuda Una pregunta que me surgió cuando empece a trabajar con OpenBSD fué, ¿en realidad existe una comunidad dispuesta a colaborarme?, ¿existen grupos de usuarios?, ¿existen manuales, guías, tutoriales?, la respuesta a todos estos interrogantes me la dio el tiempo. En un principio pareciera que lo único que hay de documentación en Internet es sobre Windows y Linux, pero escarbando un poco mas pude encontrar que hay comunidades activas trabajando en pro de los sistemas BSD y como no, de nuestro querido OpenBSD. Si bien es cierto que no es mucha la documentación comparada a la que se encuentra disponible en otros sistemas operativos, podemos encontrar guías completas como la F.A.Q oficial del proyecto que contiene mucha información que nos puede servir en un inicio. También tenemos las páginas del manual (man pages) de cada uno de los comandos o de los archivos que necesitemos para configurar las cosas y las listas de correo oficiales donde si sabes preguntar encontrarás la ayuda que buscas. Algo que es cierto y que hay que decirlo abiertamente es que no existe mucha documentación en español y por cosas del destino la documentación oficial del proyecto dejo de traducirse al idioma español, así que en este momento se encuentra algo desactualizada - aprovecho para invitar a todos los que quieran unirse a la tarea de actualizar el sitio oficial en español, como también todos los proyectos relacionados con OpenBSD (OpenSSH, OpenNTPD, OpenRIP, etc) – sin embargo la información que hay traducida gracias a muchos compañeros que han hecho un gran esfuerzo por llevarla hasta el punto donde se encuentra es valiosa para todos aquellos que apenas comienzan y no pueden leer documentos en ingles, francés u otros idiomas donde se encuentra información disponible. Las formas de conseguir información que te ayude a crecer en el mundo BSD pueden ser: ● Páginas WEB informativas ● Listas de correo, soporte a usuario ● Documentación, manuales, tutoriales, etc (PDF, HTML, ODT, ETC) ● Foros, tertulias, discusiones ● Chats, IRC, chats web Cada una de estas formas tiene sus ventajas y desventajas, mencionemos algunas: ________________________________________________________________________________ 8.Documentación / Ayuda 11/16 ¿QUE ES OPENBSD? - Fernando Quintero (aka nonroot), http://www.openbsdcolombia.org Páginas WEB informativas Generalmente son los sitios donde se publica información estática que no cambia mucho con el tiempo, a excepción de los portales que casi siempre están cambiando pero con noticias. Nos sirve para tener ideas claras de lo que hacen los proyectos y las comunidades en sí, como también para estar enterados de las nuevas noticias y eventos que ocurran en torno a estas comunidades. Listas de Correo, soporte a usuario Dependiendo del carácter de la lista de correo, podremos usarla como un medio de auxilio o no. La mayoría de listas de correo son de soporte a usuario, en ellas puedes preguntar lo que quieras referente a un tema enviando un correo electrónico a la dirección de la lista y todos los que estén inscritos en la misma recibirán tu correo, de igual forma una vez alguien responda, todos podrán leer la respuesta. Esta es una de las formas más rápida de solucionar inconvenientes, eso si, mientras el volumen de correos diarios no sea exagerado se podrá disfrutar de las conversaciones con los miembros de la lista. Documentación Este es el talón de aquiles de las comunidades, aunque no lo parezca documentar es una de las cosas mas complicadas que hay, sentarse a escribir y pensar en como un documento le puede llegar a alguien, que lo entienda tal y cual lo pensaste no es tan fácil. La mayoría de comunidades no hacen mucho trabajo por escribir documentación o traducirla, puede ser porque no se vean avocados a esto o simplemente por pereza ;) Muchos deciden aprender y seguir aprendiendo, pero nunca piensan en todos los que vienen atrás. La idea de una comunidad es hacerle la vida menos complicada a todos lo que se inician, si todos pensáramos así se verían resultados mas grandes en menos tiempo. Pronto vas a ver como alguien a quien le enseñaste los primeros comandos en un UNIX, ya esta asegurando redes y estudiando temas mucho mas avanzados sin ayuda, de eso se trata no? Foros Los foros tienen una ventaja, son discusiones que no se hacen en tiempo real, pero que permiten llevar un historial organizado de las discusiones por así llamarlas. Estas discusiones son enlazadas desde diferentes sitios de Internet y desde diferentes buscadores como google, lo que permite que un usuario que requiera cierta información pueda llegar a un tema determinado en un foro y así resolver sus dudas. La actividad en los foros no es muy alta comparada con la lista de correo, pero es un medio de comunicación necesario para todos aquellos que no disponen de correos electrónicos o simplemente no tienen tiempo para redactar un email. Chats, IRC Los sistemas de charla en tiempo real son muy útiles cuando necesitamos resolver una duda en segundos. El problema es que debemos contar con la suerte de encontrarnos a alguien dentro de nuestro salón de conversación en el momento en que lo necesitemos. Una desventaja también es que casi siempre es requerida una aplicación cliente para conectarse a un sistema como el I.R.C. Y por ultimo otra gran desventaja es que los sistemas de chats permiten que las personas se pongan a conversar sobre cosas ajenas a la comunidad, lo que fortalecerá seguramente las relaciones interpersonales de los participantes, PERO no permitirá que se avance en el desarrollo de nueva documentación o de proyectos de desarrollo. Como puedes leer son muchas las formas de conseguir información, lo importante es no perder el ________________________________________________________________________________ 8.Documentación / Ayuda 12/16 ¿QUE ES OPENBSD? - Fernando Quintero (aka nonroot), http://www.openbsdcolombia.org enfoque y estar siempre dispuesto a preguntar y responder cuando se tenga la suficiente confianza y conocimiento para hacerlo. Voy a poner unos enlaces aquí disponibles para que los consultes y aprendas un poco mas: Sitios Web en español: http://www.openbsd.org/es/ (sitio web oficial desactualizado) http://es.wikipedia.org/wiki/OpenBSD/ http://www.openbsdcolombia.org/ http://dhobsd.pasosdejesus.org/ http://www.openbsd.com.mx/ http://www.bsdes.net/ http://www.bsd.org.ve/ Documentación en español: http://structio.sourceforge.net/guias/ http://groups.google.com.mx/group/OpenBSD-Colombia/ Listas de correo en español: http://groups.google.com.mx/group/OpenBSD-Colombia/ http://groups.google.com.mx/group/OpenBSD-Mexico/ http://www.bsdes.net/mailman/listinfo/openbsd/ Chats, IRC: Servidor: irc.freenode.net Canal: #openbsd.mx, #openbsdcolombia 9. Defendiendo OpenBSD Estas notas las he sacado de un documento en ingles, no es una traducción textual, es una adaptación de lo que leí. Si quieres leer el documento original, por favor ingresa a: http://www.monkey.org/openbsd/advocating-openbsd.html El termino “advocating” en nuestro lenguaje lo tomamos como la forma de hacerle publicidad, hablando y defendiendo porque usar un sistema operativo. En nuestro caso OpenBSD. El autor original dice que esta forma de hablar de OpenBSD puede hacer que mas personas se interesen, que es justo lo que buscamos para poder hacer crecer nuestra comunidad. ________________________________________________________________________________ 9.Defendiendo OpenBSD 13/16 ¿QUE ES OPENBSD? - Fernando Quintero (aka nonroot), http://www.openbsdcolombia.org Ten en cuenta las siguientes cosas cuando empieces a usar el sistema operativo y volverte parte de la comunidad, no queremos que en vez de ayudar, salgas perjudicando la imagen que tienen las comunidades BSD. 1. Mantente calmado Si alguien dice algo malo acerca de OpenBSD no es motivo para pelear, respira profundo 10 (2) veces y continua con lo que haces, después de todo solo son bits y hardware. 2. No lo tomes de manera personal Intenta que no te importe lo que dicen sobre el sistema operativo OpenBSD, si alguien quiere ofenderte u ofender a algún usuario BSD, puede estar buscando solo llamar la atención, no caigas en su juego. 3. Ignora los flames (mensajes hirientes) Muchas veces te encontraras con personas que a través de una lista de correo, un foro o un chat quieren ofenderte. No le sigas el juego, nunca respondas a un mensaje de estos. La pelea acabará antes de comenzar. 4. Responde con argumentos Si alguien dice algo incorrecto sobre OpenBSD, puede estar haciéndolo sin intención. Respóndele con la verdad, argumentando con material real o con hechos reales. Por favor evita responder a cosas sobre las cuales no tienes idea. Tampoco repliques rumores o malos entendidos. 5. OpenBSD no es perfecto Puede ser que encuentres un problema de seguridad o que alguien conocido lo haga, sigue el procedimiento, si puedes ayudar a resolverlo hazlo!, si no, comunícate con el maintainer oficial o la persona responsable y permite que el problema se solucione lo antes posible. !Deja de quejarte o de reírte y actúa! 6. No hables de otros Sistemas Operativos Por favor no caigas en el juego de entrar en discusiones sin sentido acerca de cual S.O. es mejor. Si tienes pruebas (argumentos) sobre un hecho en particular déjalo saber y explícalo de la manera mas diplomática que puedas. Evita las guerras de Sistemas Operativos. 7. No insultes a ninguna persona porque usa otro sistema operativo NUNCA 8. Bill Gates no es el diablo, Linux no es el enemigo Si bien pueden existir indicios de que Microsoft no es la compañía honesta que todos creen, no pienses en ella como el enemigo, es mas, no pienses en ella. Si bien pueden haber indicios de que las comunidades Linux y la GPL no son tan libres como se proclaman, no pienses en ellas como el enemigo, es mas, no pienses en ellas. 9. No nos estamos tomando el mundo No hay razones para ofender a alguien por decir que muchas mas personas usan LINUX o WINDOWS que el sistema operativo OpenBSD, quizás esto sea real, el hecho es que esto no nos debe de importar y no debemos entrar en discusiones de este tipo. La meta no es tener mayor mercado, la meta no es ser el sistema operativo mas popular, la meta es resolver problemas y divertirnos, así solo seamos unos pocos. 10. OpenBSD NO puede reemplazar Windows Windows tiene aplicaciones que OpenBSD no tiene y que quizás nunca tenga. Esto no debe ser motivo para enojarse e insultar a otras personas, si quieres hacer algo por la comunidad BSD, escribe código, documenta, resuelve problemas y deja de pelear. ________________________________________________________________________________ 9.Defendiendo OpenBSD 14/16 ¿QUE ES OPENBSD? - Fernando Quintero (aka nonroot), http://www.openbsdcolombia.org 11. Evita los temas cruzados Muchas veces se entran en discusiones sobre sistemas operativos y entran defensores de parte y parte, esto esta bien mientras las discusiones se mantengan en listas de correo, foros y chats creados para estos fines. Por favor NUNCA repliques estas discusiones a listas diferentes donde hay personas concentradas en otros temas y quieren evitar este tipo de mensajes. 12. Mantente en los grupos OpenBSD NO vayas a buscar pelea a otras comunidades u otros grupos de interés diferentes a los tuyos (tampoco busques pelea), a muchas personas no les gusta que vayan diciendo cosas por decirlas. Evita entrometerte en temas diferentes a los de nuestra comunidad. Y si lo haces, no lo hagas en nombre de la comunidad a la que pertenezcas, hazlo a titulo personal y asumiendo toda la responsabilidad del caso, mantén la imagen BSD limpia. 10. Enlaces relacionados Sobre UNIX: http://es.wikipedia.org/wiki/UNIX http://es.wikipedia.org/wiki/BSD Sobre OpenBSD: http://www.openbsd.org/ http://www.openbsd.org/es/ http://www.at.openbsd.org/orders.html http://www.openbsd.org/donations.html http://www.openbsdcolombia.org/ http://www.openbsd.com.mx/ http://www.openbsd-br.org/ http://es.wikipedia.org/wiki/OpenBSD http://www.openbsd.org/lyrics.html http://www.openbsd.org/art1.html Sitios interesantes: http://structio.sourceforge.net/guias/ http://www.freebsd.org/doc/es_ES.ISO8859-1/articles/explaining-bsd/article.html http://openbsd.bsdes.net/ http://openbsdbinpatch.sourceforge.net/ http://www.theos.com/deraadt/ http://solobsd.org/modules/news/index.php?storytopic=6&start=10 ________________________________________________________________________________ 10.Enlaces relacionados 15/16 ¿QUE ES OPENBSD? - Fernando Quintero (aka nonroot), http://www.openbsdcolombia.org http://en.wikipedia.org/wiki/Puffy_(mascot) http://en.wikipedia.org/wiki/BSD_Daemon http://beastie.com/ http://bsd.ee/~olev/ ________________________________________________________________________________ 10.Enlaces relacionados 16/16