Académique Documents
Professionnel Documents
Culture Documents
Atrvete a montar tu propio Servidor Web. Conoce lo que hay detrs de una pgina Web. Configura un Servidor Web DESDE CERO!!! La mejor forma de APRENDER es PRACTICANDO :)
Al finalizar este captulo tendrs tu propio servidor web y si tienes conexin a Internet, puedes colocar tu pgina web en tu servidor web y darla a conocer al mundo sin que nadie se percate de que el servidor lo tienes debajo de la mesa.
En los anteriores...
En los anteriores nmeros de PC PASO A PASO (Los Cuadernos de Hack x Crack) hemos explicado con todo lujo de detalle y en profundidad lo que es un Servidor, un Cliente, el puerto que escucha un Servidor Web (80), un nombre de dominio, un servidor DNS, etc. Para seguir este curso de APACHE no es necesario haber ledo los nmeros anteriores de la revista, puesto que todos los cursos se inician desde cero e incluyen las explicaciones pertinentes; pero si realmente quieres sacarle provecho y profundizar en el tema sera bueno que leyeses los nmeros anteriores (el nmero 1 de hack x crack est disponible en la web www.hackxcrack.com de forma totalmente gratuita). Existen muchos servidores web, los ms conocidos son: Apache, Internet Information Server (de Microsoft), Netscape Enterprise, Zeus, ... Cada uno de ellos tienen sus caractersticas propias y lgicamente con bugs diferentes (errores de programacin, agujeros de seguridad). Es importante conocer el servidor web que hace funcionar un dominio pues dependiendo del servidor tendrs que aplicar sus bugs si te interesa hacerle una visita para comprobar tus conocimientos de seguridad adquiridos X) En la red existen herramientas online que te facilitarn la labor de averiguar el servidor web de los dominios, recomendamos www.netcraft.com y www.dnsstuff.com, vers cuanta informacin obtendrs de cada dominio.
www.dnsstuf f.com
El curso se centrar en el servidor web Apache, las razones son muchas, sigue leyendo y comprenders las razones aunque no descartamos ampliar el curso a otros servidores web.
www.netcraft.com
PC PASO A PASO N 7
www.intrastats.com
Para conseguir el servidor Apache que mejor que bajrselo de la pgina oficial, www.apache.org, la web est en ingls, pon la siguiente url y te ahorras tener que ir navegando: http://apache.mirrorcentral.com/dist/httpd/bi naries/win32/apache_1.3.27-win32-x86no_src.exe
Paso 2. Ahora pretende que te leas la licencia, est en perfecto ingls, nuestra obligacin es decirte que leas los trminos y condiciones de uso, alguna vez hemos ledo estas parrafadas? , resumiendo, lo que dice es que seales la opcin de que ests de acuerdo con los trminos
PC PASO A PASO N 7
www.apache.or g
Pgina 50
y condiciones. Sin dudarlo selecciona la opcin "I accept the terms in the license agreement."
Poner
Por ltimo te pregunta como quieres que se realice la puesta en marcha de Apache, por servicio o manual. Si deseas que Apache se ponga en funcionamiento cada vez que enciendas el ordenador y se inicie Windows entonces tienes que seleccionar "Por servicio", en cambio si deseas que Apache se ponga en marcha cuando t lo desees entonces selecciona manual. De momento selecciona "manual", en otro capitulo explicaremos como ponerlo como servicio una vez que est como manual.
Paso 3. De nuevo otra pantalla en anglosajn, aqu te explica que es Apache?, bla, bla, bla, Pues nada ya sabes lo que tienes que hacer, pincha sobre el botn "Next >" para que podamos continuar. Paso 4. En la siguiente ventana ya comienza la verdadera instalacin, te pregunta informacin sobre tu servidor. En estos momentos nuestra intencin es instalar Apache para probar en nuestro propio ordenador, el siguiente paso ser configurar Apache para que cualquier navegante conectado a Internet pueda conectarse al ordenador. As que los valores que ahora pongamos podemos cambiarlos posteriormente con los reales. La ventana te pregunta: Dominio de red (dominio.com): Para continuar con la prctica poner dominio.com, luego ya cambiaremos los datos con los reales. Nombre servidor: Poner www.dominio.com
PC PASO A PASO N 7 Pgina 51
Paso 5. Ahora te pregunta como quieres realizar la instalacin "Completa o Personalizada", elige "Completa", de esta forma instalar por completo Apache en el disco duro. Paso 6. Por ltimo te pregunta la carpeta donde quieres que se instalen los ficheros de Apache, crea un directorio en C: llamado "apache" e instala en ese directorio todos los ficheros. Acepta todo y comienza la instalacin ...
con el del buen programador: nunca llamars "A" a la variable "a" ni confundirs un cero con un campo vaco. Si lo entiendes ya sabes de qu hablamos y si no, con nosotros lo aprenders paso a paso ;) Paso 7. A los pocos segundos y dependiendo de la potencia del ordenador llegars a la ventana que te comunicar que la instalacin se ha realizado con xito. Acepta la ventana final y ya tienes instalado el servidor Apache en el directorio c:\apache\
Pulsando "change" puedes crear y seleccionar el directorio donde deseamos instalar apache, en nuestro caso c:\apache\
A partir de...
A partir de ahora te en cuenta una cosa MUY IMPORTANTE: las maysculas NO EXISTEN a la hora de trabajar con los servidores Web. No, no es que les tengamos mana, pero si instalas el servidor en un directorio en maysculas o utilizas las maysculas para los archivos que crearemos posteriormente acabars teniendo problemas. Por qu? Podramos dar muchos motivos, pero me quedo
Pues ya tienes el servidor en marcha, comprueba que est funcionando. Abre el navegador que tengas instalado, y pon la siguiente URL: 127.0.0.1, como ya sabes es la direccin Loopback, es una direccin IP interna de la pila TCP/IP que identifica la misma mquina. Es una direccin IP especial que te servir para hacer pruebas. Si ha funcionado correctamente aparecer la siguiente pgina como muestra la imagen:
archivos y directorios necesarios para hacer funcionar el servidor Apache, la estructura tiene que ser igual a la siguiente imagen.
Como puedes ver no ha sido tan difcil y has convertido tu ordenador en un servidor web, has pensado alojar tu pgina personal en tu ordenador?, ya puedes hacerlo pero recuerda que tendrs que tener las 24 horas del da el ordenador encendido si deseas que accedan a cualquier hora.
De momento los nicos directorios que te interesan son, conf y htdocs. En el directorio conf se encuentran los archivos de configuracin de Apache, el ms importante es httpd.conf, prcticamente el 80% del curso trata de cmo manipular los comandos contenidos en este archivo. En el directorio htdocs pondremos nuestras pginas Web :)
En anteriores...
En anteriores nmeros te hemos explicado eso de la IP LOOP (direccin Loopback) con detalle :)
Si no tienes...
Si no tienes ni idea de crear una pgina Web, vamos a crear la pgina Web ms sencilla del planeta :) Abre el Block de Notas de Windows (o cualquier otro editor de texto sencillo), escribe <BR> Hola a todo el mundo <BR> y gurdalo con el nombre index.txt donde quieras, por ejemplo en c:\temporal. Ahora cambiale el nombre por index.html y se acab, ya tienes una pgina web :) Ahora nos queda hacer que nuestro APACHE sirva la pgina a los clientes :)
Ahora quieres puedan acceder los navegantes desde cualquier parte del mundo. Lgicamente, para que los navegantes puedan acceder a tu servidor web es necesario que el servidor donde est funcionando Apache est conectado a Internet, con una lnea ADSL es suficiente ya que te ofrecen una IP fija y si tienes una conexin de cable /DSL pues mucho mejor. Comprueba que ests conectado a Internet y que tienes una IP asignada. Para averiguar la IP puedes utilizar el comando "winipcfg" (solo para windows 98) o "ipconfig/all" (Windows 2000/XP), puedes ejecutarlo desde la ventana ejecutar o desde el MSDOS. Este comando te aporta informacin sobre los adaptadores de red (tarjetas de red, modem, ...), vers que cada adaptador de red tiene asociada un identificador IP.
El contenido de nuestra web (en este caso nuestra diminuta creacin, nuestro index.html) tienes que colocarlo en el directorio c:\apache\htdocs\. Recuerda llamar a la pgina principal como index.html o index.htm, es la pgina principal que se muestra cada vez que se coloca el nombre de dominio en el navegador. Como se ha comentado anteriormente el nombre de la pgina principal se puede cambiar en el fichero httpd.conf, pero vamos a dejar esto para el prximo captulo.
Antes de seguir...
Antes de seguir, comprueba que puedes ver la pgina que hemos creado mediante la direccin Loopback (127.0.0.1). Abre el navegador, introduce la direccin y deberas ver exactamente esto:
En los nmeros...
En los nmeros anteriores de PC PASO A PASO hemos explicado diversos mtodos para que descubras tu IP y hemos detallado los pasos. Si no sabes cul es tu IP llama a tu ISP (Proveedor de Internet) o repasa los anteriores nmeros de esta revista. En mi caso tengo la IP 80.213.111.23, pon TU IP en el navegador y con el servidor web Apache en marcha vers la pgina index.html (en este
Pgina 54 PC PASO A PASO N 7
caso nuestro "hola a todo el mundo" ;) Pues bien, con tu ordenador haciendo de servidor web conectado a Internet, cualquier persona desde cualquier parte del mundo que en este momento ponga tu IP en su navegador ver tu pgina principal. Como te habrs dado cuenta si tu proveedor de acceso a Internet te cambia la IP, todo tu esfuerzo de dar a conocer la IP ser en balde ya que nadie volver a conectarse, es por ello que se recomienda tener una IP dedicada, si tienes ADSL o cable no tendrs problemas por mucho tiempo. Lo mejor es asociar la IP a un dominio, nadie se aprende las direcciones IP de memoria, aunque conoc a un chaval que tena como hobby aprenderse todas las IP que encontraba, hay gente para todo... Ya tenemos el servidor web Apache, ahora queremos asociarlo a un dominio para que sea fcil de recordar para los navegantes.
que el proveedor ISP te cambie la IP en cualquier momento vamos a conseguir un dominio y asociarlo a la direccin IP. Nuestro objetivo es conseguir el servicio de redireccin gratis, existen muchos servicios en Internet que ofrecen redirecciones. Para hacerlo ms elegante las premisas del redireccionador tiene que cumplir: No ponga publicidad y que no aparezca la IP en el dominio una vez que ha redireccionado. Uno de mis favoritos ya que oculta la IP mediante Frames de HTML y no aade publicidad es el redireccionador de w w w. k i c k m e . t o El registro en www.kickme.to es rpido y sencillo, est en ingls pero no tiene que ser problema hay tan poco que leer!!. Comenzamos... Paso 1. Visita www.kickme.to Como vers la pgina principal tiene poco contenido, pues mejor, menos que leer verdad?. Pincha en el enlace "Free short URL".
Si tu ISP...
Si tu ISP (Proveedor de Internet) te ha dado una IP DINMICA, cada cierto tiempo vers que TU IP cambia. Cada vez que esto suceda debers asociar de nuevo TU IP al dominio y repetir los pasos que ahora te mostraremos, algo bastante desesperante. En el nmero 4 te enseamos cmo conseguir una IP FIJA, te recomendamos encarecidamente que leas PC PASO A PASO nmero 4 y te liberes de las limitaciones que te impone tu ISP. Como puedes ver, todo lo que hemos ido aprendiendo anteriormente empieza a sernos muy til (por no decir imprescindible).
Paso 2. Enlace registro Vemos otra pgina con poco contenido, solo 4 enlaces, como mola una pgina tan directa. Venga, pincha en "Signup". Paso 3. Aceptar trminos y condiciones Como siempre y cualquier registro tienes que
Pgina 55
leer la parrafada de los trminos y condiciones para terminar aceptando. Como el color de la pgina es azul oscuro no ayuda a leer el texto con color negro, y siempre estamos de acuerdo con las condiciones aceptamos sin perder ms tiempo. Aunque es mi obligacin decirte que leas los trminos y condiciones, pero hombre, por lo menos lee y PULSA el botn donde pone "I AGREE" (ACEPTAR)!!! Paso 4. Crear nombre de dominio Ya nos vamos acercando a lo interesante y al final. Seleccionamos por ejemplo la url www.divxlinks.at y en el cuadro de al lado pondremos un nombre (nosotros hemos puesto divx) para que cualquier navegante que ponga www.divxlinks.at/divx sea enviado a la IP de nuestro servidor web (nuestro PC).
creada una para estos menesteres, y un password para poder acceder a tu cuenta en kickme.to. Paso 6. ltima pgina!!! Ahora te pregunta hacia donde tiene que redireccionar www.divxlink.at/divx, como te estars imaginando tienes que colocar la IP de tu servidor web, tu PC (en nuestro caso http://80.213.111.23)
Ya tienes un dominio (un nombre) asociado a tu servidor (tu PC), en vez de promocionar la ip de tu servidor tienes la posibilidad de dar a conocer la url www.divxlink.at/divx, cualquier navegante que ponga esa direccin estar accediendo a tu ordenador. Sencillo verdad?.
Qu has aprendido?
Nosotros
hemos...
Nosotros hemos puesto divx y por lo tanto tenemos reservada la direccin (el nombre de dominio) www.divxlinks.at/divx. TU NO DEBES poner el mismo (divx) puesto que es nuestro y no te ser concedido, por lo tanto invntate un nombre, por ejemplo "soyelmejor" y obtendrs la direccin www.divxlinks.at/soyelmejor ;) Paso 5. Introducir datos de login y password. Pues ya sabes, tienes que introducir un login que ser una cuenta de email, ten siempre
Pgina 56
Si eres nuevo en este tema y has seguido el ejemplo prctico seguro que te habrs dado cuenta de todas las posibilidad que te ofrece tener un servidor web en casa. Has aprendido como hallar el servidor web de cualquier dominio, has aprendido a instalar un servidor web Apache (con configuracin por defecto), la utilidad del comando winipcfg de windows, a crear un dominio gratis que redireccione a tu servidor web. El prximo mes comenzaremos a configurar el servidor Apache.
PC PASO A PASO N 7
S instalaste...
Lo primero que hay que hacer es poner en marcha el servidor Apache, para ello sigue los pasos del nmero 7 de Hack x Crack o mejor hazlo desde una Ventana de Comandos: - Abre una ventana de MSDOS (Shell, ventana de comandos), ya hemos explicado en nmeros anteriores una y mil veces como se hace esto de abrir la ya famosa ventanita negra ;p. - Recorre los directorios hasta situarte en el directorio donde instalases el Apache (nosotros lo instalamos en C:\Apache). Ya sabes, lo hemos hecho mil veces, en nuestro caso sera introduciendo el comando cd c:\Apache (y pulsa enter) - Vers que hay un ejecutable llamado apache.exe, todo esto ya lo vimos en el nmero anterior. Cmo? Que no ves el archivo apache.exe? Como se nota que no te has ledo ni uno solo de nuestros nmeros, venga, introduce el comando dir y pulsa enter
PC PASO A PASO N 8
Si instalaste APACHE en otro directorio, por ejemplo c:\apache\Apache o C:\loquesea\Apache, no importa, simplemente sigue este ejercicio cambiando la ruta. Este artculo est escrito interpretando que el Servidor Apache est instalado en c:\Apache
Pon apache.exe -h y obtendrs un listado de todos los parmetros de entrada que admite el ejecutable apache.exe
Apache.exe -k start Si est todo correcto el servidor se iniciar sin problemas y, como podrs comprobar, la ventana del MSDOS no te devuelve el promt del sistema (no podrs escribir nada mas en esta Ventana de Comandos. No cierres la ventana, si la cierras el servidor Apache dejar de funcionar. Para continuar con la prctica abre una nueva ventana de MSDOS, tienes que tener dos ventanas abiertas, una con el Apache en marcha y otra para que puedas introducir nuevos comandos. Esto es debido a que ya no podemos escribir nada en la ventana anterior pero necesitamos "hablar" (dar ordenes) con el Servidor APACHE, as que, venga, abre otra "ventanita negra", ves al directorio c:\Apache (cd c:\Apache) y vamos a parar el servidor. Para ello tienes dos opciones que realizan la misma funcin: Apache.exe -k stop Apache.exe -k shutdown A los pocos segundos vers como la ventana del sistema que no te dejaba escribir ya te permite manipularla, quiere decir que el servidor web ya no est en marcha y se ha liberado la memoria.
como es lgico Apache soluciona los problemas y saca una nueva versin sin los bugs conocidos. Conocer la versin de Apache te aportar conocer la poltica del departamento de sistemas propietaria del servidor (las personas que estn detrs manejando el servidor) y las vulnerabilidades del servidor web. Si el servidor analizado tiene una versin de Apache antigua quiere decir que el administrador encargado de mantener el servidor no se est preocupando de la seguridad. Ves por donde van los tiros? X) Averiguar la versin de Apache de forma local El ejecutable Apache.exe ofrece un parmetro que te indica la versin de servidor web instalado. Recuerda que tienes que estar situado en el directorio donde tienes instalado el Apache.(C:\apache\) Apache.exe -v La informacin que te permite conocer es la versin y fecha de cuando fue compilado por ltima vez. Si te has instalado el Apache partiendo del captulo anterior (revista n7) tienes que tener la versin Apache/1.3.27 (Win32). Averiguar la versin de Apache de forma remota
Conocer la versin de Apache de otras mquinas es muy sencillo, puedes hallar y de forma muy rpida y sin dejar rastro tu inters por conocer la versin del servidor web de cualquier otro servidor Apache. Para ello vas a utilizar el cliente Telnet, ya se coment en el nmero 7 de Paso a Paso el cliente Telnet por lo que no vamos a repetir el funcionamiento del cliente Telnet.
PC PASO A PASO N 8
Simplemente comentarte que el cliente telnet de windows 98 se presenta como una ventana de windows y no a modo de texto como en XP/2000, incluso es ms sencillo de utilizar si te ests iniciando en los clientes Telnet. Ejecutamos el comando de sistema telnet.exe, como vers se abre una ventana sin contenido, con el fondo blanco y con un men en la parte superior. Selecciona Sistema remoto del men desplegable Conectar.
un comando HTTP correcto, pero para averiguar la versin de Apache es suficiente con enviar cualquier cosa.
S utilizas...
Si utilizas el telnet de Windows XP, como en el nmero 7 de Hack x Crack, debers: - Abrir una Ventana de Comandos - Escribir telnet 127.0.0.1 80 En este momento tendrs ante ti una ventana completamente en negro, sin una sola letra. - Escribir cualquier cosa (aunque no se ver reflejado en la ventana) y pulsar enter. En ese momento vers el mensaje de error y la versin de apache del remoto, como en la imagen ;)
En nombre de host puedes poner un dominio o la IP de un servidor. Cambia el puerto, por defecto est el Telnet (puerto 23), cambialo a 80 (es el puerto por defecto del servidor web). El parmetro tipo de terminal no hace falta que lo cambies. Resumiendo, pon los siguientes datos: Nombre de host: 127.0.0.1 de esta forma te conectars a tu propio servidor. Puerto: 80 (Recuerda iniciar el Servidor Apache antes de Aceptar: apache -k start) Al aceptar vers que no ocurre nada, escribe cualquier cosa (no vers lo que escribes) y pulsa el botn return del teclado. Al instante recibirs un texto comunicando un error de mtodo no implementado (Error 501 Method Not Implemented). Lo que ha sucedido es que el servidor estaba esperando que le enviaras
PC PASO A PASO N 8
Lo que ests haciendo mediante el cliente de telnet es conectarte al servidor Apache sin utilizar el Browser (Internet Explorer o Netscape). Esta tcnica es muy til si necesitas conocer las versiones de los servicios que estn funcionando en los servidores. Vamos a poner un par de ejemplos :) EJEMPLO 1: Vamos a averiguar qu versin de apache est corriendo en el servidor de amenes que contiene las pginas de Hack x Crack (www.hackxcrack.com). a) - Iniciamos el Telnet e intentamos conectarnos a www.hackxcrack.com. Si tienes Windows 2000/XP, ya sabes, abres una ventana DOS y escribe telnet (y pulsa return)
Pgina 19
* Esto inicia la consola Telnet b) - Ahora escribes set localecho (y pulsa enter) * Esto habilita el eco local c) - Finalmente escribe open www.hackxcrack.com 80 * Esto nos conecta al servidor donde estn alojadas las pginas de Hack x Crack. * En este momento deberas ver un mensaje que reza "conectndose a www.hackxcrack.com...", como en la imagen d)Ahora e s c r i b e cualquier cosa y pulsa enter, con lo que obtendrs esto: * Ya puedes buscar la versin del Servidor Web, ya, que no la encontrars claro, claro, no todo es tan sencillo ;p que los administradores pueden ocultar este dato, pero eso lo solucionamos YA!!! - Abre una nueva Ventana DOS y repite los pasos hasta el punto c) incluido. Ahora, en lugar de escribir cualquier cosa y pulsar enter como en el paso d), lo que hacemos es escribir get www.hackxcrack.com y os aparecer la versin de Apache ;p
Esto no os funcionar en todos sitios, claro pero la experiencia es la madre de la ciencia; ya sabes, poco a poco y paso a paso ;)
En el nmero 7...
En el nmero 7 de Hack x Crack, en el artculo RAW1 ya trabajamos con telnet, si no entiendes qu es eso del localecho y otras cosas, ya sabes, pgale un vistazo al nmero 7 :) EJEMPLO 2: Telnet, para averiguar si un servidor tiene instalado el MySQL y adems poder averiguar la versin, simplemente tienes que colocar la IP del servidor y el puerto de MySQL (3306). Veeeenga, vamos all. La pregunta es Tiene el servidor de h a c k xc ra c k . c o m e l s e r v i c i o M y S Q L ? - Sigue los pasos anteriores a), b) y c) PERO en el paso c) pon open www.hackxcrack.com 3306 y obtendrs algo parecido a esto: Je, je mira por donde, el servidor de www. hackxcrack.com tiene el servicio MySQL versin 3.23.53 pero nos estamos olvidando del objetivo de este artculo, volvamos a nuestro querido APACHE!!!
3. Configurando el apache
Toda la configuracin del servidor web est guardada en el fichero llamado http.conf del directorio c:\apache\conf\. Este fichero de tipo texto puede ser editado con cualquier editor de textos, recomendamos el bloc de notas (ms simple imposible). Pues abre el archivo y an no toques nada, pues un cambio errneo en este archivo y dejars sin funcionar el servidor web.
Pgina 20
PC PASO A PASO N 8
Una vez abierto se observa que existen lneas precedidas por el smbolo # estas lneas como habrs supuesto son comentarios que describen el parmetro y el valor que hay a continuacin.
la web tiene miles de visitas y deseas que el servidor no consuma recursos de sistema entonces selecciona standalone, pero si quieres mayor seguridad en tu servidor web a costa de utilizar ms recursos (ms memoria, ms micro, ...) entonces utiliza inetd. Es necesario que sepas que Apache en plataformas Windows solo funciona el standalone mientras que en otros sistemas como Linux se acepta el Inetd, ya puedes suponer que el Apache en Windows consumir menos recursos y que es ms propenso a fallos de seguridad. ServerRoot Este parmetro indica el lugar dnde se encuentran los archivos de configuracin, error y registros. Es el directorio padre de todos los archivos relacionados con el servidor Apache. En nuestro ejemplo es: c:/apache/ (en la imagen anterior puedes ver que el directorio padre es c:/apache/apache, eso es porque esa imagen corresponde a alguien que ha instalado Apache en el directorio c:\apache\apache) Vamos a realizar una prueba cambiando este parmetro, lo primero que tienes que hacer es parar el servidor Apache (recuerda: apache.exe -k stop) una vez parado pon cualquier otra cosa en ServerRoot, por ejemplo ServerRoot c:/apacheerror/ , graba el archivo de configuracin. Se ha colocado una ruta errnea, Apache dispone de un sencillo debugger que te indicar el error ocurrido y hasta que no lo soluciones no te permitir ejecutar el Apache. Para comprobar si el archivo de configuracin es correcto utiliza el parmetro -t, de la siguiente forma: Apache.exe -t
Pgina 21
ServerType El primer parmetro que encontrars es ServerType, este parmetro indica a Apache como debe manipular internamente las peticiones de los navegantes. Lo que os comentamos a continuacin es ms culturilla que otra cosa, pero es necesario saberlo para conocer como trabaja un servidor Web internamente. ServerType puede tener dos valores standalone | inetd, entre ambos parmetros existe una gran diferencia relacionada con la eficacia del sistema. El proceso de un servidor configurado como inetd se cierra en el mismo momento en el que termina de atender la peticin recibida. Mientras que en el modo standalone , el subproceso se queda esperando cierta cantidad de tiempo antes de cerrarse. De esta forma se pueden volver a utilizar en el futuro. Como no hay que dedicar recursos de sistema para volver a abrir el proceso, se mejora la eficacia del servidor. Inetd tiene sus ventajas, se considera ms seguro que standalone. Cundo se tiene que utilizar uno u otro?, si
PC PASO A PASO N 8
Te mostrar como resultado el nmero de lnea donde se ha producido el error. Te recomendamos que siempre que cambies el archivo de configuracin compruebes si est correcto. Ahora vuelve a colocar como estaba el ServerRoot (c:/apache/) TimeOut El valor de este parmetro indica el nmero de segundos antes de enviar un timeout. Es un valor a tener en cuenta en la optimizacin del servidor Apache, es posible y de vez en cuando ocurra que, al solicitar una pgina web, el servidor necesite ms tiempo para procesar la peticin y enviar la pgina web. Imagina que por cualquier motivo el servidor entra en un bucle infinito, esto consume mucha memoria, micro, ... pues con el timeout le dices que a los X segundos pare. Las empresas de hosting tienen que tener muy controlado este valor, pues piensa en crear un bucle infinito en una pgina PHP que nunca llegue a responder al navegante. Esto le supone al servidor una carga de procesamiento mayor y tener un proceso ocupado un largo tiempo consumiendo recursos. El valor por defecto es de 300 segundos (5 minutos). Si utilizas tu servidor web para mostrar pginas HTML, compartir ficheros puedes dejarlo como est, pero si lo utilizas para ofrecer a tus amigos espacio web te recomendamos que reduzcas el tiempo. Port El puerto HTTP predeterminado es el 80 y es el que se utiliza en la mayora de los servidores WEB. Puedes cambiar el puerto por uno comprendido entre el rango 1024 y 32769, ambos incluidos. Todos los puertos menores de 1024 se consideran estndares y ya estn asignados por defecto a otros servicios. Ten en cuenta que si utilizas un puerto diferente al 80, tienes que especificar el puerto en la URL dirigida al servidor. Por ejemplo, si utilizas el puerto 8080, la url
Pgina 22
para acceder al servidor ser: http://127.0.0.1:8080 o http://www.midominio.com:8080, como vers primero va la IP o el dominio y luego dos puntos junto al puerto. Si pones en el navegador (el Internet Explorer, Netscape o el que utilices normalmente) http://127.0.0.1:80 comprobars que funciona correctamente, en cambio si colocas cualquier otro puerto te dar error. Utilizando los dos puntos y el puerto puedes capturar a travs del navegador informacin de otros servicios instalados en los servidores remotos, por ejemplo, quieres confirmar si el servidor de hackxcrack tiene un servidor MySQL y si lo tiene que versin utiliza?, pon http://www.hackxcrack.com:3306 en tu navegador y vers que la versin es 3.23.53 ;)
Puedes utilizar...
Puedes utilizar un puerto diferente para que tu web sea accesible desde Internet pero que no sea encontrada por los buscadores o que sea accesible solo para tus amigos que conocen la direccin exacta, si cambias el puerto complicas bastante la deteccin de una web.
un error y no puede mostrar la pgina solicitada enva una pgina de error, en esa pgina se muestra una direccin email del administrador de sistema. De esta forma los visitantes del sitio web podrn informar de cualquier problema a travs de un mensaje de correo electrnico. Por ejemplo: ServerAdmin webmaster@tudominio.com Servername Aqu puedes colocar un dominio o una IP, recuerda que este parmetro se configur en la instalacin (en unos de los pasos explicados en HxC n7), ahora ya puedes cambiarlo con el valor que quieras, como es un servidor de p r u e b a s p o n S e r ve r n a m e 1 2 7. 0 . 0 . 1 DocumenRoot Este parmetro indica al servidor que ha de considerar el directorio especificado como el path del nivel superior. La eleccin de este directorio es muy importante, por ejemplo si el valor es DocumentRoot "c:/" podrs acceder a todo el disco duro. Obviamente se puede proteger dichos archivos estableciendo los permisos oportunos. A este root (el documentRoot) se le llama Root virtual, para aclarar el documentroot y que veas la utilidad de este importante parmetro, el valor es la ruta PATH del disco desde donde puede Apache encontrar las pginas web por defecto. Si tienes dos discos duros, puedes colocar en un disco duro la instalacin de Apache junto con los archivos del sistema operativo y colocar en otro disco duro las pginas webs, de este modo no corres el riesgo de que algn curioso pueda acceder al disco duro donde tienes instalado el sistema (apache, sistema operativo) y fastidiarte como ya te puedes imaginar.
PC PASO A PASO N 8
Por ejemplo, puedes tener otra unidad "e" donde colocars los archivos HTML, GIF, MP3, DIVX, ..., Los parmetros a modificar seran: ServerRoot "C:/apache/ " DocumentRoot "E:/" Como puedes ver el root del servidor (ServerRoot) est donde se instal el Apache mientras que el Root de las pginas web se encuentra en la unidad E. De esta forma tan sencilla has dificultado el acceso al sistema de curiosos, os aseguro que muchas empresas de hosting tienen un servidor muy potente con un disco duro de muchas gigas (en una unidad) y este disco duro est compartido por el sistema operativo y todos los dominios, cualquier webmaster con nociones de PHP puede acceder a otros dominios si estos parmetros estn mal configurados. Primero vamos a aprender a configurar el Apache que luego, en futuros captulos, veremos como podemos acceder al contenido de otros dominios teniendo acceso desde uno ;) Te adelantamos un detalle Hemos explicado varios parmetros que son muy importantes para la configuracin del servidor Apache, el fichero httpd.conf lo tienes configurado para que funcione en un slo espacio web, es decir, tienes un dominio o IP asociado a un espacio de disco de tu ordenador. Pues te adelantamos que puedes crear ms espacios webs en tu ordenador, es decir, has pensado ofrecer hosting a tus amigos?, con Apache es posible, puedes alojar en tu mismo ordenador varios dominios y cada uno con su propia configuracin. Pero no corramos, en el prximo captulo aplicaremos todo lo aprendido en este nmero, que no es poco, creando varios sitios en tu propio ordenador. Tu servidor no ser muy diferente a los servidores de empresas de hosting. Por qu te decimos todo esto? Muy sencillo,
Pgina 23
todos los parmetros que hemos comentado son globales, es decir, afectan a todos los sitios creados. Puedes configurar sitios con parmetros personalizados, por ejemplo, puedes crear un sitio que para acceder tengan que poner el puerto 8080 y otro sitio con el puerto 80. Ms adelante vers la diferencia. "Ocultamiento" de archivos En el directorio del sitio web (c:\apache\htdocs\, recuerda que aqu es donde tienes que alojar todas las pginas html e imgenes) tienes que tener un index.html de "Hola mundo" creado en HxC n 7, pues brralo y crea los siguientes directorios: divx, mp3, xxx, crack, serial y warez.
vers que dice que no tienes permisos para ver el contenido del directorio. Qu pasos ha seguido Apache?, lo primero que ha realizado es buscar el archivo ndice con extensin .html y como no lo ha encontrado ha mostrado la pgina de que no tienes permisos para ver el contenido. Mira el fichero de configuracin (httpd.conf), busca lo siguiente: <Directory /> Options FollowSymLinks AllowOverride None </Directory> De la siguiente forma (muy simple), le indicamos a Apache las propiedades del directorio raz (fjate que pone /). Poner / es lo mismo que poner el valor de DocumentRoot. Por lo tanto lo anterior es lo mismo que: <Directory c:\apache\htdocs\ > Options FollowSymLinks AllowOverride None </Directory> Ahora comenta el contenido, djalo como sigue: <Directory c:\apache\htdocs\ > #Options FollowSymLinks #AllowOverride None </Directory> Como estars un poco harto de parar el servidor para luego iniciarlo, los creadores de Apache ya pensaron ello y buscaron una solucin. Si utilizas apache -k restart reinicias el servidor web sin necesidad de parar el servidor web. Pon de nuevo la url http://127.0.0.1, qu ves?, han aparecido los directorios creados incluso puedes navegar por ellos. De esta forma tan sencilla puedes compartir tus ficheros sin necesidad de conocer HTML y sin instalar otros programas. Cualquier navegante que ponga tu url acceder a los directorios y podr
PC PASO A PASO N 8
Recuerda que el parmetro DocumentRoot tiene que apuntar al directorio donde has creado los directorios, en este caso sera DocumentRoot "c:\apache\htdocs\" . Con Apache en marcha (Apache.exe -k start) pon en el navegador la url: http://127.0.0.1 (suponiendo que hayas dejado el puerto 80),
Pgina 24
se encuentre en dicho directorio, algo muy peligroso para la seguridad del servidor ;) La decisin de ocultar los archivos depende de la utilidad que le des a la web, en esta prctica se han creado las carpetas (crack, divx, mp3, serial, warez, xxx) para poder compartir los archivos sin necesidad de FTP. La mayora de los servidores de alojamiento gratuito tienen prohibido que alojes ficheros de gran tamao como los archivos divx o algunos mp3. Ahora puedes utilizar tu propio servidor web para compartir los archivos sin depender de los servidores gratuitos que te ponen tantas pegas.
Quieres ver el contenido de uno de los directorios de hackxcrack? Pon http://www.hackxcrack.com/imagenes/ o http://www.hackxcrack.com/entrada/, al no tener un fichero ndice (index.html) muestra el contenido del directorio. Te sorprenders si haces pruebas con otros servidores, vers que muchas veces los administradores no protegen los directorios dejando los contenidos accesibles a los curiosos. Muchas veces los programadores web dejan ficheros txt con instrucciones de cmo usar algunos ficheros, al dejar visible los directorios y adems poder navegar en ellos podrs acceder a informacin que tal vez sea privada. Es importante que pongas un fichero ndice en aquellos directorios que no deseas que se muestren los archivos (cuando hablamos de fichero ndice nos referimos al index.html). Sin el fichero ndice el servidor mostrar automticamente uno con una serie de enlaces que permitirn acceder a su contenido, de esta forma es posible acceder a la informacin vital o que, alguien que carece de los permisos oportunos, ejecute algn archivo binario que
PC PASO A PASO N 8
Pgina 25
cuenta de que tu pequeo ordenador puede ser visto como un gran servidor de cara a los navegantes, y que el funcionamiento de los servidores web a los que te conectas no difieren
tanto de tu servidor web Apache pues la mayora de ellos tienen otro servidor Apache ;) David C.M
45 EUROS (10% DE DESCUENTO) + SORTEO DE UNA CONSOLA XBOX + SORTEO 2 JUEGOS PC (A ELEGIR)
C o n t r a R e e m b o l s o Giro Post al
Solo tienes que enviarnos un mail a preferente@hackxcrack.com indicando: - Nombre - Apellidos - Direccin Completa - Poblacin - Provincia - Cgigo Postal - Mail de Contacto y/o Telfono Contacto Es imprescindible que nos facilites un mail o telfono de contacto, puesto que 24 horas despus de que recibamos tu peticin de subscripcin te daremos un nmero de Cliente Preferente. Este nmero ser utilizado para los sorteos. - Tipo de Subscripcin: CONTRAREEMBOLSO - Nmero de Revista: Este ser el nmero a partir del cual quieres subscribirte. Si deseas (por ejemplo) subscribirte a partir del nmero 5 (incluido), debes poner un 5 y te enviaremos desde el 5 hasta el 15 (ambos incluidos) APRECIACIONES: * Junto con el primer nmero recibirs el abono de 45 euros, precio de la subscripcin por 11 nmeros (un ao) y una carta donde se te indicar tu nmero de Cliente Preferente y justificante/factura de la subscripcin. * Puedes hacernos llegar estos datos POR MAIL,tal como te hemos indicado; rellenando el formulario de nuestra WEB (www.hackxcrack.com) o envindonos una carta a la siguiente direccin: CALLE HIGINIO ANGLES N2, 4-1 CP 43001 TARRAGONA ESPAA * Cualquier consulta referente a las subscripciones puedes enviarla por mail a preferente@hackxcrack.com Envanos un GIRO POSTAL por valor de 45 EUROS a: CALLE HIGINIO ANGLES N2, 4-1 CP 43001 TARRAGONA ESPAA IMPORTANTE: En el TEXTO DEL GIRO escribe un mail de contacto o un nmero de Telfono. Y enviarnos un mail a preferente@hackxcrack.com indicando: - Nombre - Apellidos - Direccin Completa - Poblacin - Provincia - Cgigo Postal - Mail de Contacto y/o Telfono Contacto Es imprescindible que nos facilites un mail o telfono de contacto, puesto que 24 horas despus de que recibamos tu peticin de subscripcin te daremos un nmero de Cliente Preferente. Este nmero ser utilizado para los sorteos. - Tipo de Subscripcin: GIRO POSTAL - Nmero de Revista: Este ser el nmero a partir del cual quieres subscribirte. Si deseas (por ejemplo) subscribirte a partir del nmero 5 (incluido), debes poner un 5 y te enviaremos desde el 5 hasta el 15 (ambos incluidos) APRECIACIONES: * Junto con el primer nmero recibirs una carta donde se te indicar tu nmero de Cliente Preferente y justificante/factura de la subscripcin. * Puedes hacernos llegar estos datos POR MAIL,tal como te hemos indicado; rellenando el formulario de nuestra WEB (www.hackxcrack.com) o envindonos una carta a la siguiente direccin: CALLE HIGINIO ANGLES N2, 4-1 CP 43001 TARRAGONA ESPAA * Cualquier consulta referente a las subscripciones puedes enviarla por mail a preferente@hackxcrack.com
Pgina 26
PC PASO A PASO N 8