Sie sind auf Seite 1von 20

Qu es el software libre?

Definicin de software libre


La definicin de software libre estipula los criterios que se tienen que cumplir para que un
programa sea considerado libre. De vez en cuando modificamos esta definicin para
clarificarla o para resolver problemas sobre cuestiones delicadas. Ms abajo en esta pgina,
en la seccin Historial, se puede consultar la lista de modificaciones que afectan la definicin
de software libre.
Software libre es el software que respeta la libertad de los usuarios y la comunidad. A
grandes rasgos, significa que los usuarios tienen la libertad de ejecutar, copiar, distribuir,
estudiar, modificar y mejorar el software. Es decir, el software libre es una cuestin de
libertad, no de precio. Para entender el concepto, piense en libre como en libre
expresin, no como en barra libre. En ingls a veces decimos libre software, en lugar
de free software, para mostrar que no queremos decir que es gratuito.
Promovemos estas libertades porque todos merecen tenerlas. Con estas libertades, los
usuarios (tanto individualmente como en forma colectiva) controlan el programa y lo que este
hace. Cuando los usuarios no controlan el programa, decimos que dicho programa no es
libre, o que es privativo. Un programa que no es libre controla a los usuarios, y el
programador controla el programa, con lo cual el programa resulta ser un instrumento de
poder injusto.
Un programa es software libre si los usuarios tienen las cuatro libertades esenciales:
La libertad de ejecutar el programa como se desea, con cualquier propsito (libertad
0).
La libertad de estudiar cmo funciona el programa, y cambiarlo para que haga lo
que usted quiera (libertad 1). El acceso al cdigo fuente es una condicin necesaria para
ello.
La libertad de redistribuir copias para ayudar a su prjimo (libertad 2).
La libertad de distribuir copias de sus versiones modificadas a terceros (libertad 3).
Esto le permite ofrecer a toda la comunidad la oportunidad de beneficiarse de las
modificaciones. El acceso al cdigo fuente es una condicin necesaria para ello.
Un programa es software libre si otorga a los usuarios todas estas libertades de manera
adecuada. De lo contrario no es libre. Existen diversos esquemas de distribucin que no son
libres, y si bien podemos distinguirlos en base a cunto les falta para llegar a ser libres,
nosotros los consideramos contrarios a la tica a todos por igual.
En el resto de esta pgina tratamos algunos puntos que aclaran qu es lo que hace que las
libertades especficas sean adecuadas o no.

La libertad para distribuir (libertades 2 y 3) significa que usted tiene la libertad para
redistribuir copias con o sin modificaciones, ya sea gratuitamente o cobrando una tarifa por la
distribucin, a cualquiera en cualquier parte. Ser libre de hacer esto significa, entre otras
cosas, que no tiene que pedir ni pagar ningn permiso para hacerlo.
Tambin debe tener la libertad de hacer modpificaciones y usarlas en privado para su propio
trabajo o pasatiempo, sin siquiera mencionar que existen. Si publica sus cambios, no debe
estar obligado a notificarlo a nadie en particular, ni de ninguna manera en particular.
La libertad de ejecutar el programa significa que cualquier tipo de persona u organizacin es
libre de usarlo en cualquier tipo de sistema de computacin, para cualquier tipo de trabajo y
finalidad, sin que exista obligacin alguna de comunicarlo al programador ni a ninguna otra
entidad especfica. En esta libertad, lo que importa es el propsito del usuario, no el
del programador. Usted como usuario es libre de ejecutar el programa para alcanzar sus
propsitos, y si lo distribuye a otra persona, tambin esa persona ser libre de ejecutarlo para
lo que necesite; usted no tiene el derecho de imponerle sus propios objetivos a la otra
persona.
La libertad de ejecutar el programa como se desea significa que al usuario no se le prohbe o
no se le impide hacerlo. No tiene nada que ver con el tipo de funcionalidades que el
programa posee ni con el hecho de que el programa sea o no sea til para lo que se quiere
hacer.
La libertad de redistribuir copias debe incluir las formas binarias o ejecutables del programa,
as como el cdigo fuente, tanto para las versiones modificadas como para las que no lo
estn. (Distribuir programas en forma de ejecutables es necesario para que los sistemas
operativos libres se puedan instalar fcilmente). Resulta aceptable si no existe un modo de
producir un formato binario o ejecutable para un programa especfico, dado que algunos
lenguajes no incorporan esa caracterstica, pero debe tener la libertad de redistribuir dichos
formatos si encontrara o programara una forma de hacerlo.
Para que las libertades 1 y 3 (realizar cambios y publicar las versiones modificadas) tengan
sentido, usted debe tener acceso al cdigo fuente del programa. Por consiguiente, el acceso
al cdigo fuente es una condicin necesaria para el software libre. El cdigo fuente
ofuscado no es cdigo fuente real y no cuenta como cdigo fuente.
La libertad 1 incluye la libertad de usar su versin modificada en lugar de la original. Si el
programa se entrega unido a un producto diseado para ejecutar versiones modificadas por
terceros, pero rechaza ejecutar las suyas prctica conocida como tivoizacin o
bloqueo, o (segn la terminologa perversa de quienes lo practican) arranque seguro,

la libertad 1 se convierte en una vana simulacin ms que una realidad prctica. Estos
binarios no son software libre, aun cuando se hayan compilado a partir de un cdigo fuente
libre.
Una manera importante de modificar el programa es agregndole subrutinas y mdulos libres
ya disponibles. Si la licencia del programa especifica que no se pueden aadir mdulos que
ya existen y que estn bajo una licencia apropiada, por ejemplo si requiere que usted sea el
titular del copyright del cdigo que desea aadir, entonces se trata de una licencia demasiado
restrictiva como para considerarla libre.
La libertad 3 incluye la libertad de publicar sus versiones modificadas como software libre.
Una licencia libre tambin puede autorizar otras formas de publicacin; en otras palabras, no
tiene que ser una licencia con copyleft. No obstante, una licencia que requiera que las
versiones modificadas no sean libres, no se puede considerar libre.
Para que estas libertades sean reales, deben ser permanentes e irrevocables siempre que
usted no cometa ningn error; si el programador del software tiene el poder de revocar la
licencia, o de aadir restricciones a las condiciones de uso en forma retroactiva, sin que haya
habido ninguna accin de parte del usuario que lo justifique, el software no es libre.
Sin embargo, ciertos tipos de reglas sobre la manera de distribuir software libre son
aceptables, cuando no entran en conflicto con las libertades principales. Por ejemplo,
el copyleft , definido muy resumidamente, es la regla en base a la cual, cuando redistribuye el
programa, no se puede agregar restricciones para denegar a los dems las libertades
principales. Esta regla no entra en conflicto con las libertades principales, ms bien las
protege.
En el proyecto GNU usamos el copyleft para proteger legalmente las cuatro libertades para
todos. Creemos que existen razones importantes por las que es mejor usar el copyleft. De
todos modos, el software libre sin copyleft tambin es tico. Vase en categoras del software
libre una descripcin de la relacin que existe entre el software libre, software con
copyleft y otros tipos de software.
Software libre no significa que no es comercial. Un programa libre debe estar disponible
para el uso comercial, la programacin comercial y la distribucin comercial. La programacin
comercial de software libre ya no es inusual; el software libre comercial es muy importante.
Puede haber pagado dinero para obtener copias de software libre, o puede haber obtenido
copias sin costo. Pero sin tener en cuenta cmo obtuvo sus copias, siempre tiene la libertad
de copiar y modificar el software, incluso de vender copias.

Si una modificacin constituye o no una mejora, es un asunto subjetivo. Si su derecho a


modificar un programa se limita, bsicamente, a modificaciones que alguna otra persona
considera una mejora, el programa no es libre.
No obstante, eventuales reglas sobre cmo empaquetar una versin modificada son
aceptables si no limitan substancialmente su libertad para publicar versiones modificadas, o
su libertad para hacer y usar versiones modificadas en privado. As, es aceptable que una
licencia le obligue a cambiar el nombre de la version modificada, eliminar el logotipo o
identificar sus modificaciones como suyas. Son aceptables siempre y cuando esas
obligaciones no sean tan agobiantes que le dificulten la publicacin de las modificaciones.
Como ya est realizando otras modificaciones al programa, no le supondr un problema
hacer algunas ms.
Las reglas del tipo si pone a disposicin su versin de este modo, tambin debe hacerlo de
este otro modo tambin pueden ser, bajo la misma condicin, admisibles. Un ejemplo de
una regla admisible sera alguna que requiera que, si usted ha distribuido una versin
modificada y uno de los programadores anteriores le solicita una copia, usted deba
envirsela (tenga en cuenta que tal regla le sigue permitiendo optar por distribuir o no
distribuir su versin). Las reglas que obligan a suministrar el cdigo fuente a los usuarios de
las versiones publicadas tambin son admisibles.
Un problema particular se presenta cuando la licencia requiere que a un programa se le
cambie el nombre con el cual ser invocado por otros programas. De hecho este requisito
dificulta la publicacin de la versin modificada para reemplazar al original cuando sea
invocado por esos otros programas. Este tipo de requisitos es aceptable nicamente cuando
exista un instrumento adecuado para la asignacin de alias que permita especificar el
nombre del programa original como un alias de la versin modificada.
En algunos casos las normas de control de exportacin y las sanciones comerciales
impuestas por el Gobierno pueden limitar la libertad de distribuir copias de los programas a
nivel internacional. Los desarrolladores de software no tienen el poder de eliminar o pasar por
alto estas restricciones, pero lo que s pueden y deben hacer es rehusar imponerlas como
condiciones para el uso del programa. De este modo, las restricciones no afectarn las
actividades ni a las personas fuera de las jurisdicciones de tales Gobiernos. Por tanto, las
licencias de software libre no deben requerir la obediencia a ninguna norma de exportacin
que no sea trivial como condicin para ejercer cualquiera de las libertades esenciales.
La mera mencin de la existencia de normas de exportacin, sin ponerlas como condicin de
la licencia misma, es aceptable ya que esto no restringe a los usuarios. Si una norma de
exportacin es de hecho trivial para el software libre, ponerla como condicin no constituye

