Comandos para verificar se uma porta está aberta em nosso PC / Servidor ou outro controle remoto

Às vezes precisamos saber se a porta X está aberta em um computador remoto (ou servidor), naquele momento temos muitas opções ou ferramentas para usar:

nmap

A primeira solução que muitos de nós pensamos é: nmap , veja o artigo chamado: Ver portas abertas com NMap e medidas para nos proteger 

Caso você não queira fazer uma varredura completa, mas simplesmente queira saber se uma determinada porta está aberta no computador / servidor X, seria assim:

nmap {IP_O_DOMINIO} -p {PUERTO} | grep -i tcp

Exemplo:

nmap localhost -p 22 | grep -i tcp

O bem:

nmap 127.0.0.1 -p 22 | grep -i tcp

O que isto faz é simples, ele pergunta ao IP ou Host se a porta dada está aberta ou não, então o grep filtra e mostra apenas a linha que eles querem ler, aquela que lhes diz se está aberta (aberta) ou fechada (fechada) aquela porta:

nmap

Bem ... sim, nmap (ferramenta de exploração de rede e sondagem de porta) funciona para nós, mas ainda existem outras variantes em que você precisa digitar menos 🙂

nc

nc ou netcat, é uma opção muito mais simples de saber se uma porta está aberta ou não:

nc -zv {IP_O_DOMINIO} {PUERTO}

Isso é:

nc -zv 192.168.122.88 80

Aqui está uma captura de tela fazendo um teste em uma porta que está aberta (80) e outra em outra porta que não está (53):

nc

El -zv o que faz é simples, o v nos permite ver se a porta está aberta ou não, enquanto z fecha a conexão assim que a porta é verificada, se não colocarmos o z então teríamos que fazer um Ctrl + C para fechar o nc.

telnet

Essa é a variante que utilizo há algum tempo (por desconhecimento do citado), por sua vez o telnet nos serve muito mais do que apenas saber se uma porta está aberta ou não.

telnet {IP_O_HOST} {PUERTO}

Aqui está um exemplo:

telnet 192.168.122.88 80

O problema com o telnet é o fechamento da conexão. Em outras palavras, em certas ocasiões não poderemos fechar o pedido telnet e seremos forçados a fechar aquele terminal, ou caso contrário em outro terminal fazer um killall telnet ou algo semelhante. É por isso que evito usar telnet, a menos que seja realmente necessário.

O fim!

De qualquer forma, espero que tenha sido interessante para você, se alguém souber de alguma outra forma de saber se uma porta está aberta ou não em outro computador, deixe nos comentários.

lembranças


O conteúdo do artigo segue nossos princípios de Ética editorial. Para relatar um erro, clique Clique aqui.

14 comentários, deixe o seu

Deixe um comentário

Seu endereço de email não será publicado.

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   Tesla dito

    Esses comandos serão úteis para mim quando eu me conectar via SSH!

    Thanks!

  2.   dentro em pouco dito

    Existe um aplicativo gráfico para fazer o mesmo?

    1.    KZKG ^ Gaara dito

      Bem, você sempre pode instalar o zenmap que usa o nmap por trás :)

    2.    vidagnu dito

      Se for com o nmapfe, é a interface gráfica que vem com o nmap.

  3.   Konozidus dito

    Com o netcat, ele me diz que z é uma opção inválida, sem ela funciona perfeitamente e em $ man nc também não aparece. De onde veio?

    https://blog.desdelinux.net/wp-content/uploads/2013/12/Captura-de-pantalla-de-2013-12-29-011908.png

    1.    KZKG ^ Gaara dito

      -z: Especifica que nc deve apenas procurar daemons de escuta, sem enviar nenhum dado a eles. É um erro usar esta opção em conjunto com a opção -l.

      Com nc sim eu vejo O_O

  4.   eliotime3000 dito

    E como faço para conectar a um VPS sobre SSL?

  5.   vidagnu dito

    O que eu sempre faço é executar nmapfe host-ip para que ele me forneça todas as portas tcp, agora para ver as portas udp abertas que você precisa executar:

    nmap -sU host-ip

    Eu também usei telnet mais do que qualquer outra coisa no Windows se eu não tiver o nmap instalado, a variante netcat não me atrai ...

    lembranças

  6.   Alexander dito

    Gostaria de saber mais sobre isso, espero que você possa me apoiar Eu tenho um conhecimento muito básico e gostaria de saber mais para aplicar este tipo de conhecimento no meu trabalho.

  7.   tecnologia 21 dito

    Acabei de descobrir que não tenho as portas que preciso abrir, agora terei que pesquisar como abri-las para fazer o que preciso. Obrigado pela contribuição, me ajudou muito.

  8.   Domtrel dito

    Artigo muito interessante! Além do netcat, ele também funciona no vmware ESXi:

    http://www.sysadmit.com/2015/09/prueba-de-conexion-un-puerto-desde-VMWare-Windows-Linux.html

  9.   lolo dito

    sudo get install nmap

    nome 192.168.0.19 -p 21 | grep -i tcp

    casa do usuário local srv / ftp

    reinicie com sudo service vsftpd restart

    write_enable = YES para que os usuários locais possam enviar arquivos.

    Para enjaular anônimo em sua casa
    chroot_local_user = yes
    chroot_list_enable = yes

    allow_writreable_chroot = yes

    no_annon_password = não para o anônimo passar como cortesia

    deny_email_enable = yes
    banned_email_file = / etc / vsftpd.banned_emails Para negar um anônimo por e-mail.
    ____—————————————————————–
    menos usuário da gaiola do que os da lista
    chroot_local_user = yes
    chroot_lits_enable = yes

    chroot_list_file = / etc / vsftpd.chroot_list.

    Para adicionar usuários sudo adduser name

    desabilitar locales local_enable = no

    prendam-se por padrão
    anônimo enjaulado em srv / ftp

    instalações em sua casa

  10.   Dalisperis dito

    Muito bom! Se não tivermos nmap, telnet ou netcat, podemos usar cat e o diretório proc:

    cat </ dev / tcp / HOST / PORT

    Exemplo: http://www.sysadmit.com/2016/03/linux-cat-y-proc-prueba-de-conexion.html

  11.   Cuetox dito

    Obrigado, muito boa explicação

bool (verdadeiro)