Comandos para comprobar se hai un porto aberto no noso PC / servidor ou noutro control remoto

Ás veces necesitamos saber se o porto X está aberto nun ordenador remoto (ou servidor), nese momento non temos poucas opcións ou ferramentas para usar:

nmap

A primeira solución que moitos pensamos é: nmap , ver artigo chamado: Vexa portos abertos con NMap e medidas para protexernos 

No caso de que non queira facer unha exploración completa, senón que simplemente quere saber se un determinado porto está aberto no ordenador / servidor X, sería así:

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

exemplo:

nmap localhost -p 22 | grep -i tcp

Ben, ben:

nmap 127.0.0.1 -p 22 | grep -i tcp

O que fai isto é sinxelo, pregúntalle á IP ou ao host se o porto dado está aberto ou non, entón grep filtra e só mostra a liña que desexa ler, a que lles indica se está aberto (aberto) ou pechado (pechado) ese porto:

nmap

Ben ... si, nmap (ferramenta de exploración de rede e proba de portos) funciona para nós, pero aínda hai outras variantes nas que tes que escribir menos 🙂

nc

nc ou netcat, é unha opción moito máis sinxela saber se un porto está aberto ou non:

nc -zv {IP_O_DOMINIO} {PUERTO}

É dicir:

nc -zv 192.168.122.88 80

Aquí tes unha captura de pantalla facendo unha proba a un porto aberto (80) e outro a outro porto que non o está (53):

nc

El -zv o que fai é sinxelo v permítenos ver se o porto está aberto ou non, mentres que z pecha a conexión en canto se marca o porto, se non poñemos o z entón teriamos que facer un Ctrl + C para pechar o nc.

telnet

Esta é a variante que usei durante un tempo (por descoñecemento do mencionado), á súa vez telnet sérvenos moito máis que saber se un porto está ou non aberto.

telnet {IP_O_HOST} {PUERTO}

Aquí tes un exemplo:

telnet 192.168.122.88 80

O problema con telnet é pechar a conexión. Noutras palabras, en certas ocasións non poderemos pechar a solicitude de telnet e verémonos obrigados a pechar ese terminal ou, doutro xeito, noutro terminal faceremos un telnet killall ou algo similar. É por iso que evito usar telnet a menos que realmente o precise.

O final!

De todos os xeitos, espero que isto sexa interesante para ti, se alguén coñece outra forma de saber se un porto está aberto ou non noutro ordenador, déixao nos comentarios.

lembranzas


O contido do artigo adhírese aos nosos principios de ética editorial. Para informar dun erro faga clic en aquí.

14 comentarios, deixa os teus

Deixa o teu comentario

Enderezo de correo electrónico non será publicado. Os campos obrigatorios están marcados con *

*

*

  1. Responsable dos datos: Miguel Ángel Gatón
  2. Finalidade dos datos: controlar SPAM, xestión de comentarios.
  3. Lexitimación: o seu consentimento
  4. Comunicación dos datos: os datos non serán comunicados a terceiros salvo obrigación legal.
  5. Almacenamento de datos: base de datos aloxada por Occentus Networks (UE)
  6. Dereitos: en calquera momento pode limitar, recuperar e eliminar a súa información.

  1.   Tesla dixo

    Estes comandos seránme moi útil cando me conecte a través de SSH.

    Grazas!

  2.   Anónimo dixo

    ¿Hai algunha aplicación gráfica para facer o mesmo?

    1.    KZKG ^ Gaara dixo

      Ben, sempre podes instalar zenmap que usa nmap por detrás :)

    2.    vidagnu dixo

      Se con nmapfe, é a interface gráfica que vén con nmap.

  3.   Konozidus dixo

    Con netcat dime que z é unha opción non válida, sen ela funciona perfectamente e en $ man nc, tampouco aparece. De onde veu?

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

    1.    KZKG ^ Gaara dixo

      -z: Especifica que nc só debería buscar demos que escoiten, sen enviarlles ningún dato. É un erro usar esta opción xunto coa opción -l.

      Con nc si vexo O_O

  4.   eliotime3000 dixo

    E como me conecto a un VPS a través de SSL?

  5.   vidagnu dixo

    O que sempre fago é executar nmapfe host-ip para que me dea todos os portos tcp, agora para ver os portos udp abertos hai que executar:

    nmap -sU host-ip

    Tamén usei telnet máis que calquera outra cousa en Windows se non teño instalado nmap, a variante netcat non me atrae ...

    lembranzas

  6.   Alexander dixo

    Gustaríame saber máis sobre isto, espero que me poidades apoiar, teño coñecementos moi básicos e gustaríame saber máis para aplicar este tipo de coñecemento no meu traballo.

  7.   tecnoloxía21 dixo

    Acabo de descubrir que non teño os portos que necesito abertos, agora terei que investigar como abrilos para facer o que necesito. Grazas pola contribución, axudoume moito.

  8.   Domtrel dixo

    Moi interesante artigo! Ademais de netcat, tamén funciona en vmware ESXi:

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

  9.   Lolo dixo

    sudo get install nmap

    namp 192.168.0.19 -p 21 | grep -i tcp

    casa do usuario local srv / ftp

    reiniciar con sudo service vsftpd reiniciar

    write_enable = SI para que os usuarios locais poidan cargar ficheiros.

    Para engaiolar anónimo na súa casa
    usuario_local_croot = si
    chroot_list_enable = si

    allow_writreable_chroot = si

    no_annon_password = non para que o anónimo poña o pase como cortesía

    deny_email_enable = si
    banned_email_file = / etc / vsftpd.banned_emails Para denegar a un anónimo por correo electrónico.
    ____—————————————————————–
    usuario de gaiola menos que os da lista
    usuario_local_croot = si
    chroot_lits_enable = si

    chroot_list_ficheiro = / etc / vsftpd.chroot_list.

    Para engadir usuarios sudo adduser name

    desactivar as configuracións locais local_enable = non

    engállense por defecto
    anónimo engaiolado en srv / ftp

    locais na súa casa

  10.   Dalisperis dixo

    Moi ben! Se non temos nmap, telnet ou netcat, podemos empregar cat e o directorio proc:

    gato </ dev / tcp / HOST / PORT

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

  11.   Cuetox dixo

    Grazas, moi boa explicación