如何从另一台机器访问在 Palm Pre 上运行的 Web 服务器?

如何从另一台机器访问在 Palm Pre 上运行的 Web 服务器?

我有一个 Palm Pre,我在上面安装了网络服务器,它侦听端口 8080。当我在 Pre 的浏览器上打开 192.168.1.104:8080(这是设备的 IP 地址,我失败了)时,它可以工作使用 localhost 或 127.0.0.1),它显示图像,一切正常。

但我无法从外部访问网络服务器,例如从我的台式机,它显示超时。 Pre 上是否有防火墙,或者出了什么问题?如有必要,我可以更改服务器的端口号。我没有配置Pre,只是安装了SSH。另外,我可以通过 SSH 访问 Pre,并从 Pre 访问我的桌面。

更新:

如果配置说:

eth0      Link encap:Ethernet  HWaddr 00:1D:FE:B5:99:51  
          inet addr:192.168.1.104  Bcast:192.168.255.255  Mask:255.255.0.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:486 errors:0 dropped:0 overruns:0 frame:0
          TX packets:284 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:69398 (67.7 KiB)  TX bytes:40051 (39.1 KiB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:1248 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1248 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:128070 (125.0 KiB)  TX bytes:128070 (125.0 KiB)

iptables-nvL说:

Chain INPUT (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
  370 29404 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:22 
 1248  128K ALLOWED_PACKETS  all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
    0     0 INVALID_PACKETS  all  --  !lo    *       127.0.0.0/8          0.0.0.0/0           
    0     0 REJECT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:113 flags:0x17/0x02 state NEW reject-with tcp-reset 
    0     0 DROP       tcp  --  bridge0 *       0.0.0.0/0            0.0.0.0/0           tcp dpts:4444:4445 
   47 28580 ALLOWED_PACKETS  all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
    0     0 ALLOWED_PACKETS  all  --  bridge0 *       0.0.0.0/0            0.0.0.0/0           
    0     0 ALLOWED_PACKETS  all  --  usb0   *       0.0.0.0/0            0.0.0.0/0           
    0     0 ALLOWED_PACKETS  icmp --  *      *       0.0.0.0/0            0.0.0.0/0           icmp type 0 state NEW 
    0     0 ALLOWED_PACKETS  icmp --  *      *       0.0.0.0/0            0.0.0.0/0           limit: avg 1/sec burst 5 icmp type 0 
    0     0 ALLOWED_PACKETS  icmp --  *      *       0.0.0.0/0            0.0.0.0/0           icmp type 3 state NEW 
    0     0 ALLOWED_PACKETS  icmp --  *      *       0.0.0.0/0            0.0.0.0/0           limit: avg 1/sec burst 5 icmp type 3 
    0     0 ALLOWED_PACKETS  icmp --  *      *       0.0.0.0/0            0.0.0.0/0           icmp type 4 state NEW 
    0     0 ALLOWED_PACKETS  icmp --  *      *       0.0.0.0/0            0.0.0.0/0           limit: avg 1/sec burst 5 icmp type 4 
    0     0 ALLOWED_PACKETS  icmp --  *      *       0.0.0.0/0            0.0.0.0/0           icmp type 5 state NEW 
    0     0 ALLOWED_PACKETS  icmp --  *      *       0.0.0.0/0            0.0.0.0/0           limit: avg 1/sec burst 5 icmp type 5 
    3   252 ICMPFLOOD  icmp --  *      *       0.0.0.0/0            0.0.0.0/0           icmp type 8 state NEW 
    0     0 ALLOWED_PACKETS  icmp --  *      *       0.0.0.0/0            0.0.0.0/0           icmp type 11 state NEW 
    0     0 ALLOWED_PACKETS  icmp --  *      *       0.0.0.0/0            0.0.0.0/0           limit: avg 1/sec burst 5 icmp type 11 
    0     0 ALLOWED_PACKETS  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:5353 
    0     0 ALLOWED_PACKETS  udp  --  *      *       0.0.0.0/0            0.0.0.0/0           udp dpt:5353 
    0     0 ALLOWED_PACKETS  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:3689 
    0     0 ALLOWED_PACKETS  udp  --  *      *       0.0.0.0/0            0.0.0.0/0           udp dpt:3689 
    0     0 ALLOWED_PACKETS  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp flags:0x04/0x04 
   36  4604 LOG        all  --  *      *       0.0.0.0/0            0.0.0.0/0           limit: avg 3/sec burst 5 LOG flags 0 level 7 prefix `IPT_PACKET_DROPPED_NO_MATCH: ' 
   36  4604 QUEUE      all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 INVALID_PACKETS  all  --  *      *       0.0.0.0/0            0.0.0.0/0           state INVALID 

Chain OUTPUT (policy ACCEPT 1541 packets, 166K bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain ALLOWED_PACKETS (20 references)
 pkts bytes target     prot opt in     out     source               destination         
 1298  157K ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain ICMPFLOOD (1 references)
 pkts bytes target     prot opt in     out     source               destination         
    3   252            all  --  *      *       0.0.0.0/0            0.0.0.0/0           recent: SET name: ICMP side: source 
    0     0 LOG        all  --  *      *       0.0.0.0/0            0.0.0.0/0           recent: UPDATE seconds: 1 hit_count: 6 TTL-Match name: ICMP side: source limit: avg 1/sec burst 1 LOG flags 0 level 4 prefix `IPT_ICMPFLOOD: ' 
    0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0           recent: UPDATE seconds: 1 hit_count: 6 TTL-Match name: ICMP side: source 
    3   252 ALLOWED_PACKETS  all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain INVALID_PACKETS (2 references)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 LOG        all  --  *      *       0.0.0.0/0            0.0.0.0/0           limit: avg 1/sec burst 100 LOG flags 0 level 4 prefix `IPT_INVALID_PACKETS_DROPPED: ' 
    0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0           

我认为 TCP 端口 8080 或任何我想要的端口都应该被接受,就像 22 (SSH) 端口一样。

答案1

目前,除非明确允许(这就是policy DROP意思),否则传入流量将被阻止。有一些规则允许“合法”流量,例如第一条规则允许传入 ssh 连接(tcp dpt:22意味着到端口 22 的 TCP 流量,即 ssh 端口)。

启用 Web 服务器的手动方法是添加一条 iptables 规则,允许传入流量到达该端口。假设您想打开端口 80。您可以使用以下命令来打开它:

iptables -I INPUT 24 -p tcp --dport 80 -j ALLOWED_PACKETS

(请注意,我遵循端口 3689 和 5353 的模型,它们允许进行速率控制等操作。Ssh 是经过特殊处理的,我想是为了降低配置错误导致无法访问的风险。)

可能有一种规范的方法可以在启动时应用您的设置。谷歌搜索建议一旦您有了满意的设置,您就可以将其永久化

iptables-save >/etc/pmnetconfig/iptables-common.config

我不了解WebOS,所以无法确认该文件的位置。

在你的实验过程中,如果你搞砸了,你可以用 删除特定的规则(例如第 42 条)iptables -D INPUT 42。假设上面的位置正确,您可以使用以下命令恢复启动时间设置

iptables-restore </etc/pmnetconfig/iptables-common.config

相关内容