Como abrir uma porta fechada no Ubuntu?

1

Eu estava tentando matar um processo que estava sendo executado na porta 8080 e utilizá-lo para fins de depuração remota.

Onde meu código-fonte está em minha máquina host, e o jar compilado está em outro servidor Ubuntu. Daí eu estava tentando fazer a depuração remota na porta 8080, eu mudei os parâmetros necessários na minha configuração IntelliJ , a fim de prosseguir com a depuração remota e tentei executar o jar da máquina do servidor como tal:

java -jar -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8080 hdfstohive-1.0-SNAPSHOT-jar-with-dependencies.jar

Como matei o processo que estava sendo executado na minha máquina do servidor, agora não consigo ver a porta sendo aberta quando eu usei nmap serverip e netstat -atun .

Então, tentei adicioná-lo à regra do firewall ( sudo ufw allow 8080/tcp ) e no iptable ( sudo iptables -I INPUT -p tcp -s 0.0.0.0/0 --dport 8080 -j ACCEPT ) também, mas ainda não consigo ver a porta sendo aberta. Eu também tentei desativar o firewall também, mas ainda sem sorte.

Então, o que eu preciso é abrir essa porta para que eu possa fazer a depuração remota da minha máquina host. Tenho certeza de que estou perdendo algo crucial no que já fiz.

Estou indo em direção a uma queda? Qualquer ajuda poderia ser apreciada.

    
por Kulasangar 22.06.2017 / 20:25

1 resposta

8

No Ubuntu, todas as portas são abertas, a menos que você tenha um firewall ou aplicativo que esteja bloqueando. Em circunstâncias normais, o aplicativo em execução na porta é para LISTENING . Para que ele possa receber da porta.

O Bloqueio ou Fechamento da porta está usando uma referência a um bloco de firewall.

Portanto, se você não estiver bloqueando a porta pelo seu firewall, ela será aberta.

Uma porta é geralmente considerada aberta quando há um programa em execução e LISTENING na porta. Você pode dizer quais portas têm programas em execução (LISTENING) com este comando (entre muitos outros comandos):

$ netstat -tulnp | grep "LISTEN"

Você pode identificar qual aplicativo está usando a porta com este comando (nesse caso, verificando a porta 80):

$ sudo lsof -i tcp:80

Porta aberta

Você mencionou que você matou o processo que estava sendo executado na máquina do servidor e agora não consegue ver a porta sendo aberta . Você não vê que está sendo aberto porque não há nada em execução nele.

Você pode testar sua porta em questão executando netcat nela. O Netcat é um utilitário para conexões TCP e UDP e escuta.

Execute isso na sua porta:

$ netcat -l 1234

Então, a partir de outro computador, execute o seguinte:

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

Você notará que o texto "Este é um teste" aparecerá no console do seu servidor. Esta é uma maneira de testar a porta. Você pode pressionar Ctrl + C no servidor para cancelar o aplicativo após o teste.

Espero que isso tenha ajudado a esclarecer o que está acontecendo nas suas portas.

    
por L. D. James 22.06.2017 / 22:25