Net Stat

También podría gustarte

Está en la página 1de 6

Netstat

Netstat (Network Statistics)es un programa que se instala de forma predeterminada en casi


todas las distribuciones Linux y que puede ofrecernos mucha información sobre las
conexiones de red de un sistema.

Está herramienta se ejecuta desde la línea de comandos, aunque también tiene una interfaz
gráfica y nos muestra las conexiones activas de un ordenador, tanto entrantes como
salientes. Lo que nos permite controlar las conexiones de nuestro sistema y descubrir si
alguien se ha conectado a nuestro ordenador o por ejemplo saber si desde nuestro sistema
se está mandado spam.

Entre la información que nos muestra Netstat se incluye el protocolo en uso, las direcciones
IP tanto locales como remotas, los puertos locales y remotos utilizados y el estado de la
conexión. Un ejemplo de salida sería la siguiente:

websecurity:/# netstat -na


Active Internet connections (including servers)
Proto Recv-Q Send-Q Local Address Foreign Address (state)
tcp4 0 461 192.168.2.11.49751 38.101.111.44.80 ESTABLISHED
tcp4 0 463 192.168.2.11.49750 38.101.111.44.80 ESTABLISHED
tcp4 0 0 192.168.2.11.49749 87.106.219.203.80 ESTABLISHED
tcp4 0 0 192.168.2.11.49748 87.106.192.56.80 ESTABLISHED
tcp4 0 0 192.168.2.11.49747 76.74.9.18.80 ESTABLISHED
tcp4 0 0 192.168.2.11.49746 213.4.130.98.80 ESTABLISHED
tcp4 0 0 192.168.2.11.49745 213.4.130.98.80 ESTABLISHED
tcp4 0 0 192.168.2.11.49744 213.4.130.98.80 ESTABLISHED
tcp4 0 0 192.168.2.11.49743 213.4.130.98.80 ESTABLISHED
tcp4 0 0 192.168.2.11.49742 213.4.130.98.80 ESTABLISHED
tcp4 0 0 192.168.2.11.49741 213.4.130.98.80 ESTABLISHED
tcp4 0 0 192.168.2.11.49739 209.85.229.99.80 ESTABLISHED
tcp4 0 0 192.168.2.11.49737 209.85.229.100.80 ESTABLISHED
tcp4 0 0 192.168.2.11.49730 91.198.174.2.80 ESTABLISHED
tcp4 0 0 192.168.2.11.49729 209.85.229.100.80 ESTABLISHED
tcp4 0 0 192.168.2.11.49728 209.85.229.118.80 ESTABLISHED
tcp4 0 0 192.168.2.11.49726 209.85.227.103.80 ESTABLISHED
tcp4 0 0 192.168.2.11.49725 209.85.227.99.80 ESTABLISHED
tcp4 0 0 *.3827 *.* LISTEN
tcp4 0 0 192.168.2.11.49501 208.43.202.5.80 ESTABLISHED
tcp4 0 0 192.168.2.11.49480 217.116.18.226.993 ESTABLISHED
tcp4 0 0 192.168.2.11.49479 217.116.18.226.993 ESTABLISHED
tcp4 0 0 *.88 *.* LISTEN
tcp6 0 0 *.88 *.* LISTEN
tcp4 0 0 127.0.0.1.26164 127.0.0.1.49188 ESTABLISHED
tcp4 0 0 127.0.0.1.49188 127.0.0.1.26164 ESTABLISHED
tcp4 37 0 192.168.2.11.49196 174.36.30.66.443 CLOSE_WAIT
tcp4 0 0 127.0.0.1.26164 *.* LISTEN
tcp4 37 0 192.168.2.11.49181 174.36.30.67.443 CLOSE_WAIT
tcp4 0 0 *.3306 *.* LISTEN
tcp4 0 0 *.548 *.* LISTEN
tcp6 0 0 *.548 *.* LISTEN
tcp4 0 0 127.0.0.1.631 *.* LISTEN
tcp6 0 0 ::1.631 *.* LISTEN
tcp4 0 0 192.168.2.11.49738 87.106.219.203.80 TIME_WAIT
udp4 0 0

