
Eu tenho um servidor web Apache (2.4.10) rodando em um desktop com Debian (Jessie, 8).
A área de trabalho possui um endereço IP local estático (192.168.xx) e meu endereço IP WAN (público) também foi corrigido (82.xxx) pelo meu ISP. Um encaminhamento de porta para a porta 80 para esta área de trabalho foi adicionado.
Posso acessar a página da web da minha LAN sem problemas, mas não consigo acessá-la usando o endereço WAN, de dentro ou de fora da minha casa: recebo uma mensagem "A página da web não está disponível - ERR_CONNECTION_REFUSED" do Chrome. Observe que posso abrir meu roteador usando o endereço WAN (em outra porta).
A página em si não é muito mais do que "index.html" com Hello World.
Tentei desligar o firewall do iptables, não funcionou. Tentei uma porta diferente da 80, não funcionou. Liguei pelo ISP e a porta 80 não está bloqueada. Eu já me pesquisei no Google como louco. Alguém tem alguma sugestão sobre como tornar o site acessível?
Responder1
Eu resolvi isso!
Graças ao Moonpoint percebi que o problema estava no Port-Forwarding. Então dei outra olhada e percebi que para a regra da porta 80, a "Interface WAN" estava configurada como "ADSL" (padrão). Não sei o que isso significa, então nunca mudei. Tentei diferentes opções e configurá-lo para "ETHWAN" resolveu o problema. Agora posso acessar a página da Web publicamente e adicionei um DDNS no-ip que também funciona.
EDIT: Agora aprendi que a interface ETHWAN WAN era simplesmente aquela adicionada ao roteador pelo meu ISP e é a interface para conexão de fibra de vidro.
Responder2
Quando você afirma que tentou desligar o firewall iptables, mas não teve sucesso, você quer dizer que desativou o firewall iptables, mas ainda não conseguiu se conectar ao servidor web a partir de um endereço IP externo ou quer dizer que não conseguiu desabilitar o host firewall baseado em iptables? Verifique os logs de acesso e erros do Apache do seu site para ver se alguma tentativa de acessar o sistema a partir de um endereço IP externo está registrada em algum desses arquivos. Verifique seu /etc/httpd/conf/httpd.conf
arquivo Apache. Você tem alguma seção semelhante à seguinte em qualquer lugar do arquivo:
<Directory /home/www/example>
Order Deny,Allow
Deny from all
Allow from 192.168 127.0.0.1
</Directory>
No exemplo acima, o acesso de todos, exceto ohost localendereço, 127.0.0.1, e sistemas na mesma LAN, ou seja, 192.168.xxx.xxx, não é permitido. Se você quiser tornar o servidor acessível ao mundo, "Negar de todos" seria inapropriado.
Você pode isolar o problema no sistema Debian no qual você está executando o servidor web Apache ou no roteador onde você configurou o encaminhamento de porta, desde que não haja equipamentos de rede intervenientes, usando o comandotcpdumpcomando no sistema Debian Linux. Emita o comando tcpdump -i any port 80
como root. Isso fará com que o tcpdump procure apenas conexões com a porta 80 em qualquer interface, ignorando outros tráfegos. Em seguida, tente conectar-se ao servidor web a partir de um endereço externo. Se o tcpdump mostrar o tráfego para a porta 80 chegando ao sistema Linux, o encaminhamento de porta está funcionando corretamente. Caso contrário, você provavelmente terá um problema com o encaminhamento de porta, portanto, verifique novamente se está encaminhando a porta 80 para o endereço IP correto do servidor web.