允许在 Ubuntu 上的 8000 端口上进行远程 tomcat 调试

允许在 Ubuntu 上的 8000 端口上进行远程 tomcat 调试

我在 Google Ubuntu VM 上的 tomcat 中部署了一个应用程序。应用程序运行良好,可通过域名和 IP 地址远程访问。
我想使用 Eclipse 从另一个 Ubuntu 系统远程调试此应用程序。在 Google VM 上,我使用以下命令启动 tomcat:

catalina.sh jpda start

在 tomcat 日志中我可以看到,

Listening for transport dt_socket at address: 8000

我猜这意味着在 8000 端口上启用了远程调试。但是当我尝试从 Eclipse 连接到应用程序进行远程调试时,它给出'连接被拒绝'错误。
当我尝试远程 telnet 时,它给出,

ivish@ivish:~$ telnet host_ip 8000
Trying host_ip ...
telnet: Unable to connect to remote host: Connection timed out

我已用上面的 host_ip 替换了实际 IP 地址。

nmap 的输出如下,

google@vm:/opt/tomcat8$ nmap localhost

Starting Nmap 5.21 ( http://nmap.org ) at 2016-09-19 05:27 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00015s latency).
Not shown: 994 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
3306/tcp open  mysql
5432/tcp open  postgresql
8000/tcp open  http-alt
8009/tcp open  ajp13

Nmap done: 1 IP address (1 host up) scanned in 0.04 seconds

知道如何才能成功远程调试应用程序吗?谢谢。

编辑:
Google VM 上“sudo iptables -L”命令的输出。

google@vm:/opt/tomcat8$ sudo iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
sshguard   all  --  anywhere             anywhere            

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain sshguard (1 references)
target     prot opt source               destination     

本地 Ubuntu 系统上“sudo iptables -L”命令的输出。

ivish@ivish:~$ sudo iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination 

答案1

首先,我建议您可以使用 ufw 命令集来查看您拥有的内容。

这是 ufw 的链接;

https://help.ubuntu.com/community/UFW

如果该端口未启用,您可以运行以下命令来启用端口;

检查你有什么

ufw 状态

启用端口

ufw 允许从任意到任意 8000

并应用更改

ufw 禁用 && ufw 启用

除此之外,您还可以检查 ubuntu 服务器安全组设置。在大多数情况下,ubuntu 服务器不允许访问许多端口,例如 8080。因此,您也可以编辑入站规则以启用 8000 端口。

相关内容