Una guía de administrador de sistemas de Linux para la gestión de redes, resolución de problemas y depuración

Una guía de administrador de sistemas de Linux para la gestión de redes, resolución de problemas y depuración

Las tareas rutinarias de un administrador de sistemas incluyen la configuración, el mantenimiento, la resolución de problemas y la administración de servidores y redes dentro de los centros de datos. Existen numerosas herramientas y utilidades en Linux diseñadas para fines administrativos.

En este artículo, revisaremos algunas de las herramientas y utilidades de línea de comandos más utilizadas para la administración de redes en Linux, en diferentes categorías. Explicaremos algunos ejemplos de uso común, que facilitarán la administración de la red en Linux.

Tabla de contenido Comando ifconfig Comando ip Comando ifup Comando ethtool Comando ping Comando traceroute Comando mtr Comando route Comando nmcli Comando netstat Comando ss Comando nc Comando nmap Comando host Comando dig Comando nslookup Comando tcpdump Comando Wireshark Utilidad bmon Herramienta iptables Firewall firewalld UFW Firewall

Esta lista es igualmente útil para ingenieros de redes de tiempo completo.

Configuración de red, resolución de problemas y herramientas de depuración

1. Comando ifconfig

ifconfig es una herramienta de interfaz de línea de comandos para la configuración de la interfaz de red y también se utiliza para inicializar una interfaz en el momento del arranque del sistema. Una vez que un servidor está en funcionamiento, se puede usar para asignar una dirección IP a una interfaz y habilitar o deshabilitar la interfaz a pedido.

También se usa para ver el estado de la dirección IP, hardware/MAC dirección, así como el tamaño de MTU (Unidad de transmisión máxima) de las interfaces activas actualmente. Por tanto, ifconfig es útil para depurar o realizar ajustes del sistema.

freestar.config.enabled_slots.push

Aquí hay un ejemplo para mostrar el estado de todos interfaces de red activas.

$ ifconfig. enp1s0 Encap de enlace: Ethernet HWaddr 28: d2: 44: eb: bd: 98 inet addr: 192.168.0.103 Bcast: 192.168.0.255 Máscara: 255.255.255.0 inet6 addr: fe80 :: 8f0c: 7825: 8057: 5eec/64 Alcance: Link UP BROADCAST EJECUTANDO MULTICAST MTU: 1500 Métrica: 1 paquetes RX: 169854 errores: 0 descartados: 0 desbordamientos: 0 trama: 0 paquetes TX: 125995 errores: 0 descartado: 0 desbordamientos: 0 portadora: 0 colisiones: 0 txqueuelen: 1000 RX bytes: 174146270 (174,1 MB) TX bytes: 21062129 (21,0 MB) lo Encapsulación de enlace: bucle de retorno local inet addr: 127.0.0.1 Máscara: 255.0.0.0 inet6 addr: :: 1/128 Alcance: Host UP LOOPBACK RUNNING MTU: 65536 Métrica: 1 paquetes RX: 15793 errores: 0 descartado: 0 desbordamientos: 0 trama: 0 paquetes TX: 15793 errores: 0 descartado: 0 desbordamientos: 0 portadora: 0 colisiones: 0 txqueuelen: 1 bytes RX: 2898946 (2,8 MB) bytes TX: 2898946 (2,8 MB)

Para enumerar todas las interfaces que están disponibles actualmente, ya sea arriba. o abajo. use la bandera-a.

$ ifconfig-a

Para asignar una dirección IP a una interfaz, use el siguiente comando.

$ sudo ifconfig eth0 192.168.56.5 netmask 255.255.255.0

Para activar una interfaz de red, escriba.

$ sudo ifconfig up eth0

Para desactivar o cerrar una interfaz de red, escriba.

$ sudo ifconfig down eth0

Nota. aunque ifconfig. es una gran herramienta, ahora está obsoleta (en desuso), su reemplazo es ip command. que se explica a continuación.

2. IP Command