un problema real; sin embargo, es un problema potencial ya que un futuro cambio en la ley
de exportacin podra hacer que el requisito dejara de ser trivial y que el software dejara de
ser libre.
Una licencia libre no puede exigir la conformidad con la licencia de un programa que no es
libre. As, por ejemplo, si una licencia requiere que se cumpla con las licencias de todos los
programas que se usan, en el caso de un usuario que ejecuta programas que no son libres
este requisito implicara cumplir con las licencias de esos programas privativos, lo cual hace
que la licencia no sea libre.
Es aceptable que una licencia especifique la jurisdiccin de competencia o la sede para la
resolucin de conflictos, o ambas cosas.
La mayora de las licencias de software libre estn basadas en el copyright, y existen lmites
en los tipos de requisitos que se pueden imponer a travs del copyright. Si una licencia
basada en el copyright respeta la libertad en las formas antes mencionadas, es poco
probable que surja otro tipo de problema que no hayamos anticipado (a pesar de que esto
ocurre ocasionalmente). Sin embargo, algunas licencias de software libre estn basadas en
contratos, y los contratos pueden imponer un rango mucho ms grande de restricciones. Esto
significa que existen muchas maneras posibles de que tal licencia sea inaceptablemente
restrictiva y que no sea libre.
Nos resulta imposible enumerar todas las formas en las que eso puede suceder. Si una
licencia basada en un contrato restringe al usuario de un modo que no se puede hacer con
las licencias basadas en el copyright, y que no est mencionado aqu como legtimo,
tendremos que analizar el caso, y probablemente concluyamos que no es libre.
Cuando se habla de software libre, es mejor evitar usar trminos como regalar o
gratuito, porque dichos trminos implican que el asunto es el precio, no la libertad. Algunos
trminos comunes como piratera implican opiniones con las que esperamos no
concuerde. Vase un anlisis sobre el uso de esos trminos en nuestro artculo palabras y
frases confusas que vale la pena evitar. Tambin tenemos una lista de las traducciones
correctas de software libre a varios idiomas.
Por ltimo, tenga en cuenta que para interpretar criterios tales como los que se establecen en
esta definicin de software libre, se hace necesario un cuidadoso anlisis. Para decidir si una
licencia de software especfica es una licencia de software libre, la evaluamos en base a
estos criterios para determinar si concuerda tanto con el espritu de los mismos como con la
terminologa precisa. Si una licencia incluye restricciones inaceptables, la rechazamos, aun
cuando no hubiramos anticipado el problema en estos criterios. A veces los requisitos de

una licencia revelan una cuestin que hace necesaria una reflexin ms profunda, incluyendo
la discusin con un abogado, antes de que podamos decidir si el requisito es aceptable.
Cuando llegamos a una conclusin sobre una nueva cuestin, solemos actualizar estos
criterios para que resulte ms fcil ver por qu una cierta licencia puede o no ser calificada
como libre.
Si est interesado en saber si una licencia especfica est calificada como licencia de
software libre, consulte nuestra lista de licencias. Si la licencia que busca no est en la lista,
puede consultarnos envindonos un correo electrnico a <licensing@gnu.org>.
Si est considerando escribir una nueva licencia, por favor contacte a la FSF escribiendo a
esa direccin. La proliferacin de distintas licencias de software libre significa mayor esfuerzo
por parte de los usuarios para entenderlas; podemos ayudarle a encontrar una licencia de
software libre que ya exista y que satisfaga sus necesidades.
Si eso no fuera posible, si realmente necesita una nueva licencia, con nuestra ayuda puede
asegurarse de que la licencia sea realmente una licencia de software libre y evitar varios
problemas en la prctica.
Ms all del software
Los manuales de software deben ser libres por las mismas razones que el software debe ser
libre, y porque de hecho los manuales son parte del software.
Tambin tiene sentido aplicar los mismos argumentos a otros tipos de obras de uso prctico;
es decir, obras que incorporen conocimiento til, tal como publicaciones educativas y de
referencia. La Wikipedia es el ejemplo ms conocido.
Cualquier tipo de obra puede ser libre, y la definicin de software libre se ha extendido a una
definicin de obras culturales libres aplicable a cualquier tipo de publicacin.
Cdigo abierto?
Otro grupo ha comenzado a usar el trmino cdigo abierto (del ingls open source) que
significa algo parecido (pero no idntico) a software libre. Preferimos el trmino software
libre porque una vez que ya se sabe que se refiere a la libertad y no al precio, evoca la idea
de libertad. La palabra abiertonunca se refiere a la libertad.

Filosofa del Proyecto GNU

Grabaciones de los discursos de Richard Stallman se encuentran en audio-video.gnu.org.


Software libre significa que los usuarios del software tienen libertad (la cuestin no es el
precio). Desarrollamos el sistema operativo GNU para que los usuarios pudiesen tener
libertad en sus tareas informticas.
En concreto, el software libre implica que los usuarios tienen las cuatro libertades esenciales:
(0) ejecutar el programa, (1) estudiar y modificar el cdigo fuente del programa, (2)
redistribuir copias exactas y (3) distribuir versiones modificadas.
El software difiere de los objetos materiales (como las sillas, los bocadillos o la gasolina) en
el hecho de que se puede copiar y modificar mucho ms fcilmente. Estas posibilidades son
las que hacen que el software sea tan til, y creemos que tambin los usuarios de un
programa deben ser libres de aprovecharlas, no solo quien lo desarroll.
Para ms informacin, seleccione un apartado del men superior.
Tambin mantenemos una lista de los artculos ms recientes.
Licencias
El software que se publica debe ser software libre. Para que sea libre hay que publicarlo bajo
una licencia de software libre. Generalmente utilizamos la Licencia Pblica General de
GNU (GPL de GNU), pero eventualmente tambin utilizamos otras licencias de software libre.
Para el software de GNU usamos nicamente licencias que son compatibles con la GPL de
GNU.
La documentacin del software libre debe ser documentacin libre, para que se pueda
redistribuir y mejorar al igual que el software que describe. Para que la documentacin sea
libre, hay que publicarla bajo una licencia de documentacin libre. Generalmente utilizamos
la Licencia de Documentacin Libre de GNU (FDLde GNU), aunque a veces tambin
usamos otras licencias de documentacin libre.
Si usted ha comenzado a trabajar en un proyecto y no est seguro de qu licencia utilizar, en
la pgina Cmo elegir una licencia para su obra encontrar nuestras recomendaciones en
una gua fcil de seguir. Si nicamente quiere una lista con referencias, disponemos de una
pgina donde incluimos las licencias con copyleft que recomendamos.
Tenemos tambin una pgina donde se analiza el problema de la licencia BSD.
Recursos comunes para nuestras licencias de software

Contamos con una serie de recursos para ayudar a las personas a entender y usar nuestras
licencias:

Preguntas ms frecuentes sobre la GPL de GNU.


Cmo usar las licencias de GNU para su propio software.
Qu hacer si observa una infraccin de las licencias GPL, LGPL o FDL de GNU.
Listado de licencias para software libre
Publicar software libre cuando se trabaja en la universidad.
Por qu la FSF obtiene la cesin de los derechos de autor de sus colaboradores.
Logotipos de las licencias de GNU para utilizar en su proyecto.
Oficina de Licencias y Cumplimiento de la FSF [FSF Licensing & Compliance Lab].
Correo <licensing@fsf.org> para ayuda general con las licencias.
Licencia Pblica General de GNU
La Licencia Pblica General de GNU, llamada comnmente GPL de GNU, se usa para la
mayora de los programas de GNU y para ms de la mitad de los paquetes de software libre.
La ltima es la versin 3.

El texto de la Licencia Pblica General de GNU est disponible en los siguientes


formatos: HTML, texto simple, ODF, Docbook, Texinfo y LaTeX. Estos documentos no
estn maquetados para publicarlos por s solos sino que estn pensados para ser incluidos
en otro documento.
Gua rpida de la GPLv3.
Versiones anteriores de GPL de GNU
Licencia Pblica General Reducida de GNU
La Licencia Pblica General Reducida de GNU (LGPL de GNU) se usa para algunas pero
no para todas las bibliotecas de GNU. La ltima es la versin 3.

El texto de la Licencia Pblica General Reducida de GNU est disponible en los


siguientes formatos: HTML, texto simple, Docbook y Texinfo. Estos documentos no estn
maquetados para publicarlos por s solos sino que estn pensados para ser incluidos en
otro documento.
Por qu no debera usar la licencia LGPL para su prxima biblioteca.
Versiones anteriores de la LGPL de GNU.
Licencia Pblica General Affero de GNU

La Licencia Pblica General Affero esta basada en la GPL de GNU, pero contiene una
clusula adicional que permite a los usuarios interactuar con el programa licenciado a travs
de una red para recibir el cdigo fuente de ese programa. Recomendamos que se considere
utilizar la licencia AGPL de GNU para cualquier programa que vaya a ejecutarse a travs de
una red. La ltima es la versin 3.

El texto de la Licencia Pblica General Affero de GNU est disponible en los


siguientes formatos: HTML, texto simple, Dobbook, Texinfo y LaTeX. Estos documentos no
estn maquetados para publicarlos por s solos sino que estn pensados para incluirse en
otro documento.
Por qu la GPL Affero
Licencia de Documentacin Libre de GNU
La Licencia de Documentacin Libre de GNU es una forma de copyleft pensada para
manuales, libros de texto u otros documentos, para garantizar que todo el mundo tenga la
libertad de copiar y redistribuir la obra, con o sin modificaciones, de modo comercial o no
comercial. La ltima es la versin 1.3.

El texto de la Licencia de Documentacin Libre de GNU est disponible en varios


formatos: HTML, texto simple, Docbook, Texinfo y LaTeX. Estos documentos no estn
maquetados para publicarlos por s solos sino que estn pensados para ser incluidos en
otro documento.
Por qu los autores deberan usar la FDL de GNU.
Cmo usar la FDL de GNU para su documentacin.
Notas sobre el uso de la FDL de GNU.
Cmo emplear las funciones opcionales de la FDL de GNU.
Versiones anteriores de la FDL de GNU.
Excepciones a las licencias de GNU
Algunos programas de GNU tienen permisos adicionales o excepciones especiales a
trminos especficos en una de las principales licencias. Dado que algunos de estos
permisos o excepciones se usan frecuentemente o que suscitan muchas dudas por s
mismos, hemos empezado a coleccionarlos en nuestra pgina de excepciones.
URL de las licencias
Para enlazar a nuestras licencias, lo mejor es hacerlo apuntando a la ltima versin, es por
esto que las direcciones estndar comohttp://www.gnu.org/licenses/gpl.html no

tienen nmero de versin. Sin embargo, puede que en alguna ocasin quiera crear el enlace
a una versin especifica de la licencia. En esos casos puede usar las siguientes direcciones
[Saltar los enlaces]:
Licencia Pblica General de GNU (GPL)
GPLv3, GPLv2, GPLv1
Licencia Pblica General Reducida de GNU (LGPL)
LGPLv3, LGPLv2.1
Licencia Pblica General Affero de GNU (AGPL)
AGPLv3 de GNU (La primera versin de la Affero General Public License no es una
licencia de GNU, pero se dise con una finalidad muy similar a la licencia AGPL de GNU).
Licencia de Documentacin Libre de GNU (FDL)
FDLv1.3, FDLv1.2, FDLv1.1
Existen enlaces permanentes a los formatos alternativos disponibles para cada licencia en su
pgina respectiva. No existen versiones de cada una de las licencias en todos los formatos.
Si necesita un formato que no se encuentre disponible, por favor, envenos un correo .
Tambin est disponible la pgina de antiguas licencias .
Traducciones no oficiales
Legalmente hablando, slo la versin original (en ingls) de las licencias es la que especifica
realmente las condiciones de distribucin de los programas de GNU y los otros que las usan.
Pero para ayudar a la gente que no sabe ingls y mejorar la compresin de las licencias,
damos permiso para la publicacin de traducciones a otros idiomas siempre y cuando sigan
nuestra normativa para traducciones que no son oficiales:

Listado de traducciones que no son oficiales.


Cmo hacer una traduccin que no sea oficial.
Copias literales y distribucin
Los trminos estndar para el copyright de las pginas web de GNU ahora son los de
la licencia Creative Commons Atribucin-SinDerivadas 3.0 Estados Unidos de Amrica.
Solamos usar la siguiente nota (y para algunas pocas pginas todava la usamos): Verbatim
copying and distribution of this entire article are permitted worldwide, without royalty, in any
medium, provided this notice is preserved. [1] Traduccin no oficial.

Por favor tenga en cuenta el siguiente comentario de Eben Moglen sobre la licencia de copia
literal (verbatim license):
Nuestra intencin al emplear la frase verbatim copying in any medium (copia literal en
cualquier medio) no es poner el requisito de que se conserve el encabezado, el pie de
pgina u otros elementos de maquetacin en cualquier tipo de formato. Lo que s se requiere
es que se conserven los vnculos web en medios con hipervnculos o sin ellos (tales como
los que se ponen en las notas o alguna otra forma similar de URL escrita en medios que no
son HTML).
Listado de licencias para software libre

Listado de licencias para software libre


Si se est planteando escribir nuevas licencias, por favor contacte con la FSF escribiendo
a <licensing@fsf.org>. La proliferacin de distintas licencias de software incrementa
significativamente el esfuerzo de los usuarios para comprenderlas. Nosotros podemos
ayudarle a encontrar una licencia de software libre que ya exista y que se adapte a sus
necesidades.
Si no fuera posible, y necesitase una nueva licencia, con nuestra ayuda puede asegurarse
que la licencia sea de software libre y evitar varios problemas prcticos.
Qu es el copyleft?
copyleft es un mtodo general para hacer que un programa sea software libre y requerir que
todas las versiones modificadas y extendidas del programa sean tambin software libre.
El modo ms sencillo de hacer que un programa sea libre es ponerlo en el dominio pblico,
es decir, sin copyright. Esto permitir que la gente comparta el programa y sus mejoras, si as
lo desean. Pero tambin permitir que gente que no quiera cooperar pueda convertirlo
en software privativo. Pueden hacer cambios, todos los que deseen, y distribuir el resultado
como producto privativo. Los que reciban el programa en su forma modificada no poseern la
libertad que el autor original les dio debido a que el intermediario se la ha quitado.
En el Proyecto GNU, nuestra intencin es dar a todos los usuarios la libertad de redistribuir y
modificar el software de GNU. Si el intermediario pudiera coartar la libertad, podramos
contar con muchos usuarios, pero esos usuarios no tendran libertad. As, en vez de poner el
software de GNU bajo el dominio pblico, lo hacemos copyleft. El copyleft significa que
cualquiera que redistribuya el software, con o sin cambios, debe otorgar la libertad de

copiarlo, redistribuirlo o modificarlo. El copyleft garantiza que todos los usuarios conserven su
libertad.
El copyleft tambin proporciona un incentivo a otros programadores para unirse al software
libre. Software libre importante como el compilador C++ de GNU existe slo gracias a esto.
El copyleft tambin ayuda a los programadores que deseen contribuir
con mejoras al software libre, a obtener el permiso para hacerlo. Estos programadores
habitualmente trabajan para empresas o universidades que haran casi cualquier cosa para
obtener ms dinero. Un programador podra desear contribuir con sus cambios a la
comunidad, pero su empleador puede pretender hacer de esos cambios un producto de
software privativo.
Cuando le explicamos al empleador que es ilegal distribuir la versin mejorada del producto
salvo como software libre, el empresario normalmente decide publicarlo como software libre
en lugar de tirarlo a la basura.
Para hacer un programa copyleft, lo primero que hacemos es manifestar que est bajo
copyright. Luego aadimos las clusulas de distribucin, que son un instrumento legal para
otorgar a cualquiera el derecho de usar, modificar y redistribuir el cdigo del programa o de
cualquier programa derivado de ste, pero slo bajo la condicin de que no se cambien los
trminos de distribucin. De este modo, el cdigo y las libertades se vuelven legalmente
inseparables.
Los desarrolladores de software privativo emplean el copyright para quitar la libertad a los
usuarios; nosotros empleamos ese copyright para garantizar su libertad. Por esto cambiamos
el nombre copyright por copyleft [2].
Copyleft es un concepto general; hay muchos detalles que se pueden especificar para
explicarlo. En el Proyecto GNU, las clusulas especficas de distribucin que empleamos
estn contenidas en la Licencia Pblica General de GNU, la Licencia Pblica General
Reducida de GNU y la Licencia de Documentacin Libre de GNU.
La licencia utilizada se incluye en muchos manuales y en cada una de las distribuciones de
cdigo fuente de GNU.
La GPL de GNU se dise para que usted pueda aplicarla fcilmente a sus programas si es
el titular del copyright. Para hacerlo no tiene que modificar la GPL de GNU, slo poner avisos
en su programa que hagan referencia apropiada a la GPL de GNU. Por favor, tenga en
cuenta que si usa la GPL de GNU debe conservar el texto ntegro de la licencia. Es un todo

en conjunto; las copias parciales no estn permitidas (de igual modo para la LGPL, la AGPL y
la FDL).
Emplear los mismos trminos de distribucin para muchos programas diferentes facilita la
copia de cdigo entre ellos. Como todos poseen las mismas clusulas de distribucin, no hay
necesidad de pensar si los trminos son compatibles. La GPL Reducida incluye una clusula
que le permite alterar los trminos de distribucin de su programa adaptndolos a la GPL
ordinaria, para que pueda copiar cdigo e introducirlo en otro programa que est cubierto por
la GPL.
Licencias para otro tipo de obras
Creemos que el software y la documentacin que se publican deben ser software y
documentacin libres . Recomendamos que toda clase de trabajos educativos y obras de
referencia sean igualmente libres, utilizando para ello licencias de documentacin libre como
la Licencia de Documentacin Libre de GNU (FDL de GNU).
Para ensayos de opinin y artculos cientficos, recomendamos tanto la licencia Creative
Commons Atribucin-SinDerivadas 3.0 Estados Unidos de Amrica, como la simple licencia
verbatim copying only que citamos arriba.
Nosotros no tomamos ninguna posicin sobre si las obras artsticas o de entretenimiento
deban ser libres o no, pero si quiere hacer alguna obra libre, recomendamos la Free Art
License.
Notas de traduccin
[1] Traduccin no oficial: Se permite la copia literal y distribucin de este artculo en su
totalidad, en todo el mundo, sin regalas y en cualquier medio, siempre y cuando se conserve
esta nota.
[2] Se trata de un juego de palabras en ingls: right significa derecha, indica una direccin;
left significa izquierda e indica la direccin opuesta.

1. Introduccin
FreeBSD es un sistema operativo de tipo UNIX derivado de Berkeley Software Distribution.
Aunque FreeBSD y Linux parecen con frecuencia muy similares existen notables
diferencias:

1.

Linux es solamente un kernel. Las distribuciones (p.ej. Red Hat, Debian, Suse, etc)
disponen de instalador y de utilidades de usuario. En http://www.linux.org/dist se muestran
ms de 300 distribuciones distintas. Aunque por una parte tanta variedad proporcione la
mxima flexibilidad posible, la existencia de tantas distribuciones pone trabas a los usuarios
cuando tiene que aplicar su experiencia con una distribucin al usar otra diferente. Las
distribuciones no solamente se diferencian en la facilidad de instalacin o los programas que
incluyen; tambin hay diferencias en la estructura de directorios, las shells y gestores de
ventanas que ofrecen y el procedimiento de instalacin o parcheo de software.
FreeBSD es un sistema operativo completo (kernel y utilidades) en el que se respeta la
herencia del desarrollo original deUNIX.[1] Dado que es el mismo grupo de ingeniera de
releases el que controla tanto el kernel como las utilidades, la probabilidad de
incompatibilidades entre bibliotecas es menor. El equipo de seguridad gestiona de un modo
ms rpido las vulnerabilidades de seguridad. Si quiere conocer las nuevas utilidades que se
van aadiendo al kernel solo debe seguir un fichero, las Release Notes, que estn en la
pgina principal de FreeBSD.

2.

FreeBSD tiene un grupo de desarrollo grande y bien organizado, lo que asegura que
los cambios se implementen de una forma rpida pero controlada. Hay varios miles de
programadores que aportan cdigo regularmente, pero slo unos 300 de ellos tienen lo que
se denomina commit bit, con el que pueden aplicar cambios directamente en el kernel, las
utilidades y la documentacin. El grupo de ingeniera de releases se encarga del control de
calidad de las releases, mientras que el equipo de seguridad se responsabiliza de los
problemas de seguridad. Adems de estos grupos hay otro denominado Core Team,
compuesto por ocho desarrolladores veteranos que supervisan las directrices de desarrollo
del proyecto como un todo.
Los cambios que se hacen en el kernel de Linux, en cambio, han de esperar hasta que el
responsable del cdigo del kernel, Linus Torvalds, los apruebe. En cada una de las
distribuciones hay un modo distinto de trabajar para que esos cambios se lleven a cabo
dependiendo del tamano del grupo de programadores de que disponga y cmo se
organicen.

3.

Tanto FreeBSD como Linux usan una licencia de cdigo abierto, pero las licencias
son diferentes. El kernel de Linux usa lalicencia GPL, mientras que FreeBSD usa la licencia
BSD. Tiene ms informacin sobre stas y otras licencias de cdigo abierto en el sitio web
de Open Source Initiative.
La filosofa que hay tras la GPL busca asegurarse de que el cdigo permanezca abierto,
cosa que hace imponiendo restricciones en la distribucin de cdigo GPL. La licencia BSD,

en cambio, no impone ninguna restriccin, de forma que es posible dejarlo abierto o cerrarlo
para hacer productos comerciales propietarios (tambin conocidos como privativos)[2]. La
existencia de cdigo estable y confiable bajo una licencia tan interesante como la BSD ha
hecho que un sistema operativo como Apple OS X est basado en cdigo de FreeBSD. Todo
esto significa que si decide usted utilizar cdigo BSD en sus proyectos puede hacerlo sin
preocuparse de que en un futuro tal decisin pueda acarrearle problemas legales.
2. Caractersticas de FreeBSD
2.1. Plataformas soportadas
FreeBSD goza de una merecida reputacin de sistema operativo seguro y estable sobre
plataformas Intel (i386). Tambin es posible utilizarlo en las siguientes arquitecturas:

alpha

amd64

ia64

i386

pc98

