Tienda Wifi

Tienda Wifi
CiudadWireless es la tienda Wifi recomendada por elhacker.NET

Entradas Mensuales

Síguenos en:

Canal Oficial Telegram de elhacker.NET Grupo Facebook elhacker.NET Twitter elhacker.NET Canal Youtube elhacker.NET Comunidad Steam: Grupo elhacker.NET Mastodon

Entradas populares

PostHeaderIcon Ejemplos con el comando de red netstat en Windows y Linux (ip + ss + lsof)


netstat (estadísticas de red) es una herramienta de la línea de comandos para controlar las conexiones de red entrantes y salientes, así como la visualización de las tablas de enrutamiento, las estadísticas de la interfaz, etc netstat está disponible en todos los sistemas operativos de tipo Unix y también disponibles en el sistema operativo Windows. Es muy útil en términos de resolución de problemas de red y la medición del desempeño. Netstat es una de las herramientas de depuración de servicios de red más básicas, que le dice qué puertos están abiertos y si los programas escuchan en tales puertos.




Estado de las conexiones

El indicador en la columna estado muestra el estado de la conexión para el protocolo TCP; para protocolos no orientados a la conexión, como UDP, este campo figurará en blanco. Los estados posibles son los siguientes:

  • 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 está finalizándose
  • FIN_WAIT2 La conexión está 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 aún no fueron enviados todos los datos
  • UNKNOWN El estado del socket no se conoce
  • DELETE_TCB Se está eliminando el búfer del control de transmisión (TCB) para la conexión TCP.

Ejemplos básicos de NetStat


netstat -na

Esta pantalla se incluyen todas las conexiones de Internet activas en el servidor y sólo las conexiones
establecidas

 netstat -an | grep :80 | sort

Mostrar sólo las conexiones activas de Internet al servidor en el puerto 80 , que es el puerto http y ordenar los resultados. Útil en la detección de una sola inundación (flood) por lo que permite reconocer muchas conexiones provenientes de una dirección IP.

netstat -n -p|grep SYN_REC | wc -l

Este comando es útil para saber cuántos SYNC_REC activa se están produciendo en el servidor. El número debe ser bastante bajo , preferiblemente menos de 5 . En los incidentes de ataques de denegación de servicio o bombas por correo, el número puede ser bastante alto. Sin embargo, el valor siempre depende del sistema, por lo que un valor alto puede ser normal en otro servidor.

netstat -n -p | grep SYN_REC | sort -u

Haz una lista de todas las direcciones IP de los implicados.

netstat -n -p | grep SYN_REC | awk '{print $5}' | awk -F: '{print $1}'

Enumera todas las direcciones IP únicas del nodo que están enviando el estado de la conexión SYN_REC .

netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

Utilice el comando netstat para calcular y contar el número de conexiones de cada dirección IP que hace al servidor.

netstat -anp |grep 'tcp|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

Cantidad de direcciones IP que se conectan al servidor mediante el protocolo TCP o UDP.


netstat -ntu | grep ESTAB | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr

Verifique las conexiones marcadas como ESTABLECIDOS en lugar de todas las conexiones, y muestra las conexiones para cada IP.

netstat -plan|grep :80|awk {'print $5'}|cut -d: -f 1|sort|uniq -c|sort -nk 1

Muestra y lista de direcciones IP y su número de conexiones que se conectan al puerto 80 en el servidor. El puerto 80 es utilizado principalmente por HTTP para peticiones Web.

Cómo mitigar un ataque DOS

Una vez que haya encontrado la IP que están atacando el servidor puede utilizar los siguientes comandos para bloquear su conexión a su servidor :

iptables -A INPUT 1 -s $IPADRESS -j DROP/REJECT

Tenga en cuenta que usted tiene que reemplazar $IPADRESS con las direcciones IP que se han encontrado con netstat.

Después de la cocción el comando anterior, MATAR todas las conexiones httpd para limpiar su sistema y reiniciarlo posteriormente usando los siguientes comandos:

killall -KILL httpd

service httpd start # Para los sistemas de Red Hat
/etc/init/d/apache2 restart # Para sistemas Debian



Netstat en GNU/Linux

Comando ip

El comando ip, que forma parte de la iproute2 suite parece ser que es el sustituto de ifconfig, pero de momento ifconfig sigue entre nosotros, y creo que hasta que no desaparezca no dejaremos de usarlo (por comodidad, vagancia o desconocimiento del nuevo).
 


Ver interfaces de red y su configuración


El comando ip addr list vendría a ser lo mismo que ejecutar ifconfig. Se puede ejecutar con el mismo resultado como ip address show o ip address list:
 
ip addr list


También podemos usar el comando ip link show para ver la información en capa 2 (data link layer) de las interfaces de red del sistema:
 
 ip link showff

Activar/desactivar interfaces de red


Para habilitar o deshabilitar una interfaz de red seguiremos utilizando ip link:
 
 ip link set eth2 down
 ip addr list eth2
 
 ip link set eth2 up
 ip addr list eth2



Os he mostrado en el ejemplo como al levantar o tirar la interfaz desaparece la flag de UP en el ip addr list. En ifconfig lo hacíamos del siguiente modo:
 
 ifconfig eth2 down
 ifconfig eth2 up


 
Cambiar características de la interfaz

Con ip link también podemos realizar modificaciones en las características o flags de la interfaz, como por ejemplo configurar el modo promiscuo, multicast, arp, dynamic o allmulti. Se utilizan los valores on|off. En esta otra entrada vimos como hacerlo con ifconfig: configurar tarjeta de red en modo promiscuo:
 
ip link set dev eth0 promisc on
ip link set dev eth0 promisc off



Configurar una IP para la interfaz

