WAN 访问问题

WAN 访问问题

我曾是拼命地在过去的 4 天内,我尝试将我的系统设置为外部可访问的机器,但没有成功。必须说,到目前为止,这是一次很棒的旅程,详细了解了很多有关 Linux 网络的知识,但我在从互联网访问我的机器时遇到了问题。我尝试详细说明所有内容,以便更好地理解。

系统概况:

  • 两台旧的 ThinkPad-T60 笔记本电脑,
  • 两个 3G USB wifi 适配器(服务提供商:Three.co.uk),
  • 操作系统:Ubuntu Quantal 12.10
  • 没有路由器、调制解调器或任何其他设备

我尝试实现以下目标:

将笔记本电脑设置为运行 apache2 的外部可访问 Web 服务器,像往常一样监听端口 80。主机通过 3G 加密狗连接到互联网。其路径上没有其他设备,外部路由器等。

到目前为止我已经做了以下事情

为了确保万无一失,我先安装了一个全新的 Ubuntu。安装了 apache2 和 php5。安装了 noip2 模块。

概括

Apache2 已启动并运行良好。我可以从引用 localhost 的浏览器加载默认的未格式化站点。

我在 no-ip.com 注册了基本帐户(动态 DNS 服务),并安装了其软件,使其服务器与我的动态 IP 保持同步。经过测试和仔细检查,它运行完美。

我非常确定,我必须“玩” iptables,所以我阅读了许多教程和文档,以便更好地理解。由于机器仍然无法从外部网络访问,我假设我做的有些事情不太正确。

一些必要的输出

$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

我编写的 Bash 脚本中的 IP TABLES CONFIG 执行方式为 --> ./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 |监听

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

正如您所见,设置相当糟糕,我刚刚开始研究这个问题。我假设我不必将 eth1 转发到任何其他接口,因为我认为它是流量进入给定地址的接口。

我希望听取有关如何解决与这台机器建立 WAN 连接的问题的成熟意见。

ISP 可能阻止了端口 80,因此我尝试将设置更改为 8080 并从 no-ip.com dns 服务转发。在 iptables 上打开了 8080,正确地重新配置了 apache2,但仍然无法访问。

我不想将此解决方案用于任何实际用例,只是尝试让它发挥作用。这是一个很好的学习曲线。

提前致谢,Pete**

答案1

从您的输出来看,似乎唯一具有 IP 地址的接口是 eth1 - 192.168.1.100。这是一个私有 (rfc1918) IP 地址,您无法直接从互联网访问。

NoIP 如何推断您的公共动态 IP 地址是 92.41.31.247?我没有使用 three.co.uk 服务,所以我不确定这个加密狗有什么用。我假设 NoIP 客户端从您的机器连接到 NoIP 的网站,并被视为这个公共 IP 地址,但您还没有向我们展示您实际上如何连接到互联网 :)

你的路由表是什么样的?查看 的输出ip r以及配置了 IP 地址的所有接口的列表ip a

由于您将所有链的默认策略设置为“接受”,因此您的 iptables 防火墙当前状态下什么也不做。

我可以稍后帮您进行设置,但您首先需要理清连接问题。

相关内容