Informe Final de Proyecto de Residencia Profesional

download Informe Final de Proyecto de Residencia Profesional

of 91

Transcript of Informe Final de Proyecto de Residencia Profesional

INFORME FINAL DE PROYECTO DE RESIDENCIA PROFESIONALNombre de la Empresa: WIRED & WIRELESS NETWORKS S.A. DE C.V. Nombre del Proyecto: ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

RESIDENTENombre: Nmero de control: Carrera: Periodo Escolar: GUILLERMO CRDENAS HERNNDEZ. 06ISC098 INGENIERA EN SISTEMAS COMPUTACIONALES. AGOSTO 2010 ENERO 2011

Asesor Externo I.T. HUGO ESCORCIA VZQUEZ.

Asesor Interno LIC. YOANA DAZ CASTILLO.

Tamazunchale, S.L.P.

Enero de 2011.

INFORME FINAL DE PROYECTO DE RESIDENCIA PROFESIONALNombre de la Empresa: WIRED & WIRELESS NETWORKS S.A. DE C.V. Nombre del Proyecto: ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

RESIDENTENombre: Nmero de control: Carrera: Periodo Escolar: GUILLERMO CRDENAS HERNNDEZ. 06ISC098 INGENIERA EN SISTEMAS COMPUTACIONALES. AGOSTO 2010 ENERO 2011

Asesor Externo

Asesor Interno

I.T. HUGO ESCORCIA VZQUEZ.Nombre, Firma y Sello

LIC. YOANA DAZ CASTILLO.Nombre y Firma

Tamazunchale, S.L.P.

Enero de 2011.

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

NDICE1.- INTRODUCCIN .......................................................................................... 1 2.- JUSTIFICACIN ........................................................................................... 3 3.- OBJETIVOS GENERALES Y ESPECFICOS ............................................... 4 4.- CARACTERSTICAS DEL AREA .................................................................. 5 4.1.- DATOS GENERALES DE LA EMPRESA ............................................. 5 4.2.- BREVE DESCRIPCIN DE LA EMPRESA .......................................... 6 5.- PROBLEMAS A RESOLVER PRIORIZNDOLOS ....................................... 7 6.- ALCANCES Y LIMITACIONES ..................................................................... 8 7.- FUNDAMENTO TERICO............................................................................ 9 7.1.- PROYECTO GNU .............................................................................. 10 7.2.- QU ES LINUX?.............................................................................. 15 7.3.- DISTRIBUCION GNU/LINUX ............................................................. 17 7.4.- KERNEL LINUX ................................................................................. 19 7.5.- DEBIAN ............................................................................................. 21 7.6.- UBUNTU ............................................................................................ 25 7.7.- SERVIDORES ................................................................................... 33 7.8.- NETFILTER/IPTABLES ..................................................................... 36 7.9.- BASH ................................................................................................. 53 7.10.- SQUID ............................................................................................. 56 7.11.- DANSGUARDIAN ............................................................................ 60 7.12.- TRAFFIC SHAPPING ...................................................................... 61 7.13.- VPN ................................................................................................. 67 8.- PROCEDIMIENTO Y DESCRIPCION DE LAS ACTIVIDADES .................. 71 9.- RESULTADOS ............................................................................................ 73 10.- CONCLUSIONES ..................................................................................... 74 11.- RECOMENDACIONES ............................................................................. 75 12.- REFERENCIAS BIBLIOGRAFICAS .......................................................... 76 13.- ANEXOS ................................................................................................... 77

GUILLERMO CRDENAS HERNNDEZ.

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

INTRODUCCIN.El mundo de la alta tecnologa nunca hubiera existido de no ser por el desarrollo del ordenador o computadora. Toda la sociedad utiliza estas mquinas, en distintos tipos y tamaos, para el almacenamiento y manipulacin de datos. Los equipos informticos han abierto una nueva era en la fabricacin gracias a las tcnicas de automatizacin, y han permitido mejorar los sistemas modernos de comunicacin. Son herramientas esenciales prcticamente en todos los campos de investigacin y en tecnologa aplicada.

Para que estas computadoras puedan comunicarse, compartir,accesar y administrar informacin se requiere un elemento sumamente importante, el Servidor, stees similar a una estacin de trabajo, pero posee funciones administrativas y estn dedicados en exclusiva a supervisar y controlar el acceso de las estaciones de trabajo a la red y a los recursos compartidos.

Estos Servidores son de vital importancia que pueden aportar grandes ventajas a cualquier organismo u organizacin como por ejemplo.

Compartir Archivos y distribuirlos a los clientes de la empresa.

Controlar una o ms impresoras y aceptar trabajos de impresin de otros clientes de la red, poniendo en cola los procesos antes mencionados.

Efectuar funciones relacionadas con la telefona, como es la de contestador automtico, realizando las funciones de un sistema interactivo para la respuesta de la voz, almacenando los mensajes de voz, encaminando las llamadas y controlando tambin la red o el Internet.

Almacenar documentos HTML, imgenes, archivos de texto, escrituras, y dems material Web compuesto por datos, y distribuir este contenido a los usuarios de este.

GUILLERMO CRDENAS HERNNDEZ.

1

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

Proveer servicios de base de datos a otros programas u otras computadoras, como es definido por el modelo cliente-servidor.

Realizar un cierto tipo de funciones a nombre de otros clientes en la red para aumentar el funcionamiento de ciertas operaciones, tambin

proporcionar servicios de seguridad, es decir, incluir un cortafuegos. Permitir administrar el acceso a internet en una red de computadoras permitiendo o negando el acceso a diferentes sitios Web. Controlar las lneas de mdem de los monitores u otros canales de comunicacin de la red para que las peticiones conecten con la red de una posicin remota, responder llamadas telefnicas entrantes o reconocer la peticin de la red y realizar la autentificacin necesaria y otros procedimientos para registrar a un usuario en la red. Hoy en da disponer de un servidor es una tarea necesaria en cualquier empresa para fines ya sea de seguridad, administracin, o servicio, facilitando cualquier transaccin en su red local o bien mundial.

El proyecto ahora expuesto demuestra un desarrollo de una solucin basada en ambiente Open Source, para facilitar las transacciones en una red,

proporcionando una plataforma segura, as como tambin administrar la lnea de su ISP (Proveedor de Servicios de Internet).

GUILLERMO CRDENAS HERNNDEZ.

2

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

JUSTIFICACIN.El proyecto se realiz con la finalidad de resolver las necesidades que presenta la empresa WWNetworks con respecto al control y administracin de ancho de banda.

Al mismo tiempo que se ofrece una alternativa tecnolgica como parte de la solucin as como tambin una plataforma segura, robusta y con gran crecimiento a futuro para nuevas mejoras o actualizaciones.

GUILLERMO CRDENAS HERNNDEZ.

3

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

OBJETIVOS GENERALES Y ESPECFICOS.OBJETIVO GENERAL

Administrar el Ancho de Banda de los Servidores WWNetworks, as como tambin aplicar tecnologas como Firewall, Proxy, Filtrado de Contenido y Control Parental, bajo una Plataforma GNU/Linux.

OBJETIVOS ESPECFICOS

Implementar el Desarrollo en Software Libre. Desarrollar una aplicacin web de calidad, segura y que a su vez facilite funciones administrativas. Sistematizar el Control de Ancho de Banda de los Servidores WWNetworks. Establecer un Ambiente de Trabajo Orientado a Servidores, para proporcionar el acceso remoto.

GUILLERMO CRDENAS HERNNDEZ.

4

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

CARACTERSTICAS DEL REA.DATOS GENERALES DE LA EMPRESA.

Nombre de la empresa: WIRED & WIRELESS NETWORKS, S.A. DE C.V.

RFC: WAW-080514-114

Direccin: Acapulco No. 62, Colonia Roma, Distrito Federal, Mxico.

Giro: Proporcionar Soluciones Informticas y de Telecomunicaciones.

ORGANIGRAMA:

Hugo Escorcia Vzquez Director General

Alfredo Rosas Gmez Ingeniero de Soporte y Desarrollo de Negocios

Soporte Tecnico Ingeniero de Soporte, Investigacin y Desarrollo

Lizette Vzquez Bravo Administracin

GUILLERMO CRDENAS HERNNDEZ.

5

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

BREVE DESCRIPCIN DE LA EMPRESA.Wired and Wireless Networks S.A. de C.V. es una empresa mexicana dedicada a la investigacin y desarrollo de tecnologas de telecomunicaciones, seguridad e internet que ofrece las tecnologas que desarrolla como servicios de consultora o Outsorcing a la pequea y mediana industria en Mxico.

HISTORIA DE LA EMPRESA

Wired and Wireless Networks S.A. de C.V. fue fundada en el ao 2008 por Hugo Escorcia Vzquez, quien con 14 aos de experiencia en el rea de telecomunicaciones y luego de ocupar diversos cargo en el sector privado, desarrolla e integra soluciones tecnolgicas orientadas a Internet para comercializarlas como servicios integrales de consultora.

GUILLERMO CRDENAS HERNNDEZ.

6

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

PROBLEMAS A RESOLVER PRIORIZNDOLOS. El sistema operativo base con el que se cuenta es una distribucin anterior con el cual no es compatible con nuevas aplicaciones a manejar.

El Kernel del sistema operativo es necesario actualizarse para nuevas mejoras y seguridad en este.

Compilar las aplicaciones para mejorar la seguridad en el servidor.

Los servidores deben de contar con scripts que faciliten el proceso logrando automatizar las tareas.

Es necesario crear el ambiente en modo Roadwarrior.

NOTA: ESTOS NO SON PROBLEMAS A RESOLVER, SUENAN MAS COMO LIMITACIONES, OJO!!.

GUILLERMO CRDENAS HERNNDEZ.

7

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

ALCANCES. Administracin de Ancho de Banda de Los Servidores WWNetworks.

Mejora de Aplicacin Web para la Administracin de Mdulos del Servidor.

Proporcionar una Plataforma de Desarrollo Alternativa y de Bajo Costo. El administrador podr tener acceso a los servidores en cualquier parte del mundo a travs de una conexin a internet, independientemente de las caractersticas de los servidores con los que se trabajen.

LIMITACIONES. Solo administrar los mdulos de los servidores de WWNetworks. Se trabajar con 4 mdulos que son VPN, Proxy Transparente, Firewall y Administracin.

GUILLERMO CRDENAS HERNNDEZ.

8

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

FUNDAMENTO TERICO. NOTA. REQUIERO QUE PONGAS LAS REFERENCIAS AQU EN EL MARCO TEORICO, QUE REFERENCIES DE DONDE SACASTE LA INFORMACION, PARA ELLO TE IRAS A REFERENCIAS----

INCERTAR CITA----AGREGAR UNEVA FUENTE Y AH LLENARAS EN CASO DE QUE SEA UN LIBRO O UNA PAGINA, POR EJEMPLO:La mayor parte de los ordenadores que existen en la actualidad estn diseados de forma que puedan ejecutar diversas tareas o programas. Estos programas pueden ir desde un procesador de textos, a un programa para la animacin de grficos tridimensionales o distintos tipos de juegos.

Para su correcto funcionamiento deben ser adems capaces de acceder a los recursos de que dispone el ordenador, como por ejemplo escribir o leer datos en un disco duro, mostrar un grfico por pantalla, etc. (www.google.com, 2004)

Es evidente, que si cada programa actuase de una forma independiente, existiran graves problemas y conflictos, puesto que, por ejemplo, tendran libertad para escribir sus datos sobre los de otro, etc.

Para solucionar este tipo de problemas se desarrollaron los Sistemas Operativos, los cuales aportan unos mecanismos y reglas bsicas de funcionamiento, de forma que los programas puedan acceder a los recursos del ordenador de una forma adecuada.

Aunque sta fue la funcionalidad inicial de los sistemas operativos, con el tiempo se han aadido otras muchas, como la ejecucin de programas, el control de la memoria del ordenador, la creacin y control de interfaces grficas de usuario, etc.

GUILLERMO CRDENAS HERNNDEZ.

9

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

En la actualidad existen una gran cantidad de sistemas operativos dependiendo del tipo de ordenador en el que se va a ejecutar. Por ejemplo para los PC uno de los sistemas operativos ms difundidos en Microsoft Windows, tanto en las

versiones 95, 98, 2000 y NT 4.0. Otros posibles sistemas operativos para este tipo de ordenadores son Solaris, OS/2, BeOS, Microsoft DOS, o uno de los sistemas operativos ms poderosos y en rpida expansin para PC, LINUX.

PROYECTO GNU

El proyecto GNU fue iniciado por Richard Stallman con el objetivo de crear un sistema operativo completamente libre: el sistema GNU.

El 27 de septiembre de 1983 se anunci pblicamente el proyecto por primera vez en el grupo de noticias net.unix-wizards. Al anuncio original, siguieron otros ensayos escritos por Richard Stallman como el Manifiesto GNU, que establecieron sus motivaciones para realizar el proyecto GNU, entre las que destaca volver al espritu de cooperacin que prevaleci en los tiempos iniciales de la comunidad de usuarios de computadoras.

GNU es un acrnimo recursivo que significa GNU No es Unix (GNU is Not Unix). Puesto que en ingls gnu (en espaol "u") se pronuncia igual que "new", Richard Stallman recomienda pronunciarlo guh-noo. En espaol, se recomienda pronunciarlo u como el antlope africano o fonticamente; por ello, el trmino mayoritariamente se deletrea (G-N-U) para su mejor comprensin. En sus charlas

GUILLERMO CRDENAS HERNNDEZ.

10

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

Richard Stallman finalmente dice siempre, Se puede pronunciar de cualquier forma, la nica pronunciacin errnea es decirle linux.

UNIX es un Sistema Operativo no libre muy popular, porque est basado en una arquitectura que ha demostrado ser tcnicamente estable. El sistema GNU fue diseado para ser totalmente compatible con UNIX. El hecho de ser compatible con la arquitectura de UNIX implica que GNU est compuesto de pequeas piezas individuales de software, muchas de las cuales ya estaban disponibles, como el sistema de edicin de textos TeX y el sistema grfico X Window, que pudieron ser adaptados y reutilizados; otros en cambio tuvieron que ser reescritos. Para asegurar que el software GNU permaneciera libre para que todos los usuarios pudieran ejecutarlo, copiarlo, modificarlo y distribuirlo, el proyecto deba ser liberado bajo una licencia diseada para garantizar esos derechos al tiempo que evitase restricciones posteriores de los mismos. La idea se conoce en Ingls como copyleft copia permitida (en clara oposicin a copyright derecho de copia), y est contenida en la Licencia General Pblica de GNU (GPL).

En 1985, Stallman cre la Free Software Foundation (FSF o Fundacin para el Software Libre) para proveer soportes logsticos, legales y financieros al proyecto GNU. La FSF tambin contrat programadores para contribuir a GNU, aunque una porcin sustancial del desarrollo fue (y contina siendo) producida por voluntarios. A medida que GNU ganaba renombre, negocios interesados comenzaron a contribuir al desarrollo o comercializacin de productos GNU y el correspondiente soporte tcnico. El ms prominente y exitoso de ellos fue Cygnus Solutions, ahora parte de Red Hat.

En 1990, el sistema GNU ya tena un editor de texto llamado Emacs, un exitoso compilador (GCC), y la mayor parte de las bibliotecas y utilidades que componen un sistema operativo UNIX tpico. Pero faltaba un componente clave llamado ncleo (kernel en ingls).

GUILLERMO CRDENAS HERNNDEZ.

11

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

En el manifiesto GNU, Stallman mencion que "un ncleo inicial existe, pero se necesitan muchos otros programas para emular Unix". l se refera a TRIX, que es un ncleo de llamadas remotas a procedimientos, desarrollado por el MIT y cuyos autores decidieron que fuera libremente distribuido; TRIX era totalmente compatible con UNIX versin 7. En diciembre de 1986 ya se haba trabajado para modificar este ncleo. Sin embargo, los programadores decidieron que no era inicialmente utilizable, debido a que solamente funcionaba en "algunos equipos sumamente complicados y caros" razn por la cual debera ser portado a otras arquitecturas antes de que se pudiera utilizar. Finalmente, en 1988, se decidi utilizar como base el ncleo Mach desarrollado en la CMU. Inicialmente, el ncleo recibi el nombre de Alix (as se llamaba una novia de Stallman), pero por decisin del programador Michael Bushnell fue renombrado a Hurd. Desafortunadamente, debido a razones tcnicas y conflictos personales entre los programadores originales, el desarrollo de Hurd acab estancndose. En 1991, Linus Torvalds empez a escribir el ncleo Linux y decidi distribuirlo bajo la licencia GPL. Rpidamente, mltiples programadores se unieron a Linus en el desarrollo, colaborando a travs de Internet y consiguiendo paulatinamente que Linux llegase a ser un ncleo compatible con UNIX. En 1992, el ncleo Linux fue combinado con el sistema GNU, resultando en un sistema operativo libre y completamente funcional. El Sistema Operativo formado por esta combinacin es usualmente conocido como "GNU/Linux" o como una "distribucin Linux" y existen diversas variantes. (Vase tambin: Controversia por la denominacin GNU/Linux) Tambin es frecuente hallar componentes de GNU instalados en un sistema UNIX no libre, en lugar de los programas originales para UNIX. Esto se debe a que muchos de los programas escritos por el proyecto GNU han demostrado ser de mayor calidad que sus versiones equivalentes de UNIX. A menudo, estos componentes se conocen colectivamente como "herramientas GNU". Muchos de los programas GNU han sido tambin transportados a otros sistemas operativos como Microsoft Windows y Mac OS X.

GUILLERMO CRDENAS HERNNDEZ.

12

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

La nica variante completamente GNU es GNU con el ncleo GNU Hurd, esta es distribuida como Debian GNU/Hurd y otros, aunque no hay ninguna versin oficial hasta el momento.Linux es

el ncleo ms usado con GNU, aunque Linux en s no es parte de GNU.

GNU tambin es utilizado con otros ncleos. Por ejemplo, en Debian GNU/kFreeBSD, Debian GNU/NetBSD, Nexenta OS o GNU-Darwin.

QU ES LINUX?

Linux es un sistema operativo gratuito y de libre distribucin inspirado en el sistema Unix, escrito por Linus Torvalds con la ayuda de miles de programadores en Internet. Unix es un sistema operativo desarrollado en 1970, una de cuyas mayores ventajas es que es fcilmente portable a diferentes tipos de ordenadores, por lo que existen versiones de Unix para casi todos los tipos de ordenadores, desde PC y Mac hasta estaciones de trabajo y superordenadores.

En Finlandia, Linus Torvalds, por entonces estudiante de Ciencias de la Computacin de la Universidad de Helsinki, decidi realizar la cuantiosa inversin de $3500 para adquirir un nuevo PC 386 (33 Mhz, 4MB de RAM; una de las ms avanzadas de su poca). El pago lo realizara a plazos, pues no dispona de tal cantidad de dinero en efectivo.GUILLERMO CRDENAS HERNNDEZ. 13

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

Normalmente, lo utilizaba para acceder a la red de su universidad, pero debido a que no le gustaba el sistema operativo con el cual trabajaba, Minix, decidi crear uno l mismo. Decidi aprovechar esta oportunidad para realizar un programa a bajo nivel prescindiendo de Minix.

En los primeros intentos consigui arrancar el ordenador y ejecutar dos procesos que mostraban AAAAABBBBB. Uno lo utilizara para leer desde el mdem y escribir en la pantalla, mientras que el otro escribira al mdem y leera desde el teclado. Inicialmente, el programa arrancaba desde un disquete.

La siguiente necesidad que tuvo fue la de poder descargar y subir archivos de su universidad, pero para implementar eso en su emulador era necesario crear un controlador de disco. As que despus de un trabajo continuo y duro cre un controlador compatible con el sistema de ficheros de Minix. En ese momento se percat que estaba creando algo ms que un simple emulador de terminal, as que, descontento con su sistema Minix, emprendi la aventura de crear un sistema operativo partiendo de cero. De forma privada, Linus nombraba Linux a su nuevo sistema, pero cuando decidi hacer una presentacin pblica (pues ya era capaz de mostrar una shell y ejecutar el compilador gcc) pens que era demasiado egocntrico llamarlo as y propuso llamarlo Freax, aunque despus se le sigui conociendo Linux.

Despus de anunciar el 25 de agosto de 1991 su intencin de seguir desarrollando su sistema para construir un reemplazo de Minix, el 17 de septiembre de 1991 sube al servidor deFTP proporcionado por su universidad la versin 0.01 de Linux con 10.000 lneas de cdigo (en la actualidad tiene ms de 10 millones). A partir de ese momento Linux empez a evolucionar rpidamente.

GUILLERMO CRDENAS HERNNDEZ.

14

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

Linux no es en general tan sencillo de emplear como otros sistemas operativos, aunque, se estn realizando grandes esfuerzos para facilitar su uso. Pese a todo la enorme flexibilidad de Linux y su gran estabilidad (y el bajo costo) han hecho de este sistema operativo una opcin muy a tener en cuenta por aquellos usuarios que se dediquen a trabajar a travs de redes, naveguen por Internet, o se