Sparc64
Adems en este momento se est trabajando en portar FreeBSD a las siguientes
arquitecturas:

ARM

MIPS

PowerPC
Existen unas listas actualizadas de hardware para cada arquitectura donde puede verificarse
rpidamente si su hardware est soportado por FreeBSD. En el campo de los servidores
FreeBSD dispone de un soporte excelente de RAID por hardware y para adaptadores de red.
FreeBSD tambin funciona muy bien en una estacin de trabajo o un porttil. FreeBSD
soporta X Window System, el mismo que ofrecen las distribuciones de Linux para interfaces
de usuario de escritorio. FreeBSD ofrece adems ms de 17000 aplicaciones externas muy
fciles de instalar; entre ellas estn KDE, Gnome y OpenOffice.

Hay varios proyectos que tienen como meta una instalacin de FreeBSD ms fcil. Los ms
importantes son:
DesktopBSD, que tiene como fin ofrecer un sistema operativo estable y poderoso para
usar como escritorio.
FreeSBIE, que ofrece un LiveCD de FreeBSD.
PC-BSD, que dispone de un sencillo instalador grfico sobre FreeBSD dirigido al
usuario de escritorio.
2.2. Framework integrados
Hay diversos frameworks que le permitirn adaptar su entorno FreeBSD a sus necesidades
concretas. Veamos algunos de ellos:
Netgraph
Netgraph es un subsistema de mdulos que se puede usar para ampliar la infraestructura de
red disponible en el kernel gracias a la posibilidad que se ofrece a los desarrolladores de usar
sus propios mdulos. De este modo ha sido posible crear nuevos prototipos y productos en el
rea de los sistemas de red avanzados de un modo ms sencillo y limpio. Algunos de estos
mdulos ya estn incluidos en FreeBSD:
PPPoE
ATM
ISDN
Bluetooth
HDLC
EtherChannel
Frame Relay
y L2TP, solo por enumerar unos cuantos.
GEOM
GEOM es un framework modular que permite gestionar las peticiones de lectura/escritura
en disco. Al ser un dispositivo de almacenamiento que se puede enchufar permite que
puedan desarrollarse nuevos servicios de almacenamiento de forma rpida y limpia dentro
del subsistema de almacenamiento de FreeBSD.
Uso de RAID.
Proteccin criptogrfica de los datos almacenados.
Las versiones ms recientes de FreeBSD disponen de diversas aplicaciones administrativas
para facilitar el uso de los mdulos de GEOM existentes. Es posible, por ejemplo, crear un
disco espejo mediante gmirror(8); gstripe(8) permite crear un stripe, as como gracias
a gshsec(8) puede crearse un dispositivo secreto compartido.
GBDE
GBDE (de GEOM Based Disk Encryption) ofrece una proteccin criptogrfica fuerte que
puede utilizarse en sistemas de ficheros y unidades swap entre otros tipos de unidades de
almacenamiento. Adems GBDE cifra de forma transparente el sistema de ficheros en su

totalidad, no slamente ficheros individuales. De este modo el texto legible no llega siquiera a
tocar el disco duro.
MAC
MAC (Mandatory Access Control) ofrece un control de acceso a ficheros muy configurable; su
propsito es aumentar las posibilidades del control de acceso a ficheros de los que ha
gozado hasta ahora el sistema operativo. Puesto que MAC se implementa como
un framework modular cualquier sistema FreeBSD puede configurarse para que alcance
cualquier rango de exigencia, desde el cumplimiento del estndar HIPAA hasta los sistemas
de seguridad de grado militar.
FreeBSD incluye mdulos que permiten implementar las normas que se listan a continuacin,
aunque no hay que olvidar que elframework permite desarrollar e implementar cualquier
otra que se necesite:
Modelo Biba de integridad
ACL para ports
MLS (norma de confidencialidad Multi-Level Security)
LOMAC (norma de integridad de datos Low-watermark Mandatory Access Control)
Normas de particin de procesos
PAM
Igual que Linux, FreeBSD ofrece soporte para PAM (Pluggable Authentication Modules).
Con PAM el administrador puede reforzar el modelo tradicional de autentificacin
usuario/contrasea. FreeBSD dispone de mdulos para integrar PAM en una amplia gama de
mecanismos de autenticacin. Estos son algunos de ellos:
Kerberos 5
OPIE
RADIUS
TACACS+
Tambin es posible configurar normas que se engarguen de problemas de control de
autentificacin como la calidad de las contraseas que los usuarios puedan elegir.
3. Seguridad

La seguridad es extremadamente importante para el grupo de ingeniera de releases de


FreeBSD. Esto se refleja en distintas reas:
Todos los problemas de seguridad y los parches que los corrigen pasan por el equipo
de seguridad, que los publica y pone a disposicin de los usuarios en lo que se conoce
como Advisories. El equipo de seguridad tiene una merecida reputacin de rapidez en la
resolucin de problemas de seguridad. Si quiere informacin detallada sobre cmo se
gestionan los problemas de seguridad en FreeBSD y dnde encontrar informacin de
seguridad consulte http://www.FreeBSD.org/security/.

Uno de los problemas que suelen asociarse al software de cdigo abierto es la


escasez de aplicaciones que pueden ejecutarse. Hay literalmente decenas de miles de
proyectos desarrollando aplicaciones de cdigo abierto, evidentemente no todas tienen el
mismo rigor en cuestiones de seguridad. En FreeBSD se ataja este problema gracias
a VuXML. Consiste en una base de datos donde se van almacenando problemas de
seguridad que van apareciendo; esta base de datos se cruza con la informacin de los
programas que incluye FreeBSD y las aplicaciones que est en la Coleccin de Ports. El
administrador tiene a su disposicinportaudit(1), con el que puede determinar rpidamente si
cualquier aplicacin que haya en un sistema FreeBSD es vulnerable. En el caso de que lo
sea recibir una descripcin del problema con un enlace donde encontrar informacin ms
detallada sobre l.
FreeBSD ofrece tambin diversos mecanismos para que el administrador pueda hacer que
su sistema operativo cumpla los requisitos de seguridad que necesite:
La utilidad jail(8) permite al administrador enjaular (de ah su nombre) un proceso. Es
ideal para aplicaciones que no pueden ejecutarse en un entorno chroot.
La utilidad chflags(1) aumenta la seguridad que ofrece el sistema tradicional de
permisos de UNIX. Puede por ejemplo prohibirse la modificacin de uno o ms ficheros
dados; es posible incluso prohibir que el superusuario pueda modificarlos o borrarlos.
FreeBSD ofrece 3 firewalls empotrados y con soporte de NAT, gracias a lo cual
puede elegirse el conjunto de reglas ms apropiado a las necesidades de seguridad de cada
situacin.
El kernel de FreeBSD puede modificarse muy fcilmente, lo que permite al
administrador retirar de l caractersticas que no necesite. FreeBSD tambin admite mdulos
dinmicos y dispone de herramientas para cargar, descargar y ver los mdulos que estn en
el kernel.
sysctl permite al administrador ver y configurar multitud de caractersticas del kernel
sin tener que reiniciar la mquina.
4. Soporte

Del mismo modo que sucede en Linux, FreeBSD ofrece distintos tipos de soporte, tanto
gratuito como comercial.
4.1. Soporte gratuito
FreeBSD es uno de los sistemas operativos mejor documentados; dicha
documentacin forma parte del sistema y tambin est en Internet. Las pginas man son
claras, concisas y contienen ejemplos tiles. El Handbook de FreeBSD dispone de
informacin a fondo y ejemplos de configuracin para casi todas las tareas que deben
acometerse en el uso de FreeBSD.

FreeBSD dispone de muchas listas de correo; el correo que pasa por estas listas se
archiva y pueden hacerse bsquedas en l. Si tiene alguna duda cuya solucin no aparezca
en el Handbook es muy probable que haya aparecido ya resuelta en alguna lista de correo
del proyecto. Hay listas de correo (e incluso versiones del Handbook) en otros idiomas
adems del ingls. Puede encontrarlas en http://www.FreeBSD.org.
Hay muchos canales de IRC, foros y grupos de usuarios. Consulte una lista de de
algunos de ellos enhttp://www.FreeBSD.org/support.html.
Si busca un administrador, desarrollador o alguien que ofrezca soporte para FreeBSD, enve
la descripcin del trabajo a <freebsdjobs@FreeBSD.org>; no olvide incluir la ubicacin
fsica.
4.2. Soporte comercial
Hay muchas empresas que ofrecen soporte comercial para FreeBSD. Si necesita alguna de
estas empresas los siguientes enlaces le sern de mucha utilidad para buscar el que le
resulta ms adecuado:
La pgina de distribuidores comerciales que hay en el sitio web de
FreeBSD: http://www.FreeBSD.org/commercial/
FreeBSDMall, que vende contratos de soporte desde hace casi diez
aos. http://www.freebsdmall.com
La base de datos de BSDTracker: http://www.nycbug.org/index.php?
NAV=BSDTracker
Hay una organizacin que ofrece certificados para administradores de sistemas
BSD. http://www.bsdcertification.org.
Si su proyecto necesita un certificado de Common Criteria, FreeBSD incluye
el framework MAC de TrustedBSD que puede facilitar el proceso de obtener la certificacin.
5. Ventajas de elegir FreeBSD

Integrar FreeBSD en su estructura IT tiene muchas ventajas:


FreeBSD est bien documentado y cumple muchos estndares. Un administrador con
conocimientos de nivel intermedio o avanzado puede utilizar en FreeBSD su experiencia
con Linux y UNIX rpidamente.
Los desarrolladores oficiales tienen acceso completo al cdigo[4] de todas las
versiones de FreeBSD desde la primera release. El cdigo incluye toda la informacin que
se incluye con cada cambio, as que puede seguirse cada modificacin y correccin que se
haya hecho en el cdigo. Adems, cualquier desarrollador puede obtener una release dada
de un modo muy fcil usando la etiqueta adecuada. Por el contrario, Linux no utiliza este
modelo, aunque recientemente haya adoptado un modelo de desarrollo ms avanzado[5].
Los desarrolladores oficiales tambin tiene acceso completo a la base de datos de
fallos de FreeBSD, GNATS. Pueden buscar y gestionar los fallos existentes y enviar parches

para
que
puedan
probarse
e
integrarse
en
el
cdigo
base
de
FreeBSD.http://www.FreeBSD.org/support.html#gnats
La licencia BSD le permite modificar el cdigo de la forma que prefiera para que
satisfaga su objetivos comerciales. A diferencia de la licencia GPL no hay restricciones en el
modo en que deba distribuirse el software que desarrolle.
6. Conclusin
FreeBSD es un sistema operativo maduro basado en UNIX que incluye muchas de las
caractersticas que uno espera en un sistemaUNIX moderno. Para quien quiere incorporar
soluciones de cdigo abierto a su infraestructura FreeBSD es una alternativa a tener muy en
cuenta.

Das könnte Ihnen auch gefallen