¿Cómo puedo hacer que mi PC doméstica sea un servidor web?


8

Estoy ejecutando Apache Tomcat en mi PC. Mi PC está conectada a un enrutador en mi casa y el enrutador está conectado a mi ISP. Ahora quiero ejecutar un servidor en mi PC para que mi amigo pueda ver mi sitio alojado en mi PC. Si voy al sitio https://whatismyip.com , sé que mi dirección IP es xx.xx.xx.xx. Esta es la IP de mi enrutador, supongo. Si escribo http: //xx.xx.xx.xx en mi navegador, entonces mi enrutador solicita un nombre de usuario y contraseña. Esto significa que mi amigo puede conectarse a mi enrutador. ¿Cómo puedo permitirles ver el sitio alojado en Tomcat ejecutándose en mi PC?

No quiero usar hosting comercial y quiero usar mi PC solo como servidor debido a algunas razones.

La IP interna de mi enrutador es 192.162.1.1 y la de mi PC es 192.162.1.2.


3
No, no servidor predeterminado. Esta es una pregunta del usuario final, no una pregunta del administrador del sistema. Esto debería ir a superuser.com.

Quizás que estás detrás de un proxy.

¿Supongo que esta PC ejecuta Windows? Una PC con Linux requeriría instrucciones ligeramente diferentes.
David Thornley

Respuestas:


14

Debe reenviar solicitudes al servidor web (puerto 80, probablemente) a su máquina (.1.2). Configura esto en su enrutador.


2
Tenga en cuenta que esto generalmente se denomina "reenvío de puertos" en los enrutadores. Un método más fácil, aunque menos seguro, es utilizar DMZ en su enrutador para abrir todos los puertos a su servidor web. Esto a veces lo hace más fácil cuando se alojan múltiples servicios en su servidor web, como servidores de juegos, servidores VoIP, etc.
Will Eddins

1
Y tenga mucho cuidado al abrir puertos para solicitudes entrantes. Hay mucha gente tocando puertos en direcciones IP aleatorias para ver quién responde.
David Thornley

11

Tendrás que hacer algunas cosas:

  • Asegúrese de cambiar la contraseña de su enrutador y bloquear su enrutador, ya que hará que su IP esté disponible públicamente, la configuración de su enrutador es muy importante. Probablemente sea una buena idea descargar el firmware más reciente para evitar ataques de seguridad.

  • Reenvíe sus solicitudes web a su máquina local, en su enrutador. Busque una opción de "reenvío de puertos", que obligará a todas las solicitudes en un puerto determinado a que su enrutador se reenvíe a la dirección IP de su máquina

  • intente asegurarse de que su dirección IP interna siga siendo la misma. Algunos enrutadores avanzados pueden reservar una determinada dirección IP para la dirección MAC de su computadora, por lo tanto, realice esta configuración en su enrutador. Si el software de su enrutador no puede hacer esto, probablemente tendrá que actualizar su dirección IP interna en la asignación de "reenvío de puertos" cada vez que su computadora se reinicie (u obtenga otra dirección IP de alguna manera). También puede configurar su computadora para que use una dirección IP interna codificada, pero esto podría agregar problemas adicionales demasiado fuera de alcance para discutir aquí.

  • Si su ISP le proporciona una dirección IP dinámica, puede ser una molestia enviarle a su amigo su nueva dirección IP cada vez que cambie, por lo que puede suscribirse a un servicio de IP dinámica (www.dyndns.org) que tendrá un programa que actualizará una entrada de DNS para usted. La mayoría de los enrutadores modernos tienen este servidor integrado en el firmware, puede buscarlo y no tiene que ejecutar el software en su máquina.

  • por razones de seguridad, reduzca la cantidad de otras solicitudes que se envían a esta máquina (por ejemplo, uso compartido de archivos de Windows, ftp, bit torrent, etc., etc.).

  • El puerto 80 es el puerto predeterminado utilizado por los navegadores web y servidores, por lo que cuando accede a un sitio http://www.mysite.com , lo solicita en el puerto 80)

  • El puerto 8009 es el puerto predeterminado utilizado por tomcat, por lo que si está utilizando tomcat, es posible que desee reemplazar el puerto 80 con el puerto 8009 a continuación.

  • No tiene que hacer ninguna otra configuración de puerto para el servidor web en su máquina local, puede hacer que su enrutador haga el mapeo y deje el servidor web ejecutándose en el puerto 80 o 8009 en su máquina.

  • Ejemplo, digamos que quiero usar el puerto 12345, luego puedo configurar mi enrutador para que cualquier solicitud en el puerto 12345 en mi enrutador se envíe al puerto 80 (o 8009) en mi máquina local. Esto le permite poder acceder a nuestro servidor web en esa máquina simplemente yendo a http: // localhost / o http: // localhost: 8009 . Otras máquinas internas en su red tendrán que acceder por dirección IP ( http: //192.168.1 . X ) o puede editar sus archivos host y asignar un nombre.

  • Es importante saber que la mayoría de los ISP bloquean el puerto 80 (y otros puertos comunes) para que no se utilicen como servidor web , por lo que incluso si tiene todo configurado en su extremo, es posible que su amigo aún no pueda acceder al puerto 80 en su máquina . Esto normalmente se hace para que los clientes de ISP desembolsen más efectivo para sus ofertas de "negocios". Debido a esto, probablemente tendrá que abrir su enrutador en otro puerto si realmente desea que su amigo acceda a su servidor web. Querrá mantenerse alejado de los puertos de bajo número, y también evitará usar el puerto desde el cual está configurado su enrutador.

Si hace todo lo anterior correctamente, debería poder tener una URL estable (como http://myusername.dyndns.org:12345 ) que sus amigos puedan marcar y usar a voluntad



1

Tienes que reenviar tu puerto tomcat en tu enrutador. El puerto de tomcat predeterminado es 8080. Es mejor si cambia su puerto de tomcat a 80. Siga los siguientes pasos para cambiar su puerto de tomcat.

  1. Abra la carpeta tomcat \ conf en su computadora
  2. Ahora, con un editor de texto, debe abrir y modificar server.xml. Aquí debe identificar la siguiente línea (línea 184) y modificarla para que cambie de:

a:

<Http10Connector port="80"
secure="false"
maxThreads="100"
maxSpareThreads="50"
minSpareThreads="10" />
  1. Iniciar el servidor web

Desde su enrutador reenvíe el puerto 80 desde su enrutador a la dirección IP de su PC. Una vez hecho esto, dígale a su amigo que acceda a su sitio web utilizando http: //xx.xx.xx.xx/webAppName . Aquí xx.xx.xx.xx es su dirección IP y webAppName es su proyecto de sitio web.

Por defecto, los ISP bloquearán el puerto 8080, por lo que debe cambiar el puerto que utiliza tomcat.


Los ISP generalmente no bloquean los puertos por defecto. Ese puede ser el caso en su ciudad / país (supongo que EE. UU.), Pero ciertamente no es el caso en general. En muchos países, los ISP tienen condiciones de servicio bastante justas, sin ningún bloqueo de puertos (o limitación de ancho de banda para el caso).
Mikael Auno

¡La mina bloquea el puerto 80 pero permite el 8080! Es diferente para cada ISP.
Kevin Panko

0

Si no está interesado en el reenvío de puertos o si suena complicado, la mayoría de los enrutadores tienen una configuración llamada DMZ. Coloque su servidor web (la máquina que aloja el sitio web) en la DMZ para permitir que se vea desde el mundo exterior. Luego, si no ha registrado un nombre de dominio, haga que su amigo escriba su IP en su navegador.


Dado que el OP aparentemente no es un experto en este tipo de cosas, sugeriría que no desbloquee efectivamente todos los puertos. Hay suficientes exploits por ahí, y un sinfín de personas escaneando puertos y direcciones IP para tratar de usar esos exploits, y es probable que alguien que necesite ayuda en este nivel no sepa cómo detenerlos. DMZ es algo así como "PWN ME".
David Thornley

0

Deberá configurar el "reenvío de puertos" en el enrutador del puerto 80 (http) a su PC y también recomiendo configurar "DHCP estático" para que el enrutador siempre asigne la misma IP a su PC cuando se inicia.

Tenga en cuenta que está exponiendo su PC al mundo de los hackers cuando hace esto. Asegúrese de tener instalada una versión actual de apache / tomcat y de aplicar actualizaciones regularmente.

Si su enrutador lo admite, puede configurar "DNS dinámico" para darle a su máquina un nombre permanente en Internet (en lugar de un número de IP que a veces cambia). Visite dyndns.com y vea sus opciones de DNS dinámico gratis.


0

La IP estática es imprescindible ... Si tiene una IP dinámica, sigue cambiando y necesita conocer a su amigo sobre la nueva IP.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.