INFORME FINAL DE PROYECTO DE RESIDENCIA PROFESIONAL Nombre de la Empresa: WIRED & WIRELESS NETWORKS S.A. DE C.V. Nombre del Proyecto:
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
RESIDENTE Nombre:
GUILLERMO CÁRDENAS HERNÁNDEZ.
Número de control:
06ISC098
Carrera:
INGENIERÍA EN SISTEMAS COMPUTACIONALES.
Periodo Escolar:
AGOSTO 2010 – ENERO 2011
Asesor Externo
Asesor Interno
I.T. HUGO ESCORCIA VÁZQUEZ.
LIC. YOANA DÍAZ CASTILLO.
Tamazunchale, S.L.P.
Enero de 2011.
INFORME FINAL DE PROYECTO DE RESIDENCIA PROFESIONAL Nombre de la Empresa: WIRED & WIRELESS NETWORKS S.A. DE C.V. Nombre del Proyecto:
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
RESIDENTE Nombre:
GUILLERMO CÁRDENAS HERNÁNDEZ.
Número de control:
06ISC098
Carrera:
INGENIERÍA EN SISTEMAS COMPUTACIONALES.
Periodo Escolar:
AGOSTO 2010 – ENERO 2011
Asesor Externo
Asesor Interno
I.T. HUGO ESCORCIA VÁZQUEZ.
LIC. YOANA DÍAZ CASTILLO.
Nombre, Firma y Sello
Tamazunchale, S.L.P.
Nombre y Firma
Enero de 2011.
INFORME FINAL DE PROYECTO DE RESIDENCIA PROFESIONAL Nombre de la Empresa: WIRED & WIRELESS NETWORKS S.A. DE C.V. Nombre del Proyecto:
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
RESIDENTE Nombre:
GUILLERMO CÁRDENAS HERNÁNDEZ.
Número de control:
06ISC098
Carrera:
INGENIERÍA EN SISTEMAS COMPUTACIONALES.
Periodo Escolar:
AGOSTO 2010 – ENERO 2011
Asesor Externo
Asesor Interno
I.T. HUGO ESCORCIA VÁZQUEZ.
LIC. YOANA DÍAZ CASTILLO.
Nombre, Firma y Sello
Tamazunchale, S.L.P.
Nombre y Firma
Enero de 2011.
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
ÍNDICE 1.- INTRODUCCIÓN ............................................................ ...................................................................................... .............................. .... 1 2.- JUSTIFICACIÓN ............................................ ...................................................................... ............................................... ..................... 3 3.- OBJETIVOS GENERALES Y ESPECÍFICOS ............................................... ............................................... 4 4.- CARACTERÍSTICAS DEL AREA ................................................. .................................................................. ................. 5 4.1.- DATOS GENERALES DE LA EMPRESA ............................................. ............................................. 5 4.2.- BREVE DESCRIPCIÓN DE LA EMPRESA .......................................... .......................................... 6 5.- PROBLEMAS A RESOLVER PRIORIZÁNDOLOS ....................................... ....................................... 7 6.- ALCANCES Y LIMITACIONES ........................................ .................................................................. ............................. ... 8 7.- FUNDAMENTO TEÓRICO......................... TEÓRICO................................................... ................................................... ......................... 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 61 7.13.- VPN ................................................ .......................................................................... ................................................. ....................... 67 8.- PROCEDIMIENTO Y DESCRIPCION DE LAS ACTIVIDADES .................. .................. 71 9.- RESULTADOS .............................. ........................................................ ................................................... .................................... ........... 73 10.- CONCLUSIONES ................................................. .......................................................................... .................................... ........... 74 74 11.- RECOMENDACIONES .............................................. ........................................................................ ............................... ..... 75 12.- REFERENCIAS BIBLIOGRAFICAS ............................................... .......................................................... ........... 76 76 13.- ANEXOS ........................................................... .................................................................................... ........................................ ............... 77
GUILLERMO CÁRDENAS HERNÁNDEZ.
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
INTRODUCCIÓN. El mundo de la alta tecnología nunca hubiera existido de no ser por el desarrollo del ordenador o computadora. Toda la sociedad utiliza estas máquinas, en distintos tipos y tamaños, para el almacenamiento y manipulación de datos. Los equipos informáticos han abierto una nueva era en la fabricación gracias a las técnicas de automatización, y han permitido mejorar los sistemas modernos de comunicación. Son herramientas esenciales prácticamente en todos los campos de investigación y en tecnología aplicada. Para que estas computadoras puedan comunicarse, compartir,accesar y administrar información se requiere un elemento sumamente importante, el Servidor, éstees similar a una estación de trabajo, pero posee funciones administrativas y están 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 organización como por ejemplo.
Compartir Archivos y distribuirlos a los clientes de la empresa. Controlar una o más impresoras y aceptar trabajos de impresión de otros clientes de la red, poniendo en cola los procesos antes mencionados. Efectuar funciones relacionadas con la telefonía, como es la de contestador automático, realizando las funciones de un sistema interactivo para la respuesta de la voz, almacenando los mensajes de voz, encaminando las llamadas y controlando también la red o el Internet. Almacenar documentos HTML, imágenes, archivos de texto, escrituras, y demás material Web compuesto por datos, y distribuir este contenido a los usuarios de este.
GUILLERMO CÁRDENAS HERNÁNDEZ.
1
ADMINISTRACIÓN 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, también 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 líneas de módem de los monitores u otros canales de comunicación de la red para que las peticiones conecten con la red de una posición remota, responder llamadas telefónicas entrantes o reconocer la petición de la red y realizar la autentificación necesaria y otros procedimientos para registrar a un usuario en la red.
Hoy en día disponer de un servidor es una tarea necesaria en cualquier empresa para fines ya sea de seguridad, administración, o servicio, facilitando cualquier transacción en su red local o bien mundial. El proyecto ahora expuesto demuestra un desarrollo de una solución basada en ambiente Open Source, para facilitar las transacciones en una red, proporcionando una plataforma segura, así como también administrar la línea de su ISP (Proveedor de Servicios de Internet).
GUILLERMO CÁRDENAS HERNÁNDEZ.
2
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
JUSTIFICACIÓN. El proyecto se realizó con la finalidad de resolver las necesidades que presenta la empresa WWNetworks con respecto al control y administración de ancho de banda. Al mismo tiempo que se ofrece una alternativa tecnológica como parte de la solución así como también una plataforma segura, robusta y con gran crecimiento a futuro para nuevas mejoras o actualizaciones.
GUILLERMO CÁRDENAS HERNÁNDEZ.
3
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
OBJETIVOS GENERALES Y ESPECÍFICOS. OBJETIVO GENERAL Administrar el Ancho de Banda de los Servidores WWNetworks, así como también aplicar tecnologías como Firewall, Proxy, Filtrado de Contenido y Control Parental, bajo una Plataforma GNU/Linux. OBJETIVOS ESPECÍFICOS
Implementar el Desarrollo en Software Libre. Desarrollar una aplicación 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 CÁRDENAS HERNÁNDEZ.
4
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
CARACTERÍSTICAS DEL ÁREA. DATOS GENERALES DE LA EMPRESA. Nombre de la empresa: WIRED & WIRELESS NETWORKS, S.A. DE C.V. RFC: WAW-080514-114 Dirección: Acapulco No. 62, Colonia Roma, Distrito Federal, México. Giro: Proporcionar Soluciones Informáticas y de Telecomunicaciones.
ORGANIGRAMA:
Hugo Escorcia Vázquez Director General
Alfredo Rosas Gómez
Soporte Tecnico
Ingeniero de Soporte y Desarrollo de Negocios
Ingeniero de Soporte, Investigación y Desarrollo
GUILLERMO CÁRDENAS HERNÁNDEZ.
Lizette Vázquez Bravo Administración
5
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
BREVE DESCRIPCIÓN DE LA EMPRESA. Wired and Wireless Networks S.A. de C.V. es una empresa mexicana dedicada a la investigación y desarrollo de tecnologías de telecomunicaciones, seguridad e internet que ofrece las tecnologías que desarrolla como servicios de consultoría o ―Outsorcing‖ a la pequeña y mediana industria en México. HISTORIA DE LA EMPRESA Wired and Wireless Networks S.A. de C.V. fue fundada en el año 2008 por Hugo Escorcia Vázquez, quien con 14 años de experiencia en el área de telecomunicaciones y luego de ocupar diversos cargo en el sector privado, desarrolla e integra soluciones tecnológicas orientadas a Internet para comercializarlas como servicios integrales de consultoría.
GUILLERMO CÁRDENAS HERNÁNDEZ.
6
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
PROBLEMAS A RESOLVER PRIORIZÁNDOLOS.
El sistema operativo base con el que se cuenta es una distribución 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 CÁRDENAS HERNÁNDEZ.
7
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
ALCANCES.
Administración de Ancho de Banda de Los Servidores WWNetworks.
Mejora de Aplicación Web para la Administración de Módulos 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 través de una conexión a internet, independientemente de las características de los servidores con los que se trabajen.
LIMITACIONES.
Solo administrará los módulos de los servidores de WWNetworks. Se trabajará con 4 módulos que son VPN, Proxy Transparente, Firewall y Administración.
GUILLERMO CÁRDENAS HERNÁNDEZ.
8
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
FUNDAMENTO TEÓRICO. 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 están diseñados de forma que puedan ejecutar diversas tareas o programas. Estos programas pueden ir desde un procesador de textos, a un programa para la animación de gráficos tridimensionales o distintos tipos de juegos. Para su correcto funcionamiento deben ser además capaces de acceder a los recursos de que dispone el ordenador, como por ejemplo escribir o leer datos en un disco duro, mostrar un gráfico por pantalla, etc. (www.google.com, 2004) Es evidente, que si cada programa actuase de una forma independiente, existirían graves problemas y conflictos, puesto que, por ejemplo, tendrían 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 básicas 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 añadido otras muchas, como la ejecución de programas, el control de la memoria del ordenador, la creación y control de interfaces gráficas de usuario, etc.
GUILLERMO CÁRDENAS HERNÁNDEZ.
9
ADMINISTRACIÓN 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 más 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 más poderosos y en rápida expansión 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ó públicamente 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 espíritu de cooperación que prevaleció en los tiempos iniciales de la comunidad de usuarios de computadoras‖. GNU es un acrónimo recursivo que significa GNU No es Unix (GNU is Not Unix). Puesto que en inglés ―gnu‖ (en español "ñu") se pronuncia igual que "new", Richard Stallman recomienda pronunciarlo ― guh-noo‖. En español, se recomienda pronunciarlo ñu como el antílope africano o fonéticamente; por ello, el término mayoritariamente se deletrea (G-N-U) para su mejor comprensión. En sus charlas
GUILLERMO CÁRDENAS HERNÁNDEZ.
10
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Richard Stallman finalmente dice siempre, Se puede pronunciar de cualquier forma, la única pronunciación errónea es decirle ―linux‖ . UNIX es un Sistema Operativo no libre muy popular, porque está basado en una arquitectura que ha demostrado ser técnicamente estable. El sistema GNU fue diseñado para ser totalmente compatible con UNIX. El hecho de ser compatible con la arquitectura de UNIX implica que GNU esté compuesto de pequeñas piezas individuales de software, muchas de las cuales ya estaban disponibles, como el sistema de edición de textos TeX y el sistema gráfico 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 debía ser liberado bajo una licencia diseñada para garantizar esos derechos al tiempo que evitase restricciones posteriores de los mismos. La idea se conoce en Inglés como copyleft ―copia permitida‖ (en clara oposición a copyright ―derecho de copia‖ ), y está contenida en la Licencia General Pública de GNU (GPL). En 1985, Stallman creó la Free Software Foundation (FSF o Fundación para el Software Libre) para proveer soportes logísticos, legales y financieros al proyecto GNU. La FSF también contrató programadores para contribuir a GNU, aunque una porción sustancial del desarrollo fue (y continúa siendo) producida por voluntarios. A medida que GNU ganaba renombre, negocios interesados comenzaron a contribuir al desarrollo o comercialización de productos GNU y el correspondiente soporte técnico. El más prominente y exitoso de ellos fue Cygnus Solutions, ahora parte de Red Hat. En 1990, el sistema GNU ya tenía 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 típico. Pero faltaba un componente clave llamado núcleo (kernel en inglés).
GUILLERMO CÁRDENAS HERNÁNDEZ.
11
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
En el manifiesto GNU, Stallman mencionó que "un núcleo inicial existe, pero se necesitan muchos otros programas para emular Unix". Él se refería a TRIX, que es un núcleo de llamadas remotas a procedimientos, desarrollado por el MIT y cuyos autores decidieron que fuera libremente distribuido; TRIX era totalmente compatible con UNIX versión 7. En diciembre de 1986 ya se había trabajado para modificar este núcleo. Sin embargo, los programadores decidieron que no era inicialmente utilizable, debido a que solamente funcionaba en "algunos equipos sumamente complicados y caros" razón por la cual debería ser portado a otras arquitecturas antes de que se pudiera utilizar. Finalmente, en 1988, se decidió utilizar como base el núcleo Mach desarrollado en la CMU. Inicialmente, el núcleo recibió el nombre de Alix (así se llamaba una novia de Stallman), pero por decisión del programador Michael Bushnell fue renombrado a Hurd. Desafortunadamente, debido a razones técnicas y conflictos personales entre los programadores originales, el desarrollo de Hurd acabó estancándose. En 1991, Linus Torvalds empezó a escribir el núcleo Linux y decidió distribuirlo bajo la licencia GPL. Rápidamente, múltiples programadores se unieron a Linus en el desarrollo, colaborando a través de Internet y consiguiendo paulatinamente que Linux llegase a ser un núcleo compatible con UNIX. En 1992, el núcleo Linux fue combinado con el sistema GNU, resultando en un sistema operativo libre y completamente funcional. El Sistema Operativo formado por esta combinación es usualmente conocido como "GNU/Linux" o como una "distribución Linux" y existen diversas variantes. (Véase también: Controversia por la denominación GNU/Linux) También 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 también transportados a otros sistemas operativos como Microsoft Windows y Mac OS X.
GUILLERMO CÁRDENAS HERNÁNDEZ.
12
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
La única variante completamente GNU es GNU con el núcleo GNU Hurd, esta es distribuida como Debian GNU/Hurd y otros, aunque no hay ninguna versión oficial hasta el momento. Linux es el núcleo más usado con GNU, aunque Linux en sí no es parte de GNU. GNU también es utilizado con otros núcleos. 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 distribución 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 fácilmente 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 Computación de la Universidad de Helsinki, decidió realizar la cuantiosa inversión de $3500 para adquirir un nuevo PC 386 (33 Mhz, 4MB de RAM; una de las más avanzadas de su época). El pago lo realizaría a plazos, pues no disponía de tal cantidad de dinero en efectivo. GUILLERMO CÁRDENAS HERNÁNDEZ.
13
ADMINISTRACIÓN 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 utilizaría para leer desde el módem y escribir en la pantalla, mientras que el otro escribiría al módem y leería 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 después 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 más 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 presentación pública (pues ya era capaz de mostrar una shell y ejecutar el compilador gcc) pensó que era demasiado egocéntrico llamarlo así y propuso llamarlo Freax, aunque después se le siguió conociendo Linux. Después de anunciar el 25 de agosto de 1991 su intención 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 versión 0.01 de Linux con 10.000 líneas de código (en la actualidad tiene más de 10 millones). A partir de ese momento Linux empezó a evolucionar rápidamente.
GUILLERMO CÁRDENAS HERNÁNDEZ.
14
ADMINISTRACIÓN 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 están 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 opción muy a tener en cuenta por aquellos usuarios que se dediquen a trabajar a través de redes, naveguen por Internet, o se dediquen a la programación. Además el futuro de Linux es brillante y cada vez más y más gente y más y más empresas (entre otras IBM, Intel, Corel) están apoyando este proyecto, con lo que el sistema será cada vez más sencillo de emplear y los programas serán cada vez mejores.
GNU/LINUX
GNU/Linux es uno de los términos empleados para referirse a la combinación del núcleo o kernel libre similar a Unix denominado Linux, que es usado con herramientas de sistema GNU. Su desarrollo es uno de los ejemplos más prominentes de software libre; todo su código fuente puede ser utilizado, modificado y redistribuido libremente por cualquiera bajo los términos de la GPL (Licencia Pública General de GNU, en inglés: General Public License) y otra serie de licencias libres.
GUILLERMO CÁRDENAS HERNÁNDEZ.
15
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
A pesar de que Linux (núcleo) es, en sentido estricto, el sistema operativo,2 parte fundamental de la interacción entre el núcleo y el usuario (o los programas de aplicación) 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 término Linux para referirse a la unión de ambos proyectos. Para más información consulte la sección "Denominación GNU/Linux" o el artículo "Controversia por la denominación GNU/Linux". A las variantes de esta unión de programas y tecnologías, a las que se les adicionan diversos programas de aplicación de propósitos específicos 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 más importante del mercado. Según 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 también esusadoenelsegmentodelas computadorasde escritorio, portátiles, computadoras de bolsillo, teléfonos móviles, sistemas embebidos, videoconsolas y otros dispositivos. GNU/Linux es Programática Libre, esto significa que el usuario es libre de redistribuir y modificar de acuerdo a necesidades específicas, siempre que se incluya el código fuente, como lo indica la Licencia Pública General GNU (acrónimo de GNU is Not Unix), que es el modo que ha dispuesto la Free Software Foundation (Fundación de Programática Libre).
GUILLERMO CÁRDENAS HERNÁNDEZ.
16
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Esto también incluye el derecho a poder instalar el núcleo de GNU/Linux® en cualquier número de ordenadores o equipos de cómputo que el usuario desee.
DISTRIBUCIÓN GNU/LINUX Una distribución Linux (coloquialmente llamada distro) es una distribución de software basada en el núcleo Linux que incluye determinados paquetes de software para satisfacer las necesidades de un grupo específico de usuarios, dando así origen a ediciones domésticas, empresariales y para servidores. Por lo general están compuestas, total o mayoritariamente, de software libre, aunque a menudo incorporan aplicaciones o controladores propietarios. Además del núcleo 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 distribución esté dirigida se incluye también otro tipo de software como procesadores de texto, hoja de cálculo, reproductores multimedia, herramientas administrativas, etcétera. En el caso de incluir herramientas del proyecto GNU, también se utiliza el término distribución GNU/Linux.
GUILLERMO CÁRDENAS HERNÁNDEZ.
17
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Existen distribuciones que están 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 están relacionadas con alguna empresa o comunidad, como es el caso de Slackware. Antes de que surgieran las primeras distribuciones, un usuario de Linux debía ser algo experto en Unix; no sólo debía conocer qué bibliotecas y ejecutables necesitaba para iniciar el sistema y que funcionase, sino también los detalles importantes que se requieren en la instalación y configuración de los archivos en el sistema. Las distribuciones Linux comenzaron a surgir poco después de que el núcleo Linux fuera utilizado por otros programadores además de los creadores originales. Existía mayor interés en desarrollar un sistema operativo que en desarrollar aplicaciones, interfaces para los usuarios o un paquete de software conveniente. Entre las distribuciones más antiguas se incluían: Dos discos denominados H J Lu's "Boot-root" con el núcleo y un mínimo de herramientas para utilizar.MCC Interim Linux, que se podía descargar en un servidor público FTP de la Universidad de Mánchester 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 distribución Linux.SLS no estuvo bien mantenida; así pues, Patrick Volkerding lanzó una distribución basada en SLS a la que llamó Slackware; lanzada el 16 de julio de 1993.Esta es la distribución más antigua que está en desarrollo activo. Los usuarios vieron en Linux una alternativa a los sistemas operativos DOS, Microsoft Windows en la plataforma PC, Mac OS en Apple Macintosh y las versiones de uso bajo licencia (de pago) de UNIX. La mayoría de estos primeros usuarios se habían familiarizado con el entorno UNIX en sus GUILLERMO CÁRDENAS HERNÁNDEZ.
18
ADMINISTRACIÓN 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 código fuente del software incluido. Las distribuciones eran originalmente una cuestión de comodidad para el usuario medio, evitándole la instalación (y en muchos casos compilación) por separado de paquetes de uso común, pero hoy se han popularizado incluso entre los expertos en éste tipo de sistemas operativos (UNIX / Linux). Si bien, históricamente, Linux estuvo mejor posicionado en el mercado de los servidores, distribuciones centradas en la facilidad de instalación y uso, tales como Fedora, Mandriva, Opensuse, Knoppix y Ubuntu, entre otras, han logrado una mayor aceptación en el mercado doméstico.
KERNEL LINUX El núcleo Linux es un núcleo (también denominado Kernel) de sistema operativo libre tipo Unix. Es uno de los principales ejemplos de software libre y código abierto. Linux está licenciado bajo la GPL v2 y está desarrollado por colaboradores de todo el mundo. El desarrollo del día a día tiene lugar en la Linux Kernel Mailing List. El núcleo Linux fue concebido por el entonces estudiante de ciencias de la computación finlandés, Linus Torvalds, en 1991. Linux consiguió rápidamente desarrolladores y usuarios que adoptaron códigos de otros proyectos de software libre para su uso en el nuevo sistema operativo. El núcleo Linux ha recibido contribuciones de miles de programadores. Normalmente Linux se utiliza junto a un empaquetado de software, llamado distribución Linux. En abril de 1991, Linus Torvalds, de 21 años, empezó a trabajar en unas simples ideas para un núcleo de sistema operativo. Comenzó con un intento por obtener GUILLERMO CÁRDENAS HERNÁNDEZ.
19
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
un núcleo 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, sólo 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 gustaría saber su opinión sobre las cosas que les gustan o disgustan en minix, ya que mi SO tiene algún parecido con él. Actualmente he portado bash(1.08) y gcc (1.40), y parece que las cosas funcionan. Esto implica que tendré algo práctico dentro de unos meses.‖ Después de esto, muchas personas ayudaron con el código. En septiembre de 1991 se lanzó la versión 0.01 de Linux. Tenía 10.239 líneas de código. En octubre de ese año, se lanzó la versión 0.02 de Linux; luego, en diciembre se lanzó la versión 0.11. Esta versión fue la primera en ser selfhosted (autoalbergada). Es decir, Linux 0.11 podía 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 versión, Torvalds adoptó la GPL como su propio boceto de licencia, la cual no permitía su redistribución 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 implementación del X Window System, fue portada a Linux, la versión del núcleo 0.95 fue la primera en ser capaz de ejecutarla. Este gran salto de versiones (de 0.1x a 0.9x) fue por la sensación de que una versión 1.0 acabada no parecía 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 líneas de código. En marzo de 1995 se lanzó Linux 1.2.0, que ya estaba compuesto de 310.950 líneas de código. GUILLERMO CÁRDENAS HERNÁNDEZ.
20
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
En mayo de 1996 Torvalds decidió adoptar al pingüino Tux como mascota para Linux. La versión 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 debian (en inglés Debian Project ) es una comunidad conformada por desarrolladores y usuarios, que mantiene un sistema operativo GNU basado en software libre. El sistema se encuentra precompilado, empaquetado y en un formato deb para múltiples arquitecturas de computador y para varios núcleos. 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 CÁRDENAS HERNÁNDEZ.
21
ADMINISTRACIÓN 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 disposición 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 representación de Software in the Public Interest, una organización sin ánimo de lucro que da cobertura legal a varios proyectos de software libre. La primera adaptación del sistema Debian, siendo también la más desarrollada, es Debian GNU/Linux, basada en el núcleo Linux, y como siempre utilizando herramientas de GNU. Existen también otras adaptaciones con diversos núcleos: Hurd (Debian GNU/Hurd); NetBSD (Debian GNU/NetBSD) y FreeBSD (Debian GNU/kFreeBSD). El proyecto Debian es una organización 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 ladistribución, según lo referido al contrato social. Estas pautas también se han adoptado como base de la definición del Open Source. La Constitución de Debian, describe la estructura de la organización para la toma de decisiones de manera formal dentro del proyecto. Enumera el poder y las responsabilidades del Líder de proyecto Debian, de la secretaría, y de los desarrolladores en general. Actualmente, el proyecto incluye más de mil desarrolladores. Cada uno de ellos posee algún lugar en el proyecto ya sea relacionado con GUILLERMO CÁRDENAS HERNÁNDEZ.
22
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
lospaquetes: mantenimiento, documentación, control de calidad o relacionado con la infraestructura del proyecto: coordinación 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 comunicación 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. Además, los desarrolladores pueden tomar decisiones generales obligatorias para una resolución o una elección general. Toda votación es realizada por el método Schulze, un método de Condorcet de votación. El proyecto Debian fue fundado en el año 1993 por Ian Murdock, después de haber estudiado en la Universidad de Purdue. Murdock escribió el Manifiesto de Debian que utilizó como base para la creación de la distribución Linux debian. Dentro de este texto los puntos destacables son: tener de la distribución de manera abierta, coherente al espíritu de Linux (núcleo) y de GNU. El nombre del proyecto se basa en la combinación del nombre de su entonces novia (actual ex esposa) Deborah con su propio nombre Ian, formando el portmanteau Debian, pronunciado como las sílabas correspondientes de estos nombres, eninglés estadounidense: /dɛbˈiːjən/. 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 versión 1.x de Debian lanzada en 1996. GUILLERMO CÁRDENAS HERNÁNDEZ.
23
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
En 1996, Bruce Perens substituyó a Ian Murdock como el líder de proyecto. Por sugerencia del desarrollador Ean Schuessler, dirigió el proceso de actualización del Contrato Social de Debian y de las pautas del software de debian libremente, definiendo los puntos fundamentales para el desarrollo de la distribución. También inició la creación de la licencia de software legal de la organización. Bruce Perens se retiró en 1998, antes del lanzamiento de la primera versión de Debian basada en glibc, la 2.0. El proyecto procedió a elegir a nuevos líderes y a hacer dos revisiones de la versión 2.x, cada uno incluyendo más versiones para otras arquitecturas y más paquetes. Conveniente fue lanzada durante este período y la primera portabilidad a un núcleo no basado en el núcleo Linux, naciendo así debian GNU/Hurd, utilizando el núcleo 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 basarían en Debian. A finales de 2000, el proyecto realizó el mayor cambio a la estructura de los archivos y la organización de las versiones, reorganizando procesos de liberación de paquetes del softwarecon el nuevo "package pools" (del inglés depósito 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 técnicos. 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 CÁRDENAS HERNÁNDEZ.
24
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
En septiembre de 2010 existen 121 distribuciones activas basadas en Debian; según el buscador de DistroWatch, además Debian posee en su sitio web una lista oficial de susdistribuciones descendientes.
UBUNTU
Ubuntu es una distribución 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 instalación del sistema. Al igual que otras distribuciones se compone de múltiples paquetes de software normalmente distribuidos bajo una licencia libre o de código abierto. Estadísticas 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 CÁRDENAS HERNÁNDEZ.
25
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Está patrocinado por Canonical Ltd., una compañía británica propiedad del empresario sudafricano Mark Shuttleworth que en vez de vender la distribución con fines lucrativos, se financia por medio de servicios vinculados al sistema operativo y vendiendosoporte técnico. Además, 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 también apoya y proporciona soporte para cuatro derivaciones de Ubuntu: Kubuntu, Xubuntu, Edubuntu y la versión 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 ideología sudafricana Ubuntu(«humanidad hacia otros»). Cada seis meses se publica una nueva versión de Ubuntu la cual recibe soporte por parte de Canonical, durante dieciocho meses, por medio de actualizaciones de seguridad, parches para bugs críticos y actualizaciones menores de programas. Las versiones LTS (Long Term Support), que se liberan cada dos años, reciben soporte durante tres años en los sistemas de escritorio y cinco para la edición orientada a servidores. Ubuntu es una bifurcación del código base del proyecto Debian. El objetivo inicial era el de lanzar una nueva versión de Ubuntu cada seis meses, resultando en un sistema más actualizado. Su primer lanzamiento fue el 20 de octubre de 2004.Los lanzamientos de Ubuntu están sincronizados para realizarse un mes después que las del entorno de escritorio GNOME.Ubuntu usa primariamente software libre haciendo excepciones para varios controladores privativos además del firmware y software no libre incluido en el kernel Linux y el software no libre presente en sus repositorios. Los paquetes de Ubuntu están basados en la rama inestable de Debian: ambas distribuciones usan el formato de paquete de software deb y las herramientas de administración de paquetes APT, dpkg, más algunos front-ends. Los paquetes Debian y Ubuntu no son necesariamente compatibles binariamente; algunas veces GUILLERMO CÁRDENAS HERNÁNDEZ.
26
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
los paquetes deb pueden necesitar ser recompilados desde el código fuente para ser usados en Ubuntu.Muchos desarrolladores de Ubuntu también mantienen paquetes clave en Debian. Ubuntu coopera con Debian devolviendo cambios y mejoras en el código,aunque existen críticas sobre las escasas aportaciones. En el pasado, Ian Murdock, fundador de Debian, expresó su preocupación por el potencial cambio de los paquetes de Ubuntu con respecto a los de Debian ya que podrían llegar a ser completamente incompatibles Antes de cada lanzamiento, se lleva a cabo una importación de paquetes, desde Debian, aplicando las modificaciones específicas de Ubuntu. Un mes antes del lanzamiento, comienza un proceso de congelación de importaciones, ayudando a que los desarrolladores puedan asegurar que el software sea suficientemente estable. Desde el inicio del proyecto, Shuttleworth proporcionó el soporte económico gracias a los beneficios obtenidos después de vender su empresa Thawte a VeriSign, por unos 575 millones de dólares estadounidenses. El 8 de julio de 2005, Mark Shuttleworth y su empresa Canonical Ltd. anunciaron la creación de la Fundación Ubuntu y aportaron 10 millones de dólares como presupuesto inicial. El propósito de la fundación 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 administración de computación en nube, como Amazon EC2. A principios de 2009 los ingenieros y diseñadores de Canonical se dan cuenta de que la gestión de paquetes e instalación de aplicaciones es demasiado desfragmentada y hasta compleja, por ende se planifica la creación de una aplicación central para el manejo e instalación de aplicaciones. En octubre de 2009 Canonical lanza oficialmente el Centro de software de Ubuntu (Ubuntu Software Center), permite buscar, instalar, remover aplicaciones, y además GUILLERMO CÁRDENAS HERNÁNDEZ.
27
ADMINISTRACIÓN 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 línea 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 código abierto para Linux en procesadores con tecnología ARM.A fines de septiembre se da a conocer antes del lanzamiento de Ubuntu 10.10, que esta versión incluiría un mejor y más estable soporte para procesadores ARM. En octubre y noviembre de 2010, se anuncian drásticos e importantes cambios en el escritorio de Ubuntu, la inclusión de la interfaz de usuario Unity (creada por Canonical), la cual será utilizada en la versión de escritorio de Ubuntu.También Mark Shuttleworth anuncia que en futuras versiones de Ubuntu, Unity se implementará en el servidor gráfico Wayland, y no en el servidor gráfico X (como se hacía habitualmente). El 18 de enero de 2011, Mark Shuttleworth anuncia la inclusión de aplicaciones creadas en Qt para ser lanzadas a partir de "Natty+1" (después del lanzamiento de Ubuntu 11.04) y en futuras versiones de Ubuntu. Una de las metas de esta decisión es facilitar la integración al sistema de aplicaciones Qt, en comparación con las típicas aplicaciones desarrolladas enGTK que lucen nativas en la interfaz de usuario de Ubuntu. Para terminar con las dificultades técnicas de configuración y preferencias del sistema entre Qt y GTK, se crearán enlacesdconf para las aplicaciones Qt, con lo que se pretende centralizar la configuración del sistema, ya sea GTK o Qt, en un solo lugar.
CARACTERÍSTICAS. En su última versión, Ubuntu soporta oficialmente dos arquitecturas de hardware en computadoras personales y servidores: x86 yAMD64 (x86-64); GUILLERMO CÁRDENAS HERNÁNDEZ.
28
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
siendo la versión 6.10 la última que oficialmente soportó la arquitectura PowerPC,32 después de lo cual es solo soportada por la comunidad. Sin embargo, extraoficialmente, Ubuntu ha sido portado a tres arquitecturas más: SPARC, IA-64 yPlaystation 3.A partir de la versión 9.04 lanzada en abril de 2009 se empezó a ofrecer soporte oficial para procesadores ARM, comúnmente usados en dispositivos móviles, PDA etc. Al igual que la mayoría de las distribuciones basadas en GNU/Linux, Ubuntu es capaz de actualizar a la vez todas las aplicaciones instaladas en la máquina a través de repositorios. Esta distribución está siendo traducida a más de 130 idiomas, y cada usuario es capaz de colaborar voluntariamente a esta causa, a través de Internet. Los usuarios pueden participar en el desarrollo de Ubuntu, escribiendo código, solucionando bugs, probando versiones inestables del sistema, etc; además, en febrero de 2008 se puso en marcha la página Brainstorm que permite a los usuarios proponer sus ideas y votar las del resto. También se informa de las ideas propuestas que se están desarrollando o están previstas.
SOFTWARE INCLUIDO. Posee una gran colección de aplicaciones para la configuración de todo el sistema, valiéndose principalmente de interfaces gráficas. Elentorno de escritorio predeterminado de Ubuntu es GNOME y se sincroniza con sus liberaciones. Existen otras dos versiones oficiales de la distribución, 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 CÁRDENAS HERNÁNDEZ.
29
ADMINISTRACIÓN 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 mensajería instantánea Empathy, cliente de redes sociales Gwibber, cliente para enviar y recibir correo Evolution, reproductor multimedia Totem, reproductor de música Rhythmbox, editor de vídeos PiTiVi, editor de imágenes Shotwell, cliente y gestor de BitTorrents Transmission, grabador de discos Brasero, suite ofimática Open Office, y el instalador central para buscar e instalar aplicaciones Centro de software de Ubuntu. Seguridad y accesibilidad: El sistema incluye funciones avanzadas de seguridad y entre sus políticas 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 línea de comandos incluye una herramienta llamada sudo (de las siglas en inglés de SuperUser do), con la que se evita el uso del usuarioadministrador. Posee accesibilidad e internacionalización, de modo que el sistema esté disponible para tanta gente como sea posible. Desde la versión 5.04, se utiliza UTF-8 como codificación de caracteres predeterminado. No sólo se relaciona con Debian por el uso del mismo formato de paquetes deb. También tiene uniones muy fuertes con esa comunidad, contribuyendo con cualquier cambio directa e inmediatamente, y no sólo anunciándolos. Esto sucede en los tiempos de lanzamiento. Muchos de los desarrolladores de Ubuntu son también responsables de los paquetes importantes dentro de la distribución Debian. Para centrarse en solucionar rápidamente 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 CÁRDENAS HERNÁNDEZ.
30
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
al software libre. Por tales motivos inicialmente KDE no se encontraba con más soporte de lo que entregaban los mantenedores de Debian en sus repositorios, razón por la que se sumó la comunidad de KDE creando la distribución GNU/Linux Kubuntu.
ORGANIZACIÓN 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 mayoría de los sistemas Linux de uso general. Los paquetes de este componente poseen ayuda técnica 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 ningún tipo de licencia libre para incluir enmain. En este lugar se incluyen los paquetes tales como los controladores propietarios de algunas tarjetas gráficas, como por ejemplo, los de ATI y NVIDIA. El nivel de la ayuda es más limitado que para main, puesto que los desarrolladores pueden no tener acceso al código fuente.
GUILLERMO CÁRDENAS HERNÁNDEZ.
31
ADMINISTRACIÓN 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 guardándolos 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 técnico y actualizaciones de la seguridad para la mayoría de las versiones de Ubuntu durante 18 meses, excepto para las versiones LTS (Long term support) que ofrece 3 años para la versión escritorio y 5 años para la versión 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 versión con soporte técnico extendido a la que se añade la terminación LTS. Esto significa que los lanzamientos LTS contarán con actualizaciones de seguridad de paquetes de softwaredurante tres años en entorno de escritorio y cinco años en servidor por parte de Canonical, a diferencia de los otros lanzamientos de Ubuntu que sólo cuentan con 18 meses de soporte.
GUILLERMO CÁRDENAS HERNÁNDEZ.
32
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
La primera LTS fue la versión 6.06 de la cual se liberó una remasterización (la 6.06.1) para la edición de escritorio y dos remasterizaciones (6.06.1 y 6.06.2) para la edición servidor, ambas incluían actualizaciones de seguridad y corrección de errores. La segunda LTS fue la versión 8.04 Hardy Heron, de la cual ya va por la cuarta y última revisión de mantenimiento (la 8.04.4).La última versión LTS que ha sido lanzada es la 10.04, Lucid Lynx, fue liberada en abril de 2010, la versión de mantenimiento actual va por la 10.04.1
SERVIDORES En informática, un servidor es un tipo de software que realiza ciertas tareas en nombre de los usuarios. El término servidor ahora también se utiliza para referirse al ordenador físico en el cual funciona ese software, una máquina cuyo propósito es proveer datos de modo que otras máquinas puedan utilizar esos datos. Este uso dual puede llevar a confusión. Por ejemplo, en el caso de un servidor web, este término podría referirse a la máquina que almacena y maneja los sitios web, y en este sentido es utilizada por las compañías que ofrecen hosting u hospedaje. Alternativamente, el servidor web podría referirse al software, como el servidor de http de Apache, que funciona en la máquina y maneja la entrega de los componentes de las páginas 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 función común de proporcionar el acceso a los archivos y servicios.
GUILLERMO CÁRDENAS HERNÁNDEZ.
33
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Un servidor sirve información a los ordenadores que se conecten a él. Cuando los usuarios se conectan a un servidor pueden acceder a programas, archivos y otra información del servidor. En la web, un servidor web es un ordenador que usa el protocolo http para enviar páginas 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 mayoría de la gente al usar Internet. Algunos servidores manejan solamente correo o solamente archivos, mientras que otros hacen más 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 conexión vía línea telefónica 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 electrónico a través de las redes corporativas (vía LANs y WANs) y a través de Internet. Servidores Telnet (Telnet Servers): Un servidor telnet permite a los usuarios entrar en un ordenador huésped 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 electrónico, bien sean discusiones interactivas abiertas al público o listas unidireccionales de anuncios, boletines de noticias o publicidad.
GUILLERMO CÁRDENAS HERNÁNDEZ.
34
ADMINISTRACIÓN 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 añaden capacidades multimedia a los sitios web permitiéndoles mostrar contenido multimedia en forma de flujo continuo (streaming) desde el servidor. Servidores de Fax (Fax Servers): Un servidor de fax es una solución ideal para organizaciones que tratan de reducir el uso del teléfono pero necesitan enviar documentos por fax. Servidores FTP (FTP Servers): Uno de los servicios más antiguos de Internet, File Transfer Protocol permite mover uno o más archivos. Servidores de Chat (Chat Servers): Los servidores de chat permiten intercambiar información a una gran cantidad de usuarios ofreciendo la posibilidad de llevar a cabo discusiones en tiempo real. Servidores IRC (IRC Servers): Otra opción para usuarios que buscan la discusión en tiempo real, Internet Relay Chat consiste en varias redes de servidores separadas que permiten que los usuarios conecten el uno al otro vía una red IRC. Servidores de Noticias (News Servers): Los servidores de noticias actúan como fuente de distribución y entrega para los millares de grupos de noticias públicos actualmente accesibles a través de la red de noticias USENET.
GUILLERMO CÁRDENAS HERNÁNDEZ.
35
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Servidores Proxy (Proxy Servers): Los servidores proxy se sitúan entre unprograma del cliente (típicamente un navegador) y un servidor externo (típicamente otro servidor web) para filtrar peticiones, mejorar el Funcionamiento y compartir conexiones.
NETFILTER/IPTABLES Netfilter es un framework disponible en el núcleo Linux que permite interceptar y manipular paquetes de red. Dicho framework permite realizar el manejo de paquetes en diferentes estados del procesamiento. Netfilter es también el nombre que recibe el proyecto que se encarga de ofrecer herramientas libres para cortafuegos basados en Linux. El componente más popular construido sobre Netfilter es iptables, una herramienta de cortafuegos que permite no solamente filtrar paquetes, sino también realizar traducción de direcciones de red (NAT) para IPv4 o mantener registros de log. El proyecto Netfilter no sólo ofrece componentes disponibles como módulos del núcleo sino que también ofrece herramientas de espacio de usuario y librerías.
GUILLERMO CÁRDENAS HERNÁNDEZ.
36
ADMINISTRACIÓN 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 políticas de filtrado del tráfico que circula por la red. El nombre iptables se utiliza frecuentemente de forma errónea 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 prácticamente todas las distribuciones de Linux actuales. El proyecto Netfilter/iptables comenzó en 1998 con Rusty Russell, también 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 núcleo Linux 2.3 en marzo de 2000. En agosto de 2003, Harald Welte fue designado líder del coreteam. En febrero de 2007 entra a formar parte del coreteam el andaluz Pablo Neira. Antes de iptables, los programas más usados para crear cortafuegos en Linux eran ipchains en el núcleo Linux 2.2 e ipfwadm en el núcleo Linux 2.0, que a su vez se basaba en ipfw de BSD. Tanto ipchains como ipfwadm alteran el código de red para poder manipular los paquetes, ya que no existía un framework general para el manejo de paquetes hasta la aparición de netfilter. Iptables mantiene la idea básica 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 había que Natear un paquete, y se consultaba otra para decidir cómo filtrar un paquete. Adicionalmente, se modificaron los tres puntos en los que se realiza el filtrado en
GUILLERMO CÁRDENAS HERNÁNDEZ.
37
ADMINISTRACIÓN 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 (específicamente tres tipos de NAT, llamados masquerading o enmascaramiento de IP, port forwarding oredireccionamiento de puertos, y redirection o redirección), 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 traducción 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 más generales y poderosos que los que realizaban ipchains eipfwadm. Esta división permite a iptables, a su vez, usar la información que la capa de seguimiento de conexiones ha determinado acerca del paquete: esta información estaba antes asociada a NAT. Esto hace a iptables superior a ipchains, ya que tiene la habilidad de monitorizar el estado de una conexión y redirigir, modificar o detener los paquetes de datos basados en el estado de la conexión 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 también extensibles, y muchas extensiones ya están incluidas en el paquete básico de iptables, tal como la extensión ya mencionada que permite la consulta del estado de la conexión. Extensiones adicionales se distribuyen junto a la utilidad iptables, como parches al código fuentedel núcleo junto con una herramienta llamada patch-o-matic que permite aplicar los parches. Una versión de iptables para IPv6 ya fue escrita, llamada ip6tables al igual que la herramienta de administración. GUILLERMO CÁRDENAS HERNÁNDEZ.
38
ADMINISTRACIÓN 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 serán consideradas. Una cadena puede contener un enlace a otra cadena: si el paquete pasa a través de esa cadena entera o si cumple una regla de destino de retorno, va a continuar en la primera cadena. No hay un límite respecto de cuán anidadas pueden estar las cadenas. Hay tres cadenas básicas (INPUT, OUTPUT y FORWARD: ENTRADA, SALIDA y REENVÍO) 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 módulos de extensión. El administrador puede crear y eliminar cadenas definidas por usuarios dentro de cualquier tabla. Inicialmente, todas las cadenas están vacías y tienen una política 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 continúe su camino). Todos los paquetes pasan a través de la tabla de filtros. Contiene las siguientes cadenas predefinidas y cualquier paquete pasará por una de ellas:
GUILLERMO CÁRDENAS HERNÁNDEZ.
39
ADMINISTRACIÓN 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 también se la conoce como LOCAL_OUTPUT oSALIDA_LOCAL) FORWARD chain (Cadena de REDIRECCIÓN) - Todos los paquetes que meramente pasan por este sistema para ser encaminados a su destino recorren esta cadena nat table (Tabla de traducción 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 conexión pasa a través de esta tabla; los veredictos determinan como van a reescribirse todos los paquetes de esa conexión. Contiene las siguientes cadenas redefinidas: PREROUTING chain (Cadena de PRERUTEO) - Los paquetes entrantes pasan a través de esta cadena antes de que se consulte la tabla de ruteo local, principalmente para DNAT (destination-NAT o traducción de direcciones de red de destino) POSTROUTING chain (Cadena de POSRUTEO) - Los paquetes salientes pasan por esta cadena después de haberse tomado la decisión del ruteo, principalmente para SNAT (source-NAT o traducción 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á diseñada 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 CÁRDENAS HERNÁNDEZ.
40
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
debe ser reenviado (cadena de REENVÍO) o si tiene destino local (cadena de ENTRADA) INPUT chain (Cadena de ENTRADA) - Todos los paquetes destinados para este sistema pasan a través de esta cadena FORWARD chain (Cadena de REDIRECCIÓN) - Todos los paquetes que exactamente pasan por este sistema pasan a través de esta cadena OUTPUT chain (Cadena de SALIDA) - Todos los paquetes creados en este sistema pasan a través de esta cadena POSTROUTING chain (Cadena de POSRUTEO) - Todos los paquetes que abandonan este sistema pasan a través de esta cadena.
Además 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 lógica. Cada cadena contiene una lista de reglas. Cuando un paquete se envía 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 número de puerto o dirección IP. Si la regla no coincide, el procesamiento continúa 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 válida 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 traducción de direcciones de red). DESTINO DE TABLAS.
GUILLERMO CÁRDENAS HERNÁNDEZ.
41
ADMINISTRACIÓN 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 programación). Si el paquete consigue atravesar la cadena definida por el usuario sin que ninguna de las reglas de esa cadena actúe sobre él, el procesamiento del paquete continúa donde había 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 cuál sea la cadena realizando esta aceptación. 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 REDIRECCIÓN se le permite ser encaminado (routing) a través del sistema. DROP (descartar) Este destino hace que netfilter descarte el paquete sin ningún otro tipo de procesamiento. El paquete simplemente desaparece sin ningún tipo de indicación al sistema o aplicación de origen, de que fue descartado en el sistema de destino. Esto se refleja en el sistema que envía el paquete a menudo, como un communication timeout (alcance del máximo tiempo de espera en la comunicación), lo que puede causar confusión, aunque el descarte de paquetes entrantes no deseados se considera a veces una buena política de seguridad, pues no da ni siquiera el indicio a un posible atacante de que el sistema destino existe. QUEUE (encolar) GUILLERMO CÁRDENAS HERNÁNDEZ.
42
ADMINISTRACIÓN 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 aplicación puede usar la biblioteca libipq, también parte del proyecto netfilter/iptables, para alterar el paquete. Si no hay ninguna aplicación que lea la cola, este destino es equivalente a DROP. RETURN (retorno) Hace que el paquete en cuestión 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 política por defecto de la cadena en cuestión (ACCEPT, DROP o similar). Hay muchos destinos de extensión disponibles. Algunos de los más comunes son: REJECT (rechazo) Este destino tiene el mismo efecto que 'DROP', salvo que envía un paquete de error a quien envió originalmente. Se usa principalmente en las cadenas de ENTRADA y de REDIRECCIÓN de la tabla de filtrado. El tipo de paquete se puede controlar a través del parámetro '--reject-with'. Un paquete de rechazo puede indicar explícitamente que la conexión ha sido filtrada (un paquete ICMP filtrado administrativamente por conexión), aunque la mayoría de los usuarios prefieren que el paquete indique simplemente que la computadora no acepta ese tipo de conexión (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 parámetro '--reject-with' no se especifica, el paquete de rechazo por defecto es siempre icmp-port-unreachable. LOG (bitácora)
GUILLERMO CÁRDENAS HERNÁNDEZ.
43
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Este destino lleva un log o bitácora del paquete. Puede usarse en cualquier cadena en cualquier tabla, y muchas veces se usa para debuggear (análisis de fallos, como ser la verificación de qué paquetes están siendo descartados). ULOG Este destino lleva un log o bitácora del paquete, pero no de la misma manera que el destino LOG. El destino LOG le envía información al log del núcleo, pero ULOG hacemultidifusión de los paquetes que coincidan con esta regla a través de un socket netlink, de manera que programas del espacio de usuario puedan recibir este paquete conectándose al socket. DNAT Este destino hace que la dirección (y opcionalmente el puerto) de destino del paquete sean reescritos para traducción de dirección de red. Mediante la opción '-to-destination' debe indicarse el destino a usar. Esto es válido solamente en las cadenas de SALIDA y PRERUTEO dentro de la tabla de nat. Esta decisión se recuerda para todos los paquetes futuros que pertenecen a la misma conexión y las respuestas tendrán su dirección y puerto de origen cambiados al original (es decir, la inversa de este paquete). SNAT Este destino hace que la dirección (y opcionalmente el puerto) de origen del paquete sean reescritos para traducción de dirección de red. Mediante la opción '-to-source' debe indicarse el origen a usar. Esto es válido 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 conexión. MASQUERADE Esta es una forma especial, restringida de SNAT para direcciones IP dinámicas, como las que proveen la mayoría de los proveedores de servicios de Internet (ISPs) para módems olínea de abonado digital (DSL). En vez de cambiar GUILLERMO CÁRDENAS HERNÁNDEZ.
44
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
la regla de SNAT cada vez que la dirección IP cambia, se calcula la dirección IP de origen a la cual hacer NAT fijándose en la dirección IP de la interfaz de salida cuando un paquete coincide con esta esta regla. Adicionalmente, recuerda cuales conexiones usan MASQUERADE y si la dirección de la interfaz cambia (por ejemplo, por reconectarse al ISP), todas las conexiones que hacen NAT a la dirección vieja se olvidan. SEGUIMIENTO DE CONEXIONES. Una de las características de importancia que está construída por encima del framework de netfilter es el seguimiento de conexiones (connection tracking). El seguimento de conexiones le permite al núcleo llevar cuenta de todas las conexiones o sesiones lógicas de red y de este modo relacionar todos los paquetes que pueden llegar a formar parte de esa conexión. La traducción de dirección de red (NAT) depende de esta información para traducir todos los paquetes relacionados de la misma manera e iptables puede usar esta información para actuar como un cortafuegos stateful. El seguimiento de conexiones clasifica cada paquete en uno de cuatro estados: NEW (nuevo) Intentando crear una conexión nueva. ESTABLISHED (establecido) Parte de una conexión ya existente. RELATED (relacionado) Relacionada, aunque no realmente parte de una conexión existente. INVALID (inválido) No es parte de una conexión existente e incapaz de crear una conexión nueva. Un caso común sería que el primer paquete que el cortafuegos ve se clasificará como NEW, la respuesta se clasificará como ESTABLISHED y un error ICMP sería RELATED. Un paquete de error ICMP que no coincide con una conexión conocida será INVALID. GUILLERMO CÁRDENAS HERNÁNDEZ.
45
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
El estado de la conexión es completamente independiente de cualquier estado de TCP. Si la terminal (host) responde con un paquete SYN ACK para señalar una conexión TCP entrante nueva, la conexión TCP misma no se establece, pero la conexión a la que se le hace el seguimiento sí se establece. Este paquete 'coincidirá el estado ESTABLISHED. Sin embargo, una conexión a la que se le hace el seguimiento de un protocolo sin estado como UDP tiene un estado de conexión. Es más, mediante el uso de módulo que pueden agregarse, al seguimiento de conexión se le puede dar conocimiento de los protocolos de la capa de aplicación y así que entienda que dos o más conexiones distintas están "relacionadas". Por ejemplo, considérese el protocolo FTP. Se establece una conexión de control, pero cada vez que se transfiere información, se establece otra conexión para que la transfiera. Si se carga el módulo nf_conntrack_ftp, el primer paquete de una conexión de datos FTP se clasificará como RELATED en lugar de NEW, ya que lógicamente es parte de una conexión existente. iptables puede usar la información del seguimiento de conexiones para conseguir hacer reglas de filtrado de paquetes más potentes y más fáciles de manejar. La extensión de "estado" le permite a las reglas de iptables que examinen la clasificación de seguimiento de conexión 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 conexión 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 conexión de control FTP, en vez de NEW. GUILLERMO CÁRDENAS HERNÁNDEZ.
46
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
ESPECIFICACIONES DE REGLAS. La mayoría de las formas de comandos de iptables requieren que se les indiquen una especificación de reglas, que es usada para matchear un subconjunto particular del tráfico de paquetes de red procesados por una cadena. La especificación de regla incluye también un destino que especifica qué hacer con paquetes que son so n matcheados por la regla. Las siguientes opciones o pciones se usan u san (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 opción op ción -N, uno de los destinos ya incorporados, ACCEPT, DROP,QUEUE, o RETURN, o un destino de extensión, como REJECT, LOG, DNAT, o SNAT. Si esta opción 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 incrementarán. -i [!] in-interface --in-interface [!] in-interface Nombre de una interfaz a través 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 serámatcheada. Si esta opción se omite, se matcheará todo nombre de interfaz.
GUILLERMO CÁRDENAS HERNÁNDEZ.
47
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
-o [!] out-interface --out-interface [!] out-interface Nombre de una interfaz a través 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 serámatcheada. Si esta opción 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 válidos son icmp, udp, tcp... Una lista de todos los protocolos válidos puede encontrarse en el archivo /etc/protocols. -s [!] origen[/prefijo] --source [!] origen[/prefijo] Matchea paquetes IP viniendo de la dirección de origen especificada. La dirección de origen puede ser una dirección IP, una dirección IP con un prefijo de red asociado, o un nombre de terminal (hostname). Si '!' precede prece de 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 dirección de destino especificada. La dirección de destino puede ser una dirección IP, una dirección IP con un prefijo de
GUILLERMO CÁRDENAS HERNÁNDEZ.
48
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
red asociado, o un nombre de terminal (hostname). Si '!' precede preced e 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 rgumento a la opción -p) destinados a los puertos o rango de puertos (cuando se usa la forma puerto:puerto) especificados. Si '!' precede la especificación de puertos, se matchean todos los paquetes TCP T CP o UDP que no están e stán 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 opción -p) que vienen de los puertos o rango de puertos (cuando se usa la forma puerto:puerto) especificados. Si '!' precede la especificación 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 opción "--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 CÁRDENAS HERNÁNDEZ.
49
ADMINISTRACIÓN 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 serán afectadas. Esta opción puede combinarse con otras, como --source, para bloquear o dejar pasar conexiones TCP entrantes solo de ciertas terminales o redes. Esta opción es equivalente a "--tcp-flags SYN, RST, ACK SYN". Si '!' precede a --syn, el significado de la opción se invierte.
INVOCACION El comando iptables tiene las siguientes formas de invocación. Í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 especificación-de-regla [ opciones ] Esta forma de invocación 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 opción -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 DROP GUILLERMO CÁRDENAS HERNÁNDEZ.
50
ADMINISTRACIÓN 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 especificación de regla "-p udp -j DROP". Si hay varias reglas idénticas en la cadena, solo se borra la primera regla que matchee. iptables { -R | --replace | -I | --insert } cadena numregla especificación-de-regla [ opciones ] Esta forma de invocación del comando reemplaza (-R ( -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 tráfico 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 invocación del comando elimina una regla del índice numérico 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 invocación 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 operación se realiza para todas las
GUILLERMO CÁRDENAS HERNÁNDEZ.
51
ADMINISTRACIÓN 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 invocación 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 invocación del comando se usa para especificar la política de destino para una cadena. De hecho, para especificar la política de destino para la cadena de INPUT en DROP, usamos este comando: iptables -P INPUT DROP
GUILLERMO CÁRDENAS HERNÁNDEZ.
52
ADMINISTRACIÓN 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 invocación del comando se usa para renombrar una cadena definida por el usuario.
BASH Bash es un programa informático cuya función consiste en interpretar órdenes. Está basado en la shell de Unix y es compatible conPOSIX. Fue escrito para el proyecto GNU y es el intérprete de comandos por defecto en la mayoría de las distribuciones de Linux. Su nombre es un acrónimo 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 intérpretes importantes de Unix. Hacia 1978 Bourne era el intérprete distribuido con la versión del sistema operativo Unix Versión 7. Stephen Bourne, por entonces investigador de los Laboratorios Bell, escribió la versión original de Bourne. Brian Fox escribió bash en 1987. En 1990, Chet Ramey se convirtió en su principal desarrollador. Bash es el intérprete predeterminado p redeterminado en la mayoría de sistemas GNU/Linux, además de Mac OS X Tiger, y puede ejecutarse en la mayoría de los sistemas
GUILLERMO CÁRDENAS HERNÁNDEZ.
53
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
operativos tipo Unix. También 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 intérprete Bourne. La especificación definitiva de la sintaxis de órdenes de bash, puede encontrarse en el bash Reference Manual distribuido por el proyecto GNU. Esta sección destaca algunas de sus únicas características. La mayoría de los shell scripts (guiones de órdenes) Bourne pueden ejecutarse por bash sin ningún cambio, con la excepción de aquellos scripts de shell Bourne que hacen referencia a variables especiales de Bourne o que utilizan una orden interna de Bourne. La sintaxis de órdenes de bash incluye ideas tomadas desde el Korn Shell (ksh) y el C Shell (csh), como la edición de la línea de órdenes, el historial de órdenes, la pila de directorios, las variables $RANDOM y $PPID, y la sintaxis de substitución de órdenes POSIX: $(...). Cuando se utiliza como un intérprete de órdenes interactivo, bash proporciona autocompletado de nombres de programas, nombres de archivos, nombres de variables, etc, cuando el usuario pulsa la tecla TAB. ACCESO A PARÁMETROS. Los scripts de bash reciben los parámetros que le pasa la shell como $1, $2, ..., $n. Podemos saber cuántos hemos recibido con el símbolo $#. Por ejemplo, si nuestro script necesita dos parámetros pondremos: if [ $# -lt 2 ]; then echo "Necesitas pasar dos parámetros." exit 1 fi GUILLERMO CÁRDENAS HERNÁNDEZ.
54
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Cuando bash arranca, ejecuta las órdenes que se encuentran en diferentes scripts. Cuando se invoca a bash como un shell interactivo para el inicio de una sesión (login shell), o como un shell no interactivo con la opción --login, en primer lugar lee y ejecuta órdenes desde el archivo /etc/profile, si existe. Después, busca ~/.bash_profile, ~/.bash_login, y ~/.profile, en este orden, y lee y ejecuta las órdenes desde el primero que existe y es legible. La opción --noprofile puede utilizarse al comenzar un nuevo shell para inhibir este comportamiento. Cuando un login shell termina, bash lee y ejecuta las órdenes de ~/.bash_logout, si existe.
Cuando un shell interactivo que no es un login shell arranca, bash lee y ejecuta órdenes desde ~/.bashrc, si existiese. Esto puede evitarse utilizando la opción -norc. La opción --rcfile archivo forzará a bash a leer y ejecutar órdenes desde archivo en lugar de ~/.bashrc. Cuando bash arranca de un modo no interactivo, por ejemplo para ejecutar un shell script diferente, busca la variable de entorno BASH_ENV, si existe expande su valor, y lo utiliza como el nombre del archivo para leer y ejecutar. bash se comporta como si se ejecutase la siguiente orden: if [ -n "$BASH_ENV" ]; then . "$BASH_ENV"; fi Si se invoca a bash con el nombre sh, intenta replicar el comportamiento de las versiones antiguas de sh, a la vez que se mantiene la conformidad con el estándar POSIX. Cuando se invoca como un login shell interactivo, o un shell no interactivo con la opción --login, primero intenta leer y ejecutar órdenes desde /etc/profile y ~/.profile, en este orden. La opción --noprofile puede utilizarse para evitar este comportamiento. GUILLERMO CÁRDENAS HERNÁNDEZ.
55
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Cuando se invoca como un shell interactivo con el nombre sh, bash busca la variable ENV, si está definida expande su valor, y utiliza el valor expandido como el nombre de un archivo para leer y ejecutar. Como un shell invocado como sh no intenta leer y ejecutar órdenes desde ningún otro archivo de arranque, y la opción --rcfile no tiene efecto. Un shell no interactivo invocado con el nombre sh no intenta leer ningún otro archivo de arranque. Cuando se invoca como sh, bash entra en el modo posix después de leer los archivos de inicio. Cuando se inicia bash en el modo posix, por ejemplo con la opción --posix, sigue el estándar POSIX para los archivos de incio. En este modo, los shells interactivos expanden la variable ENV y se leen, y ejecutan, las órdenes desde el archivo cuyo nombre es el valor de la variable expandida. No se lee ningún otro archivo de arranque.
Squid es un popular programa de software libre que implementa un servidor proxy y un dominio para caché de páginas web, publicado bajo licencia GPL. Tiene una amplia variedad de utilidades, desde acelerar un servidor web, guardando en caché peticiones repetidas aDNS y otras búsquedas para un grupo de gente que comparte recursos de la red, hasta caché de web, además de añadir seguridad filtrando el tráfico. Está especialmente diseñado para ejecutarse bajo entornos tipo Unix. Squid ha sido desarrollado durante muchos años y se le considera muy completo y robusto. Aunque orientado a principalmente a HTTP yFTP es compatible con otros GUILLERMO CÁRDENAS HERNÁNDEZ.
56
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
protocolos como Internet Gopher. Implementa varias modalidades de cifrado como TLS, SSL, y HTTPS. CARACTERÍSTICAS. Proxy y Caché de HTTP, FTP, y otras URL. Squid proporciona un servicio de Proxy que soporta peticiones HTTP, HTTPS y FTP a equipos que necesitan acceder a Internet y a su vez provee la funcionalidad de caché especializado en el cual almacena de forma local las páginas consultadas recientemente por los usuarios. De esta forma, incrementa la rapidez de acceso a los servidores de información Web y FTP que se encuentra fuera de la red interna.
Proxy para SSL Squid también es compatible con SSL (Secure Socket Layer) con lo que también acelera las transacciones cifradas, y es capaz de ser configurado con amplios controles de acceso sobre las peticiones de usuarios. Jerarquías de caché Squid puede formar parte de una jerarquía de caches. Diversos proxys trabajan conjuntamente sirviendo las peticiones de las páginas. Un navegador solicita siempre las páginas a un sólo proxy, si este no tiene la página en la caché hace peticiones a sus hermanos, que si tampoco las tienen las hacen a su/s padre/s... Estas peticiones se pueden hacer mediante dos protocolos: HTTP e ICMP. ICP, HTCP, CARP, caché digests
GUILLERMO CÁRDENAS HERNÁNDEZ.
57
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Squid sigue los protocolos ICP, HTCP, CARP y caché digests que tienen como objetivo permitir a un proxy "preguntarle" a otros proxys caché si poseen almacenado un recurso determinado. Caché transparente Squid puede ser configurado para ser usado como proxy transparente de manera que las conexiones son enrutadas dentro del proxy sin configuración por parte del cliente, y habitualmente sin que el propio cliente conozca de su existencia. De modo predefinido Squid utiliza el puerto 3128 para atender peticiones, sin embargo se puede especificar que lo haga en cualquier otro puerto disponible o bien que lo haga en varios puertos disponibles a la vez. WCCP A partir de la versión 2.3 Squid implementa WCCP (Web Cache Control Protocol). Permite interceptar y redirigir el tráfico que recibe un router hacia uno o más proxys caché, haciendo control de la conectividad de los mismos. Además permite que uno de los proxys caché designado pueda determinar cómo distribuir el tráfico redirigido a lo largo de todo el array de proxys caché. Control de acceso Ofrece la posibilidad de establecer reglas de control de acceso. Esto permite establecer políticas de acceso en forma centralizada, simplificando la administración de una red. Aceleración de servidores HTTP Cuando un usuario hace petición hacia un objeto en Internet, este es almacenado en el caché, si otro usuario hace petición hacia el mismo objeto, y este no ha sufrido modificación alguna desde que lo accedió el usuario anterior, Squid mostrará el que ya se encuentra en el caché en lugar de volver a descargarlo desde Internet. Esta función permite navegar rápidamente cuando los objetos ya
GUILLERMO CÁRDENAS HERNÁNDEZ.
58
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
están en el caché y además optimiza enormemente la utilización del ancho de banda. SNMP Squid permite activar el protocolo SNMP, este proporciona un método simple de administración de red, que permite supervisar, analizar y comunicar información de estado entre una gran variedad de máquinas, pudiendo detectar problemas y proporcionar mensajes de estados. Caché de resolución DNS Squid está compuesto también por el programa dnsserver, que se encarga de la búsqueda de nombres de dominio. Cuando Squid se ejecuta, produce un número configurable de procesos dnsserver, y cada uno de ellos realiza su propia búsqueda en DNS. De este modo, se reduce la cantidad de tiempo que la caché debe esperar a estas búsquedas DNS.
El proxy caché es una manera de guardar los objetos solicitados de Internet (por ejemplo, datos como páginas web) disponibles vía protocolos HTTP, FTP y Gopher en un sistema más cercano al lugar donde se piden. Los navegadores web pueden usar la caché local Squid como un servidor proxy HTTP, reduciendo el tiempo de acceso así como el consumo de ancho de banda. Esto es muchas veces útil para los proveedores de servicios de Internet para incrementar la velocidad de sus consumidores y para las redes de área local que comparten la conexión a Internet. Debido a que también es un proxy (es decir, se comporta como un cliente en lugar del cliente real), puede proporcionar un cierto grado de anonimato y seguridad. Sin embargo, también puede introducir problemas significativos de privacidad ya que puede registrar mucha información, incluyendo las URL solicitadas junto con otra
GUILLERMO CÁRDENAS HERNÁNDEZ.
59
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
información adicional como la fecha de la petición, versión del navegador y del sistema operativo, etc. Un programa cliente (por ejemplo, un navegador) o bien tiene que especificar explícitamente el servidor proxy que quiere utilizar (típico para consumidores de ISP) o bien podría estar usando un proxy sin ninguna configuración extra. A este hecho se le denomina caché transparente, en el cual todas las peticiones HTTP son interceptadas por squid y todas las respuestas guardadas en caché. Esto último es típico en redes corporativas dentro de una red de acceso local y normalmente incluye los problemas de privacidad mencionados previamente. Squid tiene algunas características que pueden facilitar establecer conexiones anónimas. Características tales como eliminar o modificar campos determinados de la cabecera de peticiones HTTP de los clientes. Esta política de eliminación y alteración de cabeceras se establece en la configuración de Squid. El usuario que solicita páginas a través de una red que utiliza Squid de forma transparente, normalmente no es consciente de este proceso o del registro de información relacionada con el proceso.
DANSGUARDIAN
DansGuardian es un software de control de contenidos, diseñado para controlar el acceso a sitios web. Incluye un filtro de virus, importante en sistemas Windows, es
GUILLERMO CÁRDENAS HERNÁNDEZ.
60
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
usado principalmente en instituciones de educación, gobierno y empresas. Se caracteriza por su alto grado de flexibilidad y adaptación de la implementación. DansGuardian se instala en un ordenador (servidor) con el sistema operativo GNU/Linux, y filtrará contenidos de webs solicitadas por el resto de ordenadores (independientemente del sistema operativo que tengan instalado). Para filtrar contenido usa comparación de caracteres, filtro PICS y filtro por URL. Este software se ofrece con una doble licencia: GPL v2 o comercial (dependiendo de su uso). El Squid Proxy escucha por default en el puerto 3128. Dansguardian es un aplicativo separado que escucha en el puerto 8080 y hace un redireccionamiento al puerto 3128, obviamente filtrando la información de acuerdo a las reglas de filtro especificadas, por supuesto que al instalar Dansguardian es recomendable deshabilitar el squid, dejandolo solo accesible desde la maquina local o desde donde corra Dansguardian,o de bien realizarlo de manera transparente puede tanto buscar palabras no deseadas y pesarlas asignandoles un puntaje de acuerdo al nivel de cada palabra. Cuando el peso total de la página excede el límite, filtra la página direccionando a una página de error.
TRAFFIC SHAPING
GUILLERMO CÁRDENAS HERNÁNDEZ.
61
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
El traffic shaping o catalogación de tráfico (también conocido como catalogación de paquetes, por su nombre en inglés ―packet shaping‖ ) intenta controlar el tráfico en redes de ordenadores para así lograr optimizar o garantizar el rendimiento, baja latencia, y/o un ancho de banda determinado retrasando paquetes.La catalogación de tráfico propone conceptos de clasificación, colas, imposición de políticas, administración de congestión, calidad de servicio (QoS) y regulación. Por otra parte, esto consiste en una práctica utilizada por diversosISPs para no sobrepasar sus capacidades de servicio. Debido al aumento de tráfico especialmente por aplicaciones P2P, los ISPs han aumentado su manejo de este tipo de tráfico. Debido a la adaptación de las aplicaciones para enmascarar este tipo de tráfico, se ha empezado a implementar Inspección Profunda de Paquetes (Deep Packet Inspection en inglés). Si bien normalmente se usa traffic shaping en contexto de ISPs, desde hace mucho tiempo el control de tráfico está soportado por distintas tecnologías de transporte en forma nativa (como ATM y MPLS) lo que permite la clasificación y priorización de tráficos como VoIP por sobre otros de mejor tolerancia al retraso y a jitter. Lacalidaddelafuncióndeserviciopermite lapreferenciadeimportantes aplicaciones críticas para la empresacomo los sistemasERPyCRM,así como servicios de Voz sobre IP para sistemas de telefonía. De este modo se asegura el buen funcionamiento de todos los compartimentos. El ajuste de la calidad del servicio se lleva a cabo muy flexible mediante el establecimientodeindicadoresdeTOSllamado,quemarcalasprioridadespara los paquetes de datos.
PRIORIZACIÓN DE LOS PAQUETES DE DATOS EN TÚNELES VPN. GUILLERMO CÁRDENAS HERNÁNDEZ.
62
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Otra característica especialdelasoluciónes la priorización de paquetes de datoseneltúnel VPN con QoS. Esto esimportanteparaaplicacionesdetiempocrítico en que unretrasonoseríadeseable.Por ejemplo, hacer posibleelusodeVoIP a travésdeuntúnelVPNparalasllamadastelefónicassininterferencias, con independenciadelautilizacióndel túnel de RDP o descarga de datos, por ejemplo.
CALIDAD DE SERVICIO QoS o Calidad de Servicio (Quality of Service, en inglés) son las tecnologías que garantizan la transmisión de cierta cantidad de información en un tiempo dado (throughput). Calidad de servicio es la capacidad de dar un buen servicio. Es especialmente importante para ciertas aplicaciones tales como la transmisión de vídeo o voz.
PROBLEMAS DE DATOS CONMUTADOS.
GUILLERMO CÁRDENAS HERNÁNDEZ.
63
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Muchas cosas le ocurren a los paquetes desde su origen al destino, resultando los siguientes problemas vistos desde el punto de vista del transmisor y receptor: PAQUETES SUELTOS los ruteadores pueden fallar en liberar algunos paquetes si ellos llegan cuando los buffers ya están llenos. Algunos, ninguno o todos los paquetes pueden quedar sueltos dependiendo del estado de la red, y es imposible determinar que pasará de antemano. La aplicación del receptor puede preguntar por la información que será retransmitida posiblemente causando largos retardos a lo largo de la transmisión.
RETARDOS. puede ocurrir que los paquetes tomen un largo período en alcanzar su destino, debido a que pueden permanecer en largas colas o tomen una ruta menos directa para prevenir la congestión de la red. En algunos casos, los retardos excesivos pueden inutilizar aplicaciones tales como VoIP o juegos en línea. JITTER. los paquetes del transmisor pueden llegar a su destino con diferentes retardos. Un retardo de un paquete varía impredeciblemente con su posición en las colas de los ruteadores a lo largo del camino entre el transmisor y el destino. Esta variación en retardo se conoce como jitter y puede afectar seriamente la calidad del flujo de audio y/o vídeo.
ENTREGA DE PAQUETES FUERA DE ORDEN.
GUILLERMO CÁRDENAS HERNÁNDEZ.
64
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Cuando un conjunto de paquetes relacionados entre sí son encaminados a Internet, los paquetes pueden tomar diferentes rutas, resultando en diferentes retardos. Esto ocasiona que los paquetes lleguen en diferente orden de como fueron enviados. Este problema requiere un protocolo que pueda arreglar los paquetes fuera de orden a un estado isócrono una vez que ellos lleguen a su destino. Esto es especialmente importante para flujos de datos de vídeo y VoIP donde la calidad es dramaticamente afectada tanto por latencia y pérdida de sincronía.
ERRORES. A veces, los paquetes son mal dirigidos, combinados entre sí o corrompidos cuando se encaminan. El receptor tiene que detectarlos y justo cuando el paquete es liberado, pregunta al transmisor para repetirlo así mismo.
QOS EN ATM Una de las grandes ventajas de ATM (Asynchronous Transfer Mode – Modo de Transferencia Asíncrona) respecto de técnicas como el Frame Relay y Fast Ethernet es que admite niveles de QoS. Esto permite que los proveedores de servicios ATM garanticen a sus clientes que el retardo de extremo a extremo no excederá un nivel específico de tiempo o que garantizarán un ancho de banda específico para un servicio. Esto es posible marcando los paquetes que provengan de una dirección IP determinada de los nodos conectados a ungateway (como por ejemplo la IP de un teléfono IP, según la puerta del router, etc.). Además, en los servicios satelitales da una nueva perspectiva en la GUILLERMO CÁRDENAS HERNÁNDEZ.
65
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
utilización del ancho de banda, dando prioridades a las aplicaciones de extremo a extremo con una serie de reglas. Una red IP está basada en el envío de paquetes de datos. Estos paquetes de datos tienen una cabecera que contiene información sobre el resto del paquete. Existe una parte del paquete que se llama ToS (Type of Service), en realidad pensada para llevar banderas o marcas. Lo que se puede hacer para darle prioridad a un paquete sobre el resto es marcar una de esas banderas (flags, en inglés). Para ello, el equipo que genera el paquete, por ejemplo una puerta de enlace (gateway, en inglés) de voz sobre IP, coloca una de esas banderas en un estado determinado. Los dispositivos por donde pasa ese paquete después de ser transmitido deben tener la capacidad para poder discriminar los paquetes para darle prioridad sobre los que no fueron marcados o los que se marcaron con una prioridad menor a los anteriores. De esta manera podemos generar prioridades altas a paquetes que requieren una cierta calidad de envío, como por ejemplo la voz o el vídeo en tiempo real, y menores al resto.
QOS EN ESCENARIOS INALÁMBRICOS. El entorno inalámbrico es muy hostil para medidas de Calidad de Servicio debido a su variabilidad con el tiempo, ya que puede mostrar una calidad nula en un cierto instante de tiempo. Esto implica que satisfacer la QoS resulta imposible para el 100% de los casos, lo que representa un serio desafío para la implementación de restricciones de máximo retardo y máxima varianza en el retardo (jitter) en sistemas inalámbricos. Los sistemas de comunicaciones ya estandarizados con restricciones QoS de retardo y jitter en entornos inalámbricos (por ejemplo en GSM y UMTS) sólo GUILLERMO CÁRDENAS HERNÁNDEZ.
66
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
pueden garantizar los requisitos para un porcentaje (<100%) de los casos. Esto implica una caída del servicio (Outage o downtime en inglés), generando los cortes de llamadas y/o los mensajes de ―red ocupada‖. Por otro lado, algunas
aplicaciones de datos (por ejemplo, WiFi) no requieren de restricciones de máximo retardo y jitter, por lo que su transmisión sólo necesita de la calidad media del canal, evitando la existencia de caídas del servicio. Establezca prioridades. El tráfico de la red puede ser priorizado para adecuarse a los objetivos de la organización. Por ejemplo, asegúrese que el personal surfeando en la red no está reduciendo los recursos para aplicaciones críticas como ERP, comercio electrónico, aplicaciones estratégicas y servidores de información clasificada. Esto es especialmente crítico en oficinas externas en donde el ancho de banda es un recurso costoso y limitado. La priorización de servicios es indispensable. El acceso a las aplicaciones críticas puede ser menoscabado o inclusive totalmente inhabilitado por aplicaciones no críticas; personal bajando o subiendo grandes archivos via www o ftp u observando aplicaciones multimedia via Internet
RED PRIVADA VIRTUAL. Una red privada virtual o VPN (siglas en inglés de virtual private network), es una tecnología de red que permite una extensión de la red local sobre una red pública o no controlada, como por ejemplo Internet. Ejemplos comunes son, la posibilidad de conectar dos o más sucursales de una empresa utilizando como vínculo Internet, permitir a los miembros del equipo de soporte técnico la conexión desde su casa al centro de cómputo, o que un usuario pueda acceder a su equipo doméstico desde un sitio remoto, como por ejemplo un hotel. Todo ello utilizando la infraestructura de Internet. GUILLERMO CÁRDENAS HERNÁNDEZ.
67
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
CARACTERISTICAS BASICAS DE SEGURIDAD. Para hacerlo posible de manera segura es necesario proporcionar los medios para garantizar la autentificación, integridad y confidencialidad de toda la comunicación: Autentificación y autorización: ¿Quién está del otro lado? Usuario/equipo y qué nivel de acceso debe tener. Integridad: de que los datos enviados no han sido alterados. Para ello se utiliza funciones de Hash. Los algoritmos de hash más comunes son los Message Digest (MD2 y MD5) y elSecure Hash Algorithm (SHA). Confidencialidad: Dado que sólo puede ser interpretada por los destinatarios de la misma. Se hace uso de algoritmos de cifrado como Data Encryption Standard (DES), Triple DES(3DES) y Advanced Encryption Standard (AES). No repudio: es decir, un mensaje tiene que ir firmado, y el que lo firma no puede negar que el mensaje lo envió él o ella. TIPOS DE VPN VPN DE ACCESO REMOTO Es quizás el modelo más usado actualmente, y consiste en usuarios o proveedores que se conectan con la empresa desde sitios remotos (oficinas comerciales, domicilios, hoteles,aviones preparados, etcétera) utilizando Internet como vínculo de acceso. Una vez autentificados tienen un nivel de acceso muy similar al que tienen en la red local de la empresa. Muchas empresas han reemplazado con esta tecnología su infraestructura dial-up (módems y líneas telefónicas). GUILLERMO CÁRDENAS HERNÁNDEZ.
68
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
VPN PUNTO A PUNTO. Este esquema se utiliza para conectar oficinas remotas con la sede central de la organización. El servidor VPN, que posee un vínculo permanente a Internet, acepta las conexiones vía Internet provenientes de los sitios y establece el túnel VPN. Los servidores de las sucursales se conectan a Internet utilizando los servicios de su proveedor local de Internet, típicamente mediante conexiones de banda ancha. Esto permite eliminar los costosos vínculos punto a punto tradicionales, sobre todo en las comunicaciones internacionales. Es más común el siguiente punto, también llamado tecnología de túnel o tunneling.
TUNNELING. La técnica de tunneling consiste en encapsular un protocolo de red sobre otro (protocolo de red encapsulador) creando un túnel dentro de una red de computadoras. El establecimiento de dicho túnel se implementa incluyendo una PDU determinada dentro de otra PDU con el objetivo de transmitirla desde un extremo al otro del túnel sin que sea necesaria una interpretación intermedia de la PDU encapsulada. De esta manera se encaminan los paquetes de datos sobre nodos intermedios que son incapaces de ver en claro el contenido de dichos paquetes. El túnel queda definido por los puntos extremos y el protocolo de comunicación empleado, que entre otros, podría ser SSH. El uso de esta técnica persigue diferentes objetivos, dependiendo del problema que se esté tratando, como por ejemplo la comunicación de islas en escenarios multicast, la redirección de tráfico, etc. Uno de los ejemplos más claros de utilización de esta técnica consiste en la redirección de tráfico en escenarios IP Móvil. En escenarios de IP móvil, cuando un nodo-móvil no se encuentra en su red base, necesita que su home-agent GUILLERMO CÁRDENAS HERNÁNDEZ.
69
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
realice ciertas funciones en su puesto, entre las que se encuentra la de capturar el tráfico dirigido al nodo-móvil y redirigirlo hacia él. Esa redirección del tráfico se realiza usando un mecanismo de tunneling, ya que es necesario que los paquetes conserven su estructura y contenido originales (dirección IP de origen y destino, puertos, etc.) cuando sean recibidos por el nodo-móvil.(conceptos por el autorFernando Martin Rivas Fuentes Rivera)
VPN OVER LAN Este esquema es el menos difundido pero uno de los más poderosos para utilizar dentro de la empresa. Es una variante del tipo "acceso remoto" pero, en vez de utilizar Internet como medio de conexión, emplea la misma red de área local (LAN) de la empresa. Sirve para aislar zonas y servicios de la red interna. Esta capacidad lo hace muy conveniente para mejorar las prestaciones de seguridad de las redes inalámbricas (WiFi). Un ejemplo clásico es un servidor con información sensible, como las nóminas de sueldos, ubicado detrás de un equipo VPN, el cual provee autenticación adicional más el agregado del cifrado, haciendo posible que sólo el personal de recursos humanos habilitado pueda acceder a la información. Otro ejemplo es la conexion a redes WIFI haciendo uso de túneles cifrados IPSEC o SSL que además de pasar por los métodos de autenticación tradicionales (WAP, WEP, MAcaddress, etc.) agregan las credenciales de seguridad del túnel VPN creado en la LAN internas o externas.
IMPLEMENTACIONES. El protocolo estándar de hecho es el IPSEC, pero también tenemos PPTP, L2F, L2TP, SSL/TLS, SSH, etc. Cada uno con sus ventajas y
GUILLERMO CÁRDENAS HERNÁNDEZ.
70
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
desventajas en cuanto a seguridad, facilidad, mantenimiento y tipos de clientes soportados. Actualmente hay una línea de productos en crecimiento relacionada con el protocolo SSL/TLS, que intenta hacer más amigable la configuración y operación de estas soluciones. Las soluciones de hardware casi siempre ofrecen mayor rendimiento y facilidad de configuración, aunque no tienen la flexibilidad de las versiones por software. Dentrodeesta familia tenemos a los productos deFortinet,SonicWALL,WatchGuard,Nortel,Cisco,Linksys,Netscreen(Juniper Networks),Symantec,Nokia,U.S. Robotics,D-link, etc. Las aplicaciones VPN por software son las más configurables y son ideales cuando surgen problemas de interoperatividad en los modelos anteriores. Obviamente el rendimiento es menor y la configuración más delicada, porque se suma el sistema operativo y la seguridad del equipo en general. Aquí tenemos por ejemplo a las soluciones nativas de Windows,GNU/Linux y los Unix en general.
NOTA: NECESITO QUE EDITES ADECUADAMENTE TU FUNDAMENTO TEORICO, DEMUESTRAS DEMASIADO EL COPIAR-PEGAR, HAY MUCHAS PALABRAS PEGADAS Y FALTA EDITAR BIEN POR FAVOR. PROCEDIMIENTO Y DESCRIPCIÓN DE LAS ACTIVIDADES. 1.- Conocer la empresa acerca de la empresa y su funcionamiento. Se realizó el recorrido por la empresa y se identificó su funcionamiento. 2.- Identificación de las necesidades. GUILLERMO CÁRDENAS HERNÁNDEZ.
71
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Se identificaron las necesidades de los servidores así como tambiénel funcionamiento de estos. 3.- Análisis de la problemática. Se analizó la problemática principal de estos servidores así como también mejoras posibles a realizar. 4.- Investigación de Aplicaciones. Se realizó la investigación de aplicaciones más posibles a manejar, realizando elecciones de estos a partir de sus características y capacidades. 5.- Análisis del sistema Operativo. Se realizó un análisis en la base principal del proyecto que es el sistema operativo, dando, seleccionando a través de varias pruebas la distribución Ubuntu 10.041 Lucid Lynx LTS, por su gran soporte en Hardware, y además de ser una versión de gran soporte de seguridad y hardware durante varios años. 6.- Pruebas Necesarias. Se realizaron pruebas necesarias en equipos de diferente arquitectura para la instalación del sistema operativo y su núcleo o Kernel. 7.- Administración de ancho de banda. Se instalaron las aplicaciones para lograr administrar el ancho de banda así como sus principales librerías y aplicaciones necesarias para lograr un funcionamiento correcto. 8.- Redirección de Líneas. Se realizaron las modificaciones necesarias en el Firewall para lograr Aceptar Trafico, así como también las líneas del ISP para ser configuradas ya sea como LAN o VLAN. 9.- Diseño de la Interfaz Gráfica. GUILLERMO CÁRDENAS HERNÁNDEZ.
72
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Se diseñó la Interfaz Gráfica para la administración y tickets de Incidencias. 10.-Pruebas. Se Realizaron pruebas necesarias localmente similares a implantar en producción. 11.- Actualizar a los servidores. Se actualizaron cada uno de los servidores en producción. 12.- Elaboración de Manuales. Elaboración de manual General del Proyecto Realizado. 13.- Entrega. Se realizó la entrega del manual General del Proyecto.
NOTA: SOLO TIENES 13 ACTIVIDADES EN EL CRONOGRAMA DE TU PROYECTO?, PONLAS EN NEGRITAS, PARA QUE RESALTEN.
RESULTADOS. El proyecto se realizó satisfactoriamente dando como resultado una mejor administración en la red donde se implementan estos servidores, así como también integrar valores agregados que en conjunto con la solución de control y GUILLERMO CÁRDENAS HERNÁNDEZ.
73
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
administración de ancho de banda, ofrece herramientas de diagnóstico, estadística y monitoreo.
Equipo XpertNTC
Monitoreo de servidores.
NOTA: AQUÍ POR LO GENERAL SE ANEXA EL MANUAL DE USUARIO Y TECNICO PERO PUEDES ANEXAR MINIMO EL DE USUARIO. CONCLUSIONES
GUILLERMO CÁRDENAS HERNÁNDEZ.
74
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Durante el desarrollo del proyecto como residente, desarrolle nuevas técnicas de programación, al igual que conocí nuevas tecnologías aplicadas a servidores, así como la instalación, desarrollo, y configuración de estas. Me permití ampliar los conocimientos de las nuevas tecnologías y poder obtener beneficio de estas, implementarlas en un proyecto para mi parecer con unas expectativas en el mercado muy amplias para beneficio de la sociedad. Al igual corroboré la importancia de la residencia profesional, ya que proporciona un escenario de ambiente laboral que se espera a futuro, al igual que nos brinda experiencia para poder ser los desarrolladores de nuevas y demandadas tecnologías.
RECOMENDACIONES.
GUILLERMO CÁRDENAS HERNÁNDEZ.
75
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Una recomendación para la empresa seria agregar un antivirus para garantizar aún más la seguridad de la red, que está claro que con el filtrado y firewall que se implementa se encuentra seguro, esto sería para ya no depender de un antivirus externo, y poder brindar un nuevo valor agregado. Incitar a los alumnos de las nuevas generaciones de residentes, implementar sus proyectos en empresas que puedan reconocer sus aptitudes, donde obtendrán un gran panorama de lo que se espera del campo laboral. Impulsar al alumnado las nuevas tecnologías y la cultura Open Source ya que es una alternativa realmente favorable, segura y sobre todo de gran desarrollo en el futuro.
REFERENCIAS BIBLIOGRAFICAS
GUILLERMO CÁRDENAS HERNÁNDEZ.
76
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
1.- Aprender el Bash, segunda edición, Cameron Newham , Bill Rosenblatt, O'Reilly Media, Enero 1998 2.- Redes Privadas Virtuales Con Linux, Kolesnikov, Pearson - España, 450 3.- El libro de Linux, Sarnar, Syed Mansoor, García-Bermejo Giner, José Rafael, Pearson Addison-Wesley, 2003. 4.- La biblia del bash
http://tldp.org/LDP/abs/html/
5.- Linuxtopia
http://www.linuxtopia.or
6.- Somos Libres
ww.somoslibres.org
Dansguardian http://dansguardian.org/ Squid http://www.squid-cache.org/ Linux Kernel http://www.kernel.org/
GUILLERMO CÁRDENAS HERNÁNDEZ.
77
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
ANEXOS
INSTALACION DE UBUNTU SERVER
GUILLERMO CÁRDENAS HERNÁNDEZ.
78
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Una vez iniciado el equipo donde se instalara el sistema operativo es necesario configurar a este para que inicie ya sea con el disco o con el dispositivo USB según sea el caso. Una vez realizado este aparece la siguiente pantalla, donde seleccionamos el idioma para la instalación.
Enseguida se muestra el menú principal donde seleccionaremos instalar Ubuntu.
GUILLERMO CÁRDENAS HERNÁNDEZ.
79
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Primero debemos seleccionar el idioma para la instalación, y el que definitivamente será instalado. Aunque siémpre podemos cambiarlo en Ubuntu. En mi caso English.
Ahora estableceremos cual es nuestra localización-región para que el sistema tenga bien calculado el calendario.
GUILLERMO CÁRDENAS HERNÁNDEZ.
80
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Ubuntu 10.04 es capaz de detectar automáticamente el layout, pero elegiremos y enseguida seleccionar el layout preferido
Escaneando el CD-rom
Cargando componentes.
Detectando el hardware de red.
GUILLERMO CÁRDENAS HERNÁNDEZ.
81
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Configurando la red mediante DHCP, si este proceso falla podremos configurarla de modo manual.
Configuramos el nombre de la máquina, el nombre del servidor
El instalador ahora va a detectar las unidades de disco del sistema y arrancar el particionador, hasta ahora todo lo seleccionado podrá cambiarse una vez el sistema esté instalado, pero el siguiente paso es más delicado. Tenemos que decirle al instalador en qué partición o disco duro queremos instalar el sistema. Tratándose de una máquina virtual básica, para un fin educativo o de testeo simplemente seleccionaré "utilizar todo el disco", y dejaré que ubuntu se instale según su convención de carpetas basada en Debian. En la imagen es la segunda opción, en máquinas virtuales nuevas, "utilizar todo el disco" será la opción por defecto.
GUILLERMO CÁRDENAS HERNÁNDEZ.
82
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
La versión 10.04 incorpora LVM de forma predeterminada, permitiendo que el sistema escale en número de discos y particiones. Recomiendo una lectura profunda en la documentación de LVM, sobre todo si usted es manager/responsable de IT en su empresa.
Una vez hemos escogido la opción del particionador tendremos que seleccionar la partición correspondiente o disco completo.
Tendremos que confirmar que se apliquen los cambios a la unidad de disco, esto aplicará permanentemente la configuración seleccionada.
GUILLERMO CÁRDENAS HERNÁNDEZ.
83
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Como novedad en la versión 10.04 hay que decirle, del disco o partición seleccionado, cuanto espacio vamos a utilizar para esta instalación. En versiones anteriores simplemente se ocupaba todo el disco o partición.
Confirmamos los cambios para que se apliquen
GUILLERMO CÁRDENAS HERNÁNDEZ.
84
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Formateando las particiones.
Instalando el sistema base en la partición recientemente creada, esto tardará un poco.
Configuramos el nombre del usuario principal.
Configuramos una cuenta de usuario (no root) para el primer login. Ubuntu no asigna contraseña a root por defecto, es necesario loguearse en el sistema como un usuario normal y luego asignarle a root una contraseña.
GUILLERMO CÁRDENAS HERNÁNDEZ.
85
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Asignamos una contraseña para el usuario que estamos creando.
Encriptar su carpeta de usuario.
Si dispone de acceso a internet el servicio APT (de provisión de paquetes automático del repositorio de ubuntu) se configurará para acceder al repositorio del proyecto y descargar las actualizaciones de seguridad. Si no dispone de configuración a internet el CD de instalacíon actuará de repositorio.
GUILLERMO CÁRDENAS HERNÁNDEZ.
86
ADMINISTRACIÓN DE ANCHO DE BANDA PARA CLIENTES DE LA EMPRESA WWNETWORKS.
Seleccón de paquetes para el sistema, ubuntu puede descargar del CD de instalación o de la conexión activa a internet algunos paquetes por comodidad del administrador, pero por supuesto mediante apt es posible descargaros manualmente una vez instalado.
Proceso de instalación del software seleccionado.
Finalizando la instalación.
GUILLERMO CÁRDENAS HERNÁNDEZ.
87