# iptables error al ejecutar iptables

## yjas

Hola tengo problemas al tratar de abrir un puerto en un server virtual con iptables. Quiero abrir el puerto 9001. 

ejecuto el comando siguiente para abrir el puerto 

iptables -A INPUT -p tcp --dport 9001 -j ACCEPT  

y me lanza este error. 

iptables v1.4.21: can't initialize iptables table `filter': Permission denied (you must be root)

Perhaps iptables or your kernel needs to be upgraded.

cuando entro al server por ssh entro como root por que me lanza permiso denegado. 

Saludos.

----------

## esteban_conde

iptables te dice que ejecutes  el comando como root.

Por otro lado ahora leo que has entrado al server por ssh y como root, la segunda posibilidad también plausible es que no tienes iptables compilado en el kernel.

----------

## rafiki21

Hola, como menciona esteban_conde, lo mas seguro es que no tengas los módulos de iptables, si compilaste el kernel de forma manual necesitaras revisar los apartados de dichos módulos y habilitarlos o en el caso de haber compilado con genkernel no tendrías ese problema y si acaso solo con la integración de NAT para ipv4

Revisa la guía de instalación:  

https://wiki.gentoo.org/wiki/Iptables

Prueba ingresando esta regla como root:

```
iptables -A INPUT -p tcp --dport 9001 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
```

----------

## Fitap

 *rafiki21 wrote:*   

> Hola, como menciona esteban_conde, lo mas seguro es que no tengas los módulos de iptables, si compilaste el kernel de forma manual necesitaras revisar los apartados de dichos módulos y habilitarlos o en el caso de haber compilado con genkernel no tendrías ese problema y si acaso solo con la integración de NAT para ipv4
> 
> Revisa la guía de instalación:  
> 
> https://wiki.gentoo.org/wiki/Iptables
> ...

 

Perdon por el Off-topic, en la wiki de iptables se habla de como configurar el kernel client y el kernel del router, a que se refiere con configurar el kernel del router? hay que compilar el kernel del router tambien?

----------

## esteban_conde

Hay que compilar iptables, nat, masquerade ... lo que necesites en tu ordenador, hay muchas opciones y cada uno debe seleccionar lo que necesite.

El router (elemento que te proporcionan las operadoras) es otra cosa pero ahí solo puedes seleccionar o deseleccionar entrando a el mediante una IP normalmente por defecto traen la 192.168.1.1.

----------

## quilosaq

 *Fitap wrote:*   

> ...a que se refiere con configurar el kernel del router?...

 

https://wiki.gentoo.org/wiki/Iptables#Router

En este apartado se indica la configuración que se recomienda para construir el kernel de un equipo que vaya a realizar la función de router (router software) para otros equipos de su red y en el que se quiera instalar iptables. No tiene nada que ver con el kernel de los routers (hardware) domésticos para acceso a internet.

https://wiki.gentoo.org/wiki/Iptables#Client

Esta otra configuración de kernel es la recomendada para equipos que vayan a tener instalado iptables pero que se conecten a internet a traves de otros dispositivos sean routers software o hardware.

----------