ip command es otra utilidad de línea de comandos útil para mostrar y manipulación de enrutamiento, dispositivos de red, interfaces. Es un reemplazo para ifconfig. y muchos otros comandos de red. (Lea nuestro artículo “Cuál es la diferencia entre ifconfig y el comando ip” para obtener más información al respecto).

El siguiente comando mostrará la dirección IP y otra información sobre una interfaz de red.

$ ip addr show. 1: lo: mtu 65536 qdisc noqueue state UNKNOWN grupo predeterminado qlen 1 link/loopback 00: 00: 00: 00: 00: 00 brd 00:00:00: 00:00:00 inet 127.0.0.1/8 host de alcance lo valid_lft forever preferencia_lft para siempre inet6 :: 1/128 host de alcance valid_lft forever favorite_lft forever 2: enp1s0: mtu 1500 qdisc pfifo_fast state UP group qlen 1000 link/ether por defecto 28: d2: 44: eb: bd: 98 brd ff: ff: ff: ff: ff: ff inet 192.168.0.103/24 brd 192.168.0.255 alcance dinámico global enp1s0 valid_lft 5772sec preferido_lft 5772sec inet6 fe80: : 8f0c: 7825: 8057: enlace de alcance 5eec/64 valid_lft forever preferencia_lft forever 3: wlp2s0: mtu 1500 qdisc noop state DOWN grou p default qlen 1000 link/ether 38: b1: db: 7c: 78: c7 brd ff: ff: ff: ff: ff: ff …

