nombres de dominio) es un sistema de nomenclatura jerrquica para computadoras, servicios o cualquier recurso conectado a nternet o a una red privada. Este sistema asocia informacin variada con nombres de dominios asignado a cada uno de los participantes. Su funcin ms importante, es traducir (resolver) nombres inteligibles para las personas en identificadores binarios asociados con los equipos conectados a la red, esto con el propsito de poder localizar y direccionar estos equipos mundialmente. El servidor DNS utiliza una base de datos distribuida y jerrquica que almacena informacin asociada a nombres de dominio en redes como nternet. Aunque como base de datos el DNS es capaz de asociar diferentes tipos de informacin a cada nombre, los usos ms comunes son la asignacin de nombres de dominio a direcciones P y la localizacin de los servidores de correo electrnico de cada dominio. La asignacin de nombres a direcciones P es ciertamente la funcin ms conocida de los protocolos DNS. Por ejemplo, si la direccin P del sitio FTP de prox.mx es 200.64.128.4, la mayora de la gente llega a este equipo especificando ftp.prox.mx y no la direccin P. Adems de ser ms fcil de recordar, el nombre es ms fiable. La direccin numrica podra cambiar por muchas razones, sin que tenga que cambiar el nombre. nicialmente, el DNS naci de la necesidad de recordar fcilmente los nombres de todos los servidores conectados a nternet. En un inicio, SR (ahora SR nternational) alojaba un archivo llamado HOSTS que contena todos los nombres de dominio conocidos. El crecimiento explosivo de la red caus que el sistema de nombres centralizado en el archivo hosts no resultara prctico y en 1983, Paul V. Mockapetris public los RFC 882 y RFC 883 definiendo lo que hoy en da ha evolucionado hacia el DNS moderno. (Estos RFCs han quedado obsoletos por la publicacin en 1987 de los RFCs 1034 y RFC 1035). Componentes Para la operacin prctica del sistema DNS se utilizan tres componentes principales: Los Clientes fase 1: Un programa cliente DNS que se ejecuta en la computadora del Preparado por Ernesto Moyano Sandoval usuario y que genera peticiones DNS de resolucin de nombres a un servidor DNS (Por ejemplo: Qu direccin P corresponde a nombre.dominio?) Los Servidores DNS: Que contestan las peticiones de los clientes. Los servidores recursivos tienen la capacidad de reenviar la peticin a otro servidor si no disponen de la direccin solicitada. Las Zonas de autoridad: Porciones del espacio de nombres raros de dominio que almacenan los datos. Cada zona de autoridad abarca al menos un dominio y posiblemente sus subdominios, si estos ltimos no son delegados a otras zonas de autoridad Entendiendo las partes de un nombre de dominio Un nombre de dominio usualmente consiste en dos o ms partes (tcnicamente etiquetas), separadas por puntos cuando se las escribe en forma de texto. Por ejemplo, www.example.com o www.wikipedia.es A la etiqueta ubicada ms a la derecha se le llama dominio de nivel superior (en ingls top level domain). Como org en www.ejemplo.org o es en www.wikipedia.es Cada etiqueta a la izquierda especifica una subdivisin o subdominio. Ntese que "subdominio" expresa dependencia relativa, no dependencia absoluta. En teora, esta subdivisin puede tener hasta 127 niveles, y cada etiqueta puede contener hasta 63 caracteres, pero restringidos a que la longitud total del nombre del dominio no exceda los 255 caracteres, aunque en la prctica los dominios son casi siempre mucho ms cortos. Finalmente, la parte ms a la izquierda del dominio suele expresar el nombre de la mquina (en ingls hostname). El resto del nombre de dominio simplemente especifica la manera de crear una ruta lgica a la informacin requerida. Por ejemplo, el dominio es.wikipedia.org tendra el nombre de la mquina "es", aunque en este caso no se refiere a una mquina fsica en particular. El DNS consiste en un conjunto jerrquico de servidores DNS. Cada dominio o subdominio tiene una o ms zonas de autoridad que publican la informacin acerca del dominio y los nombres de servicios de cualquier dominio incluido. La jerarqua de las zonas de autoridad coincide con la jerarqua de los dominios. Al inicio de esa jerarqua se encuentra los servidores raz: los servidores que responden cuando se busca resolver un dominio de primer y segundo nivel. Preparado por Ernesto Moyano Sandoval DNS en el mundo real Los usuarios generalmente no se comunican directamente con el servidor DNS: la resolucin de nombres se hace de forma transparente por las aplicaciones del cliente (por ejemplo, navegadores, clientes de correo y otras aplicaciones que usan nternet). Al realizar una peticin que requiere una bsqueda de DNS, la peticin se enva al servidor DNS local del sistema operativo. El sistema operativo, antes de establecer alguna comunicacin, comprueba si la respuesta se encuentra en la memoria cach. En el caso de que no se encuentre, la peticin se enviar a uno o ms servidores DNS. La mayora de usuarios domsticos utilizan como servidor DNS el proporcionado por el proveedor de servicios de nternet. La direccin de estos servidores puede ser configurada de forma manual o automtica mediante DHCP. En otros casos, los administradores de red tienen configurados sus propios servidores DNS. En cualquier caso, los servidores DNS que reciben la peticin, buscan en primer lugar si disponen de la respuesta en la memoria cach. Si es as, sirven la respuesta; en caso contrario, iniciaran la bsqueda de manera recursiva. Una vez encontrada la respuesta, el servidor DNS guardar el resultado en su memoria cach para futuros usos y devuelve el resultado. Jerarqua DNS Preparado por Ernesto Moyano Sandoval El espacio de nombres de dominio tiene una estructura arborescente. Las hojas y los nodos del rbol se utilizan como etiquetas de los medios. Un nombre de dominio completo de un objeto consiste en la concatenacin de todas las etiquetas de un camino. Las etiquetas son cadenas alfanumricas (con '-' como nico smbolo permitido), deben contar con al menos un carcter y un mximo de 63 caracteres de longitud, y deber comenzar con una letra (y no con '-') (ver la RFC 1035, seccin "2.3.1. Preferencia nombre de la sintaxis "). Las etiquetas individuales estn separadas por puntos. Un nombre de dominio termina con un punto (aunque este ltimo punto generalmente se omite, ya que es puramente formal). Un FQDN correcto (tambin llamado Fully Qualified Domain Name), es por ejemplo este: www.example.com. (ncluyendo el punto al final). Un nombre de dominio debe incluir todos los puntos y tiene una longitud mxima de 255 caracteres. Un nombre de dominio se escribe siempre de derecha a izquierda. El punto en el extremo derecho de un nombre de dominio separa la etiqueta de la raz de la jerarqua (en ingls, root). Este primer nivel es tambin conocido como dominio de nivel superior (TLD - Top Level Domain). Los objetos de un dominio DNS (por ejemplo, el nombre del equipo) se registran en un archivo de zona, ubicado en uno o ms servidores de nombres. Tipos de servidores DNS rimarios o maestros: Guardan los datos de un espacio de nombres en sus ficheros. Se!undarios o es!lavos: Obtienen los datos de los servidores primarios a travs de una transferencia de zona. Lo!ales o !a!"#: Funcionan con el mismo software, pero no contienen la base de datos Preparado por Ernesto Moyano Sandoval para la resolucin de nombres. Cuando se les realiza una consulta, estos a su vez consultan a los servidores DNS correspondientes, almacenando la respuesta en su base de datos para agilizar la repeticin de estas peticiones en el futuro continuo o libre. Tipos de resolu!i$n de nombres de dominio Existen dos tipos de consultas que un cliente puede hacer a un servidor DNS, la iterativa y la recursiva. %esolu!i$n iterativa Las resoluciones iterativas consisten en la respuesta completa que el servidor de nombres pueda dar. El servidor de nombres consulta sus datos locales (incluyendo su cach) buscando los datos solicitados. El servidor encargado de hacer la resolucin realiza iterativamente preguntas a los diferentes DNS de la jerarqua asociada al nombre que se desea resolver, hasta descender en ella hasta la mquina que contiene la zona autoritativa para el nombre que se desea resolver. %esolu!i$n re!ursiva En las resoluciones recursivas, el servidor no tiene la informacin en sus datos locales, por lo que busca y se pone en contacto con un servidor DNS raz, y en caso de ser necesario repite el mismo proceso bsico (consultar a un servidor remoto y seguir a la siguiente referencia) hasta que obtiene la mejor respuesta a la pregunta. Cuando existe ms de un servidor autoritario para una zona, Bind utiliza el menor valor en la mtrica RTT (round-trip time) para seleccionar el servidor. El RTT es una medida para determinar cunto tarda un servidor en responder una consulta. El proceso de resolucin normal se da de la siguiente manera: 1. El servidor A recibe una consulta recursiva desde el cliente DNS. 2. El servidor A enva una consulta recursiva a B. 3. El servidor B refiere a A otro servidor de nombres, incluyendo a C. 4. El servidor A enva una consulta recursiva a C. 5. El servidor C refiere a A otro servidor de nombres, incluyendo a D. Preparado por Ernesto Moyano Sandoval 6. El servidor A enva una consulta recursiva a D. 7. El servidor D responde. 8. El servidor A regresa la respuesta al resolver. 9. El resolver entrega la resolucin al programa que solicit la informacin. Tipos de re&istros DNS ': Address (Direccin) Este registro se usa para traducir nombres de servidores de alojamiento a direcciones Pv4. '''': Address (Direccin) Este registro se usa en Pv6 para traducir nombres de hosts a direcciones Pv6. CN'(E: Canonical Name (Nombre Cannico) Se usa para crear nombres de servidores de alojamiento adicionales, o alias, para los servidores de alojamiento de un dominio. Es usado cuando se estn corriendo mltiples servicios (como ftp y servidor web) en un servidor con una sola direccin ip. Cada servicio tiene su propia entrada de DNS (como ftp.ejemplo.com. y www.ejemplo.com.). esto tambin es usado cuando corres mltiples servidores http, con diferente nombres, sobre el mismo host. Se escribe primero el alias y luego el nombre real. Ej. Ejemplo1 N CNAME ejemplo2 NS: Name Server (Servidor de Nombres) Define la asociacin que existe entre un nombre de dominio y los servidores de nombres que almacenan la informacin de dicho dominio. Cada dominio se puede asociar a una cantidad cualquiera de servidores de nombres. () *re&istro+: Mail Exchange (Registro de ntercambio de Correo) Asocia un nombre de dominio a una lista de servidores de intercambio de correo para ese dominio. Tiene un balanceo de carga y prioridad para el uso de uno o ms servicios de correo. T%: Pointer (ndicador) Tambin conocido como 'registro inverso', funciona a la inversa del registro A, traduciendo Ps en nombres de dominio. Se usa en el archivo de configuracin del Dns reversiva. S,': Start of authority (Autoridad de la zona) Proporciona informacin sobre el servidor DNS primario de la zona. Preparado por Ernesto Moyano Sandoval -.N/,: Host NFOrmation (nformacin del sistema informtico) Descripcin del host, permite que la gente conozca el tipo de mquina y sistema operativo al que corresponde un dominio. T)T: TeXT - ( nformacin textual) Permite a los dominios identificarse de modos arbitrarios. L,C: LOCalizacin - Permite indicar las coordenadas del dominio. 01S: Generalizacin del registro MX para indicar los servicios que ofrece el dominio. Obsoleto en favor de SRV. S%2: SeRVicios - Permite indicar los servicios que ofrece el dominio. RFC 2782. Excepto Mx y Ns. Hay que incorporar el nombre del servicio, protocolo, dominio completo, prioridad del servicio, peso, puerto y el equipo completo. Esta es la sintaxis correspondiente: Servicio.Protocolo.Dominio-completo N SRV Prioridad.Peso.Puerto.Equipo-Completo S/: Sender Policy Framework - Ayuda a combatir el Spam. En este registro se especifica cual o cuales hosts estn autorizados a enviar correo desde el dominio dado. El servidor que recibe, consulta el SPF para comparar la P desde la cual le llega con los datos de este registro. 'N3: Toda la informacin de todos los tipos que exista. Como instalar un servidores DNS en 4buntu server El servidor DNS ms utilizado es Bind, vamos a ver cmo instalarlo y configurarlo Ubuntu paso a paso. El contenido de este tutorial es genrico pero las pruebas y capturas de pantalla se han hecho sobre Ubuntu 10.04 Server. Los valores que debemos tener claros antes de comenzar son los siguientes: Direccin P del servidor: 15671897671 Nombre del servidor: servidor Dominio que vamos a crear: sli!eoflinu:7lan Estos valores deberemos sustituirlos por los que necesitemos en cada caso. Preparado por Ernesto Moyano Sandoval Los pasos para instalar y configurar Bind en Ubuntu Server son los siguientes: - Actualizamos la informacin de los repositorios con el siguiente comando: - nstalamos el servidor DNS Bind9: - Hacemos una copia de seguridad del archivo que vamos a modificar: - Editamos el archivo /etc/bind/named.conf.local con el siguiente comando: - y aadimos el siguiente contenido: Esto se puede ver en la siguiente captura de pantalla: Preparado por Ernesto Moyano Sandoval Para guardar el archivo debemos pulsar la combinacin de teclas Control+O y para salir Control+X. - Para comprobar la sintaxis de los archivos de configuracin ejecutamos el siguiente comando: Si no apare!e nada; la sinta:is de los ar!"ivos de !onfi&ura!i$n es !orre!ta7 <,=o> Eso no si&nifi!a que no "aya nin&?n error; s$lo que no "ay errores de sinta:is7 Si hubisemos cometido un error de sintaxis, nos aparecera indicado junto a la lnea en la que ocurre. En el siguiente ejemplo puede verse que en el archivo /etc/bind/named.conf.local en la lnea 15 hay un error: - Creamos el archivo /var/cache/bind/db.sliceoflinux.lan: Preparado por Ernesto Moyano Sandoval en el archivo incluimos el siguiente contenido: En este fichero aadiremos la lista de todos nuestros dispositivos con sus respectivas direcciones P. Primero el !ampo S,' (Start of Authority) que hace referencia al servidor de nombres con autoridad en la zona y a la cuenta de correo del administrador encargado de administrarla, donde la arroba es reemplazada por un punto. As pues nosotros dejaremos la lnea relativa al campo SOA. Despus el !ampo NS que hace referencia al servidor de nombres de la zona. Y despus ya podremos a@adir los re&istros ' (de direccin) que se correspondern con los dispositivos conectados a nuestra red, como primer ejemplo el mismo pc que hace de servidor DNS: - Comprobamos la zona que acabamos de crear (sliceoflinux.lan): En esta ocasin siempre nos aparecer una salida, ya sea para indicarnos que todo est bien (OK) o algn error. - A continuacin creamos el archivo /var/cache/bind/db.192.168.2 para la zona inversa: Preparado por Ernesto Moyano Sandoval e incluimos el siguiente contenido: El nmero 1 se corresponde con el ltimo dgito de la direccin P del servidor (192.168.2.1). Este archivo tiene la misma estructura que el anterior, por tanto debemos modificar prcticamente las mismas cosas, empeAando por el re&istro S,' y el re&istro NS, dejndolos exactamente igual que en el archivo anterior. Lo que cambia en este archivo es que en vez de utilizar registros A utilizaremos registros PTR para resolver las direcciones P en nombres de dominio. As pues, para el primer registro PTR, que coincidir tambin con el propio servidor DNS. - Comprobamos la zona inversa recin creada: Al igual que antes obtendremos un mensaje para indicarnos tanto si la zona es correcta como si no lo es. - Reiniciamos el servicio: Si todo va bien, veremos que est OK. Preparado por Ernesto Moyano Sandoval - Editamos el archivo /etc/resolv.conf para que nuestro servidor resuelva las peticiones DNS: Cambiando el primero de los servidores DNS por la P del nuestro: - Probamos nuestro servidor de nombres: La respuesta ser muy parecida a la siguiente: - Probamos la resolucin inversa: Preparado por Ernesto Moyano Sandoval Esta sera la salida esperada del comando anterior: - Por ltimo, para poder sacarle partido al servidor que hemos creado nos faltara incluir este servidor DNS en la configuracin de los clientes. Bien, con esto ya tenemos nuestro servidor funcionado y probado. Ahora vamos a modificar nuestro servidor DNS para que redirija las peticiones a otro servidor DNS cuando no pueda resolver una peticin. Para ello modificamos el siguiente archivo: B sudo nano Cet!CbindCnamed7!onf7options Aadiremos pues los servidores DNS que nos interesen, ya sea los que nos proporciona nuestro SP u otros cualesquiera. En caso prefiero los de OpenDNS: forwarders { 208.67.222.222; 208.67.220.220; }; Preparado por Ernesto Moyano Sandoval Preparado por Ernesto Moyano Sandoval -yperte:t Transfer roto!ol Hypertext Transfer Protocol o HTTP (en espaol protocolo de transferencia de hipertexto) es el protocolo usado en cada transaccin de la World Wide Web. HTTP fue desarrollado por el World Wide Web Consortium y la nternet Engineering Task Force, colaboracin que culmin en 1999 con la publicacin de una serie de RFC, el ms importante de ellos es el RFC 2616 que especifica la versin 1.1. HTTP define la sintaxis y la semntica que utilizan los elementos de software de la arquitectura web (clientes, servidores, proxies) para comunicarse. Es un protocolo orientado a transacciones y sigue el esquema peticin- respuesta entre un cliente y un servidor. Al cliente que efecta la peticin (un navegador web o un spider) se lo conoce como "user agent" (agente del usuario). A la informacin transmitida se la llama recurso y se la identifica mediante un localizador uniforme de recursos (URL). Los recursos pueden ser archivos, el resultado de la ejecucin de un programa, una consulta a una base de datos, la traduccin automtica de un documento, etc. HTTP es un protocolo sin estado, es decir, que no guarda ninguna informacin sobre conexiones anteriores. El desarrollo de aplicaciones web necesita frecuentemente mantener estado. Para esto se usan las cookies, que es informacin que un servidor puede almacenar en el sistema cliente. Esto le permite a las aplicaciones web instituir la nocin de "sesin", y tambin permite rastrear usuarios ya que las cookies pueden guardarse en el cliente por tiempo indeterminado. Transa!!iones -TT Una transaccin HTTP est formada por un encabezado seguido, opcionalmente, por una lnea en blanco y algn dato. El encabezado especificar cosas como la accin requerida del servidor, el tipo de dato retornado o el cdigo de estado. El uso de campos de encabezados enviados en las transacciones HTTP le dan gran flexibilidad al protocolo. Estos campos permiten que se enve informacin descriptiva en la transaccin, permitiendo as la autenticacin, cifrado e identificacin de usuario. Preparado por Ernesto Moyano Sandoval Un encabezado es un bloque de datos que precede a la informacin propiamente dicha, por lo que muchas veces se hace referencia a l como metadato porque tiene datos sobre los datos. Si se reciben lneas de encabezado del cliente, el servidor las coloca en las variables de entorno de CG con el prefijo HTTP_ seguido del nombre del encabezado. Cualquier carcter guion ( - ) del nombre del encabezado se convierte a caracteres "_". El servidor puede excluir cualquier encabezado que ya est procesado, como Authorization, Content-type y Content-length. El servidor puede elegir excluir alguno o todos los encabezados, si incluirlos, si se excede algn lmite del entorno de sistema. Ejemplos de esto son las variables HTTP_ACCEPT y HTTP_USER_AGENT. HTTP_ACCEPT. Los tipos MME que el cliente aceptar, dados los encabezados HTTP. Otros protocolos quizs necesiten obtener esta informacin de otro lugar. Los elementos de esta lista deben estar separados por una coma, como se dice en la especificacin HTTP: tipo, tipo. HTTP_USER_AGENT. El navegador que utiliza el cliente para realizar la peticin. El formato general para esta variable es: software/versin biblioteca/versin. El servidor enva al !liente: Un cdigo de estado que indica si la peticin fue correcta o no. Los cdigos de error tpicos indican que el archivo solicitado no se encontr, que la peticin no se realiz de forma correcta o que se requiere autenticacin para acceder al archivo. La informacin propiamente dicha. Como HTTP permite enviar documentos de todo tipo y formato, es ideal para transmitir multimedia, como grficos, audio y video. Esta libertad es una de las mayores ventajas de HTTP. nformacin sobre el objeto que se retorna. Hay que tener en cuenta que la lista no es una lista completa de los campos de encabezado y que algunos de ellos slo tienen sentido en una direccin. 2ersiones HTTP ha pasado por mltiples versiones del protocolo, muchas de las cuales son Preparado por Ernesto Moyano Sandoval compatibles con las anteriores. El RFC 2145 describe el uso de los nmeros de versin de HTTP. El cliente le dice al servidor al principio de la peticin la versin que usa, y el servidor usa la misma o una anterior en su respuesta. D75 Obsoleta. Soporta slo un comando, GET, y adems no especifica el nmero de versin HTTP. No soporta cabeceras. Como esta versin no soporta POST, el cliente no puede enviarle mucha informacin al servidor. -TTC17D (mayo de 1996) Esta es la primera revisin del protocolo que especifica su versin en las comunicaciones, y todava se usa ampliamente, sobre todo en servidores proxy. -TTC171 (junio de 1999) Versin actual; las conexiones persistentes estn activadas por defecto y funcionan bien con los proxies. Tambin permite al cliente enviar mltiples peticiones a la vez por la misma conexin (pipelining) lo que hace posible eliminar el tiempo de Round-Trip delay por cada peticin. -TTC176 Los primeros borradores de 1995 del documento PEP an Extension Mechanism for HTTP (el cul propone el Protocolo de Extensin de Protocolo, abreviado PEP) los hizo el World Wide Web Consortium y se envi al nternet Engineering Task Force. El PEP inicialmente estaba destinado a convertirse en un rango distintivo de HTTP/1.2.[3] En borradores posteriores, sin embargo, se elimin la referencia a HTTP/1.2. El RFC 2774 (experimental), HTTP Extension Framework, incluye en gran medida a PEP. Se public en febrero de 2000. E=emplo de un diElo&o -TT Para obtener un recurso con el URL http://www.example.com/index.html Se abre una conexin al host www.example.com, puerto 80 que es el puerto por defecto para HTTP. Preparado por Ernesto Moyano Sandoval Se enva un mensaje en el estilo siguiente: GET /index.html HTTP/1.1 Host: www.example.com User-Agent: nombre-cliente [Lnea en blanco] La respuesta del servidor est formada por encabezados seguidos del recurso solicitado, en el caso de una pgina web: HTTP/1.1 200 OK Date: Fri, 31 Dec 2003 23:59:59 GMT Content-Type: text/html Content-Length: 1221 <html> <body> <h1>Pgina principal de tu Host</h1> (Contenido) . . . </body> </html> (#todos de peti!i$n Un pedido HTTP usando telnet. El pedido (request), cabeceras de respuesta (response headers) y el cuerpo de la respuesta (response body) estn resaltados. HTTP define 8 mtodos (algunas veces referido como "verbos") que indica la accin que desea que se efecte sobre el recurso identificado. Lo que este recurso representa, si los datos pre-existentes o datos que se generan de forma dinmica, depende de la aplicacin del servidor. A menudo, el recurso corresponde a un archivo o la salida de un ejecutable que residen en el servidor. Preparado por Ernesto Moyano Sandoval -E'D Pide una respuesta idntica a la que correspondera a una peticin GET, pero sin el cuerpo de la respuesta. Esto es til para la recuperacin de meta-informacin escrita en los encabezados de respuesta, sin tener que transportar todo el contenido. FET Pide una representacin del recurso especificado. Por seguridad no debera ser usado por aplicaciones que causen efectos ya que transmite informacin a travs de la UR agregando parmetros a la URL. Ejemplo: GET /images/logo.png HTTP/1.1 obtiene un recurso llamado logo.png Ejemplo con parmetros: /index.php?page=main&lang=es ,ST Somete los datos a que sean procesados para el recurso identificado. Los datos se incluirn en el cuerpo de la peticin. Esto puede resultar en la creacin de un nuevo recurso o de las actualizaciones de los recursos existentes o ambas cosas. 4T Sube, carga o realiza un upload de un recurso especificado (archivo), es el camino ms eficiente para subir archivos a un servidor, esto es porque en POST utiliza un mensaje multiparte y el mensaje es decodificado por el servidor. En contraste, el mtodo PUT te permite escribir un archivo en una conexin socket establecida con el servidor. La desventaja del mtodo PUT es que los servidores de hosting compartido no lo tienen habilitado. Preparado por Ernesto Moyano Sandoval Ejemplo: PUT /path/filename.html HTTP/1.1 DELETE Borra el recurso especificado. T%'CE Este mtodo solicita al servidor que enve de vuelta en un mensaje de respuesta, en la seccin del cuerpo de entidad, toda la data que reciba del mensaje de solicitud. Se utiliza con fines de comprobacin y diagnstico. ,T.,NS Devuelve los mtodos HTTP que el servidor soporta para un URL especfico.Esto puede ser utilizado para comprobar la funcionalidad de un servidor web mediante peticin en lugar de un recurso especfico. C,NNECT Se utiliza para saber si se tiene acceso a un host, no necesariamente la peticin llega al servidor, este mtodo se utiliza principalmente para saber si un proxy nos da acceso a un host bajo condiciones especiales, como por ejemplo "corrientes" de datos bidireccionales encriptadas (como lo requiere SSL). C$di&os de respuesta G 1:: (ensa=es N Descripcin 100 111Conexin rechazada G 6:: ,pera!i$n e:itosa N Descripcin 200 OK 201-203 nformacin no oficial 204 Sin Contenido Preparado por Ernesto Moyano Sandoval 205 Contenido para recargar 206 Contenido parcial G H:: %edire!i$n N Descripcin 301 Mudado permanentemente 302 Encontrado 303 Vea otros 304 No modificado 305 Utilice un proxy 307 Redireccin temporal G I:: Error por parte del !liente N Descripcin 400 Solicitud incorrecta 401 No autorizado 402 Pago requerido 403 Prohibido 404 No encontrado 409 Conflicto 410 Ya no disponible 412 Fall precondicin G J:: Error del servidor N Descripcin 500 Error interno 501 No implementado 502 Pasarela incorrecta 503 Servicio no disponible 504 Tiempo de espera de la pasarela agotado 505 Versin de HTTP no soportada Preparado por Ernesto Moyano Sandoval .nstala!i$n del servidor Keb 'pa!"e nstalar un servidor Apache en Ubuntu. Adems veremos algunas opciones ms avanzadas de configuracin del servidor, como la instalacin del mdulo para PHP o la habilitacin, deshabilitacin y redireccin de Virtual Hosts segn nuestras necesidades. Para ello utilizaremos en la medida de lo posible la configuracin por defecto de Apache: no cambiaremos el timeout, ni la ruta a las carpetas, ni tampoco el nombre del archivo principal a mostrar (index.html, index.htm, index.php.) El primer paso ser instalar el paquete apache2 con sus dependencias: como muestra la imagen Preparado por Ernesto Moyano Sandoval Una vez hecho esto, comprobamos que est funcionando correctamente, abrimos un navegador y escribimos localhost nuestro servidor muestra la pgina por defecto de Apache, si no contamos con una interfaz grafica como en el caso de ubuntu server agregamos la P en el navegador de un Pc cliente. Tambin podemos comprobarlo mediante el comando /etc/init.d/apache2 status: Lo que se muestra subrayado dice que el proceso apache2 est corriendo con un pid 968 Muy bien, ya tenemos el servidor apache instalado y funcionando! Si nicamente quisiramos alojar una pgina simple (HTML y CSS) ya estaramos preparados para hacerlo, nicamente habra que situar los archivos de la pgina dentro de la carpeta /var/www, reemplazando el index.html por defecto con el de nuestra pgina web. Antes de continuar un pequeo resumen sobre las carpetas y archivos de Apache que se utilizan con ms frecuencia, saber para qu sirve cada una nos ayudar a comprender lo que vamos a hacer en los siguientes pasos de este tutorial: Preparado por Ernesto Moyano Sandoval Listado de carpetas y archivos de configuracin ms utilizados del servidor Apache: 'pa!"e67!onf: Contiene las opciones generales de configuracin como el timeout y los logs. SitiesGavailable: Carpeta que contiene los archivos de configuracin de los virtual hosts. SitiesGenabled: Carpeta que muestra los virtual host actualmente activos. (odsGavailable: Carpeta que contiene todos los mdulos disponibles para el servidor. (odsGenabled: Carpeta que indica los mdulos activos actualmente en el servidor. Envvars: Archivo que contiene las variables de entorno de apache. Los servidores tienen la capacidad de alojar ms de un dominio web ya que no es econmico tener un servidor por dominio de contenidos, por lo tanto vamos a alojar varias pginas independientes, haciendo nuestro pequeo servicio de hosting. Para ello, deberemos utilizar Virtual Hosts (http://www.lun.com http://www.emol.com). 2irtual-ost La configuracin de los Virtual Hosts en Ubuntu (o Debian) es bastante ms flexible y organizada que en Fedora, ya que tendremos la posibilidad de crear archivos de configuracin independientes para cada una de las pginas que alojemos, algo muy til si manejamos un gran volumen de pginas web en un mismo servidor. Crearemos Virtual Hosts basados en nombre de dominio web, por ser el mtodo ms flexible y utilizado de los que existen. El uso de Virtual Host basados en nombres nos permite mostrar a un navegador web una pgina u otra dependiendo de la URL que nos solicite dicho navegador. Lo primero que haremos ser crear varias pginas web, cada una con su propio index.html dentro de carpetas independientes en la ruta /var/www se recomienda crear las carpetas con el nombre del dominio. Preparado por Ernesto Moyano Sandoval <HTML> <HEAD> <TTLE>Pagina dominio 1</TTLE> </HEAD> <BODY> <H1>contenido pagina dominio 1</H1> </BODY> </HTML> Ahora vamos a crear los archivos de configuracin para cada uno de los Virtual Host. Los crearemos dentro de /etc/apache2/sites-available con el nombre de la pgina para distinguirlos fcilmente. Con estas opciones es suficiente para que funcione correctamente. Hay muchas ms, algunas de ellas las veremos ms tarde, otras puedes verlas directamente en el archivo /etc/apache2/sites-available/default (Ojo, chale un vistazo para ver ms opciones de configuracin pero no se recomiendo que cambies nada de este archivo, dejalo como est). Preparado por Ernesto Moyano Sandoval /ile Transfer roto!ol FTP (siglas en ingls de File Transfer Protocol, 'Protocolo de Transferencia de Archivos') en informtica, es un protocolo de red para la transferencia de archivos entre sistemas conectados a una red TCP (Transmission Control Protocol), basado en la arquitectura cliente-servidor. Desde un equipo cliente se puede conectar a un servidor para descargar archivos desde l o para enviarle archivos, independientemente del sistema operativo utilizado en cada equipo. El servicio FTP es ofrecido por la capa de aplicacin del modelo de capas de red TCP/P al usuario, utilizando normalmente el puerto de red 20 y el 21. Un problema bsico de FTP es que est pensado para ofrecer la mxima velocidad en la conexin, pero no la mxima seguridad, ya que todo el intercambio de informacin, desde el login y password del usuario en el servidor hasta la transferencia de cualquier archivo, se realiza en texto plano sin ningn tipo de cifrado, con lo que un posible atacante puede capturar este trfico, acceder al servidor y/o apropiarse de los archivos transferidos. Para solucionar este problema son de gran utilidad aplicaciones como scp y sftp, incluidas en el paquete SSH, que permiten transferir archivos pero cifrando todo el trfico. El (odelo /T En el modelo, el intrprete de protocolo (P) de usuario inicia la conexin de control en el puerto 21. Las rdenes FTP estndar las genera el P de usuario y se transmiten al proceso servidor a travs de la conexin de control. Las respuestas estndar se envan desde la P del servidor la P de usuario por la conexin de control como respuesta a las rdenes. Estas rdenes FTP especifican parmetros para la conexin de datos (puerto de datos, modo de transferencia, tipo de representacin y estructura) y la naturaleza de la operacin sobre el sistema de archivos (almacenar, recuperar, aadir, borrar, etc.). El proceso de transferencia de datos (DTP) de usuario u otro proceso en su lugar, debe esperar a que el servidor inicie la conexin al puerto de datos especificado (puerto 20 en modo activo o estndar) y transferir los datos en funcin de los parmetros que se hayan especificado. Vemos tambin en el diagrama que la comunicacin entre cliente y servidor es independiente Preparado por Ernesto Moyano Sandoval del sistema de archivos utilizado en cada computadora, de manera que no importa que sus sistemas operativos sean distintos, porque las entidades que se comunican entre s son los P y los DTP, que usan el mismo protocolo estandarizado: el FTP. Tambin hay que destacar que la conexin de datos es bidireccional, es decir, se puede usar simultneamente para enviar y para recibir, y no tiene por qu existir todo el tiempo que dura la conexin FTP. Pero tena en sus comienzos un problema, y era la localizacin de los servidores en la red. Es decir, el usuario que quera descargar algn archivo mediante FTP deba conocer en qu mquina estaba ubicado. La nica herramienta de bsqueda de informacin que exista era Gopher, con todas sus limitaciones. rimer bus!ador de informa!i$n Gopher significa 'lanzarse sobre' la informacin. Es un servicio cuyo objetivo es la localizacin de archivos a partir de su ttulo. Consiste en un conjunto de mens de recursos ubicados en diferentes mquinas que estn intercomunicadas. Cada mquina sirve una rea de informacin, pero su organizacin interna permite que todas ellas funcionen como si se tratase de una sola mquina. El usuario navega a travs de estos mens hasta localizar la informacin buscada, y desconoce exactamente de qu mquina est descargando dicha informacin. Con la llegada de nternet, los potentes motores de bsqueda (Google) dejaron el servicio Gopher, y la localizacin de los servidores FTP dej de ser un problema. En la actualidad, cuando el usuario se descarga un archivo a partir de un enlace de una pgina web no llega ni a saber que lo est haciendo desde un servidor FTP. El servicio FTP ha Preparado por Ernesto Moyano Sandoval evolucionado a lo largo del tiempo y hoy da es muy utilizado en nternet, en redes corporativas, ntranets, etc. Soportado por cualquier sistema operativo, existe gran cantidad de software basado en el protocolo FTP. Servidor /T Un servidor FTP es un programa especial que se ejecuta en un equipo servidor normalmente conectado a nternet (aunque puede estar conectado a otros tipos de redes, LAN, MAN, etc.). Su funcin es permitir el intercambio de datos entre diferentes servidores/ordenadores. Por lo general, los programas servidores FTP no suelen encontrarse en los ordenadores personales, por lo que un usuario normalmente utilizar el FTP para conectarse remotamente a uno y as intercambiar informacin con l. Las aplicaciones ms comunes de los servidores FTP suelen ser el alojamiento web, en el que sus clientes utilizan el servicio para subir sus pginas web y sus archivos correspondientes; o como servidor de backup (copia de seguridad) de los archivos importantes que pueda tener una empresa. Para ello, existen protocolos de comunicacin FTP para que los datos se transmitan cifrados, como el SFTP (Secure File Transfer Protocol). Cliente /T Cuando un navegador no est equipado con la funcin FTP, o si se quiere cargar archivos en un ordenador remoto, se necesitar utilizar un programa cliente FTP. Un cliente FTP es un programa que se instala en el ordenador del usuario, y que emplea el protocolo FTP para conectarse a un servidor FTP y transferir archivos, ya sea para descargarlos o para subirlos. Para utilizar un cliente FTP, se necesita conocer el nombre del archivo, el ordenador en que reside (servidor, en el caso de descarga de archivos), el ordenador al que se quiere transferir el archivo (en caso de querer subirlo nosotros al servidor), y la carpeta en la que se encuentra. Algunos clientes de FTP bsicos en modo consola vienen integrados en los sistemas operativos, incluyendo Microsoft Windows, DOS, GNU/Linux y Unix. Sin embargo, hay disponibles clientes con opciones aadidas e interfaz grfica. Aunque muchos navegadores tienen ya integrado FTP, es ms confiable a la hora de conectarse con servidores FTP no annimos utilizar un programa cliente. Preparado por Ernesto Moyano Sandoval '!!eso an$nimo Los servidores FTP annimos ofrecen sus servicios libremente a todos los usuarios, permiten acceder a sus archivos sin necesidad de tener un 'USER D' o una cuenta de usuario. Es la manera ms cmoda fuera del servicio web de permitir que todo el mundo tenga acceso a cierta informacin sin que para ello el administrador de un sistema tenga que crear una cuenta para cada usuario. Si un servidor posee servicio 'FTP anonymous' solamente con teclear la palabra anonymous, cuando pregunte por tu usuario tendrs acceso a ese sistema. No se necesita ninguna contrasea preestablecida, aunque tendrs que introducir una slo para ese momento, normalmente se suele utilizar la direccin de correo electrnico propia. Solamente con eso se consigue acceso a los archivos del FTP, aunque con menos privilegios que un usuario normal. Normalmente solo podrs leer y copiar los archivos que sean pblicos, as indicados por el administrador del servidor al que nos queramos conectar. Normalmente, se utiliza un servidor FTP annimo para depositar grandes archivos que no tienen utilidad si no son transferidos a la mquina del usuario, como por ejemplo programas, y se reservan los servidores de pginas web (HTTP) para almacenar informacin textual destinada a la lectura en lnea. '!!eso de usuario Si se desea tener privilegios de acceso a cualquier parte del sistema de archivos del servidor FTP, de modificacin de archivos existentes, y de posibilidad de subir nuestros propios archivos, generalmente se suele realizar mediante una cuenta de usuario. En el servidor se guarda la informacin de las distintas cuentas de usuario que pueden acceder a l, de manera que para iniciar una sesin FTP debemos introducir una autentificacin (en ingls: login) y una contrasea (en ingls: password) que nos identifica unvocamente. Cliente /T basado en 0eb Un cliente FTP basado en Web no es ms que un cliente FTP al cual podemos acceder a travs de nuestro navegador web sin necesidad de tener otra aplicacin para ello. El usuario accede a un servidor web (HTTP) que lista los contenidos de un servidor FTP. El usuario se conecta mediante HTTP a un servidor web, y el servidor web se conecta mediante FTP al servidor FTP. El servidor web acta de intermediario haciendo pasar la informacin desde el servidor FTP en los puertos 20 y 21 hacia el puerto 80 HTTP que ve el usuario. Siempre hay momentos en que nos encontramos fuera de casa, no llevamos el ordenador Preparado por Ernesto Moyano Sandoval porttil encima y necesitamos realizar alguna tarea urgente desde un ordenador de acceso pblico, de un amigo, del trabajo, la universidad, etc. Lo ms comn es que no estn instaladas las aplicaciones que necesitamos y en muchos casos hasta carecemos de los permisos necesarios para realizar su instalacin. Otras veces estamos detrs de un proxy o cortafuegos que no nos permite acceder a servidores FTP externos. Al disponer de un cliente FTP basado en Web podemos acceder al servidor FTP remoto como si estuviramos realizando cualquier otro tipo de navegacin web. A travs de un cliente FTP basado en Web podrs, crear, copiar, renombrar y eliminar archivos y directorios. Cambiar permisos, editar, ver, subir y descargar archivos, as como cualquier otra funcin del protocolo FTP que el servidor FTP remoto permita. '!!eso de invitado El acceso sin restricciones al servidor que proporcionan las cuentas de usuario implica problemas de seguridad, lo que ha dado lugar a un tercer tipo de acceso FTP denominado invitado (guest), que se puede contemplar como una mezcla de los dos anteriores. La idea de este mecanismo es la siguiente: se trata de permitir que cada usuario conecte a la mquina mediante su login y su password, pero evitando que tenga acceso a partes del sistema de archivos que no necesita para realizar su trabajo, de esta forma acceder a un entorno restringido, algo muy similar a lo que sucede en los accesos annimos, pero con ms privilegios. (odos de !one:i$n del !liente /T FTP admite dos modos de conexin del cliente. Estos modos se denominan activo (o Estndar, o PORT, debido a que el cliente enva comandos tipo PORT al servidor por el canal de control al establecer la conexin) y pasivo (o PASV, porque en este caso enva comandos tipo PASV). Tanto en el modo Activo como en el modo Pasivo, el cliente establece una conexin con el servidor mediante el puerto 21, que establece el canal de control. Preparado por Ernesto Moyano Sandoval (odo a!tivo7 En modo Activo, el servidor siempre crea el canal de datos en su puerto 20, mientras que en el lado del cliente el canal de datos se asocia a un puerto aleatorio mayor que el 1024. Para ello, el cliente manda un comando PORT al servidor por el canal de control indicndole ese nmero de puerto, de manera que el servidor pueda abrirle una conexin de datos por donde se transferirn los archivos y los listados, en el puerto especificado. Lo anterior tiene un grave problema de seguridad, y es que la mquina cliente debe estar dispuesta a aceptar cualquier conexin de entrada en un puerto superior al 1024, con los problemas que ello implica si tenemos el equipo conectado a una red insegura como nternet. De hecho, los cortafuegos que se instalen en el equipo para evitar ataques seguramente rechazarn esas conexiones aleatorias. Para solucionar esto se desarroll el modo pasivo. (odo pasivo7 Cuando el cliente enva un comando PASV sobre el canal de control, el servidor FTP le indica por el canal de control, el puerto (mayor a 1023 del servidor. Ejemplo:2040) al que debe conectarse el cliente. El cliente inicia una conexin desde el puerto siguiente al puerto de control (Ejemplo: 1036) hacia el puerto del servidor especificado anteriormente (Ejemplo: 2040) Preparado por Ernesto Moyano Sandoval Antes de cada nueva transferencia tanto en el modo Activo como en el Pasivo, el cliente debe enviar otra vez un comando de control (PORT o PASV, segn el modo en el que haya conectado), y el servidor recibir esa conexin de datos en un nuevo puerto aleatorio (si est en modo pasivo) o por el puerto 20 (si est en modo activo). En el protocolo FTP existen 2 tipos de transferencia en ASC y en binarios. Tipos de transferen!ia de ar!"ivos en /T Es importante conocer cmo debemos transportar un archivo a lo largo de la red. Si no utilizamos las opciones adecuadas podemos destruir la informacin del archivo. Por eso, al ejecutar la aplicacin FTP, debemos acordarnos de utilizar uno de estos comandos (o poner la correspondiente opcin en un programa con interfaz grfica): Tipo ASC Adecuado para transferir archivos que slo contengan caracteres imprimibles (archivos ASC, no archivos resultantes de un procesador de texto), por ejemplo pginas HTML, pero no las imgenes que puedan contener. Preparado por Ernesto Moyano Sandoval Tipo Binario Este tipo es usado cuando se trata de archivos comprimidos, ejecutables para PC, imgenes, archivos de audio... Ejemplos de cmo transferir algunos tipos de archivo dependiendo de su extensin: En la red existen diversas soluciones de software que desarrolla este tipo de tecnologa, los ms conocidos, son Filezilla (software libre) y CuteFTP (shareware). Fua de !omandos /T impresin de caracteres # a medida que se transfieren archivos, a modo de barra de progreso. Comando y ar&umentos '!!i$n que realiAa open servidor nicia una conexin con un servidor FTP. !lose o dis!onne!t Finaliza una conexin FTP sin cerrar el programa cliente. bye o quit Finaliza una conexin FTP y la sesin de trabajo con el programa cliente. !d directorio Cambia el directorio de trabajo en el servidor. delete archivo Borra un archivo en el servidor mdelete patrn Borra mltiples archivos basado en un patrn que se aplica al nombre. dir Muestra el contenido del directorio en el que estamos en el servidor. &et archivo Obtiene un archivo Preparado por Ernesto Moyano Sandoval noop No Operation Se le comunica al servidor que el cliente est en modo de no operacin, el servidor usualmente responde con un ZZZ y refresca el contador de tiempo inactivo del usuario. m&et archivos Obtiene mltiples archivos l!d directorio Cambia el directorio de trabajo local. ls Muestra el contenido del directorio en el servidor. prompt Activa/desactiva la confirmacin por parte del usuario de la ejecucin de comandos. Por ejemplo al borrar mltiples archivos. ut archivo Enva un archivo al directorio activo del servidor. mput archivos Enva mltiples archivos. pKd Muestra el directorio activo en el servidor. rename archivo Cambia el nombre a un archivo en el servidor. rmdir directorio Elimina un directorio en el servidor si ese directorio est vaco. status Muestra el estado actual de la conexin. bin o binary Activa el modo de transferencia binario. as!ii Activa el modo de transferencia en modo texto ASC. > Permite salir a lnea de comandos temporalmente sin cortar la conexin. Para volver, teclear e:it en la lnea de comandos. L nombre de comando Muestra la informacin relativa al comando. L o "elp Muestra una lista de los comandos disponibles. append nombre del archivo Continua una descarga que se ha cortado previamente. bell Activa/desactiva la reproduccin de un sonido cuando ha terminado cualquier proceso de transferencia de archivos. &lob Activa/desactiva la visualizacin de nombres largos de nuestro PC. literal Con esta orden se pueden ejecutar comandos del servidor de forma remota. Para saber los disponibles se utiliza: literal "elp. mMdir Crea el directorio indicado de forma remota. quote Hace la misma funcin que literal. send nombre del archivo Enva el archivo indicado al directorio activo del servidor. user Para cambiar nuestro nombre de usuario y contrasea sin necesidad de salir de la sesin ftp. Preparado por Ernesto Moyano Sandoval .nstala!i$n de /T Al finalizar de instalar Ubuntu Server debemos actualizar todo los componente del sistema Operativo con le siguiente comando.- sudo apt-get update sudo apt-get dist-upgrade nstalar VSFTP en Ubuntu Server vsftpd, son las siglas de "Very Secure FTP Daemon: Demonio FTP muy seguro, es un servidor FTP. Est licenciado bajo la licencia GNU. Soporta Pv6 y SSL. vsftpd es el servidor FTP por defecto de la distribucin Ubuntu, adems de Fedora Core, Red Hat y otras distribucines. asos 1 instalar VSFTP sudo apt-get install vsftpd asos 6 Editar archivo de configuracin Ahora vamos a configurar el servidor editando el archivo /etc/vsftpd.conf, pero antes, y como siempre, hacemos una copia del archivo original. Otro punto a tener en cuenta antes de iniciar a modificar los archivos de configura seria manejar muy bien los editores como nano, vi o vim sudo cp /etc/vsftpd.conf /etc/vsftpd.old sudo vi /etc/vsftpd.conf Para no permitir el acceso annimo al servidor cambiamos el valor de anonymous_enable a NO para esto debe buscar la linea anonymous_enable y asegurarse que tenga la palabra NO como el ejemplo. Preparado por Ernesto Moyano Sandoval anonymous_enable=NO Para permitir que los usuarios locales del sistema puedan conectarse debemos buscar y descomentamos la lnea local_enable. "Los comentarios generalmente son el # o ; solo debe borrarlo, con esto ya lo tiene descomentado local_enable=YES Para permitir que se puedan subir archivos al servidor hay que dar permisos de escritura, por lo que deberemos buscar y descomentar la lnea write_enable write_enable=YES A continuacin podemos establecer el valor umask para los archivos que subamos. Este valor determina los permisos de lectura, escritura y ejecucin que tendrn los archivos por defecto. El valor que viene en el fichero de configuracin quizs sea demasiado restrictivo, ya que solamente el propietario tiene permiso de lectura y escritura (-rw-, o en nmerico 600). Descomentamos local_umask para que todos puedan leer los archivos(-rw-rr, 644) local_umask=022 El siguiente parmetro que vamos a ajustar es el valor de la directiva chroot_local_users. Descomentando esta lnea haremos que los usuarios solamente tengan acceso a sus respectivos directorios /home y no puedan recorrer el resto del sistema chroot_local_users=YES Con estos cambios que hemos hecho en el archivo de configuracin ya tenemos nuestro servidor FTP operativo, solo debemos reiniciar el servicio de vsftpd. asos H Reiniciar servicio de VSFTPD sudo /etc/init.d/vsftpd restart Preparado por Ernesto Moyano Sandoval En el caso que solo quiera bajar el servicio de su servidor FTP solo deber cambiar la palabra restart por stop. sudo /etc/init.d/vsftpd stop Para iniciar el servidor nuevamente puede utilizar la palabra start sudo /etc/init.d/vsftpd start aso I Crear Usuarios Para que puedas acceder a tu servidor desde cualquier parte del mundo puede utilizar algunos gestores como winscp, filezilla. Crear usuario en el sistema operativos Linux sudo adduser albertopy007 ServerFTP@usuAdmin:~$ sudo adduser albertopy007 [sudo] password for scasas: Aadiendo el usuario albertopy007 ... Aadiendo el nuevo grupo `albertopy007' (1001) ... Aadiendo el nuevo usuario albertopy007 (1001) con grupo albertopy007 ... Creando el directorio personal /home/albertopy007 ... Copiando los ficheros desde `/etc/skel' ... ntroduzca la nueva contrasea de UNX: Vuelva a escribir la nueva contrasea de UNX: passwd: contrasea actualizada correctamente Cambiando la informacin de usuario para albertopy007 ntroduzca el nuevo valor, o presione ENTER para el predeterminado Nombre completo []: Alberto Gimenez Nmero de habitacin []: Telfono del trabajo []: Telfono de casa []: Otro []: Es correcta la informacin? [S/n] s Con estos sencillos paso ya tiene creado tu usuario
Preparado por Ernesto Moyano Sandoval aso J Test del Servidor FTP Para verificar la funcionalidad de tu servidor ftp lo puede hacer desde un gestor de FTP o por linea de comando desde cualquier computador de red. ftp ip o nombre del servidor Ejemplo; ftp 192.168.1.1 o ftp ftp.xsys.com agimenez@NB-Albert:~$ ftp ftp.xsys.com Connected to ftp.xsys.com. 220---------- Welcome to Pure-FTPd [privsep] [TLS] ---------- 220-You are user number 3 of 50 allowed. 220-Local time is now 08:14. Server port: 21. 220 You will be disconnected after 15 minutes of inactivity. Name (ftp.xsysinformatica.com:agimenez): albertopy007 331 User xsysinfo OK. Password required Password: 230 OK. Current restricted directory is / Remote system type is UNX. Using binary mode to transfer files. ftp> Al conectarte ya puede utilizar todo los comando FTP para subir y bajar archivos. Comando NEsi!o del /T FTP cuenta con varios comandos que se utilizan en la maquina remota, estos comandos son muy semejantes a sus equivalentes en Unix. En el caso que necesite conectarse con otro usuario al ingresar el FTP puede utilizar el comando Open automticamente le solicitar el nombre y el password del usuario con el cual quiere ingresar. ftp> Ope Name: Password: Preparado por Ernesto Moyano Sandoval pwd: Este comando despliega el directorio de trabajo. Por ejemplo, si se encuentra en el directorio usuarios y desea saber en que directorio est teclee lo siguiente: ftp>pwd /albertopy007 ftp> ls: Despliega el contenido del directorio en que se encuentra, si este comando no funciona en su equipo pruebe con el comando dir. Por ejemplo, si desea ver el contenido de su directorio teclee. Puede utilizar los comando bsico de manipulacin de datos de Linux o de Windows DOS. ftp> ls -l drw-rr 3 jimenez users 138 Apr 3 15:56 usuarios -rw-rr 1 jimenez users 90 Apr 30 13:30 mensual.doc -rw-rr 1 jimenez users 90 Apr 30 13:30 temp.doc delete: Borra el archivo especificado en la computadora remota. Por ejemplo, si desea borrar un archivo que se llama temp.doc, teclee lo siguiente: ftp>delete temp.doc DELE Command successful rename rename: Cambia el nombre de un archivo en la computadora remota. Si desea cambiar el nombre de un archivo que se llama mensual.doc por el de anual.doc, teclee lo siguiente: ftp>rename mensual.doc anual.doc Command successful cd: Cambia el directorio de trabajo en la computadora remota. Para cambiar de directorio nicamente escriba la ruta de acceso al directorio deseado. Por ejemplo, si desea cambiarse al directorio temporal que se encuentra bajo el directorio usuarios, teclee lo siguiente: Preparado por Ernesto Moyano Sandoval ftp> cd /albertopy007/temporal Command successful Si desea regresar al directorio anterior teclee: ftp>cd .. mkdir: Crea el directorio especificado en la computadora remota. Por ejemplo, si desea crear un nuevo directorio que se llame cursos, el cual quiere que se encuentre en el directorio usuarios, teclee los siguientes: ftp>mkdir /usuarios/cursos rmdir: Borra el directorio especificado en la computadora remota. Esto es, si ya no va a utilizar el directorio temporal y desea borrarlo (recuerde que para poder eliminar un directorio, Ese no debe contener ningn archivo), teclee lo siguiente: ftp>rmdir /usuarios/temporal get: Permite transferir un archivo desde la maquina remota hasta la maquina local. El archivo_local es el nombre del archivo con el que desea que aparezca la transferencia, si no da este, lo transferir con el mismo nombre delarchivo_remoto. ftp>get archivo_remoto [archivo_local] Por ejemplo, si desea transferir el archivo nombres.doc que se encuentra en la maquina remota a la maquina local y desea que en la maquina local se llame reportes.doc, teclee lo siguiente: ftp>get nombres.doc reportes.doc mget: Permite transferir un conjunto de archivos desde la maquina remota hasta la maquina local. ftp>mget archivos_remotos Por ejemplo, si desea transferir los archivos ventas y horarios.doc de la maquina remota a su Preparado por Ernesto Moyano Sandoval maquina local, teclee lo siguiente: ftp>mget ventas horarios.doc mget ventas? y Debe confirmar la transferencia mget horarios? y Debe confirmar la transferencia put: Permite transferir un archivo desde la maquina local hasta la maquina remota. El archivo_remoto es el nombre del archivo con el que desea que aparezca la transferencia, si no da este, lo transferir con el mismo nombre del archivo_local. ftp> put archivo_local [archivo_remoto] Por ejemplo, si desea transferir un archivo de su maquina local que se llama figura.doc a la maquina remota en la cual desea que se llame el archivo figura2.doc, teclee lo siguiente: ftp>put figura.doc figura2.doc mput: Permite transferir un conjunto de archivos desde la maquina local hasta la maquina remota. ftp>mput archivos_locales Por ejemplo, desea transferir los archivos documento, grfica.c y curso.w de su mquina local a la maquina remota: ftp>mput documento grafica.c curso.w mput documento? y Debe confirmar la transferencia mput grafica.c? y Debe confirmar la transferencia mput curso.w? y Debe confirmar la transferencia !: El comando ! permite ejecutar comandos del sistema operativo en la maquina local. Por ejemplo, desea ver el directorio de la maquina local: ftp>!ls grafica.c curso.w Preparado por Ernesto Moyano Sandoval documento ftp> Al utilizar nicamente el comando !, se regresa a la maquina local permitiendo ejecutar los comandos del sistema sin salirse de la maquina remota. Por ejemplo: ftp>! % para regresar a la mquina remota slo teclee exit: %exit ftp> binary: Establece un tipo de transferencia binaria. Cuando se desea transferir archivos binarios (por ejemplo, archivos ejecutables e imgenes) se debe utilizar este comando antes de transferirlo. ftp>binary ascii: Con este comando regresa a ftp a modo ascii. ftp>ascii quit: Termina la sesin de ftp y regresa al sistema ftp>quit Goodbye % close: Termina la conexin de ftp. ftp>close Goodbye ftp> Preparado por Ernesto Moyano Sandoval %eferen!ia: - Wikipedia - http://sliceoflinux.wordpress.com/2010/04/21/instalar-y-configurar-un-servidor-dns-con-ubuntu-server-paso-a-paso - http://getupcity.wordpress.com/2012/05/03/instalacion-de-un-servidor-web-apache-en-ubuntu-12-04/ - http://fedesilva.com/blog/2013/04/como-crear-un-virtualhost-en-ubuntu-y-apache - http://xsyscapacitacion.wordpress.com/2012/10/21/pasos-para-configurar-servidor-ftp-en-ubuntu-server/ - http://xsyscapacitacion.wordpress.com/2012/10/22/usos-y-comando-asico-para-conectarse-a-un-!tp-server-!ile-trans!er-protocol/ Preparado por Ernesto Moyano Sandoval