Está en la página 1de 43

Domain Name System

Domain Name System o DNS (en espaol: sistema de


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