Para asignar temporalmente una dirección IP a una interfaz de red específica ( eth0. , escriba.

$ sudo ip addr add 192.168.56.1 dev eth0

Para eliminar una dirección IP asignada de una interfaz de red ( eth0. , escriba.

$ sudo ip addr del 192.168.56.15/24 dev eth0

Para mostrar la tabla vecina actual en el kernel, escriba.

$ ip neigh. 192.168.0.1 dev enp1s0 lladdr 10: fe: ed: 3d: f3: 82 REACHABLE 3. comando ifup, ifdown e ifquery

El comando ifup. activa una interfaz de red, haciéndola disponible para transferir y recibir datos.

$ sudo ifup eth0

El comando ifdown. deshabilita una interfaz de red, manteniéndola en un estado en el que no puede transferir ni recibir datos.

$ sudo ifdown eth0

ifquery. comando utilizado para analizar la configuración de la interfaz de red, lo que le permite recibir respuestas a consultas sobre cómo está configurada actualmente.

$ sudo ifquery eth0 4. Ethtool Command

ethtool. es una utilidad de línea de comandos para consultar y modificar los parámetros del controlador de interfaz de red y los controladores de dispositivo. El siguiente ejemplo muestra el uso de ethtool. y un comando para ver los parámetros de la interfaz de red.

$ sudo ethtool enp0s3. Configuración para enp0s3: puertos compatibles: [ TP] Modos de enlace admitidos: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Uso de marco de pausa admitido: No Admite negociación automática: Sí Modos de enlace anunciados: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Uso completo del marco de pausa anunciado: No Negociación automática anunciada: Sí Velocidad: 1000 Mb/s Dúplex: Puerto completo: Par trenzado PHYAD: 0 Transceptor: Negociación automática interna: activado MDI-X: desactivado (automático) Admite Wake-on: umbg Wake-on: d Nivel de mensaje actual: 0x00000007 (7) drv probe link Link detectado: sí 5. Comando Ping

ping ( Packet INternet Groper. es una utilidad normalmente u sed para probar la conectividad entre dos sistemas en una red ( Red de área local. ( LAN. o Red de área amplia. ( WAN. ). Utiliza ICMP. ( Protocolo de mensajes de control de Internet. para comunicarse con los nodos en una red.

Para probar la conectividad a otro nodo, simplemente proporcione su IP o nombre de host, por ejemplo.

$ ping 192.168.0.103. PING 192.168.0.103 (192.168.0.103) 56 (84) bytes de datos. 64 bytes de 192.168.0.103: icmp_seq = 1 ttl = 64 tiempo = 0.191 ms 64 bytes de 192.168.0.103: icmp_seq = 2 ttl = 64 tiempo = 0.156 ms 64 bytes de 192.168.0.103: icmp_seq = 3 ttl = 64 tiempo = 0.179 ms 64 bytes de 192.168.0.103: icmp_seq = 4 ttl = 64 tiempo = 0.182 ms 64 bytes de 192.168.0.103: icmp_seq = 5 ttl = 64 tiempo = 0,207 ms 64 bytes de 192.168.0.103: icmp_seq = 6 ttl = 64 tiempo = 0.157 ms ^ C—192.168.0.103 estadísticas de ping—6 paquetes transmitidos, 6 recibidos, 0% de pérdida de paquetes, tiempo 5099ms rtt min/avg/max/mdev = 0.156/0.178/0.207/0.023 ms

Usted también puede decirle a ping que salga después de un número específico de paquetes ECHO_REQUEST. usando la bandera -c. como se muestra.

$ ping-c 4 192.168. 0.103. PING 192.168.0.103 (192.168.0.103) 56 (84) bytes de datos. 64 bytes de 192.168.0.103: icmp_seq = 1 ttl = 64 tiempo = 1.09 ms 64 bytes de 192.168.0.103: icmp_seq = 2 ttl = 64 tiempo = 0.157 ms 64 bytes de 192.168.0.103: icmp_seq = 3 ttl = 64 tiempo = 0.163 ms 64 bytes de 192.168.0.103: icmp_seq = 4 ttl = 64 tiempo = 0.190 ms—192.168.0.103 estadísticas de ping—4 paquetes transmitidos, 4 recibidos, 0% de pérdida de paquetes, tiempo 3029ms rtt min/avg/max/mdev = 0.157/0.402/1.098/0.402 ms 6. Comando Traceroute

Traceroute. es una utilidad de línea de comando para rastrear la ruta completa desde su sistema local a otro sistema de red. Imprime el número de saltos (IP del enrutador) en esa ruta que recorre para llegar al servidor final. Es una utilidad de resolución de problemas de red fácil de usar después del comando ping.

En este ejemplo, estamos rastreando la ruta que toman los paquetes desde el sistema local a uno de los servidores de Google con la dirección IP 216.58. 204,46.

$ traceroute 216.58.204.46. traceroute a 216.58.204.46 (216.58.204.46), 30 saltos máx., paquetes de 60 bytes 1 puerta de enlace (192.168.0.1) 0.487 ms 0.277 ms 0.269 ms 2 5.5. 5.215 (5.5.5.215) 1.846 ms 1.631 ms 1.553 ms 3 * * * 4 72.14.194.226 (72.14.194.226) 3.762 ms 3.683 ms 3.577 ms 5 108.170.248.179 (108.170.248.179) 4.666 ms 108.170.248.162 (108.170.248.162) 4.869 ms 108.170.248.194 (108.170.248.194) 4.245 ms 6 72.14.235.133 (72.14.235.133) 72.443 ms 209.85.241.175 (209.85.241.175) 62.738 ms 72.14.235.133 (72.14.235.133) 65.809 ms 7 66.249.94 .40 (66.249 ms 94.140) 128.726 ms 127.506 ms 209.85.248.5 (209.85.248.5) 127.330 ms 8 74.125.251.181 (74.125.251.181) 127.219 ms 108.170.236.124 (108.170.236.124) 212.544 ms 74.125.251.181 (74.125.251.181) 127.249 ms 9 216.239. 49.134 (216.239.49.134) 236.906 ms 209.85.242.80 (209.85.242.80) 254.810 ms 254.735 ms 10 209.85.251.138 (209.85.251.138) 252.002 ms 216.239.43.227 (216.239.43. 227) 251.975 ms 209.85.242.80 (209.85.242.80) 236.343 ms 11 216.239.43.227 (216.239.43.227) 251.452 ms 72.14.234.8 (72.14.234.8) 279.650 ms 277.492 ms 12 209.85.250.9 (209.85.250.9) 274.550 ms 209.85.253.249 (209.85.253.249) 270.558 ms 13 209.85.250.9 (209.85.250.9) 269.147 ms 209.85.254.244 (209.85.254.244) 347.046 ms 209.85.250.9 (209.85.250.9) 285.265 ms 14 64.233.175.175.1 ( 344.852 ms 216.239.57.236 (216.239.57.236) 343.786 ms 64.233.175.112 (64.233.175.112) 345.273 ms 15108.170.246.129 (108.170.246.129) 345.054 ms 345.342 ms 64.233.175.112 (64.233.175.112) 343.70638.1 ms 108.170.238.119) 345.610 ms 108.170.246.161 (108.170.246.161) 344.726 ms 108.170.238.117 (108.170.238.117) 345.536 ms 17 lhr25s12-in-f46.1e100.net (216.58.204.46) 345.382 ms 345.031 ms 344.884 ms 7. MTR Herramienta de diagnóstico de red

MTR es una moderna herramienta de diagnóstico de red de línea de comandos que combina la funcionalidad de ping y traceroute. en una única herramienta de diagnóstico. Su salida se actualiza en tiempo real, por defecto hasta que salga del programa presionando q.

La forma más fácil de ejecutar mtr. es proporcionarle un nombre de host o dirección IP como argumento, de la siguiente manera.

$ mtr google.com O $ mtr 216.58.223.78 Salida de muestra tecmint.com (0.0.0.0) Thu Jul 12 08:58:27 2018 First TTL: 1 Host Loss% Snt Last Promedio Best Wrst StDev 1. 192.168.0.1 0.0% 41 0.5 0.6 0.4 1.7 0.2 2. 5.5.5.215 0.0% 40 1.9 1.5 0.8 7.3 1.0 3. 209.snat-111-91-120.hns.net.in 23.1% 40 1.9 2.7 1.7 10.5 1.6 4. 72.14.194.226 0.0% 40 89.1 5.2 2.2 89.1 13.7 5. 108.170.248.193 0.0% 40 3.0 4.1 2.4 52.4 7.8 6. 108.170.237.43 0.0% 40 2.9 5.3 2.5 94.1 14.4 7. bom07s10-in-f174.1e100.net 0.0% 40 2.6 6.7 2.3 79.7 16.

Puede limitar el número de pings. a un valor específico y salga de mtr. después de esos pings, usando la bandera-c como se muestra.

$ mtr-c 4 google.com 8. Route Command

route. es una utilidad de línea de comandos para mostrar o manipular la tabla de enrutamiento IP de un sistema Linux. Se utiliza principalmente para configurar rutas estáticas a hosts o redes específicas a través de una interfaz.

Puede ver la tabla de enrutamiento IP del kernel escribiendo.

$ route. Destination Gateway Genmask Indicadores Ref. Métrica Usar puerta de enlace predeterminada de Iface 0.0.0.0 UG 100 0 0 enp0s3 192.168.0.0 0.0.0.0 255.255.255.0 U 100 0 0 enp0s3 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0

Hay numerosos comandos que puede utilizar para configurar el enrutamiento. Aquí hay algunos útiles:

Agregue una puerta de enlace predeterminada a la tabla de enrutamiento.

$ sudo route add default gw

Agregue una ruta de red a la tabla de enrutamiento.

$ sudo route add-net gw

Elimina una entrada de ruta específica de la tabla de enrutamiento.

$ sudo route del-net 9. Comando Nmcli

​​Nmcli es una herramienta de línea de comandos programable y fácil de usar para informar el estado de la red, administrar las conexiones de red y controlar el NetworkManager.

Para ver todos sus dispositivos de red, escriba.

$ nmcli dev status. TIPO DE DISPOSITIVO ESTADO CONEXIÓN virbr0 puente conectado virbr0 enp0s3 ethernet conectado Conexión cableada 1

Para comprobar las conexiones de red en su sistema, escriba.

$ nmcli con show. Conexión cableada 1 bc3638ff-205a-3bbb-8845-5a4b0f7eef91 802-3-ethernet enp0s3 virbr0 00f5d53e-fd51-41d3-b069-bdfd2dde062b bridge virbr0

Para ver solo las conexiones activas, agregue el-una bandera.

$ nmcli con show-a

Herramientas de análisis de rendimiento y escaneo de red

10. Comando Netstat

netstat es una herramienta de línea de comando que muestra información útil como conexiones de red, tablas de enrutamiento, estadísticas de interfaz y mucho más, en relación con el subsistema de red de Linux. Es útil para la resolución de problemas de red y el análisis de rendimiento.

Además, también es una herramienta de depuración de servicios de red fundamental que se utiliza para verificar qué programas están escuchando en qué puertos. Por ejemplo, el siguiente comando mostrará todos los puertos TCP en modo de escucha y qué programas están escuchando en ellos.

$ sudo netstat-tnlp. Conexiones de Internet activas (solo servidores) Proto Recv-Q Send-Q Dirección local Dirección extranjera Estado PID/Nombre de programa tcp 0 0 0.0.0.0:587 0.0.0.0:* LISTEN 1257/master tcp 0 0127.0.0.1:5003 0.0.0.0:* LISTEN 1/systemd tcp 0 0 0.0. 0.0: 110 0.0.0.0:* ESCUCHAR 1015/dovecot tcp 0 0 0.0.0.0:143 0.0.0.0:* ESCUCHAR 1015/dovecot tcp 0 0 0.0.0.0:111 0.0.0.0:* ESCUCHAR 1/systemd tcp 0 0 0.0 .0.0: 465 0.0.0.0:* ESCUCHAR 1257/master tcp 0 0 0.0.0.0:53 0.0.0.0:* ESCUCHAR 1404/pdns_server tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 1064/pure-ftpd (SER tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 972/sshd tcp 0 0127.0.0.1:631 0.0 .0.0: * LISTEN 975/cupsd tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 1257/master tcp 0 0 0.0.0.0:8090 0.0.0.0:* LISTEN 636/lscpd (lscpd-tcp 0 0 0.0. 0.0: 993 0.0.0.0:* ESCUCHAR 1015/dovecot tcp 0 0 0.0.0.0:995 0.0.0.0:* ESCUCHAR 1015/dovecot tcp6 0 0 ::: 3306 ::: * ESCUCHAR 1053/mysqld tcp6 0 0 ::: 3307 ::: * ESCUCHAR 1211/mysqld tcp6 0 0 ::: 587 ::: * ESCUCHAR 1257/master tcp6 0 0 ::: 110 ::: * ESCUCHAR 1015/dovecot tcp6 0 0 ::: 143 ::: * ESCUCHAR 1015/dovecot tcp6 0 0 ::: 111 ::: * ESCUCHAR 1/systemd tcp6 0 0 ::: 80 ::: * ESCUCHAR 990/httpd tcp6 0 0 ::: 465 ::: * ESCUCHAR 1257/master tcp6 0 0 ::: 53 ::: * ESCUCHAR 1404/pdns_server tcp6 0 0 ::: 21 ::: * ESCUCHAR 1064/pure-ftpd (SER tcp6 0 0 ::: 22 ::: * ESCUCHAR 972/sshd tcp6 0 0 :: 1: 631 ::: * ESCUCHAR 975/cupsd tcp6 0 0 ::: 25 ::: * LISTEN 1257/master tcp6 0 0 ::: 993 ::: * LISTEN 1015/dovecot tcp6 0 0 ::: 995 ::: * LISTEN 1015/dovecot

Para ver la tabla de enrutamiento del kernel, use el-r (que es equivalente a ejecutar el comando route. anterior).

$ ss-to 12 NC Command

NC (NetCat), también conocida como la “ Navaja suiza de red. , es una poderosa utilidad que se utiliza para casi cualquier tarea relacionada con TCP, Sockets de dominio UDP o UNIX. Se usa conexiones TCP abiertas, escucha en puertos TCP y UDP arbitrarios, realiza escaneo de puertos y más.

También puede usarlo como proxies TCP simples, para pruebas de demonios de red, para verificar si los puertos remotos están alcanzable y mucho más. Además, puede emplear nc. junto con el comando pv para transferir archivos entre dos computadoras.

El siguiente ejemplo mostrará cómo escanear una lista de puertos.

$ nc-zv server2.tecmint.lan 21 22 80443 3000

También puede especificar un rango de puertos como se muestra.

$ nc-zv server2.tecmint.lan 20-90

El siguiente ejemplo muestra cómo usar nc. para abrir una conexión TCP al puerto 5000. en server2.tecmint.lan. usando el puerto 3000. como puerto de origen, con un tiempo de espera de 10. segundos.

$ nc-p 3000-w 10 server2.tecmint.lan 5000 13. Comando Nmap

Nmap ( Network Mapper. es una herramienta poderosa y extremadamente versátil para administradores de sistemas/redes Linux. Se utiliza para recopilar información sobre un solo host o explorar redes de una red completa. Nmap también se utiliza para realizar escaneos de seguridad, auditorías de red y búsqueda de puertos abiertos en hosts remotos y mucho más.

Puede escanear un host usando su nombre de host o dirección IP, por ejemplo.

$ nmap google.com. Iniciando Nmap 6.40 (http://nmap.org) en 2018-07-12 09:23 BST Informe de escaneo de Nmap para google.com (172.217.166.78) El host está activo ( Latencia de 0,0036 s). Registro rDNS para 172.217.166.78: bom05s15-in-f14.1e100.net No mostrado: 998 puertos filtrados PORT STATE SERVICE 80/tcp open http 443/tcp open https Nmap done: 1 dirección IP (1 host arriba) escaneada en 4.92 segundos

Alternativamente, use una dirección IP como se muestra.

$ nmap 192.168.0.103. Iniciando Nmap 6.40 (http://nmap.org) en 2018-07-12 09:24 BST El informe de escaneo de Nmap para 192.168.0.103 Host está activo (latencia de 0.000051s). No se muestra: 994 puertos cerrados PORT STATE SERVICE 22/tcp open ssh 25/tcp open smtp 902/tcp open iss-realsecure 4242/tcp open vrml-multi-use 5900/tcp open vnc 8080/tcp open http-proxy MAC Address: 28: D2: 44: EB: BD: 98 (Lcfc (hefei) Electronics Technology Co.) Nmap terminado: 1 dirección IP (1 host arriba) escaneada en 0.13 segundos

Lea nuestros siguientes artículos útiles sobre el comando nmap.

  1. Cómo utilizar los scripts de Nmap Script Engine (NSE) en Linux
  2. Una guía práctica para Nmap (Network Security Scanner) en Kali Linux
  3. Descubra todo Direcciones IP de hosts en vivo conectadas a la red en Linux

Utilidades de búsqueda de DNS

14. host Command

host command es una utilidad simple para realizar búsquedas de DNS, traduce nombres de host a direcciones IP y viceversa.

$ host google.com. google.com tiene la dirección 172.217.166.78. El correo de google.com es manejado por 20 alt1.aspmx.l.google.com. 30 alt2.aspmx.l.google.com gestiona el correo de google.com. El correo de google.com lo gestiona 40 alt3.aspmx.l.google.com. 50 alt4.aspmx.l.google.com gestiona el correo de google.com. 10 aspmx.l.google.com gestiona el correo de google.com. 15. dig Command

dig ( dominio de información groper. también es otra utilidad de búsqueda de DNS simple, que se utiliza para consultar información relacionada con DNS, como A Record, CNAME, MX Record, etc., por ejemplo:

Leave a comment

Your email address will not be published. Required fields are marked *