Как открыть закрытый порт в Ubuntu?

Я пытался убить процесс, который работал на порте 8080, и использовать его для удаленной отладки.

Где мой исходный код находится на моей хост-машине, а скомпилированный jar находится на другом сервере Ubuntu. Поэтому я пытался выполнить удаленную отладку на порту 8080, я изменил необходимые параметры в моей конфигурации IntelliJ, чтобы продолжить удаленную отладку, и я попытался запустить jar с этого сервера: ]

Поскольку я убил процесс, который выполнялся на моей серверной машине, теперь я не могу видеть, как открывается порт, когда я делал nmap serverip и netstat -atun.

Поэтому я попытался добавить его в правило брандмауэра (sudo ufw allow 8080/tcp), а также в iptable (sudo iptables -I INPUT -p tcp -s 0.0.0.0/0 --dport 8080 -j ACCEPT), но я не вижу, как открывается порт. Я также пытался отключить брандмауэр, но все равно не повезло.

Итак, мне нужно, чтобы этот порт был открыт, чтобы я мог выполнять удаленную отладку с моего хоста. Я уверен, что упускаю что-то решающее в том, что я уже сделал.

1111 Я направляюсь к падению? Любая помощь может быть оценена.

1
задан 22 June 2017 в 21:31

1 ответ

На Ubuntu открыты все порты, если у Вас нет брандмауэра или приложения, которое блокирует ее. При нормальных обстоятельствах приложение, работающее на порте, для СЛУШАНИЯ. Так, чтобы это могло получить от порта.

Блокирование или Закрытие порта используют ссылку на блок брандмауэра.

Так, если Вы не блокируете порт своим брандмауэром, он открыт.

Порт обычно считают открытым, когда существует выполнение программы и СЛУШАНИЕ на порте. Можно сказать, какие порты имеют выполнение программ (СЛУШАЮЩЕЕ) с этой командой (среди многих других команд):

$ netstat -tulnp | grep "LISTEN"

Можно определить, какое приложение использует порт с этой командой (в этом порте проверки случая 80):

$ sudo lsof -i tcp:80

Открытый порт

Вы упомянули уничтожение процесса, который работал машине сервера, и теперь не способный видеть, что порт открыт. Вы не видите, что он открыт, потому что нет ничего работающего на нем.

Можно протестировать рассматриваемый порт путем выполнения netcat на нем. Netcat является утилитой для соединений TCP и соединений UDP и слушает.

Выполните это на своем порте:

$ netcat -l 1234

Затем от другого компьютера выполняет следующее:

$ telnet serverIP 1234
Trying 192.168.15.81...
Connected to ubunzeus.apollo3.com.
Escape character is '^]'.
this is a test

Вы заметите, "Это - тест" текст, появится на Вашей консоли сервера. Это - способ протестировать порт. Можно поразить Ctrl+C в сервер для отмены приложения после теста.

Надеюсь, что помог разъяснить то, что происходит на Ваших портах.

10
ответ дан 23 June 2017 в 07:31

Другие вопросы по тегам:

Похожие вопросы: