Spiga

Script de escaneo de IPs y puertos

Aquí tenéis un Script que compartió Luciano Lagassa en el anterior articulo, añadiendo en este caso un escaneo ciertos puertos (ftp, ssh, http, https), usando nmap.

Necesario tener instalado:

  • ifconfig
  • grep
  • cut
  • awk
  • wget
  • nmap
Aquí tenéis el código que tendremos que copiar y pegar en nuestro editor:

$ gedit scanIpPuertos

#!/bin/sh
PrivateIP=`ifconfig | grep 'inet:' | grep -v '127.0.0.1' | cut -d: -f2 | awk '{print $1}'`
PrivatePorts=`nmap -PA21,22,80,443 $PrivateIP`
echo "IP Privada:"$PrivateIP
echo " Estado de Puertos:"
if [ -n "`echo $PrivatePorts | grep -i 21/tcp`" ]
then
echo " * FTP [Abierto]"
else
echo " * FTP [Cerrado]"
fi
if [ -n "`echo $PrivatePorts | grep -i 22/tcp`" ]
then
echo " * SSH [Abierto]"
else
echo " * SSH [Cerrado]"
fi
if [ -n "`echo $PrivatePorts | grep -i 80/tcp`" ]
then
echo " * HTTP [Abierto]"
else
echo " * HTTP [Cerrado]"
fi
if [ -n "`echo $PrivatePorts | grep -i 443/tcp`" ]
then
echo " * HTTPS [Abierto]"
else
echo " * HTTPS [Cerrado]"
fi
PublicIP=`wget -q -O - checkip.dyndns.org | sed -e 's/.*Current IP Address: //' -e 's/<.*$//'`
PublicPorts=`nmap -PA21,22,80,443 $PublicIP`
echo "IP Pública:"$PublicIP
echo " Estado de Puertos:"
if [ -n "`echo $PublicPorts | grep -i 21/tcp`" ]
then
echo " * FTP [Abierto]"
else
echo " * FTP [Cerrado]"
fi
if [ -n "`echo $PublicPorts | grep -i 22/tcp`" ]
then
echo " * SSH [Abierto]"
else
echo " * SSH [Cerrado]"
fi
if [ -n "`echo $PublicPorts | grep -i 80/tcp`" ]
then
echo " * HTTP [Abierto]"
else
echo " * HTTP [Cerrado]"
fi
if [ -n "`echo $PublicPorts | grep -i 443/tcp`" ]
then
echo " * HTTPS [Abierto]"
else
echo " * HTTPS [Cerrado]"
fi

Guardamos, cerramos y proseguimos:

$ sudo chmod +xr scanIpPuertos

Por ultimos lo ejecutamos:

$ ./scanIpPuertos

Aquí tenemos la respuesta:

IP Privada:192.168.0.4
Estado de Puertos:
* FTP [Abierto]
* SSH [Abierto]
* HTTP [Abierto]
* HTTPS [Cerrado]
IP Pública:77.210.xxx.xxx
Estado de Puertos:
* FTP [Cerrado]
* SSH [Abierto]
* HTTP [Abierto]
* HTTPS [Cerrado]

3 comentarios:

  Luciano Lagassa

17 de abril de 2010, 16:26

Muchas Gracias por Publicar el Codigo, espero que le ayude a mucha gente, auqie no es gran cosa, te puedo pasar algunos script mas, incluso tengo algunas aplicaciones en gambas2.

  NeoDaVe

17 de abril de 2010, 16:32

Creí oportuno crear un articulo solo para este código, ya que es muy largo y útil. Te aseguro que por lo menos a mi me va a servir para mucho :)

Todo lo que me quieras enviar lo puedes hacer a neodave.es@gmail.com, y lo iré publicando.

Por cierto, he de suponer que tu web es lucianolagassa.com.ar, no?

Gracias a ti por entrar y compartir :)

  Luciano Lagassa

17 de abril de 2010, 17:13

si es una de mis webs, te comento que antes tenia mi propio web server, hace unos meses las pase a otro hosting ( estan en un virtual host en la empresa donde trabajo ), si sale todo bien en unos meses me armo un servidor y pongo las web a trabajar.
apenas pueda te envio algun fuente. saludo