dediquen a la programacin. Adems el futuro de Linux es brillante y cada vez ms y ms gente y ms y ms empresas (entre otras IBM, Intel, Corel) estn apoyando este proyecto, con lo que el sistema ser cada vez ms sencillo de emplear y los programas sern cada vez mejores.

GNU/LINUX

GNU/Linux es uno de los trminos empleados para referirse a la combinacin del ncleo o kernel libre similar a Unix denominado Linux, que es usado

con herramientas de sistema GNU. Su desarrollo es uno de los ejemplos ms prominentes de software libre; todo su cdigo fuente puede ser utilizado, modificado y redistribuido libremente por cualquiera bajo los trminos de la GPL (Licencia Pblica General de GNU, en ingls: General Public License) y otra serie de licencias libres.

GUILLERMO CRDENAS HERNNDEZ.

15

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

A pesar de que Linux (ncleo) es, en sentido estricto, el sistema operativo,2 parte fundamental de la interaccin entre el ncleo y el usuario (o los programas de aplicacin) se maneja usualmente con las herramientas del proyecto GNU o de otros proyectos comoGNOME. Sin embargo, una parte significativa de la comunidad, as como muchos medios generales y especializados, prefieren utilizar el trmino Linux para referirse a la unin de ambos proyectos. Para ms informacin consulte la seccin "Denominacin GNU/Linux" o el

artculo "Controversia por la denominacin GNU/Linux". A las variantes de esta unin de programas y tecnologas, a las que se les adicionan diversos programas de aplicacin de propsitos especficos o generales se las denomina distribuciones. Su objetivo consiste en ofrecer ediciones que cumplan con las necesidades de un determinado grupo de usuarios. Algunas de ellas son especialmente conocidas por su uso

en servidores y supercomputadoras.

Donde tiene la cuota ms importante del mercado. Segn un informe de IDC, GNU/Linux es utilizado por el 78% de los principales 500 servidores del mundo, otro informe le da una cuota de mercado de % 89 en los 500 mayores supercomputadores. Con menor cuota de mercado el sistema GNU/Linux tambin esusadoenelsegmentodelas computadorasde de bolsillo, telfonos mviles, sistemas escritorio, porttiles, computadoras embebidos, videoconsolas y otros

dispositivos.

GNU/Linux es Programtica Libre, esto significa que el usuario es libre de redistribuir y modificar de acuerdo a necesidades especficas, siempre que se incluya el cdigo fuente, como lo indica la Licencia Pblica General (acrnimo de GNU is Not Unix), GNU

que es el modo que ha dispuesto la Free

Software Foundation (Fundacin de Programtica Libre).

GUILLERMO CRDENAS HERNNDEZ.

16

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

Esto tambin incluye el derecho a poder instalar el ncleo de GNU/Linux en cualquier nmero de ordenadores o equipos de cmputo que el

usuario desee.

DISTRIBUCIN GNU/LINUXUna distribucin Linux (coloquialmente llamada distro) es una distribucin de software basada en el ncleo Linux que incluye determinados paquetes de software para satisfacer las necesidades de un grupo especfico de usuarios, dando as origen a ediciones domsticas, empresariales y para servidores. Por lo general estn compuestas, total o mayoritariamente, de software libre, aunque a menudo incorporan aplicaciones o controladores propietarios.

Adems del ncleo Linux, las distribuciones incluyen habitualmente las bibliotecas y herramientas del proyecto GNU y el sistema de ventanas X WindowSystem. Dependiendo del tipo de usuarios a los que la distribucin est dirigida se incluye tambin otro tipo de software como procesadores de texto, hoja de clculo, reproductores multimedia, herramientas administrativas, etctera. En el caso de incluir herramientas del proyecto GNU, tambin se utiliza el trmino distribucin GNU/Linux.

GUILLERMO CRDENAS HERNNDEZ.

17

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

Existen distribuciones que estn soportadas comercialmente, como Fedora (Red Hat), OpenSuSe (Novell), Ubuntu (Canonical Ltd.), Mandriva, y distribuciones

mantenidas por la comunidad como Debian y Gentoo. Aunque hay otras distribuciones que no estn relacionadas con alguna empresa o comunidad, como es el caso de Slackware.

Antes de que surgieran las primeras distribuciones, un usuario de Linux deba ser algo experto en Unix; no slo deba conocer qu bibliotecas y ejecutables necesitaba para iniciar el sistema y que funcionase, sino tambin los detalles importantes que se requieren en la instalacin y configuracin de los archivos en el sistema. Las distribuciones Linux comenzaron a surgir poco despus de que el ncleo Linux fuera utilizado por otros programadores adems de los creadores originales. Exista mayor inters en desarrollar un sistema operativo que en desarrollar aplicaciones, interfaces para los usuarios o un paquete de software conveniente. Entre las distribuciones ms antiguas se incluan:

Dos discos denominados H J Lu's "Boot-root" con el ncleo y un mnimo de herramientas para utilizar.MCC Interim Linux, que se poda descargar en un servidor pblico FTP de la Universidad de Mnchester en febrero de 1992. TAMU, creado por entusiastas de la Universidad de Texas A&M al mismo tiempo que SLSSLS (Softlanding Linux System).Yggdrasil Linux cre el primer CD-ROM de una distribucin Linux.SLS no estuvo bien mantenida; as pues, Patrick Volkerding lanz una distribucin basada en SLS a la que llam Slackware; lanzada el 16 de julio de 1993.Esta es la distribucin ms antigua que est en desarrollo activo.

Los

usuarios

vieron

en

Linux

una la

alternativa

a

los sistemas OS en Apple

operativos DOS, Microsoft

Windows en

plataforma PC, Mac

Macintosh y las versiones de uso bajo licencia (de pago) de UNIX. La mayora de estos primeros usuarios se haban familiarizado con el entorno UNIX en sus

GUILLERMO CRDENAS HERNNDEZ.

18

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

trabajos o centros de estudios. Estos adoptaron GNU/Linux por su estabilidad, reducido (o nulo) coste y por la disponibilidad del cdigo

fuente del software incluido. Las distribuciones eran originalmente una cuestin de comodidad para el usuario medio, evitndole la instalacin (y en muchos casos compilacin) por separado de paquetes de uso comn, pero hoy se han popularizado incluso entre los expertos en ste tipo de sistemas operativos (UNIX / Linux). Si bien, histricamente, Linux estuvo mejor posicionado en el mercado de los servidores, distribuciones centradas en la facilidad de instalacin y uso, tales como Fedora, Mandriva, Opensuse, Knoppix y Ubuntu, entre otras, han logrado una mayor aceptacin en el mercado domstico.

KERNEL LINUXEl ncleo Linux es un ncleo (tambin denominado Kernel) de sistema

operativo libre tipo Unix. Es uno de los principales ejemplos de software libre y cdigo abierto. Linux est licenciado bajo la GPL v2 y est desarrollado por colaboradores de todo el mundo. El desarrollo del da a da tiene lugar en la Linux Kernel Mailing List.

El ncleo Linux fue concebido por el entonces estudiante de ciencias de la computacin finlands, Linus Torvalds, en 1991. Linux consigui rpidamente desarrolladores y usuarios que adoptaron cdigos de otros proyectos de software libre para su uso en el nuevo sistema operativo. El ncleo Linux ha recibido contribuciones de miles de programadores. Normalmente Linux se utiliza junto a un empaquetado de software,

llamado distribucin Linux.

En abril de 1991, Linus Torvalds, de 21 aos, empez a trabajar en unas simples ideas para un ncleo de sistema operativo. Comenz con un intento por obtenerGUILLERMO CRDENAS HERNNDEZ. 19

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

un ncleo de sistema operativo gratuito similar a Unix que funcionara con microprocesadores Intel 80386. Luego, el 25 de agosto de 1991, Torvalds escribi en el grupo de noticias comp.os.minix. Estoy haciendo un sistema operativo (gratuito, slo un hobby, no ser nada grande ni profesional como GNU) para clones AT 386(486). Llevo en ello desde abril y est empezando a estar listo. Me gustara saber su opinin sobre las cosas que les gustan o disgustan en minix, ya que mi SO tiene algn parecido con l. Actualmente he portado bash(1.08) y gcc (1.40), y parece que las cosas funcionan. Esto implica que tendr algo prctico dentro de unos meses.

Despus de esto, muchas personas ayudaron con el cdigo. En septiembre de 1991 se lanz la versin 0.01 de Linux. Tena 10.239 lneas de cdigo. En octubre de ese ao, se lanz la versin 0.02 de Linux; luego, en diciembre se lanz la versin 0.11. Esta versin fue la primera en ser self-

hosted (autoalbergada). Es decir, Linux 0.11 poda ser compilado por una computadora que ejecutase Linux 0.11, mientras que las versiones anteriores de Linux se compilaban usando otros sistemas operativos. Cuando lanz la siguiente versin, Torvalds adopt la GPL como su propio boceto de licencia, la cual no permita su redistribucin con otra licencia que no sea GPL. Se inici un grupo de noticias llamado alt.os.linux y el 19 de enero de 1992 se public en ese grupo el primer post. El 31 de marzo, alt.os.linux se convirti en comp.os.linux. XFree86, una implementacin del X Window System, fue portada a Linux, la versin del ncleo 0.95 fue la primera en ser capaz de ejecutarla. Este gran salto de versiones (de 0.1x a 0.9x) fue por la sensacin de que una versin 1.0 acabada no pareca estar lejos. Sin embargo, estas previsiones resultaron ser un poco optimistas: desde 1993 a principios de 1994, se desarrollaron 15 versiones diferentes de 0.99. El 14 de marzo de 1994, se lanz Linux 1.0.0, que constaba de 176.250 lneas de cdigo. En marzo de 1995 se lanz Linux 1.2.0, que ya estaba compuesto de 310.950 lneas de cdigo.

GUILLERMO CRDENAS HERNNDEZ.

20

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

En mayo de 1996 Torvalds decidi adoptar al pingino Tux como mascota para Linux. La versin 2 de Linux se lanz el 9 de junio de 1996 y fue un gran xito. A ste le siguieron grandes desarrollos.

DEBIAN

Debian o Proyecto conformada

debian (en ingls Debian

Project ) que

es

una un

comunidad sistema

por desarrolladores y usuarios,

mantiene

operativo GNU basado en software libre. El sistema se encuentra precompilado, empaquetado y en un formato deb para mltiples arquitecturas de computador y para varios ncleos.

Naci

como

una

apuesta

por

separar

en

sus

versiones

el software

libre del software no libre. El modelo de desarrollo del proyecto es ajeno a motivos empresariales o comerciales, siendo llevado adelante por los propios usuarios,GUILLERMO CRDENAS HERNNDEZ. 21

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

aunque cuenta con el apoyo de varias empresas en forma de infraestructuras. Debian no vende directamente su software, lo pone a disposicin de cualquiera en Internet, aunque s permite a personas o empresas distribuirlo comercialmente mientras se respete su licencia.

La comunidad de desarrolladores del proyecto cuenta con la representacin de Software in the Public Interest, una organizacin sin nimo de lucro que da cobertura legal a varios proyectos de software libre. La primera adaptacin del sistema Debian, siendo tambin la ms desarrollada, es Debian GNU/Linux, basada en el ncleo Linux, y como siempre utilizando herramientas de GNU. Existen tambin otras adaptaciones con

diversos ncleos: Hurd (Debian

GNU/Hurd); NetBSD

(Debian

GNU/NetBSD)

y FreeBSD (Debian GNU/kFreeBSD).

El proyecto Debian es una organizacin voluntaria con tres documentos fundadores:

El Contrato Social de Debian, define las bases por las cuales el proyecto y sus desarrolladores tratan los asuntos. Las Directrices de software libre de Debian, definen los criterios del Software libre y dictan qu software es aceptable para ladistribucin, segn lo referido al contrato social. Estas pautas tambin se han adoptado como base de la definicin del Open Source.

La Constitucin de Debian, describe la estructura de la organizacin para la toma de decisiones de manera formal dentro del proyecto. Enumera el poder y las responsabilidades del Lder de proyecto Debian, de la secretara, y de los desarrolladores en general.

Actualmente, el proyecto incluye ms de mil desarrolladores. Cada uno de ellos posee algn lugar en el proyecto ya sea relacionado con

GUILLERMO CRDENAS HERNNDEZ.

22

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

lospaquetes: mantenimiento, documentacin, control de calidad o relacionado con la infraestructura del proyecto: coordinacin de lanzamientos, traducciones de web, etc.

El proyecto mantiene listas de correo y un sistema que permite a toda la comunidad leer y reportar bugs. De esta forma, trabajan de manera

conjunta usuarios y desarrolladores.

Existen

otros

medios

de

comunicacin

con

colaboradores

y

usuarios,

principalmente por medio del IRC y particularmente en el servidor Freenode. Todos estos medios poseen una gran concurrencia, siendo frecuentados por multitud de usuarios y desarrolladores.

Adems, los desarrolladores pueden tomar decisiones generales obligatorias para una resolucin o una eleccin general. Toda votacin es realizada por el mtodo Schulze, un mtodo de Condorcet de votacin.

El proyecto Debian fue fundado en el ao 1993 por Ian Murdock, despus de haber estudiado en la Universidad de Purdue. Murdock escribi el Manifiesto de Debian que utiliz como base para la creacin de la distribucin Linux debian. Dentro de este texto los puntos destacables son: tener de la distribucin de manera abierta, coherente al espritu de Linux (ncleo) y de GNU.

El nombre del proyecto se basa en la combinacin del nombre de su entonces novia (actual ex esposa) Deborah con su propio nombre Ian, formando el portmanteau Debian, pronunciado como las slabas correspondientes de estos nombres, eningls estadounidense: /dbijn/.

El proyecto creci lentamente al principio y lanz sus primeras versiones 0.9x en 1994 y 1995. Las primeras portabilidades a otras arquitecturas fueron a comienzos de 1995, siendo la primera versin 1.x de Debian lanzada en 1996.

GUILLERMO CRDENAS HERNNDEZ.

23

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

En 1996, Bruce Perens substituy a Ian Murdock como el lder de proyecto. Por sugerencia del desarrollador Ean Schuessler, dirigi el proceso de actualizacin del Contrato Social de Debian y de las pautas del software de debian libremente, definiendo los puntos fundamentales para el desarrollo de la distribucin. Tambin inici la creacin de la licencia de software legal de la organizacin.