Donde podemos ver que hay varias conexiones establecidas(ESTABLISH), por lo que se
trata de una conexión entrante desde algún sistema remoto hacía mi sistema. Por otro lado
también tenemos el estado de LISTEN, que significa que el socket está esparando posibles
conexiones entrantes. Pero estás no son los únicos estados que te permite conocer Netstat,
ya que los estado posibles son:

 ESTABLISHED -> El socket tiene una conexión establecida.


 SYN_SENT -> El socket está intentando iniciar una conexión.
 SYN_RECV -> Una petición de conexión fue recibida por la red.
 FIN_WAIT1 -> El socket está cerrado, y la conexión esta finalizándose.
 FIN_WAIT2 -> La conexión esta cerrada, y el socket está esperando que finalice la
conexión remota.
 TIME_WAIT -> El socket está esperando después de cerrarse que concluyan los
paquetes que siguen en la red.
 CLOSED -> El socket no está siendo usado.
 CLOSE_WAIT -> La conexión remota ha finalizado, y se espera que se cierre el
socket.
 LAST_ACK -> La conexión remota ha finalizado, y se espera que se cierre el
socket. Esperando el acknowledgement.
 LISTEN -> El socket está esperando posibles conexiones entrantes.
 CLOSING -> Ambos sockets han finalizado pero aun no fueron enviados todos los
datos.
 UNKNOWN -> El estado del socket no se conoce.

La semana que viene veremos la sintaxis y parámetros que se pueden usar con Netstat entre
los diferentes sistemas operativos que la implementan, así como ejemplos de su utilización

Netstat – Parte II
En el artículo de la semana pasada vimos que era netstat, así como los estados que permite
conocer Netstat, esta semana veremos la sintaxis y parámetros que se pueden usar con
Netstat en los diferentes sistemas operativos.

Como ya comentamos la sintaxis y los parámetros de la herramienta pueden variar entre los
diferentes sistemas operativos, en los sistemas Unix se puede usar el comando man netstat
para visualizar la ayuda del comando, mientras que en os sistemas Windows es posible usar
netstat /?.

Pues comencemos a ver los parámetros que podemos utilizar en los sistemas operativos
Linux:
* -r, --route Muestra la tabla de enrutamiento.
* -i, --interfaces Muestra la tabla de interfaces
* -g, --groups Muestra los miembros del grupo de multidifusión
* -s, --statistics Muestra estadísticas de red (como SNMP)
* -M, --masquerade Muestra conexiones enmascaradas
* -v, --verbose Muestra más información en la salida
* -n, --numeric No resuelve nombres en general
* --numeric-hosts No resuelve el nombre de los hosts
* --numeric-ports No resuelve el nombre de los puertos
* --numeric-users No resuelve los nombres de usuarios
* -N, --symbolic Muestra los nombres del hardware de red
* -e, --extend Muestra otra/mas información.
* -p, --programs Muestra PID o nombre del programa por cada socket
* -c, --continuous Muestra continuamente las estadísticas de red (hasta que se
interrumpa el programa)
* -l, --listening Muestra los server sockets que están es modo escucha
* -a, --all, --listening Muestra todos los sockets (por defecto únicamente los que
están en modo conectado)
* -o, --timers Muestra los timers
* -F, --fib Muestra el Forwarding Information Base (por defecto)
* -C, --cache Mostrar el cache de enrutamiento en ves del FIB

Mientras que en Windows y en MS-DOS podemos usar los siguientes parámetros:

* -a Visualiza todas las conexiones y puertos TCP y UDP, incluyendo las que están "en
escucha" (listening).
* -b En los sistemas recientes, visualiza el binario (ejecutable) del programa que ha
creado la conexión.
* -e Estadísticas Ethernet de las visualizaciones, como el número de paquetes enviados
y recibidos. Se puede combinar con la opción -s.
* -n Se muestran los puertos con su identificación en forma numérica y no de texto.
* -o En sistemas Windows XP y 2003 Server, muestra los identificadores de proceso
(PID) para cada conexión. Se puede verificar los identificadores de proceso en el
Administrador de Tareas de Windows (al agregarlo a las columnas de la pestaña
procesos)
* -p Muestra las conexiones para el protocolo especificado; el protocolo puede ser TCP
o UDP. Si se utiliza con la opción de -s para visualizar la estadística por protocolo
puede ser TCP, UDP o IP.
* -r Visualiza la tabla de enrutamiento o encaminamiento. Equivale al comando route
print.
* -s Estadística por protocolo de las visualizaciones. Por el valor por defecto, la
estadística se muestra para TCP, UDP e IP; la opción -p se puede utilizar para
especificar un subconjunto del valor por defecto.
* -v En sistemas Windows XP y 2003 Server, y usado en conjunto con -b, muestra la
secuencia de componentes usados en la creación de la conexión por cada uno de los
ejecutables.

La semana que viene veremos algunos ejemplos de la utilización de netstat.


Los parámetros han sido extraídos de la Wikipedia

Netstat – Parte III


En el artículo de la semana pasada vimos la sintaxis y los parámetros que usa netstat y
como pueden variar entre los diferentes sistemas operativos.

Para esta semana veremos algunos ejemplos de la utilización de netstat, pues vamos al
turrón.

Una de las consultas más usadas en netstat es la de consulta de la tabla de encaminamiento,


para ver la información de la tabla de encaminamiento del núcleo, que es equivalente al
comando route en Unix, tenemos que ejecutar el siguiente comando:

#websecurity: netstat –nr


Routing tables
Destination Gateway Flags Refs Use Netif Expire
default 192.168.1.3 UGSc 24 0 en0
127 127.0.0.1 UCS 0 0 lo0
127.0.0.1 127.0.0.1 UH 5 23550 lo0

Es este comando nos permite ver las rutas que tenemos en nuestro sistema, y con la opción
-n le estamos diciendo a netstat que imprima las direcciones IP en lugar de usar los
nombres simbólicos de las máquinas o las redes, lo que nos facilita identificar las distintas
redes nuestro sistema, así como identificar si existe una ruta por defecto.

Otra de las opciones que podemos usar en netstat son -nt o –ntl, que nos permite ver las
conexiones activas o los puertos abiertos respectivamente. Por ejemplo para las conexiones
activas podríamos ejecutar el siguiente comando:

#websecurity: netstat –nt


Active Internet connections
Proto Recv-Q Send-Q Local Address Foreign Address (state)
tcp4 0 0 192.168.1.193.57643 ww-in-f102.googl.http ESTABLISHED
tcp4 0 0 192.168.1.193.57642 wy-in-f157.googl.http ESTABLISHED
tcp4 0 0 192.168.1.193.57630 wy-in-f166.googl.http ESTABLISHED
tcp4 0 0 192.168.1.193.57622 wy-in-f166.googl.http ESTABLISHED
tcp4 0 0 192.168.1.193.57377 wy-in-f104.googl.http ESTABLISHED

Mientras que para los puertos abiertos podríamos usar el siguiente comando, que nos
devolvería una respuesta parecida a la anterior, añadiendo el puerto del servicio:

#websecurity: netstat –ntl


cp4 0 0 192.168.1.193.55569 205.187.13.56.aol ESTABLISHED
tcp4 0 0 192.168.1.193.53642 mail.correo.com.imaps ESTABLISHED
tcp4 0 0 localhost.26164 localhost.52301 ESTABLISHED
tcp4 0 0 localhost.52301 localhost.26164 ESTABLISHED
tcp4 0 0 192.168.1.193.49970 mail.correo.com.imaps ESTABLISHED
tcp4 0 0 192.168.1.193.49855 cds69.ams9.llnw..http CLOSE_WAIT

