problema de acesso WAN

3

Eu estava desesperadamente tentando configurar meu sistema como uma máquina acessível externamente nos últimos 4 dias sem sorte. Devo dizer que foi uma grande jornada até agora, aprendi muito sobre a rede linux em detalhes, mas tenho um problema em acessar minha máquina pela internet. Eu tento detalhar tudo para melhor compreensão.

Paisagem do sistema:

  • dois computadores ThinkPad-T60 antigos,
  • duas dongle WiFi USB 3G (fornecedor de serviços: Three.co.uk),
  • SO: quantal do Ubuntu 12.10
  • sem roteador, modem ou qualquer outro dispositivo

Tento alcançar o seguinte:

Configurando um laptop como um servidor da Web acessível externamente executando o apache2, ouvindo na porta 80 como de costume. A máquina host conectada à internet através de um dongle 3G. Nenhum outro dispositivo em seu caminho, roteador externo, etc.

Eu fiz o seguinte até agora

Comecei com uma instalação limpa do Ubuntu só para ter certeza. Instalado apache2 e php5. Módulo noip2 instalado.

RESUMO

O Apache2 está funcionando perfeitamente. Eu posso carregar o site não formatado padrão do navegador referenciando a localhost.

Inscrevi-me na conta básica do no-ip.com (serviço de DNS dinâmico) e instalei o software que mantém o servidor atualizado com o meu IP dinâmico. Testado e verificado duas vezes, funcionando perfeitamente.

Tenho certeza, eu tenho que 'brincar' com o iptables, então eu estava passando por muitos tutoriais e documentações para ter uma melhor compreensão. Como a máquina ainda não pode ser acessada pela rede externa, presumo que não faça algo certo.

Alguns resultados necessários

$ ifconfig

eth0      Link encap:Ethernet  HWaddr 00:1a:6b:35:c0:92  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:16 Memory:ee000000-ee020000 

eth1      Link encap:Ethernet  HWaddr 58:2c:80:13:92:63  
          inet addr:192.168.1.100  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::5a2c:80ff:fe13:9263/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:119918 errors:0 dropped:0 overruns:0 frame:0
          TX packets:103007 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:110091536 (110.0 MB)  TX bytes:13204658 (13.2 MB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:27915 errors:0 dropped:0 overruns:0 frame:0
          TX packets:27915 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:2253626 (2.2 MB)  TX bytes:2253626 (2.2 MB)

wlan0     Link encap:Ethernet  HWaddr 00:1b:77:03:f0:97  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

iptables -L

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:http state NEW,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:http-alt state NEW,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:8888 state NEW,ESTABLISHED

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

IP TABLES CONFIG de um script bash que escrevi executado como - > ./basicfw.sh eth1

#!/bin/bash

# Delete everything
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -Z

iptables -F INPUT
iptables -P INPUT ACCEPT
iptables -F OUTPUT
iptables -P OUTPUT ACCEPT
iptables -F FORWARD
iptables -P FORWARD ACCEPT

iptables -A INPUT -i $1 -p tcp -m tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i $1 -p tcp -m tcp --dport 8080 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i $1 -p tcp -m tcp --dport 8888 -m state --state NEW,ESTABLISHED -j ACCEPT

netstat -anl | grep LISTEN

tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:8888            0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN     
tcp        0      0 127.0.1.1:53            0.0.0.0:*               LISTEN     
tcp6       0      0 ::1:631                 :::*                    LISTEN     
tcp6       0      0 :::8888                 :::*                    LISTEN     

nmap * ** .no-ip.org

Starting Nmap 6.01 ( http://nmap.org ) at 2012-11-13 10:57 Central Europe Standard Time
Nmap scan report for 92.41.31.247.threembb.co.uk (92.41.31.247)
Host is up (0.11s latency).
Not shown: 99 filtered ports
PORT STATE SERVICE
113/tcp closed ident
Nmap done: 1 IP address (1 host up) scanned in 3.70 seconds

Como você pode ver, a configuração é bem manca, acabei de entrar nesse assunto. Eu suponho que não tenho que encaminhar eth1 para qualquer outra inerface porque eu acho que é aquele onde o tráfego entra no endereço dado.

Eu gostaria de ouvir qualquer opinião madura sobre o possível trabalho em torno de estabelecer uma conexão WAN com esta máquina.

O ISP pode bloquear a porta 80, por isso tentei mudar a configuração para 8080 e redirecioná-la do serviço no-ip.com dns. abri o 8080 no iptables, reconfigurei o apache2 corretamente e ainda está inacessível.

Eu não quero usar esta solução para qualquer caso de uso da vida real, apenas tente fazê-la funcionar. É uma boa curva de aprendizado.

Agradecemos antecipadamente Pete **

    
por Peter G. 13.11.2012 / 11:07

1 resposta

0

De sua saída, parece que a única interface que possui um endereço IP é eth1 - 192.168.1.100. É um endereço IP privado (rfc1918) que você não conseguirá acessar diretamente da Internet.

Como o NoIP infere que seu endereço IP dinâmico público é 92.41.31.247? Eu não usei os serviços da three.co.uk, então não tenho certeza do que este dongle faz. Presumo que o cliente NoIP se conecte da sua máquina ao site do NoIP e seja visto como esse endereço IP público, mas você ainda não nos mostrou como realmente se conecta à Internet:)

Como é sua tabela de roteamento? Observe a saída de ip r e uma lista de todas as interfaces configuradas com um endereço IP com ip a .

Seu firewall iptables no seu estado atual não faz nada desde que você definiu a política padrão de todas as cadeias como 'ACCEPT'.

Posso ajudar você a configurá-lo mais tarde, mas primeiro é preciso resolver a conectividade.

    
por Marcin Kaminski 24.11.2012 / 01:56

Tags