Netstat es una herramienta que permite identificar las conexiones, puertos y servicios de red activos en la máquina en la que se ejecuta el comando.
Por otro lado, también permite a su vez obtener estadísticas de numerosos protocolos (Ethernet, IPv4, TCP, UDP, ICMP e IPv6).
De esta manera podemos detectar intrusiones o actividades no autorizadas en nuestro sistema monitorizando procesos, servicios, puertos y conexiones operativas en nuestros equipos.
Instalación
yum install net-tools [CentOS/Fedora/RHEL]
apt-get install net-tools [Debian GNU/Linux]
zypper install net-tools [OpenSUSE]
pacman -S netstat-nat [Arch Linux]
Version Netstat
$ netstat -V
net-tools 2.10-alpha
Fred Baumgarten, Alan Cox, Bernd Eckenfels, Phil Blundell, Tuan Hoang, Brian Micek and others
+NEW_ADDRT +RTF_IRTT +RTF_REJECT +FW_MASQUERADE +I18N +SELINUX
AF: (inet) +UNIX +INET +INET6 +IPX +AX25 +NETROM +X25 +ATALK +ECONET +ROSE -BLUETOOTH
HW: +ETHER +ARC +SLIP +PPP +TUNNEL -TR +AX25 +NETROM +X25 +FR +ROSE +ASH +SIT +FDDI +HIPPI +HDLC/LAPB +EUI64
Ruta de tablas del núcleo del sistema
$ netstat -r
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
default gateway 0.0.0.0 UG 0 0 0 wlan0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 wlan0
Estadísticas de red
$ netstat -ai
Kernel Interface table
Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0 1500 0 0 0 0 0 0 0 0 BMU
lo 65536 788 0 0 0 788 0 0 0 LRU
wlan0 1500 1530768 0 0 0 868838 0 0 0 BMRU
Ver conexiones de redes
$ netstat -ant
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:4456 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:34349 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:51413 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:37013 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:39191 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:7070 0.0.0.0:* LISTEN
tcp 0 0 192.168.1.7:48252 172.217.3.66:443 ESTABLISHED
tcp 0 0 192.168.1.7:47776 149.154.175.52:80 ESTABLISHED
tcp 0 0 192.168.1.7:43394 149.154.175.52:443 ESTABLISHED
tcp 0 0 192.168.1.7:46938 168.167.90.251:80 ESTABLISHED
tcp 0 1 192.168.1.7:34829 37.145.53.6:51413 SYN_SENT
tcp 0 0 192.168.1.7:39826 149.154.175.52:443 ESTABLISHED
tcp 0 0 192.168.1.7:57526 172.217.8.142:80 ESTABLISHED
tcp 0 0 192.168.1.7:43594 104.27.142.36:80 ESTABLISHED
tcp 0 0 192.168.1.7:46207 209.222.97.121:80 ESTABLISHED
tcp 273680 0 192.168.1.7:36223 81.171.17.23:48188 ESTABLISHED
tcp 366878 0 192.168.1.7:46277 37.48.111.139:51833 ESTABLISHED
tcp 0 0 192.168.1.7:45454 35.166.120.204:443 ESTABLISHED
tcp 518239 0 192.168.1.7:40101 50.243.181.173:50329 ESTABLISHED
tcp6 0 0 :::4456 :::* LISTEN
tcp6 0 0 :::139 :::* LISTEN
tcp6 0 0 :::111 :::* LISTEN
tcp6 0 0 :::80 :::* LISTEN
tcp6 0 0 :::51413 :::* LISTEN
tcp6 0 0 ::1:631 :::* LISTEN
tcp6 0 0 :::445 :::* LISTEN
tcp6 0 0 :::42691 :::* LISTEN
tcp6 1 0 ::1:46008 ::1:631 CLOSE_WAIT
tcp6 1 0 ::1:46006 ::1:631 CLOSE_WAIT
Ver conexiones de servicios
$ sudo netstat -pnltu
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:4456 0.0.0.0:* LISTEN 3836/sshd
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 3190/smbd
tcp 0 0 0.0.0.0:34349 0.0.0.0:* LISTEN 1849/rpc.statd
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1792/rpcbind
tcp 0 0 0.0.0.0:51413 0.0.0.0:* LISTEN 7315/transmission-g
tcp 0 0 0.0.0.0:37013 0.0.0.0:* LISTEN 2433/anydesk
tcp 0 0 127.0.0.1:39191 0.0.0.0:* LISTEN 13945/haroopad
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 2712/cupsd
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 3190/smbd
tcp 0 0 0.0.0.0:7070 0.0.0.0:* LISTEN 2433/anydesk
tcp6 0 0 :::4456 :::* LISTEN 3836/sshd
tcp6 0 0 :::139 :::* LISTEN 3190/smbd
tcp6 0 0 :::111 :::* LISTEN 1792/rpcbind
tcp6 0 0 :::80 :::* LISTEN 2529/apache2
tcp6 0 0 :::51413 :::* LISTEN 7315/transmission-g
tcp6 0 0 ::1:631 :::* LISTEN 2712/cupsd
tcp6 0 0 :::445 :::* LISTEN 3190/smbd
tcp6 0 0 :::42691 :::* LISTEN 1849/rpc.statd
udp 0 0 0.0.0.0:51659 0.0.0.0:* 2825/avahi-daemon:
udp 0 0 0.0.0.0:46610 0.0.0.0:* 7315/transmission-g
udp 0 0 0.0.0.0:68 0.0.0.0:* 3448/dhclient
udp 0 0 0.0.0.0:111 0.0.0.0:* 1792/rpcbind
udp 0 0 0.0.0.0:631 0.0.0.0:* 2593/cups-browsed
udp 0 0 192.168.1.7:123 0.0.0.0:* 2775/ntpd
udp 0 0 127.0.0.1:123 0.0.0.0:* 2775/ntpd
udp 0 0 0.0.0.0:123 0.0.0.0:* 2775/ntpd
udp 0 0 192.168.1.255:137 0.0.0.0:* 2474/nmbd
udp 0 0 192.168.1.7:137 0.0.0.0:* 2474/nmbd
udp 0 0 0.0.0.0:137 0.0.0.0:* 2474/nmbd
udp 0 0 192.168.1.255:138 0.0.0.0:* 2474/nmbd
udp 0 0 192.168.1.7:138 0.0.0.0:* 2474/nmbd
udp 0 0 0.0.0.0:138 0.0.0.0:* 2474/nmbd
udp 0 0 0.0.0.0:661 0.0.0.0:* 1792/rpcbind
udp 0 0 0.0.0.0:46777 0.0.0.0:* 1849/rpc.statd
udp 0 0 0.0.0.0:51413 0.0.0.0:* 7315/transmission-g
udp 0 0 0.0.0.0:5353 0.0.0.0:* 2825/avahi-daemon:
udp 0 0 127.0.0.1:753 0.0.0.0:* 1849/rpc.statd
udp 0 0 0.0.0.0:40194 0.0.0.0:* 7315/transmission-g
udp 0 0 0.0.0.0:50001 0.0.0.0:* 2433/anydesk
udp6 0 0 :::37966 :::* 1849/rpc.statd
udp6 0 0 :::111 :::* 1792/rpcbind
udp6 0 0 fe80::da68:c52a:abd:123 :::* 2775/ntpd
udp6 0 0 ::1:123 :::* 2775/ntpd
udp6 0 0 :::123 :::* 2775/ntpd
udp6 0 0 :::661 :::* 1792/rpcbind
udp6 0 0 :::5353 :::* 2825/avahi-daemon:
udp6 0 0 :::50489 :::* 2825/avahi-daemon:
Netstat imprime información sobre el subsistema de red de GNU/Linux. El tipo de información que se imprime está controlado por el primer argumento, como sigue:
- (none)
Por defecto, netstat muestra una lista de sockets abiertos. Si no se especifica ninguna familia de direcciones, se imprimirán los sockets activos de todas las familias de direcciones configuradas.
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 10.152.152.10:9050 10.152.152.11:38370 ESTABLISHED
tcp 0 0 10.0.2.15:41074 193.11.166.194:27025 ESTABLISHED
tcp 0 0 localhost:54102 localhost:40649 ESTABLISHED
tcp 0 0 localhost:40649 localhost:54250 ESTABLISHED
tcp 0 0 localhost:54250 localhost:40649 ESTABLISHED
tcp 0 0 localhost:40649 localhost:54102 ESTABLISHED
tcp 0 0 10.0.2.15:51168 209.148.46.65:https ESTABLISHED - –route, -r
Muestra las tablas de enrutamiento del núcleo. netstat -r y route -e producen la misma salida.
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
default 10.0.2.2 0.0.0.0 UG 0 0 0 eth0
10.0.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
10.152.128.0 0.0.0.0 255.255.192.0 U 0 0 0 eth1 - –groups, -g
Muestra la información de pertenencia a grupos de multidifusión para IPv4 e IPv6.
IPv6/IPv4 Group Memberships
Interface RefCnt Group
————— —— ———————
lo 1 224.0.0.1
eth0 1 224.0.0.1
eth1 1 224.0.0.1
lo 1 ip6-allnodes
lo 1 ff01::1
eth0 1 ip6-allnodes
eth0 1 ff01::1
eth1 1 ip6-allnodes
eth1 1 ff01::1 - –interfaces, -i
Muestra una tabla de todas las interfaces de red.
Kernel Interface table
Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0 1500 1673620 0 0 0 963018 0 0 0 BMRU
eth1 1500 599985 0 0 0 1014858 0 0 0 BMRU
lo 65536 1344253 0 0 0 1344253 0 0 0 LRU - –statistics, -s
Muestra las estadísticas resumidas de cada protocolo.
Ip:
Forwarding: 2
3018499 total packets received
0 forwarded
0 incoming packets discarded
3018499 incoming packets delivered
2887700 requests sent out
Icmp:
20 ICMP messages received
0 input ICMP message failed
ICMP input histogram:
destination unreachable: 20
20 ICMP messages sent
0 ICMP messages failed
ICMP output histogram:
destination unreachable: 20
IcmpMsg:
InType3: 20
OutType3: 20
Tcp:
540 active connection openings
967 passive connection openings
0 failed connection attempts
9 connection resets received
7 connections established
3006638 segments received
3310112 segments sent out
341 segments retransmitted
0 bad segments received
7 resets sent
Udp:
11821 packets received
20 packets to unknown port received
0 packet receive errors
11841 packets sent
0 receive buffer errors
0 send buffer errors
UdpLite:
TcpExt:
536 TCP sockets finished time wait in fast timer
196484 delayed acks sent
948 delayed acks further delayed because of locked socket
Quick ack mode was activated 194 times
1067468 packet headers predicted
78786 acknowledgments not containing data payload received
1422966 predicted acknowledgments
16 congestion windows recovered without slow start after partial ack
TCPLostRetransmit: 58
1 retransmits in slow start
TCPTimeouts: 90
TCPLossProbes: 294
TCPDSACKOldSent: 194
TCPDSACKRecv: 258
7 connections reset due to early user close
8 connections aborted due to timeout
TCPDSACKIgnoredNoUndo: 85
TCPSackShiftFallback: 8
TCPRcvCoalesce: 62853
TCPSpuriousRtxHostQueues: 1
TCPAutoCorking: 35128
TCPSynRetrans: 3
TCPOrigDataSent: 2142203
TCPHystartTrainDetect: 33
TCPHystartTrainCwnd: 614
TCPDelivered: 2142975
IpExt:
InOctets: 2747765702
OutOctets: 2684475930
InNoECTPkts: 3618073
Paralelamente, además tenemos una considerable cantidad de opciones secundarias para combinar con las anteriores y así personalizar y precisar más exactamente nuestras búsquedas y consultas.
- –verbose, -v
Comunicar al usuario lo que está sucediendo con alto detalle. Especialmente imprime alguna información útil sobre las familias de direcciones no configuradas. - –wide, -W
No truncar las direcciones IP utilizando la salida tan amplia como sea necesario. Esto es opcional por ahora para no romper los scripts existentes. - –numeric, -n
Mostrar direcciones numéricas en lugar de intentar determinar nombres simbólicos de host, puerto o usuario. - –numeric-hosts
Muestra las direcciones numéricas de los hosts, pero no afecta a la resolución de los nombres de puerto o de usuario. - –numeric-ports
Muestra los números de puerto numéricos pero no afecta a la resolución de los nombres de host o de usuario. - –numeric-users
Muestra las identificaciones numéricas de los usuarios, pero no afecta a la resolución de los nombres de host o puerto. - –protocol=family, -A
Especifica las familias de direcciones (quizás mejor descritas como protocolos de bajo nivel) para las que se deben mostrar las conexiones. family es una lista separada por comas (‘,’) de palabras clave de familias de direcciones como inet, inet6, unix, ipx, ax25, netrom, econet, ddp y bluetooth. Esto tiene el mismo efecto que usar las opciones –inet|-4, –inet6|-6, –unix|-x, –ipx, –ax25, –netrom, –ddp, y –bluetooth.La familia de direcciones inet (Iv4) incluye sockets de protocolo raw, udp, udplite y tcp.
La familia de direcciones bluetooth (Iv4) incluye sockets de protocolo l2cap y rfcomm.
- -c, –continuous
Esto hará que netstat imprima la información seleccionada cada segundo de forma continua. - -e, –extend
Mostrar información adicional. Utilice esta opción dos veces para obtener el máximo detalle. - -o, –timers
Incluir información relacionada con los temporizadores de red. - -p, –program
Muestra el PID y el nombre del programa al que pertenece cada socket. - -l, –listening
Mostrar sólo los sockets de escucha (se omiten por defecto). - -a, –all
Muestra tanto los sockets que escuchan como los que no escuchan. Con la opción –interfaces, muestra las interfaces que no están en funcionamiento. - -F
Imprime la información de enrutamiento de la FIB (este es el valor por defecto). - -C
Imprime la información de enrutamiento de la caché de rutas.
Más información para investigar, estudiar y practicar
- Lectura importante: «NETSTAT Command»
- Lectura importante: «NetSTAT: A Network-based Intrussion Detection Approach»
- Netstat en sistemas operativos GNU/Linux
- Netstat en sistemas operativos Microsoft Windows
Los comentarios están cerrados.