
У меня есть приложение, развернутое в tomcat на виртуальной машине Google Ubuntu. Приложение работает нормально и доступно удаленно по доменному имени и IP-адресу.
Я хочу удаленно отладить это приложение с помощью Eclipse из другой системы Ubuntu. На виртуальной машине Google я запускаю 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
Я заменил фактический 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
Во-первых, я хотел бы предложить вам воспользоваться набором команд UFW, чтобы увидеть, что у вас есть.
Вот ссылка на ufw;
https://help.ubuntu.com/community/UFW
Если порт не включен, вы можете выполнить следующую команду, чтобы включить порт;
Проверьте, что у вас есть
статус ufw
Включить порт
ufw разрешить от любого до любого 8000
И применить изменение.
отключить ufw && включить ufw
В дополнение к этому, вы можете проверить настройки групп безопасности сервера Ubuntu. В большинстве случаев серверы Ubuntu не разрешают доступ ко многим портам, таким как 8080. Поэтому вы также можете отредактировать входящие правила, чтобы включить порт 8000.