
Tengo una aplicación implementada en Tomcat en una máquina virtual de Google Ubuntu. La aplicación funciona bien y se puede acceder a ella de forma remota mediante el nombre de dominio y la dirección IP.
Quiero depurar esta aplicación de forma remota usando Eclipse desde otro sistema Ubuntu. En Google VM estoy iniciando Tomcat con el comando,
catalina.sh jpda start
En el registro de Tomcat puedo ver,
Listening for transport dt_socket at address: 8000
Supongo que eso significa que la depuración remota está habilitada en el puerto 8000. Pero cuando intento conectarme a la aplicación desde Eclipse para la depuración remota, aparece'conexión denegada'error.
Cuando intento telnet de forma remota, aparece:
ivish@ivish:~$ telnet host_ip 8000
Trying host_ip ...
telnet: Unable to connect to remote host: Connection timed out
Reemplacé la dirección IP real con host_ip arriba.
La salida de nmap es la siguiente,
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
¿Alguna idea de cómo puedo depurar la aplicación de forma remota con éxito? Gracias.
EDITAR:
Salida del comando 'sudo iptables -L' en Google VM.
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
Salida del comando 'sudo iptables -L' en el sistema Ubuntu local.
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
Respuesta1
En primer lugar, me gustaría sugerirle que utilice el conjunto de comandos ufw para ver lo que tiene.
Aquí está el enlace de ufw;
https://help.ubuntu.com/community/UFW
Si el puerto no está habilitado, puede ejecutar el siguiente comando para habilitar el puerto;
Comprueba lo que tienes
estado ufw
Habilitar al puerto
ufw permite de cualquier a cualquier 8000
Y aplicar el cambio
ufw desactivar && ufw habilitar
Además de esto, puede verificar la configuración de los grupos de seguridad del servidor Ubuntu. En la mayoría de los casos, los servidores Ubuntu no permiten acceder a muchos puertos como el 8080. Por lo tanto, también puede editar las reglas de entrada para habilitar el puerto 8000.