Con ip addr add podemos especificar la IP, máscara (también en formato CIDR como vemos a continuación y la IP de broadcast:
 
 ip addr add 10.0.0.100/24 broadcast 10.0.0.255 dev eth2

  

Y para eliminar la IP:
 
 
 ip addr del 10.0.0.100/24 dev eth2
 


También podemos crear alias en la interfaz:
 
 
ip addr add 10.0.0.101/24 broadcast 10.0.0.255 dev eth2:1


Cambiar la MTU de la interfaz

 
 ip link set dev eth2 mtu 9000


Ver la tabla de rutas
 
 ip route show



Ver la tabla de ARP Cache

De todas las interfaces:
 
 ip neighbor show


De una interfaz concreta:
 
 ip neighbor show dev eth0

Comando ss


El comando netstat ya no existe en la instalación predeterminada de CentOS / RHEL 7. Ahora se reemplaza con el comando ss.

El comando ss se usa para mostrar estadísticas de socket. Puede mostrar estadísticas para sockets PACKET, sockets TCP, sockets UDP, sockets DCCP, sockets RAW, sockets de dominio Unix y más. Permite mostrar información similar al comando netstat. Puede mostrar más información de estado y TCP que otras herramientas. Es una herramienta nueva, increíblemente útil y más rápida (en comparación con netstat) para rastrear conexiones y sockets TCP. SS puede proporcionar información sobre:

  • Todos los sockets TCP.
  • Todos los sockets UDP.
  • Todas las conexiones ssh / ftp / http / https establecidas.
  •  Todos los procesos locales conectados al servidor X.
  • Filtrado por estado (como conectado, sincronizado, SYN-RECV, SYN-SENT, TIME-WAIT), direcciones y puertos.
  •  Todos los enchufes tcp en estado FIN-WAIT-1 y mucho más.

$ netstat -r replaced by $ ip route $ netstat -i   replaced by $ ip -s lin $ netstat -g replaced by $ ip maddr.

La mayoría de las distribuciones de Linux se envían con ss y muchas herramientas de supervisión. Estar familiarizado con esta herramienta ayuda a comprender mejor lo que sucede en los sockets del sistema y le ayuda a encontrar las posibles causas de un problema de rendimiento.
Tarea: Mostrar resumen de sockets

Listar todos los puertos

Podemos recuperar una lista de puertos de escucha y no escucha usando la opción -a como se muestra a continuación.


ss -a

Enumere los sockets TCP actualmente establecidos, cerrados, huérfanos y en espera, ingrese:

ss -s
Para ver todos los puertos abiertos

ss -atpu


  • Para listar el tráfico HTTP: ss state established '( dport = :http or sport = :http )'
  • Ver conexiones activas del protocolo FTP: ss state established '( dport = :ftp or sport = :ftp )'
  • Listar conexiones activas SMTP: ss state established '( dport= :smtp or sport= :smtp )'
  • Ver si hay conexiones SSH: ss state established '( dport = :ssh or sport = :ssh )'

 

Estados TCP

  1. established
  2. syn-sent
  3. syn-recv
  4. fin-wait-1
  5. fin-wait-2
  6. time-wait
  7. closed
  8. close-wait
  9. last-ack
  10. listen
  11. closing
  12. all : All of the above states
  13. connected : All the states except for listen and closed
  14. synchronized : All the connected states except for syn-sent
  15. bucket : Show states, which are maintained as minisockets, i.e. time-wait and syn-recv.
  16. big : Opposite to bucket state.

Comando lsof


lsof es una utilidad de línea de comandos para todos los sistemas operativos similares a Unix y Linux para verificar la list of open files (“lista de archivos abiertos”).

El comando lsof se utiliza principalmente para recuperar información sobre archivos abiertos por diversos procesos. Los archivos abiertos en un sistema pueden ser de diferentes tipos, como archivos de disco, sockets de red, etc.

Ejemplo:

lsof -i:443


Comando Linux netstat

Esta herramienta es muy importante y muy útil para los administradores de red de Linux, así como para los administradores de sistemas para supervisar y solucionar los problemas relacionados con la red y determinar el rendimiento del tráfico de red. Este artículo muestra los usos del comando netstat con sus ejemplos que pueden ser útiles en la operación diaria.
# netstat -h
usage: netstat [-veenNcCF] [] -r         netstat {-V|--version|-h|--help}
       netstat [-vnNcaeol] [ ...]
       netstat { [-veenNac] -I[] | [-veenNac] -i | [-cnNe] -M | -s } [delay]
        -r, --route                display routing table
        -I, --interfaces=[] display interface table for
        -i, --interfaces           display interface table
        -g, --groups               display multicast group memberships
        -s, --statistics           display networking statistics (like SNMP)
        -M, --masquerade           display masqueraded connections
        -v, --verbose              be verbose
        -n, --numeric              don't resolve names
        --numeric-hosts            don't resolve host names
        --numeric-ports            don't resolve port names
        --numeric-users            don't resolve user names
        -N, --symbolic             resolve hardware names
        -e, --extend               display other/more information
        -p, --programs             display PID/Program name for sockets
        -c, --continuous           continuous listing
        -l, --listening            display listening server sockets
        -a, --all, --listening     display all sockets (default: connected)
        -o, --timers               display timers
        -F, --fib                  display Forwarding Information Base (default)
        -C, --cache                display routing cache instead of FIB
        -T, --notrim               stop trimming long addresses
        -Z, --context              display SELinux security context for sockets
  : Name of interface to monitor/list.
  ={-t|--tcp} {-u|--udp} {-S|--sctp} {-w|--raw} {-x|--unix} --ax25 --ipx --netrom
  =Use '-A ' or '--'; default: inet
  List of possible address families (which support routing):
    inet (DARPA Internet) inet6 (IPv6) ax25 (AMPR AX.25)
    netrom (AMPR NET/ROM) ipx (Novell IPX) ddp (Appletalk DDP)
    x25 (CCITT X.25)



1. Listar todos los puertos (puertos en escucha o no)

Listar todos los puertos usando netstat -a

[el-brujo@ehn ~]$ netstat -a | more
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State
tcp        0      0 *:submission                *:*                         LISTEN
tcp        0      0 ns2.elhacker.net:6379       *:*                         LISTEN
tcp        0      0 warzone.elhacker.net:http   *:*                         LISTEN
tcp        0      0 warzone.elhacker.net:http   bl8-111-233.dsl.telep:63837 SYN_RECV
tcp        0      0 warzone.elhacker.net:http   bl8-111-233.dsl.telep:58542 SYN_RECV
tcp        0      0 warzone.elhacker.net:http   bl8-111-233.dsl.telep:50712 SYN_RECV
tcp        0      0 ns2.elhacker.net:http       *:*                         LISTEN
tcp        0      0 *:hosts2-ns                 *:*                         LISTEN
tcp        0      0 *:xfer                      *:*                         LISTEN
tcp        0      0 *:5556                      *:*                         LISTEN
tcp        0      0 *:remoteware-cl             *:*                         LISTEN
tcp        0      0 *:smtp                      *:*                         LISTEN
tcp        0      0 warzone.elhacker.net:http   62.57.231.35.dyn.user:37716 TIME_WAIT
tcp        0      0 warzone.elhacker.net:http   62.57.231.35.dyn.user:37717 TIME_WAIT
tcp        0   8449 warzone.elhacker.net:http   ec2-54-245-0-218.us-w:57228 ESTABLISHED
tcp        0      0 warzone.elhacker.net:46861  statse.webtrendslive.c:http ESTABLISHED
tcp        0      0 warzone.elhacker.net:54482  b-mtc-a.evip.aol.com:http   ESTABLISHED
tcp        0      0 warzone.elhacker.net:59363  cluster-6.weborama.fr:http  ESTABLISHED
tcp        0      0 warzone.elhacker.net:55726  cluster-6.weborama.fr:http  ESTABLISHED
tcp        0      0 warzone.elhacker.net:http   ec2-54-245-0-218.us-w:47027 FIN_WAIT2
tcp        0      0 warzone.elhacker.net:xfer   140.Red-2-139-177.sta:63782 ESTABLISHED
tcp        0      0 warzone.elhacker.net:http   ec2-54-212-245-232.us:56874 TIME_WAIT
tcp        0      0 warzone.elhacker.net:http   181.Red-79-159-128.st:49491 TIME_WAIT
tcp        0      0 ns2.elhacker.net:48333      ns2.elhacker.net:6379       ESTABLISHED
tcp        0      0 warzone.elhacker.net:http   bl8-111-233.dsl.telep:56449 TIME_WAIT
tcp        0      0 warzone.elhacker.net:http   46.229.164.115:7931         TIME_WAIT
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node Path
unix  2      [ ACC ]     STREAM     LISTENING     9904   /tmp/.font-unix/fs7100
unix  2      [ ACC ]     STREAM     LISTENING     9495   /dev/gpmctl
unix  12     [ ]         DGRAM                    7997   /dev/log
unix  2      [ ]         DGRAM                    1815   @/org/kernel/udev/udevd
unix  2      [ ACC ]     STREAM     LISTENING     12702  /var/lib/mysql/mysql.sock
unix  2      [ ACC ]     STREAM     LISTENING     8654   /var/run/nscd/socket
unix  3      [ ]         STREAM     CONNECTED     18042480
unix  3      [ ]         STREAM     CONNECTED     18042479
unix  2      [ ]         DGRAM                    11951123
unix  3      [ ]         STREAM     CONNECTED     11848867
unix  3      [ ]         STREAM     CONNECTED     11848866
unix  2      [ ]         DGRAM                    19594

Listar todos los puertos tcp usando netstat -at

[el-brujo@ehn ~]$ netstat -at Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 *:submission *:* LISTEN tcp 0 0 ns2.elhacker.net:6379 *:* LISTEN tcp 0 0 warzone.elhacker.net:http *:* LISTEN tcp 0 0 warzone.elhacker.net:http 186-39-195-8.speedy.c:43381 SYN_RECV tcp 0 0 warzone.elhacker.net:http 103.30.82.230:49401 SYN_RECV tcp 0 0 ns2.elhacker.net:http *:* LISTEN tcp 0 0 *:hosts2-ns *:* LISTEN tcp 0 0 *:xfer *:* LISTEN tcp 0 0 *:5556 *:* LISTEN tcp 0 0 *:remoteware-cl *:* LISTEN tcp 0 0 *:smtp *:* LISTEN tcp 0 0 warzone.elhacker.net:46861 statse.webtrendslive.c:http ESTABLISHED tcp 0 0 warzone.elhacker.net:54482 b-mtc-a.evip.aol.com:http ESTABLISHED tcp 0 0 warzone.elhacker.net:59363 cluster-6.weborama.fr:http ESTABLISHED tcp 0 0 warzone.elhacker.net:http ec2-54-212-229-209.us:43102 FIN_WAIT2 tcp 0 0 warzone.elhacker.net:http 197.205.27.26:18501 TIME_WAIT tcp 0 0 warzone.elhacker.net:http 186-39-195-8.speedy.c:43364 TIME_WAIT tcp 0 0 ns2.elhacker.net:http ns2.elhacker.net:40745 TIME_WAIT tcp 0 0 warzone.elhacker.net:55726 cluster-6.weborama.fr:http ESTABLISHED tcp 0 0 warzone.elhacker.net:http 186-39-195-8.speedy.c:43380 FIN_WAIT2 tcp 0 0 warzone.elhacker.net:xfer 140.Red-2-139-177.sta:63782 ESTABLISHED tcp 0 0 warzone.elhacker.net:http 213.87.241.98:12882 TIME_WAIT tcp 0 0 ns2.elhacker.net:48333 ns2.elhacker.net:6379 ESTABLISHED tcp 0 0 warzone.elhacker.net:http ec2-54-212-245-232.us:37635 TIME_WAIT tcp 0 224 warzone.elhacker.net:xfer 192.168.0.4:2154 ESTABLISHED tcp 0 0 warzone.elhacker.net:40203 warzone.elhacker.net:mysql TIME_WAIT tcp 0 0 warzone.elhacker.net:40206 warzone.elhacker.net:mysql TIME_WAIT tcp 0 0 warzone.elhacker.net:40204 warzone.elhacker.net:mysql TIME_WAIT tcp 0 0 warzone.elhacker.net:40197 warzone.elhacker.net:mysql TIME_WAIT tcp 0 0 warzone.elhacker.net:http warzone.elhacker.net:49021 TIME_WAIT tcp 0 0 warzone.elhacker.net:48745 www-da1.adobe.com:http ESTABLISHED tcp 0 0 warzone.elhacker.net:http 213.87.241.98:40191 TIME_WAIT tcp 0 0 warzone.elhacker.net:http 3.Red-81-45-53.static:39719 TIME_WAIT tcp 0 191800 warzone.elhacker.net:http 105.106.240.111:15589 ESTABLISHED tcp 0 0 warzone.elhacker.net:40590 teamspeak.elhacker.ne:10011 TIME_WAIT tcp 0 0 warzone.elhacker.net:54806 cluster-6.weborama.fr:https ESTABLISHED tcp 0 0 ns2.elhacker.net:6379 ns2.elhacker.net:48333 ESTABLISHED tcp 0 0 warzone.elhacker.net:http b110153.yse.yahoo.net:52419 TIME_WAIT tcp 0 0 warzone.elhacker.net:49029 warzone.elhacker.net:http TIME_WAIT tcp 0 0 warzone.elhacker.net:http 200.114.97.18:51035 TIME_WAIT tcp 0 0 *:mysql *:* LISTEN tcp 0 0 *:xfer *:* LISTEN tcp 0 0 *:ftp *:* LISTEN tcp 0 0 *:https *:* LISTEN tcp 0 0 warzone.elhacker.net:mysql warzone.elhacker.net:40204 TIME_WAIT tcp 0 0 warzone.elhacker.net:mysql warzone.elhacker.net:40206 TIME_WAIT tcp 0 0 warzone.elhacker.net:mysql warzone.elhacker.net:40201 TIME_WAIT tcp 0 0 warzone.elhacker.net:mysql warzone.elhacker.net:40202 TIME_WAIT tcp 0 0 warzone.elhacker.net:mysql warzone.elhacker.net:40203 TIME_WAIT tcp 0 0 warzone.elhacker.net:mysql warzone.elhacker.net:40198 TIME_WAIT tcp 0 0 warzone.elhacker.net:mysql warzone.elhacker.net:40199 TIME_WAIT

Listar todos los puertos udp usando  netstat -au

[el-brujo@ehn ~]$ netstat -au
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
udp 0 0 *:ndmp *:*
udp 0 0 warzone.elhacker.net:41959 google-public-dns-b.:domain ESTABLISHED
udp 0 0 warzone.elhacker.net:33652 google-public-dns-b.:domain ESTABLISHED

2. Listado Sockets que está en estado "Escucha" Listening State

Listado sólo puertos en escucha (listen) listening ports usando netstat -l

[el-brujo@ehn ~]$ netstat -l
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 *:submission *:* LISTEN
tcp 0 0 ns2.elhacker.net:6379 *:* LISTEN
tcp 0 0 warzone.elhacker.net:http *:* LISTEN
tcp 0 0 ns2.elhacker.net:http *:* LISTEN
tcp 0 0 *:hosts2-ns *:* LISTEN
tcp 0 0 *:xfer *:* LISTEN
tcp 0 0 *:5556 *:* LISTEN
tcp 0 0 *:remoteware-cl *:* LISTEN
tcp 0 0 *:smtp *:* LISTEN
tcp 0 0 *:mysql *:* LISTEN
tcp 0 0 *:xfer *:* LISTEN
tcp 0 0 *:ftp *:* LISTEN
tcp 0 0 *:https *:* LISTEN
udp 0 0 *:ndmp *:*
Active UNIX domain sockets (only servers)
Proto RefCnt Flags Type State I-Node Path
unix 2 [ ACC ] STREAM LISTENING 9904 /tmp/.font-unix/fs7100
unix 2 [ ACC ] STREAM LISTENING 9495 /dev/gpmctl
unix 2 [ ACC ] STREAM LISTENING 12702 /var/lib/mysql/mysql.sock
unix 2 [ ACC ] STREAM LISTENING 8654 /var/run/nscd/socket

Listado sólo puertos TCP usando netstat -lt

[el-brujo@ehn ~]$ netstat -lt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 *:submission *:* LISTEN
tcp 0 0 ns2.elhacker.net:6379 *:* LISTEN
tcp 0 0 warzone.elhacker.net:http *:* LISTEN
tcp 0 0 ns2.elhacker.net:http *:* LISTEN
tcp 0 0 *:hosts2-ns *:* LISTEN
tcp 0 0 *:xfer *:* LISTEN
tcp 0 0 *:5556 *:* LISTEN
tcp 0 0 *:remoteware-cl *:* LISTEN
tcp 0 0 *:smtp *:* LISTEN
tcp 0 0 *:mysql *:* LISTEN
tcp 0 0 *:xfer *:* LISTEN
tcp 0 0 *:ftp *:* LISTEN
tcp 0 0 *:https *:* LISTEN

Listado puertos UDP usando netstat -lu

[el-brujo@ehn ~]$ netstat -lu
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
udp 0 0 *:ndmp *:*

Listado sólo puertos UNIX en esucha usando netstat -lx

[el-brujo@ehn ~]$ netstat -lx Active UNIX domain sockets (only servers) Proto RefCnt Flags Type State I-Node Path unix 2 [ ACC ] STREAM LISTENING 9904 /tmp/.font-unix/fs7100 unix 2 [ ACC ] STREAM LISTENING 9495 /dev/gpmctl unix 2 [ ACC ] STREAM LISTENING 12702 /var/lib/mysql/mysql.sock unix 2 [ ACC ] STREAM LISTENING 8654 /var/run/nscd/socket

3. Mostrar estadísticas de cada protocolo

Mostrar estadísitcas de todos los puertos usando netstat -s

[el-brujo@ehn ~]$ netstat -s
Ip:
637871614 total packets received
0 forwarded
0 incoming packets discarded
637685373 incoming packets delivered
735629653 requests sent out
40531 dropped because of missing route
7 fragments failed
Icmp:
676618 ICMP messages received
555 input ICMP message failed.
ICMP input histogram:
destination unreachable: 596536
timeout in transit: 1255
source quenches: 6
echo requests: 78821
850892 ICMP messages sent
0 ICMP messages failed
ICMP output histogram:
destination unreachable: 772071
echo replies: 78821
IcmpMsg:
InType3: 596536
InType4: 6
InType8: 78821
InType11: 1255
OutType0: 78821
OutType3: 772071
Tcp:
544259 active connections openings
714988 passive connection openings
11686 failed connection attempts
88442 connection resets received
11 connections established
631595219 segments received
724703988 segments send out
4567671 segments retransmited
1275 bad segments received.
253415 resets sent
Udp:
4628346 packets received
772321 packets to unknown port received.
0 packet receive errors
5511351 packets sent
TcpExt:
4599 resets received for embryonic SYN_RECV sockets
922 packets pruned from receive queue because of socket buffer overrun
235 ICMP packets dropped because they were out-of-window
2 ICMP packets dropped because socket was locked
718629 TCP sockets finished time wait in fast timer
27817 packets rejects in established connections because of timestamp
2317178 delayed acks sent
6768 delayed acks further delayed because of locked socket
Quick ack mode was activated 80541 times
628 times the listen queue of a socket overflowed
628 SYNs to LISTEN sockets ignored
143513335 packets directly queued to recvmsg prequeue.
36738301 packets directly received from backlog
1832866877 packets directly received from prequeue
32119715 packets header predicted
148624437 packets header predicted and directly queued to user
53510868 acknowledgments not containing data received
232098782 predicted acknowledgments
2776 times recovered from packet loss due to fast retransmit
1173002 times recovered from packet loss due to SACK data
420 bad SACKs received
Detected reordering 6706 times using FACK
Detected reordering 1872 times using SACK
Detected reordering 433 times using reno fast retransmit
Detected reordering 5682 times using time stamp
9015 congestion windows fully recovered
127106 congestion windows partially recovered using Hoe heuristic
TCPDSACKUndo: 14396
33409 congestion windows recovered after partial ack
2254887 TCP data loss events
TCPLostRetransmit: 286
184 timeouts after reno fast retransmit
134199 timeouts after SACK recovery
73550 timeouts in loss state
2946477 fast retransmits
102667 forward retransmits
880601 retransmits in slow start
149711 other TCP timeouts
TCPRenoRecoveryFail: 310
157941 sack retransmits failed
565 times receiver scheduled too late for direct processing
103720 packets collapsed in receive queue due to low socket buffer
79761 DSACKs sent for old packets
70 DSACKs sent for out of order packets
222862 DSACKs received
5610 DSACKs for out of order packets received
53743 connections reset due to unexpected data
14480 connections reset due to early user close
7656 connections aborted due to timeout
IpExt:
InMcastPkts: 4697
InBcastPkts: 386

Mostrar estadísticas de puertos TCP (o) UDP usando netstat -st (o) -su

# netstat -st

# netstat -su

4. Mostrar el PID y nombres del programa en la salida de netstat usando netstat -p

[el-brujo@ehn ~]$ netstat -pt
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
tcp        0      0 warzone.elhacker.net:http   158.36.160.202.ftth.s:19355 SYN_RECV    -
tcp        0      0 warzone.elhacker.net:http   174.Red-212-170-101.s:54741 SYN_RECV    -
tcp        0      0 warzone.elhacker.net:http   b110153.yse.yahoo.net:54813 TIME_WAIT   -
tcp        0      0 warzone.elhacker.net:46861  statse.webtrendslive.c:http ESTABLISHED -
tcp        0      0 warzone.elhacker.net:http   ns339091.ip-37-59-51.:50981 TIME_WAIT   -
tcp        0      0 warzone.elhacker.net:http   108.162.231.183:33878       TIME_WAIT   -
tcp        0      0 warzone.elhacker.net:54482  b-mtc-a.evip.aol.com:http   ESTABLISHED -
tcp        0      0 warzone.elhacker.net:http   108.162.230.65:13502        TIME_WAIT   -
tcp        0      0 warzone.elhacker.net:http   108.162.230.89:23205        TIME_WAIT   -
tcp        0      0 warzone.elhacker.net:59363  cluster-6.weborama.fr:http  ESTABLISHED -
tcp        0  10154 warzone.elhacker.net:http   158.36.160.202.ftth.s:19349 ESTABLISHED -
tcp        0      0 warzone.elhacker.net:55726  cluster-6.weborama.fr:http  ESTABLISHED -
tcp        0      0 warzone.elhacker.net:xfer   140.Red-2-139-177.sta:63782 ESTABLISHED -
tcp        0      0 warzone.elhacker.net:http   ns339091.ip-37-59-51.:50964 TIME_WAIT   -
tcp        0      0 warzone.elhacker.net:http   31.4.152.10:41853           TIME_WAIT   -
tcp        0      0 warzone.elhacker.net:http   31.4.152.10:41855           TIME_WAIT   -
tcp        0      0 warzone.elhacker.net:http   31.4.152.10:41854           TIME_WAIT   -
tcp        0      0 ns2.elhacker.net:http       ns2.elhacker.net:40781      TIME_WAIT   -
tcp        0      0 ns2.elhacker.net:48333      ns2.elhacker.net:6379       ESTABLISHED -
tcp        0      0 warzone.elhacker.net:http   46.229.164.112:33019        TIME_WAIT   -
tcp        0      0 warzone.elhacker.net:http   46.229.164.112:30193        TIME_WAIT   -
tcp        0     52 warzone.elhacker.net:xfer   192.168.0.4:2154            ESTABLISHED -
tcp        0      0 warzone.elhacker.net:http   ns339091.ip-37-59-51.:50757 TIME_WAIT   -

5. No resolver nombres de host (DNS reverso), ni puertos, ni usuarios en la salida de netstat

When you don’t want the name of the host, port or user to be displayed, use netstat -n option. This will display in numbers, instead of resolving the host name, port name, user name.
This also speeds up the output, as netstat is not performing any look-up.
# netstat -an
If you don’t want only any one of those three items ( ports, or hosts, or users ) to be resolved, use following commands.
# netsat -a --numeric-ports

# netsat -a --numeric-hosts

# netsat -a --numeric-users

6. Imprimir por pantalla información de netstat de manera continua

netstat will print information continuously every few seconds.
# netstat -c
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 ramesh-laptop.loc:36130 101-101-181-225.ama:www ESTABLISHED
tcp        1      1 ramesh-laptop.loc:52564 101.11.169.230:www      CLOSING
tcp        0      0 ramesh-laptop.loc:43758 server-101-101-43-2:www ESTABLISHED
tcp        1      1 ramesh-laptop.loc:42367 101.101.34.101:www      CLOSING
^C

7. Encontrar famílias no soportadas en tu sistema

netstat --verbose
At the end, you will have something like this.
netstat: no support for `AF IPX' on this system.
netstat: no support for `AF AX25' on this system.
netstat: no support for `AF X25' on this system.
netstat: no support for `AF NETROM' on this system.

8. Mostrar información de ruteo del kernel (tablas de rutas) usando netstat -r

[el-brujo@ehn ~]$ netstat -r
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.0.0 * 255.255.255.0 U 0 0 0 eth0
default 192.168.0.2 0.0.0.0 UG 0 0 0 eth0

Note: Use netstat -rn to display routes in numeric format without resolving for host-names.

9. Encontrar en que puerto se está ejecutando un programa

[root@ehn ~]# netstat -ap | grep ssh
tcp 0 0 *:xfer *:* LISTEN 2741/sshd
tcp 0 0 warzone.elhacker.net:46861 statse.webtrendslive.c:http ESTABLISHED 6350/sshd
tcp 0 0 warzone.elhacker.net:54482 b-mtc-a.evip.aol.com:http ESTABLISHED 6350/sshd
tcp 0 0 warzone.elhacker.net:59363 cluster-6.weborama.fr:http ESTABLISHED 6350/sshd
tcp 0 0 warzone.elhacker.net:55726 cluster-6.weborama.fr:http ESTABLISHED 6350/sshd
tcp 0 0 warzone.elhacker.net:xfer 140.Red-2-139-177.sta:63782 ESTABLISHED 6348/sshd
tcp 0 0 warzone.elhacker.net:xfer 192.168.0.4:2154 ESTABLISHED 18386/sshd
tcp 0 0 warzone.elhacker.net:48745 www-da1.adobe.com:http ESTABLISHED 6350/sshd
tcp 0 0 warzone.elhacker.net:54806 cluster-6.weborama.fr:https ESTABLISHED 6350/sshd
tcp 0 0 *:xfer *:* LISTEN 2741/sshd
unix 3 [ ] STREAM CONNECTED 18042480 18386/sshd
unix 3 [ ] STREAM CONNECTED 18042479 18388/sshd
unix 3 [ ] STREAM CONNECTED 11848867 6348/sshd
unix 3 [ ] STREAM CONNECTED 11848866 6350/sshd

Encontrar qué proceso está usando un puerto en particular:
# netstat -an | grep ':80'

[root@ehn ~]# netstat -an | grep ':80'
tcp 0 0 192.168.0.3:80 0.0.0.0:* LISTEN
tcp 0 0 192.168.0.3:80 88.27.207.68:20531 SYN_RECV
tcp 0 0 192.168.0.3:80 186.15.77.88:40697 SYN_RECV
tcp 0 0 127.0.0.1:80 0.0.0.0:* LISTEN
tcp 0 0 192.168.0.3:80 118.76.128.5:2657 TIME_WAIT
tcp 0 0 192.168.0.3:46861 31.186.231.25:80 ESTABLISHED
tcp 0 0 192.168.0.3:80 88.27.207.68:20530 TIME_WAIT
tcp 0 0 192.168.0.3:80 88.27.207.68:20529 TIME_WAIT
tcp 0 0 192.168.0.3:80 88.27.207.68:20528 TIME_WAIT
tcp 0 0 192.168.0.3:80 88.27.207.68:20532 ESTABLISHED
tcp 0 1 192.168.0.3:80 201.245.239.244:15957 LAST_ACK
tcp 0 0 192.168.0.3:54482 149.174.144.1:80 ESTABLISHED
tcp 0 0 192.168.0.3:59363 195.54.48.9:80 ESTABLISHED
tcp 0 0 192.168.0.3:80 88.27.207.68:20527 TIME_WAIT
tcp 0 0 192.168.0.3:80 94.189.212.150:1354 TIME_WAIT
tcp 0 0 192.168.0.3:80 68.180.228.238:58931 TIME_WAIT
tcp 0 0 192.168.0.3:55726 195.54.48.9:80 ESTABLISHED
tcp 0 0 192.168.0.3:80 186.15.77.88:40690 TIME_WAIT
tcp 0 0 192.168.0.3:80 68.180.228.238:36690 TIME_WAIT

10. Mostrar el listado de interfaces de red

[root@ehn ~]# netstat -i
Kernel Interface table
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0 1500 0 109724536 0 0 0 175171266 0 0 0 BMRU
eth1 1500 0 0 0 0 0 0 0 0 0 BMU
lo 16436 0 481412659 0 0 0 481412659 0 0 0 LRU

Display extended information on the interfaces (similar to ifconfig) using netstat -ie:

[root@ehn ~]# netstat -ie
Kernel Interface table
eth0 Link encap:Ethernet HWaddr 00:22:15:8F:48:57
inet addr:192.168.0.3 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::222:15ff:fe8f:4857/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:109729430 errors:0 dropped:0 overruns:0 frame:0
TX packets:175180122 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3694949304 (3.4 GiB) TX bytes:2499881455 (2.3 GiB)
Interrupt:225
eth1 Link encap:Ethernet HWaddr 00:22:15:8F:31:62
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Interrupt:177
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:481423367 errors:0 dropped:0 overruns:0 frame:0
TX packets:481423367 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2776262075 (2.5 GiB) TX bytes:2776262075 (2.5 GiB)

Netstat en Windows

Como utilizar el comando NETSTAT de Windows para conocer las conexiones activas establecidas en la computadora, saber su origen y dirección IP, poder detectar las conexiones entrantes y e intrusiones de red en nuestro sistema. Aplicaciones para descargar gratis y códigos con todas las opciones que permite la herramienta. Opciones nuevas en Windows 8

NETSTAT es una de las herramientas más maravillosas y útiles que incluye Windows, mediante ella podemos conocer información detallada relacionada con las conexiones que establece nuestro equipo.
Nos ofrece datos que ningún otro programa nos proporciona.

Aunque solo funciona mediante la línea de comandos, después de leer este artículo, comprenderás la facilidad de su uso y aprenderás a monitorear completamente todas las conexiones de tu equipo.


¿Qué es el comando NETSTAT?


Netstat.exe es una útil aplicacion incluida en todos los sistemas operativos Windows, permite monitorear y estar al tanto de todas las conexiones establecidas entre nuestra PC y el mundo exterior.
Con el comando NETSTAT se introducen las ordenes que nos permiten ver, conocer, detectar e identificar las conexiones activas establecidas con el exterior, tanto entrantes como salientes, su origen y dirección IP de procedencia, saber los puertos que tenemos abiertos a la escucha, ver e identificar las conexiones entrantes e intrusiones de red en nuestra PC, saber si tenemos programas que establezcan contacto con un host remoto, etc.
Toda esa información y más, podemos obtenerla usando el comando NETSTAT con distintas opciones o modificadores.

¿Que nos permite conocer el comando NETSTAT?


Con NETSTAT podemos monitorear en vivo toda la actividad de nuestra red, acceder a todas las estadísticas registradas y recogerlas en un archivo de texto para revisarlas posteriormente.
Es posible configurar el intervalo de tiempo en que estas se deben realizar.
Permite estar al tanto de los puertos que se encuentren abiertos en la PC, su estado, si son usados en alguna conexión desconocida, lo que te permite cerrarlos si no son necesarios para el funcionamiento de las aplicaciones que usas.
Es la herramienta ideal para detectar conexiones entrantes e intrusiones en un equipo local, saber si alguna aplicación instalada establece contacto con algún host remoto en el exterior, monitorear estas conexiones, conocer su PID o sea la identidad del proceso y detenerlo por medio de la utilidad taskkill, ya sea manualmente o automáticamente con un archivo batch creado para ese fin.

¿Como usar el comando NETSTAT?


NETSTAT al igual que todos otros comandos que incluye Windows, puede invocarse de varias formas:
Escribiendo o insertando en la consola de CMD o símbolo del sistema las instrucciones.

 Introduciéndolo directamente en el cuadro de Inicio o en el comando Ejecutar, antecedido de CMD.exe /K, esto permite abrir la consola, ejecutar el comando y mantener abierta la ventana con la información.
En la siguiente imagen puedes ver un ejemplo, en este caso con PING otro comando de Windows, con NETSTAT el uso es similar.

 Por último, usándolo en un archivo batch, que no es más que un archivo de texto con la extensión cmd, por lo que Windows abrirá y ejecutará las ordenes que contienen dicho archivo en la consola.
Para la mayoría de los usuarios, que lógicamente no son diestros en el manejo de la consola, se aconseja el uso de la segunda y tercera opción.
Más abajo se ofrece la descarga gratis de varios de estos archivos, solo se necesita descargarlos, descomprimirlos y ejecutarlos.
No obstante a los interesados en el uso de las opciones más avanzadas de NETSTAT, se recomienda aprender a ejecutarlo en la consola en la que se obtienen los mejores resultados.
No es nada difícil como se verá a continuación.


Sintaxis para el uso de NETSTAT en la línea de comandos

NETSTAT [opción] [-p protocolo] [intervalo]
-aMuestra todas las conexiones y puertos a la escucha.
-bMuestra las aplicaciones y archivos ejecutables involucrados en crear conexiones en los puertos a la escucha.
-eMuestra estadísticas de Ethernet.
-nMuestra los puertos y las direcciones en formato numérico.
-oPermite ver la identidad de cada proceso (PID) involucrado.
-rMuestra la tabla de rutas.
-sMuestra las estadísticas por protocolos.
-vUsado con -b, permite ver secuencias de componentes involucrados en crear una conexión.
-pMuestra las conexiones por protocolos: TCP, UDP, TCPv6, o UDPv6.
IntervaloIntervalo en número de segundos que se monitorea las conexiones. Continua hasta que se ejecuta Control+C.

  • Netstat –a: nos permite conocer todas las redes que están activas o inactivas en un momento dado. Así lograremos detectar posibles problemas que afecten a una red.
  • Netstat –e: en este caso podemos ver estadísticas sobre los paquetes de red entrantes y salientes en una tarjeta de red.
  • Netstat –f: muestra el nombre de dominio completo de direcciones remotas.
  • Netstat –n: este comando, a diferencia del anterior, muestra los números de puerto en lugar de los nombres.
  • Netstat –o: muestra el ID de cada proceso en cada conexión.
  • Netstat –p X: con este comando podemos filtrar conexiones según el protocolo (TCP, UDP, tcpv6 o tcpv4. X=TCP, UDP… el protocolo que queramos. Por ejemplo sería netstat –p TCP.
  • Netstat –q: consultar los puertos de escucha y de no escucha vinculados.
  • Netstat –s: muestra las estadísticas de grupo por protocolo. Así podremos clasificar las redes según los protocolos disponibles: TCP, UDP, ICMP, IPv4 o IPv6.
  • Netstat –r: este comando nos muestra la tabla de enrutamiento de la red actual.
  • Netstat –t: ofrece información sobre las conexiones en estado de descarga.
  • Netstat –x: en este caso podemos obtener información sobre todas las conexiones NetworkDirect.

Opciones nuevas de NETSTAT en Windows 8

Windows 8 adiciona otros modificadores a NETSTAT para hacer aún más efectivo este comando. Son las siguientes:

-T Muestra el estado de la carga de la conexión actual.
-X Muestra conexiones NetworkDirect, escuchas y los extremos compartidos.
-Y Muestra la plantilla de conexión TCP para todas las conexiones.

Información del estado de las conexiones


NETSTAT devuelve una serie de parámetros que indican el estado en que se encuentran las conexiones, son los siguientes:

LISTENING:El puerto está abierto escuchando en espera de una conexión.
ESTABLISHED:La conexión ha sido establecida.
CLOSE_WAIT:La conexión sigue abierta, pero el otro extremo nos comunica que no se continuará enviando información.
TIME_WAIT:La conexión ha sido cerrada, pero no se elimina de la tabla de conexión por si hay algo pendiente de recibir.
LAST_ACK:La conexión se está cerrando.
CLOSED:La conexión ha sido cerrada completamente.

Usos prácticos del comando NETSTAT en Windows


NETSTAT puede emplearse para multitud de propósitos en redes, pero la gran mayoría de los usuarios acude a su ayuda, para obtener información principalmente sobre dos aspectos:
1- Conocer los puertos abiertos en el equipo a la escucha.
2- Conocer las aplicaciones que se conectan al exterior.


Conocer los puertos abiertos en el equipo a la escucha


Aunque varios sitios en la red brindan el servicio de detectar e informar sobre los puertos abiertos, con NETSTAT lo podemos conocer fácilmente.
Para eso úsalo de la siguiente forma:


NETSTAT -AN|FINDSTR /C:LISTENING

Si no eres amante del uso de la consola, entonces solo pega lo siguiente en el cuadro de Inicio o en Ejecutar y presiona la tecla Enter:

CMD.EXE /K NETSTAT -AN|FINDSTR /C:LISTENING

Conocer las aplicaciones que se conectan al exterior


Si tienes sospechas de que en tu sistema tienes aplicaciones spyware (programas informáticos que espían información del usuario y la envían a un sitio en la red), puedes usar NETSTAT para detectarlos.
Para eso úsalo de la siguiente forma inmediatamente después de conectarte a internet, cualquiera aplicación que establezca conexión con un sitio remoto será detectada y NETSTAT mostrará el PID que le corresponde (identidad del proceso).

NETSTAT -BO 10

¿Como conocer la aplicación que inicia un proceso?


NETSTAT devolverá la identidad de un proceso, si necesitas saber el nombre de la aplicación, inclusive otros procesos anidados, usa el comando TASKLIST de la siguiente forma.

CMD.EXE /K TASKLIST /SVC /FI "PID eq ID" 

¿Como detener un proceso?


Para detener de manera forzada cualquier proceso, usa el comando TASKKILL de la siguiente forma:

TASKKILL /F /IM NombreProceso


2 comentarios :

Busindre dijo...

Muy buena recopilación, solo comentar que netstat es considerado obsoleto y se recomienda el uso de ss / ip. Saludos.

Anónimo dijo...

.i.

Publicar un comentario

Los comentarios pueden ser revisados en cualquier momento por los moderadores.

Serán publicados aquellos que cumplan las siguientes condiciones:
- Comentario acorde al contenido del post.
- Prohibido mensajes de tipo SPAM.
- Evite incluir links innecesarios en su comentario.
- Contenidos ofensivos, amenazas e insultos no serán permitidos.

Debe saber que los comentarios de los lectores no reflejan necesariamente la opinión del STAFF.