Bruce Perens se retir en 1998, antes del lanzamiento de la primera versin de Debian basada en glibc, la 2.0. El proyecto procedi a elegir a nuevos lderes y a hacer dos revisiones de la versin 2.x, cada uno incluyendo ms versiones para otras arquitecturas y ms paquetes. Conveniente fue lanzada durante este perodo y la primera portabilidad a un ncleo no basado en el ncleo Linux, naciendo as debian GNU/Hurd, utilizando el ncleo de Hurd proveniente del proyecto GNU. Las primeras distribuciones Linux basadas en Debian (Corel Linuxy la Stormix's Linux de Stormix), fueron comenzadas en 1999. Aunque estuvieron desarrolladas no por mucho tiempo, estas distribuciones fueron las primeras de muchas que se basaran en Debian.

A finales de 2000, el proyecto realiz el mayor cambio a la estructura de los archivos y la organizacin de las versiones, reorganizando procesos de liberacin de paquetes del softwarecon el nuevo "package pools" (del ingls depsito de paquetes), y creando un rama de prueba, relativamente estable para el lanzamiento siguiente. En 2001, los desarrolladores comenzaron a reunirse en una conferencia anual llamada Debconf con discusiones y talleres para desarrolladores y usuarios tcnicos.

DISTRIBUCIONES DERIVADAS

En la actualidad, como Debian es una distro que ha demostrado su estabilidad y utilidad, muchos desarrolladores la han tomado para crear a partir de ella nuevas distribuciones. Se las conoce como distribuciones basadas en Debian.

GUILLERMO CRDENAS HERNNDEZ.

24

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

En septiembre de 2010 existen 121 distribuciones activas basadas en Debian; segn el buscador de DistroWatch, adems Debian posee en su sitio web una lista oficial de susdistribuciones descendientes.

UBUNTU

Ubuntu es

una distribucin GNU/Linux basada

en Debian

GNU/Linux que

proporciona un sistema operativo actualizado y estable para el usuario medio, con un fuerte enfoque en la facilidad de uso e instalacin del sistema. Al igual que otras distribuciones se compone de mltiples paquetes de software normalmente distribuidos bajo una licencia libre o de cdigo abierto. Estadsticas web sugieren que el porcentaje de mercado de Ubuntu dentro de las distribuciones Linux es de aproximadamente 50%, y con una tendencia a subir como servidor web.

GUILLERMO CRDENAS HERNNDEZ.

25

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

Est patrocinado por Canonical Ltd., una compaa britnica propiedad del empresario sudafricano Mark Shuttleworth que en vez de vender la distribucin con fines lucrativos, se financia por medio de servicios vinculados al sistema operativo y vendiendosoporte tcnico. Adems, al mantenerlo libre y gratuito, la empresa es capaz de aprovechar los desarrolladores de la comunidad en mejorar los componentes de su sistema operativo. Canonical tambin apoya y proporciona soporte para cuatro derivaciones de Ubuntu: Kubuntu, Xubuntu, Edubuntu y la versin de Ubuntu orientada a servidores (Ubuntu Server Edition).

Su eslogan es Linux for Human Beings (Linux para seres humanos) y su nombre proviene de la ideologa sudafricana Ubuntu(humanidad hacia otros). Cada seis meses se publica una nueva versin de Ubuntu la cual recibe soporte por parte de Canonical, durante dieciocho meses, por medio de actualizaciones de seguridad, parches para bugs crticos y actualizaciones menores de programas. Las versiones LTS (Long Term Support), que se liberan cada dos aos, reciben soporte durante tres aos en los sistemas de escritorio y cinco para la edicin orientada a servidores.

Ubuntu es una bifurcacin del cdigo base del proyecto Debian. El objetivo inicial era el de lanzar una nueva versin de Ubuntu cada seis meses, resultando en un sistema ms actualizado. Su primer lanzamiento fue el 20 de octubre de 2004.Los lanzamientos de Ubuntu estn sincronizados para realizarse un mes despus que las del entorno de escritorio GNOME.Ubuntu para usa primariamente software adems

libre haciendo

excepciones

varios controladores privativos

del firmware y software no libre incluido en el kernel Linux y el software no libre presente en sus repositorios.

Los paquetes de Ubuntu estn basados en la rama inestable de Debian: ambas distribuciones usan el formato de paquete de software deb y las herramientas de administracin de paquetes APT, dpkg, ms algunos front-ends. Los paquetes Debian y Ubuntu no son necesariamente compatibles binariamente; algunas veces

GUILLERMO CRDENAS HERNNDEZ.

26

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

los paquetes deb pueden necesitar ser recompilados desde el cdigo fuente para ser usados en Ubuntu.Muchos desarrolladores de Ubuntu tambin mantienen paquetes clave en Debian. Ubuntu coopera con Debian devolviendo cambios y mejoras en el cdigo,aunque existen crticas sobre las escasas aportaciones. En el pasado, Ian Murdock, fundador de Debian, expres su preocupacin por el potencial cambio de los paquetes de Ubuntu con respecto a los de Debian ya que podran llegar a ser completamente incompatibles

Antes de cada lanzamiento, se lleva a cabo una importacin de paquetes, desde Debian, aplicando las modificaciones especficas de Ubuntu. Un mes antes del lanzamiento, comienza un proceso de congelacin de importaciones, ayudando a que los desarrolladores puedan asegurar que el software sea suficientemente estable. Desde el inicio del proyecto, Shuttleworth proporcion el soporte econmico gracias a los beneficios obtenidos despus de vender su

empresa Thawte a VeriSign, por unos 575 millones de dlares estadounidenses.

El 8 de julio de 2005, Mark Shuttleworth y su empresa Canonical Ltd. anunciaron la creacin de la Fundacin Ubuntu y aportaron 10 millones de dlares como presupuesto inicial. El propsito de la fundacin es el de asegurar soporte y desarrollo para todas las futuras versiones de Ubuntu.

El 12 de marzo de 2009, Ubuntu anunci soporte para plataformas externas de administracin de computacin en nube, como Amazon EC2.

A principios de 2009 los ingenieros y diseadores de Canonical se dan cuenta de que la gestin de paquetes e instalacin de aplicaciones es demasiado desfragmentada y hasta compleja, por ende se planifica la creacin de una aplicacin central para el manejo e instalacin de aplicaciones. En octubre de 2009 Canonical lanza oficialmente el Centro de software de Ubuntu (Ubuntu Software Center), permite buscar, instalar, remover aplicaciones, y adems

GUILLERMO CRDENAS HERNNDEZ.

27

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

permite agregar repositorios de terceros.En octubre de 2010 se introduce la venta de aplicaciones por medio de pagos en lnea en el Centro de software de Ubuntu.

El 3 de junio de 2010, Mark Shuttleworth anuncia el trabajo en conjunto con el proyecto Linaro y su desarrollo de cdigo abierto para Linux en procesadores con tecnologa ARM.A fines de septiembre se da a conocer antes del lanzamiento de Ubuntu 10.10, que esta versin incluira un mejor y ms estable soporte para procesadores ARM.

En octubre y noviembre de 2010, se anuncian drsticos e importantes cambios en el escritorio de Ubuntu, la inclusin de la interfaz de usuario Unity (creada por Canonical), la cual ser utilizada en la versin de escritorio de

Ubuntu.Tambin Mark Shuttleworth anuncia que en futuras versiones de Ubuntu, Unity se implementar en el servidor grfico Wayland, y no en el servidor grfico X (como se haca habitualmente).

El 18 de enero de 2011, Mark Shuttleworth anuncia la inclusin de aplicaciones creadas en Qt para ser lanzadas a partir de "Natty+1" (despus del lanzamiento de Ubuntu 11.04) y en futuras versiones de Ubuntu. Una de las metas de esta decisin es facilitar la integracin al sistema de aplicaciones Qt, en comparacin con las tpicas aplicaciones desarrolladas enGTK que lucen nativas en la interfaz de usuario de Ubuntu. Para terminar con las dificultades tcnicas de configuracin y preferencias del sistema entre Qt y GTK, se crearn enlacesdconf para las aplicaciones Qt, con lo que se pretende centralizar la configuracin del sistema, ya sea GTK o Qt, en un solo lugar.

CARACTERSTICAS.

En

su

ltima

versin,

Ubuntu

soporta

oficialmente

dos

arquitecturas

de hardware en computadoras personales y servidores: x86 yAMD64 (x86-64);

GUILLERMO CRDENAS HERNNDEZ.

28

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

siendo

la

versin

6.10

la

ltima

que

oficialmente

soport

la

arquitectura PowerPC,32 despus de lo cual es solo soportada por la comunidad.

Sin embargo, extraoficialmente, Ubuntu ha sido portado a tres arquitecturas ms: SPARC, IA-64 yPlaystation 3.A partir de la versin 9.04 lanzada en abril de 2009 se empez a ofrecer soporte oficial para procesadores ARM, comnmente usados en dispositivos mviles, PDA etc.

Al igual que la mayora de las distribuciones basadas en GNU/Linux, Ubuntu es capaz de actualizar a la vez todas las aplicaciones instaladas en la mquina a travs de repositorios. Esta distribucin est siendo traducida a ms de 130 idiomas, y cada usuario es capaz de colaborar voluntariamente a esta causa, a travs de Internet. Los usuarios pueden participar en el desarrollo de Ubuntu, escribiendo cdigo, solucionando bugs, probando versiones inestables del sistema, etc; adems, en febrero de 2008 se puso en marcha la pgina Brainstorm que permite a los usuarios proponer sus ideas y votar las del resto. Tambin se informa de las ideas propuestas que se estn desarrollando o estn previstas.

SOFTWARE INCLUIDO.

Posee una gran coleccin de aplicaciones para la configuracin de todo el sistema, valindose principalmente de interfaces grficas. Elentorno de

escritorio predeterminado de Ubuntu es GNOME y se sincroniza con sus liberaciones. Existen otras dos versiones oficiales de la distribucin, una con el entorno KDE, llamada Kubuntu, y otra con el entorno Xfce, llamada Xubuntu; existen otros escritoriosdisponibles, que pueden ser instalados en cualquier sistema Ubuntu independientemente del entorno de escritorio instalado por defecto.

GUILLERMO CRDENAS HERNNDEZ.

29

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

Aplicaciones de Ubuntu: Ubuntu es conocido por su facilidad de uso y las aplicaciones orientadas al usuario final. Las principales aplicaciones que trae Ubuntu son: navegador web Mozilla Firefox, cliente de mensajera

instantnea Empathy, cliente de redes sociales Gwibber, cliente para enviar y recibir correo Evolution, reproductor multimedia Totem, reproductor de

msica Rhythmbox, editor de vdeos PiTiVi, editor de imgenes Shotwell, cliente y gestor de BitTorrents Transmission, Office, y el grabador central de discos Brasero, buscar e suite instalar

ofimtica Open

instalador

para

aplicaciones Centro de software de Ubuntu.

Seguridad y accesibilidad: El sistema incluye funciones avanzadas de seguridad y entre sus polticas se encuentra el no activar, de forma predeterminada, procesos latentes al momento de instalarse. Por eso mismo, no hay uncortafuego predeterminado, ya que no existen servicios que puedan atentar a la seguridad del sistema. Para labores o tareas administrativas en la lnea de comandos incluye una herramienta llamada sudo (de las siglas en ingls de SuperUser do), con la que se evita el uso del usuarioadministrador. Posee accesibilidad e

internacionalizacin, de modo que el sistema est disponible para tanta gente como sea posible. Desde la versin 5.04, se utiliza UTF-8 como codificacin de caracteres predeterminado.

No slo se relaciona con Debian por el uso del mismo formato de paquetes deb. Tambin tiene uniones muy fuertes con esa comunidad, contribuyendo con cualquier cambio directa e inmediatamente, y no slo anuncindolos. Esto sucede en los tiempos de lanzamiento. Muchos de los desarrolladores de Ubuntu son tambin responsables de los paquetes importantes dentro de la

distribucin Debian.

Para centrarse en solucionar rpidamente los bugs, conflictos de paquetes, etc. se decidi eliminar ciertos paquetes del componentemain, ya que no son populares o simplemente se escogieron de forma arbitraria por gusto o sus bases de apoyo

GUILLERMO CRDENAS HERNNDEZ.

30

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

al software libre. Por tales motivos inicialmente KDE no se encontraba con ms soporte de lo que entregaban los mantenedores de Debian en sus repositorios, razn por la que se sum la comunidad de KDE creando la

distribucin GNU/Linux Kubuntu.

ORGANIZACIN DE PAQUETES.

Ubuntu divide todo el software en cuatro secciones, llamadas componentes, para mostrar diferencias en licencias y la prioridad con la que se atienden los problemas que informen los usuarios. Estos componentes

son: main, restricted, universe y multiverse. Por defecto se instalan paquetes de los componentes main y restricted. Los paquetes del componente universe de Ubuntu generalmente se basan en los paquetes de la rama inestable (Sid) y en el repositorio experimental de Debian.

main: contiene solamente los paquetes que cumplen los requisitos de la licencia de Ubuntu, y para los que hay soporte disponible por parte de su equipo. ste est pensado para que incluya todo lo necesario para la mayora de los sistemas Linux de uso general. Los paquetes de este componente poseen ayuda tcnica garantizada y mejoras de seguridad oportunas.

restricted: contiene paquetes soportados por los desarrolladores de Ubuntu debido a su importancia, pero que no est disponible bajo ningn tipo de licencia libre para incluir enmain. En este lugar se incluyen los paquetes tales como los controladores propietarios de algunas tarjetas grficas, como por ejemplo, los de ATI y NVIDIA. El nivel de la ayuda es ms limitado que para main, puesto que los desarrolladores pueden no tener acceso al cdigo fuente.

GUILLERMO CRDENAS HERNNDEZ.

31

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

universe: contiene una amplia gama de programas, que pueden o no tener una licencia restringida, pero que no recibe apoyo por parte del equipo de Ubuntu sino por parte de la comunidad. Esto permite que los usuarios instalen toda clase de programas en el sistema guardndolos en un lugar aparte de los paquetes soportados: main y restricted.

multiverse: contiene los paquetes sin soporte debido a que no cumplen los requisitos de software libre

LANZAMIENTOS Y SOPORTE

Las versiones estables se liberan cada 6 meses y Canonical proporciona soporte tcnico y actualizaciones de la seguridad para la mayora de las versiones de Ubuntu durante 18 meses, excepto para las versiones LTS (Long term support) que ofrece 3 aos para la versin escritorio y 5 aos para la versin servidor, a partir de la fecha del lanzamiento.

Existen planes para lanzar una rama de Ubuntu bajo el nombre en clave Grumpy Groundhog, la cual solo estar disponible para desarrolladores

Cada 4 versiones de Ubuntu se libera una versin con soporte tcnico extendido a la que se aade la terminacin LTS. Esto significa que los lanzamientos LTS contarn con actualizaciones de seguridad de paquetes de softwaredurante tres aos en entorno de escritorio y cinco aos en servidor por parte de Canonical, a diferencia de los otros lanzamientos de Ubuntu que slo cuentan con 18 meses de soporte.

GUILLERMO CRDENAS HERNNDEZ.

32

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

La primera LTS fue la versin 6.06 de la cual se liber una remasterizacin (la 6.06.1) para la edicin de escritorio y dos remasterizaciones (6.06.1 y 6.06.2) para la edicin servidor, ambas incluan actualizaciones de seguridad y correccin de errores.

La segunda LTS fue la versin 8.04 Hardy Heron, de la cual ya va por la cuarta y ltima revisin de mantenimiento (la 8.04.4).La ltima versin LTS que ha sido lanzada es la 10.04, Lucid Lynx, fue liberada en abril de 2010, la versin de mantenimiento actual va por la 10.04.1

SERVIDORESEn informtica, un servidor es un tipo de software que realiza ciertas tareas en nombre de los usuarios. El trmino servidor ahora tambin se utiliza para referirse al ordenador fsico en el cual funciona ese software, una mquina cuyo propsito es proveer datos de modo que otras mquinas puedan utilizar esos datos.

Este uso dual puede llevar a confusin. Por ejemplo, en el caso de un servidor web, este trmino podra referirse a la mquina que almacena y maneja los sitios web, y en este sentido es utilizada por las compaas que ofrecen hosting u hospedaje. Alternativamente, el servidor web podra referirse al software, como el servidor de http de Apache, que funciona en la mquina y maneja la entrega de los componentes de las pginas web como respuesta a peticiones de los navegadores de los clientes. Los archivos para cada sitio de Internet se almacenan y se ejecutan en el servidor. Hay muchos servidores en Internet y muchos tipos de servidores, pero comparten la funcin comn de proporcionar el acceso a los archivos y servicios.

GUILLERMO CRDENAS HERNNDEZ.

33

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

Un servidor sirve informacin a los ordenadores que se conecten a l. Cuando los usuarios se conectan a un servidor pueden acceder a programas, archivos y otra informacin del servidor. En la web, un servidor web es un ordenador que usa el protocolo http para enviar pginas web al ordenador de un usuario cuando el usuario las solicita.

Los servidores web, servidores de correo y servidores de bases de datos son a lo que tiene acceso la mayora de la gente al usar Internet. Algunos servidores manejan solamente correo o solamente archivos, mientras que otros hacen ms de un trabajo, ya que un mismo ordenador puede tener diferentes programas de servidor funcionando al mismo tiempo. Los servidores se conectan a la red mediante una interfaz que puede ser una red verdadera o mediante conexin va lnea telefnica o digital.

TIPOS DE SERVIDORES Servidores de Correo (Mail Servers): Casi tan ubicuos y cruciales como los servidores web, los servidores de correo mueven y almacenan el correo electrnico a travs de las redes corporativas (va LANs y WANs) y a travs de Internet.

Servidores Telnet (Telnet Servers): Un servidor telnet permite a los usuarios entrar en un ordenador husped y realizar tareas como si estuviera trabajando directamente en ese ordenador.

Servidores de Listas (List Servers): Los servidores de listas ofrecen una manera mejor de manejar listas de correo electrnico, bien sean discusiones interactivas abiertas al pblico o listas unidireccionales de anuncios, boletines de noticias o publicidad.

GUILLERMO CRDENAS HERNNDEZ.

34

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

Servidores de Aplicaciones (Application Servers): Designados a veces como un tipo de middleware (software que conecta dos aplicaciones), los servidores de aplicaciones ocupan una gran parte del territorio entre los servidores de bases de datos y el usuario, y a menudo los conectan.

Servidores de Audio/Video (Audio/Video Servers): Los servidores de Audio/Video aaden capacidades multimedia a los sitios web

permitindoles mostrar contenido multimedia en forma de flujo continuo (streaming) desde el servidor.

Servidores de Fax (Fax Servers): Un servidor de fax es una solucin ideal para organizaciones que tratan de reducir el uso del telfono pero necesitan enviar documentos por fax.

Servidores FTP (FTP Servers): Uno de los servicios ms antiguos de Internet, File Transfer Protocol permite mover uno o ms archivos.

Servidores de Chat (Chat Servers): Los servidores de chat permiten intercambiar informacin a una gran cantidad de usuarios ofreciendo la posibilidad de llevar a cabo discusiones en tiempo real.

Servidores IRC (IRC Servers): Otra opcin para usuarios que buscan la discusin en tiempo real, Internet Relay Chat consiste en varias redes de servidores separadas que permiten que los usuarios conecten el uno al otro va una red IRC.

Servidores de Noticias (News Servers): Los servidores de noticias actan como fuente de distribucin y entrega para los millares de grupos de noticias pblicos actualmente accesibles a travs de la red de noticias USENET.

GUILLERMO CRDENAS HERNNDEZ.

35

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

Servidores Proxy (Proxy Servers): Los servidores proxy se sitan entre unprograma del cliente (tpicamente un navegador) y un servidor externo (tpicamente otro servidor web) para filtrar peticiones, mejorar el Funcionamiento y compartir conexiones.

NETFILTER/IPTABLESNetfilter es un framework disponible en el ncleo Linux que permite interceptar y manipular paquetes de red. Dicho framework permite realizar el manejo de paquetes en diferentes estados del procesamiento. Netfilter es tambin el nombre que recibe el proyecto que se encarga de ofrecer herramientas libres para cortafuegos basados en Linux.

El componente ms popular construido sobre Netfilter es iptables, una herramienta de cortafuegos que permite no solamente filtrar paquetes, sino tambin

realizar traduccin de direcciones de red (NAT) para IPv4 o mantener registros de log. El proyecto Netfilter no slo ofrece componentes disponibles

como mdulos del ncleo sino que tambin ofrece herramientas de espacio de usuario y libreras.

GUILLERMO CRDENAS HERNNDEZ.

36

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

Iptables es el nombre de la herramienta de espacio de usuario mediante la cual el administrador puede definir polticas de filtrado del trfico que circula por la red. El nombre iptables se utiliza frecuentemente de forma errnea para referirse a toda la infraestructura ofrecida por el proyecto Netfilter. Sin embargo, el proyecto ofrece otros subsistemas independientes de iptables tales como el connection tracking system o sistema de seguimiento de conexiones, o que, que permite encolar paquetes para que sean tratados desde espacio de usuario. Iptables es un software disponible en prcticamente todas las distribuciones de Linux actuales.

El proyecto Netfilter/iptables comenz en 1998 con Rusty Russell, tambin autor del proyecto que lo precedi, ipchains. A medida que el proyecto fue creciendo, fund el Netfilter Core Team (o simplemente el coreteam) en 1999, que se trata del grupo de personas que se encarga directamente del desarrollo y mantenimiento del proyecto. El software que ellos produjeron (al que llamaremos netfilter de aqu en adelante) est licenciado bajo la licencia GPL (GNU General Public License), y fue incorporado al ncleo Linux 2.3 en marzo de 2000. En agosto de 2003, Harald Welte fue designado lder del coreteam. En febrero de 2007 entra a formar parte del coreteam el andaluz Pablo Neira.

Antes de iptables, los programas ms usados para crear cortafuegos en Linux eran ipchains en el ncleo Linux 2.2 e ipfwadm en el ncleo Linux 2.0, que a su vez se basaba en ipfw de BSD. Tanto ipchains como ipfwadm alteran el cdigo de red para poder manipular los paquetes, ya que no exista un framework general para el manejo de paquetes hasta la aparicin de netfilter. Iptables mantiene la idea bsica introducida en Linux con ipfwadm: listas de reglas en las que se especifica qu matchear dentro de un paquete y qu hacer con ese paquete. Ipchains agrega el concepto de cadenas de reglas (chains) e iptables extendi esto a la idea de tablas: se consultaba una tabla para decidir si haba que Natear un paquete, y se consultaba otra para decidir cmo filtrar un paquete. Adicionalmente, se modificaron los tres puntos en los que se realiza el filtrado en

GUILLERMO CRDENAS HERNNDEZ.

37

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

el viaje de un paquete, de modo que un paquete pase solo por un punto de filtrado. Mientras que ipchains e ipfwadm combinan filtrado de paquetes y NAT

(especficamente tres tipos de NAT, llamados masquerading o enmascaramiento de IP, port forwarding oredireccionamiento de puertos, y redirection o redireccin), netfilter hace posible por su parte separar las operaciones sobre los paquetes en tres partes: packet filtering (filtrado de paquetes), connection tracking (seguimiento de conexiones) y Network Address Translation (NAT o traduccin de direcciones de red). Cada parte se conecta a las herramientas de netfilter en diferentes puntos para acceder a los paquetes. Los subsistemas de seguimiento de conexiones y NAT son ms generales y poderosos que los que realizaban ipchains eipfwadm.

Esta divisin permite a iptables, a su vez, usar la informacin que la capa de seguimiento de conexiones ha determinado acerca del paquete: esta informacin estaba antes asociada a NAT. Esto hace a iptables superior a ipchains, ya que tiene la habilidad de monitorizar el estado de una conexin y redirigir, modificar o detener los paquetes de datos basados en el estado de la conexin y no solamente por el origen, destino o contenido del paquete. Un cortafuegos que utilice iptables de este modo se llama cortafuegos stateful, contrario a ipchainsque solo permite crear un cortafuegos stateless (excepto en casos muy limitados). Podemos decir entonces que ipchains no est al tanto del contexto completo en el cual un paquete surge, mientras que iptables s y por lo tanto iptables puede hacer mejores decisiones sobre el futuro de los paquetes y las conexiones. iptables, el subsistema NAT y el subsistema de seguimiento de conexiones son tambin extensibles, y muchas extensiones ya estn incluidas en el paquete bsico de iptables, tal como la extensin ya mencionada que permite la consulta del estado de la conexin. Extensiones adicionales se distribuyen junto a la utilidad iptables, como parches al cdigo fuentedel ncleo junto con una herramienta llamada patch-o-matic que permite aplicar los parches. Una versin de iptables para IPv6 ya fue escrita, llamada ip6tables al igual que la herramienta de administracin.

GUILLERMO CRDENAS HERNNDEZ.

38

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

En iptables, las reglas se agrupan en cadenas. Una cadena es un conjunto de reglas para paquetes IP, que determinan lo que se debe hacer con ellos. Cada regla puede desechar el paquete de la cadena (cortocircuito), con lo cual otras cadenas no sern consideradas. Una cadena puede contener un enlace a otra cadena: si el paquete pasa a travs de esa cadena entera o si cumple una regla de destino de retorno, va a continuar en la primera cadena. No hay un lmite respecto de cun anidadas pueden estar las cadenas. Hay tres cadenas bsicas (INPUT, OUTPUT y FORWARD: ENTRADA, SALIDA y REENVO) y el usuario puede crear tantas como desee. Una regla puede ser simplemente un puntero a una cadena.

TABLAS

Hay tres tablas ya incorporadas, cada una de las cuales contiene ciertas cadenas predefinidas. Es posible crear nuevas tablas mediante mdulos de extensin. El administrador puede crear y eliminar cadenas definidas por usuarios dentro de cualquier tabla. Inicialmente, todas las cadenas estn vacas y tienen una poltica de destino que permite que todos los paquetes pasen sin ser bloqueados o alterados.

filter table (Tabla de filtros) - Esta tabla es la responsable del filtrado (es decir, de bloquear o permitir que un paquete contine su camino). Todos los paquetes pasan a travs de la tabla de filtros. Contiene las siguientes cadenas predefinidas y cualquier paquete pasar por una de ellas:

GUILLERMO CRDENAS HERNNDEZ.

39

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

INPUT chain (Cadena de ENTRADA) - Todos los paquetes destinados a este sistema atraviesan esta cadena (y por esto se la llama algunas veces LOCAL_INPUT oENTRADA_LOCAL)

OUTPUT chain (Cadena de SALIDA) - Todos los paquetes creados por este sistema atraviesan esta cadena (a la que tambin se la conoce como LOCAL_OUTPUT oSALIDA_LOCAL)

FORWARD chain (Cadena de REDIRECCIN) - Todos los paquetes que meramente pasan por este sistema para ser encaminados a su destino recorren esta cadena

nat table (Tabla de traduccin de direcciones de red) - Esta tabla es la responsable de configurar las reglas de reescritura de direcciones o de puertos de los paquetes. El primer paquete en cualquier conexin pasa a travs de esta tabla; los veredictos determinan como van a reescribirse todos los paquetes de esa conexin. Contiene las siguientes cadenas redefinidas:

PREROUTING chain (Cadena de PRERUTEO) - Los paquetes entrantes pasan a travs de esta cadena antes de que se consulte la tabla de ruteo local, principalmente para DNAT (destination-NAT o traduccin de

direcciones de red de destino)

POSTROUTING chain (Cadena de POSRUTEO) - Los paquetes salientes pasan por esta cadena despus de haberse tomado la decisin del ruteo, principalmente para SNAT (source-NAT o traduccin de direcciones de red de origen)

OUTPUT chain (Cadena de SALIDA) - Permite hacer un DNAT limitado en paquetes generados localmente

mangle table (Tabla de destrozo) - Esta tabla es la responsable de ajustar las opciones de los paquetes, como por ejemplo la calidad de servicio. Todos los paquetes pasan por esta tabla. Debido a que est diseada para efectos avanzados, contiene todas las cadenas predefinidas posibles:

PREROUTING chain (Cadena de PRERUTEO) - Todos los paquetes que logran entrar a este sistema, antes de que el ruteo decida si el paquete

GUILLERMO CRDENAS HERNNDEZ.

40

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

debe ser reenviado (cadena de REENVO) o si tiene destino local (cadena de ENTRADA)

INPUT chain (Cadena de ENTRADA) - Todos los paquetes destinados para este sistema pasan a travs de esta cadena

FORWARD chain (Cadena de REDIRECCIN) - Todos los paquetes que exactamente pasan por este sistema pasan a travs de esta cadena

OUTPUT chain (Cadena de SALIDA) - Todos los paquetes creados en este sistema pasan a travs de esta cadena

POSTROUTING chain (Cadena de POSRUTEO) - Todos los paquetes que abandonan este sistema pasan a travs de esta cadena.

Adems de las cadenas ya incorporadas, el usuario puede crear todas las cadenas definidas por el usuario que quiera dentro de cada tabla, las cuales permiten agrupar las reglas en forma lgica.

Cada cadena contiene una lista de reglas. Cuando un paquete se enva a una cadena, se lo compara, en orden, contra cada regla en la cadena. La regla especifica qu propiedades debe tener el paquete para que la regla coincida, como nmero de puerto o direccin IP. Si la regla no coincide, el procesamiento contina con la regla siguiente. Si la regla, por el contrario, coincide con el paquete, las instrucciones de destino de las reglas se siguen (y cualquier otro procesamiento de la cadena normalmente se aborta). Algunas propiedades de los paquetes solo pueden examinarse en ciertas cadenas (por ejemplo, la interfaz de red de salida no es vlida en la cadena de ENTRADA). Algunos destinos solo pueden usarse en ciertas cadenas y/o en ciertas tablas (por ejemplo, el destino SNAT solo puede usarse en la cadena de POSRUTEO de la tabla de traduccin de direcciones de red).

DESTINO DE TABLAS.

GUILLERMO CRDENAS HERNNDEZ.

41

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

El destino de una regla puede ser el nombre de una cadena definida por el usuario o uno de los destinos ya incorporados ACCEPT, DROP, QUEUE,

o RETURN (aceptar, descartar, encolaro retornar, respectivamente). Cuando un destino es el nombre de una cadena definida por el usuario, al paquete se lo dirige a esa cadena para que sea procesado (tal como ocurre con una llamada a una subrutina en un lenguaje de programacin). Si el paquete consigue atravesar la cadena definida por el usuario sin que ninguna de las reglas de esa cadena acte sobre l, el procesamiento del paquete contina donde haba quedado en la cadena actual. Estas llamadas entre cadenas se pueden anidar hasta cualquier nivel deseado.

Existen los siguientes destinos ya incorporados: ACCEPT (aceptar) Este destino hace que netfilter acepte el paquete. El significado de esto depende de cul sea la cadena realizando esta aceptacin. Un paquete que se acepta en la cadena de ENTRADA se le permite ser recibido por el sistema (host), un paquete que se acepta en la cadena de SALIDA se le permite abandonar el sistema y un paquete que se acepta en la cadena de REDIRECCIN se le permite ser encaminado (routing) a travs del sistema. DROP (descartar) Este destino hace que netfilter descarte el paquete sin ningn otro tipo de procesamiento. El paquete simplemente desaparece sin ningn tipo de indicacin al sistema o aplicacin de origen, de que fue descartado en el sistema de destino. Esto se refleja en el sistema que enva el paquete a menudo, como un communication timeout (alcance del mximo tiempo de espera en la comunicacin), lo que puede causar confusin, aunque el descarte de paquetes entrantes no deseados se considera a veces una buena poltica de seguridad, pues no da ni siquiera el indicio a un posible atacante de que el sistema destino existe.

QUEUE (encolar)

GUILLERMO CRDENAS HERNNDEZ.

42

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

Este destino hace que el paquete sea enviado a una cola en el espacio de usuario. Una aplicacin puede usar la biblioteca libipq, tambin parte del proyecto netfilter/iptables, para alterar el paquete. Si no hay ninguna aplicacin que lea la cola, este destino es equivalente a DROP.

RETURN (retorno) Hace que el paquete en cuestin deje de circular por la cadena en cuya regla se ejecut el destino RETURN. Si dicha cadena es una subcadena de otra, el paquete continuar por la cadena superior como si nada hubiera pasado. Si por el contrario la cadena es una cadena principal (por ejemplo la cadena INPUT), al paquete se le aplicar la poltica por defecto de la cadena en cuestin (ACCEPT, DROP o similar).

Hay muchos destinos de extensin disponibles. Algunos de los ms comunes son: REJECT (rechazo)

Este destino tiene el mismo efecto que 'DROP', salvo que enva un paquete de error a quien envi originalmente. Se usa principalmente en las cadenas de ENTRADA y de REDIRECCIN de la tabla de filtrado. El tipo de paquete se puede controlar a travs del parmetro '--reject-with'. Un paquete de rechazo puede indicar explcitamente que la conexin ha sido filtrada (un paquete ICMP filtrado administrativamente por conexin), aunque la mayora de los usuarios prefieren que el paquete indique simplemente que la computadora no acepta ese tipo de conexin (tal paquete ser un paquete tcp-reset para conexiones TCP denegadas, un icmp-port-unreachable para sesiones UDP denegadas o unicmp-protocolunreachable para paquetes no TCP y no UDP). Si el parmetro '--reject-with' no se especifica, el paquete de rechazo por defecto es siempre icmp-port-unreachable.

LOG (bitcora)

GUILLERMO CRDENAS HERNNDEZ.

43

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

Este destino lleva un log o bitcora del paquete. Puede usarse en cualquier cadena en cualquier tabla, y muchas veces se usa para debuggear (anlisis de fallos, como ser la verificacin de qu paquetes estn siendo descartados).

ULOG Este destino lleva un log o bitcora del paquete, pero no de la misma manera que el destino LOG. El destino LOG le enva informacin al log del ncleo, pero ULOG hacemultidifusin de los paquetes que coincidan con esta regla a travs de un socket netlink, de manera que programas del espacio de usuario puedan recibir este paquete conectndose al socket.

DNAT Este destino hace que la direccin (y opcionalmente el puerto) de destino del paquete sean reescritos para traduccin de direccin de red. Mediante la opcin '-to-destination' debe indicarse el destino a usar. Esto es vlido solamente en las cadenas de SALIDA y PRERUTEO dentro de la tabla de nat. Esta decisin se recuerda para todos los paquetes futuros que pertenecen a la misma conexin y las respuestas tendrn su direccin y puerto de origen cambiados al original (es decir, la inversa de este paquete).

SNAT Este destino hace que la direccin (y opcionalmente el puerto) de origen del paquete sean reescritos para traduccin de direccin de red. Mediante la opcin '-to-source' debe indicarse el origen a usar. Esto es vlido solamente en la cadena de POSRUTEO dentro de la tabla de nat y, como DNAT, se recuerda para todos los paquetes que pertenecen a la misma conexin.

MASQUERADE Esta es una forma especial, restringida de SNAT para direcciones IP dinmicas, como las que proveen la mayora de los proveedores de servicios de Internet (ISPs) para mdems olnea de abonado digital (DSL). En vez de cambiar

GUILLERMO CRDENAS HERNNDEZ.

44

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

la regla de SNAT cada vez que la direccin IP cambia, se calcula la direccin IP de origen a la cual hacer NAT fijndose en la direccin IP de la interfaz de salida cuando un paquete coincide con esta esta regla. Adicionalmente, recuerda cuales conexiones usan MASQUERADE y si la direccin de la interfaz cambia (por ejemplo, por reconectarse al ISP), todas las conexiones que hacen NAT a la direccin vieja se olvidan.

SEGUIMIENTO DE CONEXIONES.

Una de las caractersticas de importancia que est construda por encima del framework de netfilter es el seguimiento de conexiones (connection tracking). El seguimento de conexiones le permite al ncleo llevar cuenta de todas las conexiones o sesiones lgicas de red y de este modo relacionar todos los paquetes que pueden llegar a formar parte de esa conexin. La traduccin de direccin de red (NAT) depende de esta informacin para traducir todos los paquetes relacionados de la misma manera e iptables puede usar esta informacin para actuar como un cortafuegos stateful. El seguimiento de conexiones clasifica cada paquete en uno de cuatro estados: NEW (nuevo) Intentando crear una conexin nueva. ESTABLISHED (establecido) Parte de una conexin ya existente. RELATED (relacionado) Relacionada, aunque no realmente parte de una conexin existente. INVALID (invlido)

No es parte de una conexin existente e incapaz de crear una conexin nueva. Un caso comn sera que el primer paquete que el cortafuegos ve se clasificar como NEW, la respuesta se clasificar como ESTABLISHED y un

error ICMP sera RELATED. Un paquete de error ICMP que no coincide con una conexin conocida ser INVALID.

GUILLERMO CRDENAS HERNNDEZ.

45

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

El estado de la conexin es completamente independiente de cualquier estado de TCP. Si la terminal (host) responde con un paquete SYN ACK para sealar una conexin TCP entrante nueva, la conexin TCP misma no se establece, pero la conexin a la que se le hace el seguimiento s se establece. Este paquete 'coincidir el estado ESTABLISHED.

Sin embargo, una conexin a la que se le hace el seguimiento de un protocolo sin estado como UDP tiene un estado de conexin.

Es ms, mediante el uso de mdulo que pueden agregarse, al seguimiento de conexin se le puede dar conocimiento de los protocolos de la capa de aplicacin y as que entienda que dos o ms conexiones distintas estn "relacionadas". Por ejemplo, considrese el protocolo FTP. Se establece una conexin de control, pero cada vez que se transfiere informacin, se establece otra conexin para que la transfiera. Si se carga el mdulo nf_conntrack_ftp, el primer paquete de una conexin de datos FTP se clasificar como RELATED en lugar de NEW, ya que lgicamente es parte de una conexin existente.

iptables puede usar la informacin del seguimiento de conexiones para conseguir hacer reglas de filtrado de paquetes ms potentes y ms fciles de manejar. La extensin de "estado" le permite a las reglas de iptables que examinen la clasificacin de seguimiento de conexin para un paquete. Por ejemplo, una regla puede permitir el paso solo a paquetes NEW desde dentro del cortafuegos hacia afuera, pero permitir paquetes RELATED y ESTABLISHED en ambas direcciones. Esto permite el paso de paquetes de respuesta normales desde el exterior (ESTABLISHED), pero no permite que lleguen conexiones nuevas desde el exterior al interior. Sin embargo, si una conexin de datos FTP necesita llegar desde el exterior del cortafuegos hacia el interior, ser permitido, porque el paquete se clasificar correctamente como RELATED para la conexin de control FTP, en vez de NEW.

GUILLERMO CRDENAS HERNNDEZ.

46

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

ESPECIFICACIONES DE REGLAS.

La mayora de las formas de comandos de iptables requieren que se les indiquen una especificacin de reglas, que es usada para matchear un subconjunto particular del trfico de paquetes de red procesados por una cadena. La especificacin de regla incluye tambin un destino que especifica qu hacer con paquetes que son matcheados por la regla. Las siguientes opciones se usan (frecuentemente combinadas unas con otras) para crear especificaciones de reglas.

-j destino --jump destino

Especifica el destino de una regla. El destino es el nombre de una cadena definida por el usuario (creada usando la opcin -N, uno de los destinos ya incorporados, ACCEPT, DROP,QUEUE, o RETURN, o un destino de extensin, como REJECT, LOG, DNAT, o SNAT. Si esta opcin es omitida en una regla, entonces el matcheo de la regla no tendr efecto en el destino de un paquete, pero los contadores en la regla se incrementarn.

-i [!] in-interface --in-interface [!] in-interface

Nombre de una interfaz a travs de la cual un paquete va a ser recibido (solo para paquetes entrando en las cadenas de INPUT, FORWARD y PREROUTING). Cuando se usa el argumento '!' antes del nombre de la interfaz, el significado se invierte. Si el nombre de la interfaz termina con '+', entonces cualquier interfaz que comience con este nombre sermatcheada. Si esta opcin se omite,

se matchear todo nombre de interfaz.

GUILLERMO CRDENAS HERNNDEZ.

47

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

-o [!] out-interface --out-interface [!] out-interface

Nombre de una interfaz a travs de la cual un paquete va a ser enviado (para paquetes entrando en las cadenas de FORWARD, OUTPUT y POSTROUTING). Cuando se usa el argumento '!' antes del nombre de la interfaz, el significado se invierte. Si el nombre de la interfaz termina con '+', entonces cualquier interfaz que comience con este nombre sermatcheada. Si esta opcin se omite,

se matchear todo nombre de interfaz.

-p [!] protocol --protocol [!] protocol

Matchea paquetes del nombre de protocolo especificado. Si '!' precede el nombre de protocolo, se matchean todos los paquetes que no son el protocolo especificado. Nombres de protocolo vlidos son icmp, udp, tcp... Una lista de todos los protocolos vlidos puede encontrarse en el archivo /etc/protocols. -s [!] origen[/prefijo] --source [!] origen[/prefijo]

Matchea paquetes IP viniendo de la direccin de origen especificada. La direccin de origen puede ser una direccin IP, una direccin IP con un prefijo de red asociado, o un nombre de terminal (hostname). Si '!' precede al origen, se matchean todos los paquetes que no vienen del origen especificado.

-d [!] destino[/prefijo] --destination [!] destino[/prefijo]

Matchea paquetes IP yendo a la direccin de destino especificada. La direccin de destino puede ser una direccin IP, una direccin IP con un prefijo de

GUILLERMO CRDENAS HERNNDEZ.

48

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

red asociado, o un nombre de terminal (hostname). Si '!' precede al origen, se matchean todos los paquetes que no van al destino especificado.

--destination-port [!] [puerto[[:puerto]] --dport [!] [puerto[[:puerto]]

Matchea paquetes TCP o UDP (dependiendo del argumento a la opcin -p) destinados a los puertos o rango de puertos (cuando se usa la

forma puerto:puerto) especificados. Si '!' precede la especificacin de puertos, se matchean todos los paquetes TCP o UDP que no estn destinados a los puertos o rango de puertos especificados.

--source-port [!] [puerto[[:puerto]] --sport [!] [puerto[[:puerto]]

Matchea paquetes TCP o UDP (dependiendo del argumento a la opcin -p) que vienen de los puertos o rango de puertos (cuando se usa la forma puerto:puerto) especificados. Si '!' precede la especificacin de puertos, se matchean todos los paquetes TCP o UDP que no vienen de los puertos o rango de puertos especificados.

--tcp-flags [!] mask comp

Matchea paquetes TCP que tienen marcadas o desmarcadas ciertas banderas del protocolo TCP. El primer argumento especifica las banderas a examinar en cada paquete TCP, escritas en una lista separada por comas (no se permiten espacios). El segundo argumento es otra lista separada por comas de banderas que deben estar marcadas dentro de las que se debe examinar. Estas banderas son: SYN, ACK, FIN, RST, URG, PSH, ALL, y NONE. Por lo tanto, la opcin "--tcp-flags SYN, ACK, FIN, RST SYN" solo va amatchear paquetes con la bandera SYN marcada y las banderas ACK, FIN y RST desmarcadas.

GUILLERMO CRDENAS HERNNDEZ.

49

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

[!] syn

Matchea paquetes TCP que tienen la bandera SYN marcada y las banderas ACK, FIN y RST desmarcadas. Estos paquetes son los que se usan para iniciar conexiones TCP. Al bloquear tales paquetes en la cadena de INPUT, se previenen conexiones TCP entrantes, pero conexiones TCP salientes no sern afectadas. Esta opcin puede combinarse con otras, como --source, para bloquear o dejar pasar conexiones TCP entrantes solo de ciertas terminales o redes. Esta opcin es equivalente a "--tcp-flags SYN, RST, ACK SYN". Si '!' precede a --syn, el significado de la opcin se invierte.

INVOCACION

El comando iptables tiene las siguientes formas de invocacin. tems entre llaves, {...|...|...}, son requeridos, pero solo se puede indicar uno de los tems separados por '|'. tems entre corchetes, [...], son opcionales.

iptables { -A | --append | -D | --delete } cadena especificacin-de-regla [ opciones ]

Esta forma de invocacin del comando agrega (-A o --append) o elimina (-D o -delete) una regla de la cadena especificada. Por ejemplo, para agregar una regla a la cadena de INPUT en la tabla filter (la tabla por defecto cuando la opcin -t no se especifica) que descarte todos los paquetes UDP, usamos este comando: iptables -A INPUT -p udp -j DROP

Para borrar la regla agregada por el comando anterior, usamos este comando: iptables -D INPUT -p udp -j DROPGUILLERMO CRDENAS HERNNDEZ. 50

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

El comando anterior borra en verdad la primera regla de la cadena de INPUT que matchea la especificacin de regla "-p udp -j DROP". Si hay varias reglas idnticas en la cadena, solo se borra la primera regla que matchee. iptables { -R | --replace | -I | --insert } cadena numregla especificacin-de-regla [ opciones ]

Esta forma de invocacin del comando reemplaza (-R o --replace) una regla existente o inserta (-I o --insert) una regla nueva en la cadena especificada. De hecho, para reemplazar la cuarta regla en la cadena de INPUT por una regla que descarte todos los paquetes ICMP, usamos este comando: iptables -R INPUT 4 -p icmp -j DROP

Para insertar una regla nueva en el segundo lugar de la cadena de OUTPUT que descarte todo el trfico TCP dirigido al puerto 80 en cualquier terminal, usamos este comando: iptables -I OUTPUT 2 -p tcp --dport 80 -j DROP

iptables { -D | --delete } cadena numregla [ opciones ] Esta forma de invocacin del comando elimina una regla del ndice numrico especificado en la cadena especificada. Las reglas se numeran comenzando desde 1. Por ejemplo, para eliminar la tercer regla de la cadena FORWARD, usamos este comando: iptables -D FORWARD 3

iptables { -L | --list | -F | --flush | -Z | --zero } [ cadena ] [ opciones ] Esta forma de invocacin del comando se usa para listar las reglas en una cadena (-L o --list), tirar (es decir, eliminar) todas las reglas de una cadena (-F o --flush), o para poner en cero el byte y los contadores de paquetes de una cadena (-Z o -zero). Si no se especifica ninguna cadena, la operacin se realiza para todas las

GUILLERMO CRDENAS HERNNDEZ.

51

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

cadenas. Por ejemplo, para listar las reglas en la cadena de OUTPUT, usamos este comando: iptables -L OUTPUT

Para tirar todas las cadenas, usamos este comando: iptables F

Para poner en cero el byte y los contadores de paquetes de la cadena de PREROUTING en la tabla nat, usamos este comando: iptables -t nat -Z PREROUTING

iptables { -N | --new-chain } cadena iptables { -X | --delete-chain } [ cadena ]

Esta forma de invocacin del comando se usa para crear (-N o --new-chain) una cadena definida por el usuario nueva o para eliminar (-X o --delete-chain) una cadena definida por el usuario existente. Si no se especifica ninguna cadena con las opciones -X o --delete-chain, se eliminan todas las cadenas definidas por el usuario. No es posible eliminar cadenas ya incorporadas, como ser las cadenas de INPUT u OUTPUT en la tabla filter.

iptables { -P | --policy } cadena destino

Esta forma de invocacin del comando se usa para especificar la poltica de destino para una cadena. De hecho, para especificar la poltica de destino para la cadena de INPUT en DROP, usamos este comando: iptables -P INPUT DROP

GUILLERMO CRDENAS HERNNDEZ.

52

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

iptables { -E | --rename-chain } nombre-de-cadena-viejo nombre-de-cadena-nuevo Esta forma de invocacin del comando se usa para renombrar una cadena definida por el usuario.

BASHBash es un programa informtico cuya funcin consiste en interpretar rdenes. Est basado en la shell de Unix y es compatible conPOSIX. Fue escrito para el proyecto GNU y es el intrprete de comandos por defecto en la mayora de las distribuciones de Linux. Su nombre es un acrnimo de Bourne-Again Shell (otro shell bourne) haciendo un juego de palabras (born-again significa renacimiento) sobre el Bourne shell (sh), que fue uno de los primeros intrpretes importantes de Unix.

Hacia 1978 Bourne era el intrprete distribuido con la versin del sistema operativo Unix Versin 7. Stephen Bourne, por entonces investigador de los Laboratorios Bell, escribi la versin original de Bourne. Brian Fox escribi bash en 1987. En 1990, Chet Ramey se convirti en su principal desarrollador. Bash es el intrprete predeterminado en la mayora de sistemas GNU/Linux, adems de Mac OS X Tiger, y puede ejecutarse en la mayora de los sistemas

GUILLERMO CRDENAS HERNNDEZ.

53

ADMINISTRACIN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.

operativos tipo Unix. Tambin se ha llevado a Microsoft Windows por el proyecto Cygwin.

SINTAXIS

La sintaxis de rdenes de bash es un superconjunto de instrucciones basadas en la sintaxis del intrprete Bourne. La especificacin definitiva de la sintax