У меня есть приложение, развернутое в Tomcat на виртуальной машине Google Ubuntu. Приложение работает нормально и доступно удаленно по доменному имени и IP-адресу.
Я хочу отладить это приложение удаленно, используя Eclipse из другой системы Ubuntu. На виртуальной машине Google я запускаю кот с командой,

catalina.sh jpda start

В логе кота я вижу,

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

Я заменил фактический IP-адрес на host_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

Любая идея, как я могу успешно удаленно отладить приложение? Благодарю.

РЕДАКТИРОВАТЬ:
Вывод команды «sudo iptables -L» на виртуальной машине Google.

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     

Вывод команды 'sudo iptables -L' в локальную систему Ubuntu.

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 ответ1

0

Во-первых, я хотел бы предложить, чтобы вы могли использовать набор команд ufw, чтобы увидеть, что у вас есть.

Вот ссылка для UFW;

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

Если порт не включен, вы можете запустить команду ниже, чтобы включить порт;

Проверьте, что у вас есть

UFW статус

Включить в порт

UFW позволяют от любого до любого 8000

И применить изменения

UFW отключить && UFW включить

В дополнение к этому вы можете проверить настройки групп безопасности сервера Ubuntu. В большинстве случаев серверы Ubuntu не позволяют получить доступ ко многим портам, таким как 8080. Таким образом, вы также можете отредактировать Inbound Rules для включения порта 8000.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .