我在来宾计算机上运行了centos(使用virtualbox,通过nat连接)。 并且这台机器上的tomcat在端口8080上运行。
<Connector port="8080" protocol="HTTP/1.1" address="0.0.0.0"
connectionTimeout="20000"
redirectPort="8443" />
有从主机到客户的端口转发
主持人2222,客人22(ssh)
主持人40001,嘉宾8080
我尝试从http://localhost:8080获取页面 如果我通过ssh从主机连接并做curl localhost:8080,我会得到一个html页面。
但是如果尝试通过浏览器获取http://localhost:40001,它就会无限加载
netstat -an |在主机上显示“40001”
C:\ Users \ user&gt; netstat -an |找到“40001”
TCP 0.0.0.0:40001 0.0.0.0:0 LISTENING
TCP 127.0.0.1:30279 127.0.0.1:40001 FIN_WAIT_2
TCP 127.0.0.1:40001 127.0.0.1:30279 CLOSE_WAIT
如果我尝试在主机上telnet(telnet localhost 40001),则连接正常。
如果我尝试在访客上获得netstat,我会得到这个
[aegis@localhost ~]$ netstat -an | grep LISTEN | grep tcp
tcp 0 0 127.0.0.1:8005 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:8009 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp6 0 0 :::22 :::* LISTEN
tcp6 0 0 ::1:25 :::* LISTEN
我无法弄清楚为什么来自主机的telnet工作正常,但我无法通过浏览器获取页面。你能帮助我,我在配置上犯了错误吗?
答案 0 :(得分:0)
起初,我因为“从主机上运行telnet localhost 40001”而感到沮丧 但是22和8080端口之间存在差异。
默认打开22端口
8080端口不是。
如果您遇到此类问题,则应允许通过8080端口连接防火墙。
例如,您可以执行以下声明:
iptables -I INPUT 1 -i eth0 -p tcp --dport 8080 -j ACCEPT