webserver publico
TRANSCRIPT
Habilitar el Sevidor Web desde mi casa para el
mundo
Por Fernando Díaz Sánchez <[email protected]>
Introducción
Una vez que instalaste Apache WebServer en tu PC puedes usar el servidor web accediendo a
tu navegador y usando el servicio vía http://localhost
Esto ya debe ser muy bien conocido, pero eso no es todo lo que puedes hacer. En realidad si
tienes una conexión a Internet, puedes hacer que tu servidor Apache sea visto por cualquier
persona en la Internet.
¿Qué Necesito?
Conexión a Internet
Acceso a la configuración de tu Router
Apache Web Server instalado y ejecutándose
Conocer tu IP pública
Realizar un Port-Forwarding al Router
Utilizar un servicio DNS (OPCIONAL)
En Detalle
Conexión a Internet
Si no tienes salida a internet, en vano son tus intentos, no podrás hacer que otra
persona con acceso a internet pueda visitar tu servidor web instalado en tu PC
Acceso a la configuración de tu Router
Tu PC se conecta a Internet gracias a este dispositivo, usualmente tiene el IP
192.168.1.1 (no necesariamente) y permite configurarlo remotamente (ya sea vía
telnet o vía web).
Para acceder a su configuración, lo usual es que te solicite un usuario y una clave. Sin
estos datos no podrás habilitar tu servidor web hacia el mundo.
Apache Web Server instalado y ejecutándose
Si quieres que otros vean tus páginas web, naturalmente debes tener instalado Apache
Web Server. El servidor Web Apache puede estar ejecutándose en tu PC o en una
Maquina Virtual. Lo que debes tener presente es que debes conocer el IP de la PC
donde Apache se ejecuta
En Windows se consigue con el comando: ipconfig
En Linux se consigue con el comando: ifconfig
Nota Importante: Si tienes Maquinas virtuales, los comandos descritos anteriormente
debe ser ejecutados en las mismas Maquinas Virtuales y no en la PC que las aloja
Conocer tu IP pública
Para que puedas acceder a internet, necesitas una IP pública de todas maneras. Lo que
pasa es que nuestro Proveedor de Servicio de Internet no se molesta en decirnos cuál
es.
Hay varias páginas que nos muestran cual es nuestra IP pública. Puedes elegir entre
estas:
http://www.cual-es-mi-ip.net
http://www.mi-ip.net
http://www.cualesmiip.com
http://www.see-my-ip.com
Lo normal es tener un servicio ADSL en casa (Speedy, Telmex, etc), el cual NO nos
proporciona una IP Pública fija todo el tiempo, es por eso que cada vez que reinicias tu
router, tu IP pública cambia.
Realizar un Port-Forwarding al Router
Hasta aquí ya deberías tener listo lo siguiente: IP Público, IP de nuestro Servidor Web,
Usuario y Clave del Router
El IP Público del que hemos tratado, en realidad está asignado a nuestro Router. Eso
quiere decir, que nuestro router tiene por lo menos 2 tarjetas de red. Una asignada a
la red interna (usualmente la 192.168.1.1) y una asignada a la red pública (como
hemos visto en la sección anterior)
Los IPs públicos son únicos en el mundo, por eso, si alguien conoce la IP pública de tu
Router puede intentar hacer conexión. Si dicha persona abre su navegador y coloca
como URL la IP pública de tu Router (ejemplo: http://190.14.15.25) entonces intentará
hacerle una conexión al puerto 80
Muchos routers permiten ser administrados vía remota, incluso muchos permiten que
sean configurados accediendo por web a su IP pública. Otros routers simplemente no
permiten la conexión de esta forma, lo cual es más seguro. Esto no significa que la IP
pública no esté disponible o en uso.
Ahora bien, nuestro Servidor Web debe ser capaz de usar la IP Pública de nuestro
router (en nuestro ejemplo 190.14.15.25), de esta forma todos podrían acceder a
nuestro servidor web llamando directamente a dicha IP. Pero ¿Cómo consigo este
comportamiento?
Este comportamiento se consigue configurando nuestro Router para que “desvíe”
todas las peticiones del puerto 80 que hicieron a su IP pública y las derive hacia la IP de
nuestro Servidor Web (alojado en nuestra PC o en nuestra Maquina Virtual)
Este comportamiento se llama Port-Forwarding (Reenvío de puerto)
La configuración de un Port-Forwarding depende mucho de la marca y modelo de
nuestro router, pero en su mayoría solicitan la siguiente información:
Rango de Puertos (Puerto Inicial, Puerto Final)
Protocolos Permitidos (UDP, TCP, Both o Ambos)
IP de Destino
Nuestro objetivo es hacer que nuestro servidor web pueda ser visto por cualquiera con
conexión a internet, por lo tanto solo nos interesa hacer un Port-Forwarding a un solo
puerto, que es el 80. Esto quiere decir que en la configuración de nuestro router, si nos
pide puerto inicial y final, ambos deberán ser colocados en 80. El protocolo que
debemos colocar para que funcione nuestro servidor web es TCP. La IP de Destino
corresponde a la IP donde esta ejecutándose nuestro servidor web.
Los routers permiten incluso definir varios Port-Forwarding, de tal forma que se
pueden implementar varios servicios desde diferentes servidores internos.
En internet existen numerosas páginas y videos que explican como configurar el port-
forwarding, entre ellas tenemos:
(PF para equipos Lynksys) http://www.youtube.com/watch?v=Kp-R-eHiQco
(PF para equipos Zyxel) http://www.adslayuda.com/zyxel_p660rd1-nat.html
(PF para equipos Huawei) http://www.adslayuda.com/Huawei_MT882RT-
Configuracion_NAT.html
En algunos routers el Port-Forwarding se les denomina NAT de puertos
Para configurar tu router debes conocer que marca y modelo tienes, así como el
usuario y clave para poder ingresar y configurarlo.
Utilizar un servicio DNS (OPCIONAL)
Si deseas que accedan a tu servidor web a través de un nombre de dominio y no mediante un IP público, entonces necesitas un servicio DNS. Hay 2 formas de obtenerlo: La primera es pagando por el, por ejemplo si necesitas un dominio .com.pe debes registrarlo en http://punto.pe Si no quiere pagar un dominio debes conseguirte uno gratuito. Existen numerosos
sitios en internet que lo ofrecen. Entre otros tenemos: http://www.no-ip.com http://www.zoneedit.com http://www.dyndns.com http://www.opendns.com