Netstat también nos permite conocer las estadísticas de una interfaz, para ello tenemos que
ejecutar el siguiente comando que presenta las estadísticas para las interfaces de red
configuradas en ese momento:
#websecurity: netstat -i
Name Mtu Network Address Ipkts Ierrs Opkts Oerrs Coll
lo0 16384 49732 0 49732 0 0
lo0 16384 localhost fe80::1 49732 - 49732 - -
lo0 16384 127 localhost 49732 - 49732 - -
lo0 16384 localhost ::1 49732 - 49732 - -
gif0* 1280 0 0 0 0 0

Otra de las características de netstat es que nos ofrece una serie de opciones, –t, –u, –w, y –
x, que nos permiten mostrar los puertos activos o pasivos. Estás opciones muestran
conexiones activas a puertos TCP, UDP, RAW o Unix, y si además ponemos el indicador –
a, se mostrarán también los puertos que estén esperando una conexión. Por ejemplo
podemos usar el siguiente comando:

#websecurity: netstat –ta


Active Internet connections (including servers)
Proto Recv-Q Send-Q Local Address Foreign Address (state)
tcp4 0 0 192.168.1.193.59501 wy-in-f102.googl.http ESTABLISHED
tcp4 0 0 192.168.1.193.59497 wy-in-f157.googl.http ESTABLISHED
tcp4 0 0 192.168.1.193.59485 wy-in-f165.googl.http ESTABLISHED
tcp4 0 0 192.168.1.193.59480 wy-in-f165.googl.http ESTABLISHED
tcp4 0 0 192.168.1.193.59010 wy-in-f103.googl.http ESTABLISHED
tcp6 0 512 websecurity-4.58656 fe80::21e:52ff:f.afpov ESTABLISHED

Ha continuación podéis encontrar los diferentes artículos con lo que aprenderéis a utilizar
netstat:

Cómo cambiar los permisos de un usuario


en Windows
El comando cacls es una utilidad de línea de comandos poco conocida que se utiliza para
agregar, modificar o eliminar permisos de grupo, así como permisos de usuario de las listas
de control de acceso de directorio(ACL) y que sólo tiene soporte sobre NTFS.

Este comando simplifica enormemente la tarea de asignar permisos sobre usuarios, ficheros
o directorios, y aunque en Windows 2000 y Windows XP Profesional vienen con un editor
de ACLs, en está ocasión veremos la potencia de este comando desde ms-dos.

La sintaxis de este comando es la siguiente:

cacls filename [/t] [/e] [/c] [/g user|group:perm] [/r user|group [...]] [/p user|
group:perm [...]] [/d user|group [...]]
Donde podemos usar los siguientes parámetros:

/t -> Cambia los permisos a todos los archivos de una carpeta y a sus subcarpetas.
/e -> Permite editar o remplazar un ACL.
/c -> No muestra los errores en caso de que hayan cuando se modifica un ACL.
/g -> Especifica los permisos que podemos conceder a un usuario, fichero o carpeta.
Las opciones que tenemos son:
r Permisos de sólo lectura.
C Permisos de escritura.
f Todos los permisos.
/r -> Está opción elimina los permiso de un usuario o grupo. Para está opción podemos
usar las opciones disponibles en /g.
/p -> Mediante está opción podemos reemplazar los permiso de un usuario.
/d -> Está opción deniega el acceso a un grupo o usuario.

Veamos un ejemplo de uso de este comando, supongamos que tenemos en nuestro


directorio C:\ una archivo llamado cambiamelospermisos.txt y queremos darle permisos de
escritura, pues tendríamos que abrir una ventana de ms-dos y escribir :

cacls cambiamelospermisos.txt /g nombre_usuario:c

Con lo que ya tendríamos cambiados los permisos para dicho archivo, sencillo pero potente
este comando.

Podéis encontrar información más detallada sobre este comando en la página de Microsoft.

También podría gustarte