Estou executando o Apache Tomcat no meu PC. Meu PC está conectado a um roteador em minha casa e o roteador está conectado ao meu ISP. Agora eu quero executar um servidor no meu PC para que meu amigo possa ver meu site hospedado no meu PC. Se eu for ao site https://whatismyip.com , sei que meu endereço IP é xx.xx.xx.xx. Este é o IP do meu roteador, eu acho. Se eu digitar http: //xx.xx.xx.xx no meu navegador, meu roteador solicitará um nome de usuário e uma senha. Isso significa que meu amigo pode se conectar ao meu roteador. Como posso permitir que eles vejam o site hospedado no Tomcat em execução no meu PC?
Não quero usar hospedagem comercial e quero usar meu PC apenas como servidor devido a alguns motivos.
O IP interno do meu roteador é 192.162.1.1 e do meu PC é 192.162.1.2.
Respostas:
Você precisa encaminhar solicitações ao servidor da web (porta 80, provavelmente) para sua máquina (.1.2). Você configura isso no seu roteador.
fonte
Você precisará fazer algumas coisas:
Altere a senha do seu roteador e bloqueie-o, pois você estará disponibilizando seu IP publicamente, a configuração do seu roteador é muito importante. Provavelmente, seria uma boa ideia fazer o download do firmware mais recente para evitar explorações de segurança.
Encaminhe suas solicitações da Web para sua máquina local, no seu roteador. Procure uma opção de "encaminhamento de porta", que forçará todas as solicitações em uma determinada porta em que seu roteador seja encaminhado para o endereço IP da sua máquina
tente garantir que seu endereço IP interno permaneça o mesmo. Alguns roteadores avançados podem reservar um determinado endereço IP para o endereço MAC do seu computador, portanto faça essa configuração no seu roteador. Se o software do roteador não puder fazer isso, você provavelmente precisará atualizar seu endereço IP interno no mapeamento "encaminhamento de porta" sempre que o computador reiniciar (ou obter outro endereço IP de alguma forma). Você também pode configurar o computador para usar um endereço IP interno codificado, mas isso pode adicionar outros problemas fora do escopo para discussão aqui.
se você é um provedor de serviços de Internet, fornece um endereço IP dinâmico, pode ser complicado enviar seu novo endereço IP a seu amigo toda vez que ele for alterado, para que você possa se inscrever em um serviço IP dinâmico (www.dyndns.org) que terá um programa que atualizará uma entrada de DNS para você. A maioria dos roteadores modernos possui esse servidor embutido no firmware; você pode procurá-lo e não precisa executar o software em sua máquina.
por motivos de segurança, reduza o número de outras solicitações que estão sendo enviadas para esta máquina (por exemplo, compartilhamento de arquivos do Windows, ftp, bit torrent, etc etc).
A porta 80 é a porta padrão usada pelos navegadores e servidores da web; portanto, quando você acessa um site http://www.mysite.com , solicita-o na porta 80)
A porta 8009 é a porta padrão usada pelo tomcat, portanto, se você estiver usando o tomcat, poderá substituir a porta 80 pela porta 8009 abaixo.
Você não precisa fazer nenhuma outra configuração de porta para o servidor da web em sua máquina local; o roteador pode fazer o mapeamento e deixar o servidor em execução nas portas 80 ou 8009 da sua máquina.
Por exemplo, digamos que eu queira usar a porta 12345, posso configurar meu roteador para que todas as solicitações na porta 12345 no meu roteador sejam enviadas para a porta 80 (ou 8009) na minha máquina local. Isso permite que você possa acessar nosso servidor Web nessa máquina simplesmente acessando http: // localhost / ou http: // localhost: 8009 . Outras máquinas internas da sua rede terão que acessar pelo endereço IP ( http: //192.168.1 . X ) ou você poderá editar os arquivos de hosts yoru e atribuir um nome.
É importante saber que a maioria das portas de bloqueio do ISP 80 (e outras portas comuns) é usada como servidor da Web . Portanto, mesmo se você tiver tudo configurado, seu amigo ainda não poderá acessar a porta 80 em sua máquina . Isso geralmente é feito para que os clientes do ISP paguem mais dinheiro por suas ofertas "comerciais". Por esse motivo, você provavelmente terá que abrir seu roteador em outra porta se realmente quiser que seu amigo acesse seu servidor web. Você vai querer ficar longe de portas de baixo número e evitar a utilização da porta na qual o roteador também está configurado.
Se você fizer tudo isso corretamente, poderá ter um URL estável (como http://myusername.dyndns.org:12345 ) que seus amigos podem marcar e usar à vontade
fonte
Você precisa portar o HTTP HTTP (tcp / 80) para o seu PC (192.162.1.2). Cada roteador é um pouco diferente, portanto, você precisará encontrar algumas instruções para o seu modelo específico .
Se o seu roteador suporta UPnP, então(Eles são raspados na tela - não usando UPnP), você também pode fazer isso automaticamente conforme necessário (melhor segurança) para $$.fonte
Você precisa encaminhar sua porta tomcat no seu roteador. A porta tomcat padrão é 8080. É melhor alterar sua porta tomcat para 80. Siga as etapas a seguir para alterar sua porta tomcat
Agora, com um editor de texto, você precisa abrir e modificar o server.xml. Aqui você deve identificar a seguinte linha (linha 184) e modificá-la para que mude de:
para:
Do roteador, encaminhe a porta 80 do roteador para o endereço IP do seu PC. Feito isso, informe seu amigo para acessar seu site usando http: //xx.xx.xx.xx/webAppName . Aqui xx.xx.xx.xx é o seu endereço IP e webAppName é o projeto do seu site.
Por padrão, os ISPs bloquearão a porta 8080, portanto, você deve alterar a porta que o tomcat usa.
fonte
Se você não estiver interessado no encaminhamento de porta ou se parecer complicado, a maioria dos roteadores possui uma configuração chamada DMZ. Coloque seu servidor da Web (a máquina que hospeda o site) na DMZ para permitir que ele seja visto do mundo exterior. Então, se você não registrou um nome de domínio, faça com que seu amigo digite seu IP no navegador dele.
fonte
Você precisará configurar o "encaminhamento de porta" no roteador da porta 80 (http) para o seu PC e também recomendo configurar o "DHCP estático" para que o roteador sempre atribua o mesmo IP ao seu PC ao inicializar.
Observe que você está expondo seu PC ao mundo dos hackers quando faz isso. Verifique se você possui uma versão atual do apache / tomcat instalada e se aplica atualizações regularmente.
Se o seu roteador o suportar, convém configurar o "DNS dinâmico" para dar à sua máquina um nome permanente na Internet (em vez de um número de IP às vezes alterado). Confira dyndns.com e veja as opções de DNS dinâmico gratuitas.
fonte
O IP estático é obrigatório ... Se você possui um IP dinâmico, ele continua mudando e precisa se familiarizar com o seu amigo sobre o novo IP.
fonte