12 julio, 2025

🛡️ Cómo Usar el Comando iptables en Fedora 42 (y Solucionar el Error “orden no encontrada”)

Fedora 42 adopta por defecto nftables como sistema de firewall moderno, reemplazando al tradicional iptables. Sin embargo, muchos scripts, guías y configuraciones de red aún utilizan directamente comandos iptables. Si al intentar ejecutar una regla como esta:

iptables -A INPUT -s 123.123.123.123 -j ACCEPT

te encuentras con el error:

bash: iptables: orden no encontrada

¡no estás solo! En este artículo veremos por qué ocurre esto, cómo solucionarlo y cómo asegurarte de que iptables funcione correctamente en Fedora 42.


🔍 ¿Por qué no se encuentra iptables?

Fedora 42 instala por defecto el paquete iptables-nft, que es una versión de iptables que utiliza nftables internamente. Sin embargo, en algunos casos el binario real (/usr/sbin/iptables) no se instala correctamente o no se encuentra en tu PATH.

Verificando el problema

Si ya tienes iptables-nft instalado pero el comando no funciona:

sudo dnf install iptables-nft

Y aún obtienes:

bash: iptables: orden no encontrada

Puedes verificar si el binario existe con:

sudo find / -name iptables 2>/dev/null

Si no ves una ruta como /usr/sbin/iptables, es claro que el binario no está presente.


✅ Solución Paso a Paso

1. Usar correctamente el entorno root

Si estás trabajando como superusuario, asegúrate de usar:

su -

y no simplemente su, ya que su no carga el entorno completo (incluyendo PATH).


2. Reinstalar el paquete iptables-nft

Para asegurarte de que todos los archivos estén correctamente instalados:

sudo dnf reinstall iptables-nft

Esto debería restaurar cualquier binario faltante como /usr/sbin/iptables.


3. Instalar el paquete iptables base

Si la reinstalación anterior no resuelve el problema, instala el paquete iptables base:

sudo dnf install iptables

Este paquete incluye el comando clásico, pero en Fedora 42 se configura para usar nftables por debajo, manteniendo compatibilidad con scripts antiguos.


4. Verifica la instalación

Una vez instalado correctamente, prueba:

which iptables
iptables --version

La salida debería ser algo como:

/usr/sbin/iptables
iptables v1.8.x (nf_tables)

Esto indica que estás usando la versión compatible con nftables.


📦 ¿Y qué pasó con iptables-nft-services?

En versiones anteriores de Fedora o en otras distribuciones, el paquete iptables-nft-services podía estar disponible. En Fedora 42:

sudo dnf install iptables-nft-services

da como resultado:

No match for argument: iptables-nft-services

Esto es normal: el paquete ya no existe en los repositorios actuales de Fedora.


🧠 Consejo final: Considera usar firewalld o nftables directamente

Si estás empezando una nueva configuración de firewall y no dependes de scripts heredados, considera usar:

  • firewall-cmd (interfaz de firewalld)
  • o directamente nft (interfaz de nftables)

Son más modernos, fáciles de mantener y están mejor integrados en Fedora.


✅ Conclusión

Aunque iptables no viene listo para usar en Fedora 42 como en versiones anteriores, aún puedes instalarlo fácilmente y hacerlo funcionar. Asegúrate de usar el entorno root correcto, reinstala los paquetes necesarios, y si lo prefieres, considera migrar a nftables o firewalld.


¿Tienes scripts que usas con iptables o con nftables?

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *