gestion de redes
Gestión de redes
Section titled “Gestión de redes”Interfaces e IP
Section titled “Interfaces e IP”ip a # ver interfaces y direcciones IP (forma moderna)ip addr show eth0 # solo una interfazifconfig # forma clásica, puede no venir instalada por defecto
ip link set eth0 up # levantar interfazip link set eth0 down # bajar interfazip route # tabla de rutasip route show default # solo la puerta de enlace por defectoroute -n # forma clásicaConexiones activas y puertos en escucha: ss / netstat
Section titled “Conexiones activas y puertos en escucha: ss / netstat”ss -tln # puertos TCP en escucha (t=tcp, l=listen, n=numérico)ss -tlnp # igual, + proceso que lo escucha (necesita privilegios para verlo todo)ss -tunap # todas las conexiones TCP y UDP, con procesonetstat -tlnp # equivalente clásico, puede no estar instaladoLectura rápida de ss -tlnp
Section titled “Lectura rápida de ss -tlnp”State Local Address:Port ProcessLISTEN 0.0.0.0:22 sshdLISTEN 127.0.0.1:3306 mysqld0.0.0.0 = escucha en todas las interfaces. 127.0.0.1 = solo accesible localmente.
ping y traceroute
Section titled “ping y traceroute”ping -c 4 8.8.8.8 # 4 paquetes y para (sin -c, no para nunca)ping -c 1 -W 1 host # 1 paquete, timeout de 1 segundo — útil en scriptstraceroute 8.8.8.8 # ruta de saltos hasta el destinomtr 8.8.8.8 # traceroute + ping continuo combinadosdig y nslookup
Section titled “dig y nslookup”dig dominio.com # consulta DNS completadig +short dominio.com # solo la respuesta, sin cabeceradig dominio.com MX # tipo de registro concretodig -x 8.8.8.8 # resolución inversa (IP a nombre)nslookup dominio.com # alternativa más antiguahost dominio.com # forma rápida y simplecurl y wget básicos
Section titled “curl y wget básicos”curl -I https://dominio.com # solo cabeceras (HEAD)curl -s https://dominio.com # silencioso, sin barra de progresocurl -s ifconfig.me # ver IP pública propiawget https://dominio.com/fichero # descargar un ficherohostname y resolución local
Section titled “hostname y resolución local”hostname # nombre del equipohostname -I # IPs asignadas, forma rápidacat /etc/hosts # resolución local de nombresFirewall: iptables, nftables y ufw
Section titled “Firewall: iptables, nftables y ufw”iptables (el clásico, aún muy presente)
Section titled “iptables (el clásico, aún muy presente)”iptables -L # listar reglas activasiptables -L -v -n # con contadores y sin resolver DNS (más rápido y claro)iptables -L -n --line-numbers # con número de línea, útil para borrar reglas concretas
iptables -A INPUT -p tcp --dport 22 -j ACCEPT # permitir entrada por el puerto 22iptables -A INPUT -s 192.168.1.10 -j DROP # bloquear todo el tráfico de una IPiptables -A INPUT -p tcp --dport 80 -j DROP # bloquear el puerto 80iptables -D INPUT 3 # borrar la regla número 3 de la cadena INPUT
iptables -P INPUT DROP # política por defecto: descartar todo lo no permitido explícitamenteiptables -F # vaciar todas las reglas (flush) — cuidado, deja el firewall abierto| Cadena | Para qué tráfico |
|---|---|
INPUT |
Tráfico entrante hacia esta máquina |
OUTPUT |
Tráfico saliente desde esta máquina |
FORWARD |
Tráfico que atraviesa esta máquina (routing/NAT) |
# Guardar reglas para que sobrevivan a un reinicio (Debian/Ubuntu)apt install iptables-persistentnetfilter-persistent savenftables (sucesor moderno de iptables)
Section titled “nftables (sucesor moderno de iptables)”nft list ruleset # ver todas las reglas activasnft list tables # listar tablas
nft add table inet filternft add chain inet filter input { type filter hook input priority 0 \; }nft add rule inet filter input tcp dport 22 acceptnft add rule inet filter input drop{% hint style=“info” %} nftables sustituye a iptables en distros modernas, pero la sintaxis de iptables se sigue viendo muchísimo en guías, CTFs y sistemas en producción. Vale la pena conocer ambos. {% endhint %}
ufw (Uncomplicated Firewall, capa simplificada sobre iptables)
Section titled “ufw (Uncomplicated Firewall, capa simplificada sobre iptables)”ufw status # ver estado y reglasufw status verbose # con más detalle
ufw enable # activar el firewallufw disable # desactivar
ufw allow 22 # permitir un puertoufw allow 22/tcp # permitir un puerto + protocolo concretoufw allow from 192.168.1.10 # permitir todo el tráfico de una IPufw deny 80 # bloquear un puertoufw delete allow 22 # borrar una regla
ufw default deny incoming # política por defecto: denegar entranteufw default allow outgoing # política por defecto: permitir salienteComprobar qué está realmente filtrando el tráfico
Section titled “Comprobar qué está realmente filtrando el tráfico”# Ver si un puerto está realmente alcanzable desde fuera (no solo si el servicio escucha)nmap -p 22 <tu_ip_publica>
# Ver reglas activas del kernel, independientemente de la herramienta usada para crearlasiptables -L -n -vEscaneo rápido de puertos sin nmap
Section titled “Escaneo rápido de puertos sin nmap”nc -zv 192.168.1.1 1-100 # netcat en modo escaneo (z=sin enviar datos, v=verbose)timeout 1 bash -c "</dev/tcp/192.168.1.1/22" && echo "abierto" # bash puro, sin herramientas extra