Por si alguien lo necesita y se puede evitar la cantidad de vueltas que yo he dado para poder instalar y configurar el firewall.
Más o menos las situación que podemos tener es la siguiente:
Deco dentro de una lan del tipo 192.168.1.0/24
Wifi interna separada de la lan, con otro rango de ip del tipo 192.168.2.0/24
Queremos tener abiertos los puertos del deco, 20,21 22,23,80,8001,8002 y alguno más, para que se pueda controlar desde el exterior
Queremos evitar que alguien no deseado, pueda conectarse en streaming, o pueda entrar al deco y sacar información
Instalamos firewall en el el deco.
Hay por lo menos dos formas de hacerlo.
1-Desde el propio deco:
Menú-Complementos-Descarga-Security-Firewall- Instalar
2-Abriendo sesión telnet (red interna):
Si se va a hacer desde el propio deco, hay que abrir sesión telnet previamente y
asegurarse de que está abierta antes de instalar el firewall, porque luego no nos va a
dejar conectarnos, debido a que las opciones por defecto del firewall prohíben el acceso a todas las
conexiones nuevas.
En este caso lo vamos a hacer pot telnet.
Una vez abierta sesión, tecleamos el comando de antes:
Si todo ha ido bien, ya tenemos el firewall instalado y corriendo.
Podemos verlo si ponemos:
Nos muestra el listado de reglas del firewall
También con:
Vamos a detener la ejecución del firewall con:
Lo siguiente es editar el archivo firewall y el archivo firewall.users
Para el archivo firewall:
Una vez abierto, pasamos a modeo edición, por ejemplo pulsando la tecla a
Nos situamos donde dice
Y cambiamos el 0 por un 1, para que quede así:
Salimos del modo edición con la tecla escape
Tecleamos :wq (los 3 caracteres) para que guarde los cambios y cierre
Ahora podemos arrancar de nuevo el firewall
Tecleamos iptables -n -L
Podemos ver que se ha añadido a las direcciones permitidas todas las de la red Lan en la que se encuentra el deco
Vamos a por el fichero firewall.users, lo editamos del mismo modo que hicimos antes:
Tecla a para editar, :wq para salir y guardar
Dentro de este fichero podemos añadir las direcciones ip o dominios que queremos que tengan acceso al deco.
Si por ejemplo queremos tener acceso desde toda la red wifi, que tenemos separada de nuestra Lan, debemos añadir al fichero la siguiente línea:
192.168.2.0/24
Si queremos que sea un dispositivo en concreto de la wifi:
192.168.2.2
Si queremos permitir que un dominio tenga acceso, basta con añadirlo
Podría quedar algo así:
Una vez añadidas todas las líneas que queramos, salimos del modo edición con escape y luego :wq para guardar cambios y cerrar.
Solamente nos queda reiniciar el firewall para que vuelva a leer el fichero firewall.users con la nueva configuración,
para hacerlo tecleamos
Ahora podemos comprobar de nuevo las reglas con iptables -n -L
Aquí un ejemplo:
Si todo ha ido bien ya tenemos el firewall configurado y podemos dejar los puertos abiertos sin miedo a accesos indeseados.
Si añadimos un dominio de tipo ddns al fichero firewall.users, cuando se renueve la ip dejará de tener acceso, para que vuelva a tener acceso hay que hacer /etc/init.d/firewall restart
Eso podríamos añadirlo al cron para que se ejecutara cada 15 minutos por ejemplo y listo.
El hecho de tener que hacer -firewall restart- implica desactivar el firewall y volver a arrancarlo, cosa que no me gusta demasiado, porque creo que podría permitir el acceso desde el exterior un instante y no sé si sería suficiente para que en ese momento se establezca alguna conexión no deseada.
Podría evitarse con algún script que renovara las reglas de iptables sin necesidad de hacer el restart del firewall.
Estoy en ello, lo subiré en breve...
Un saludo!
PD. Por supuesto abierto a sugerencias, mejoras, y si hay errores no era mi intención.
Más o menos las situación que podemos tener es la siguiente:
Deco dentro de una lan del tipo 192.168.1.0/24
Wifi interna separada de la lan, con otro rango de ip del tipo 192.168.2.0/24
Queremos tener abiertos los puertos del deco, 20,21 22,23,80,8001,8002 y alguno más, para que se pueda controlar desde el exterior
Queremos evitar que alguien no deseado, pueda conectarse en streaming, o pueda entrar al deco y sacar información
Instalamos firewall en el el deco.
Hay por lo menos dos formas de hacerlo.
1-Desde el propio deco:
Menú-Complementos-Descarga-Security-Firewall- Instalar
2-Abriendo sesión telnet (red interna):
Código:
ipkg install enigma2-plugin-security-firewall
asegurarse de que está abierta antes de instalar el firewall, porque luego no nos va a
dejar conectarnos, debido a que las opciones por defecto del firewall prohíben el acceso a todas las
conexiones nuevas.
En este caso lo vamos a hacer pot telnet.
Una vez abierta sesión, tecleamos el comando de antes:
Código:
ipkg install enigma2-plugin-security-firewall
Podemos verlo si ponemos:
Código:
iptables -n -L
También con:
Código:
/etc/init.d/firewall status
Código:
/etc/init.d/firewall stop
Para el archivo firewall:
Código:
vi /etc/init.d/firewall
Nos situamos donde dice
Código:
ALLOW_LAN_ACCESS="0"
Código:
ALLOW_LAN_ACCESS="1"
Tecleamos :wq (los 3 caracteres) para que guarde los cambios y cierre
Ahora podemos arrancar de nuevo el firewall
Código:
/etc/init.d/firewall start
Podemos ver que se ha añadido a las direcciones permitidas todas las de la red Lan en la que se encuentra el deco
Vamos a por el fichero firewall.users, lo editamos del mismo modo que hicimos antes:
Código:
vi /etc/firewall.users
Dentro de este fichero podemos añadir las direcciones ip o dominios que queremos que tengan acceso al deco.
Si por ejemplo queremos tener acceso desde toda la red wifi, que tenemos separada de nuestra Lan, debemos añadir al fichero la siguiente línea:
192.168.2.0/24
Si queremos que sea un dispositivo en concreto de la wifi:
192.168.2.2
Si queremos permitir que un dominio tenga acceso, basta con añadirlo
Podría quedar algo así:
Código:
192.168.2.0/24
midominiodefiar.com
Solamente nos queda reiniciar el firewall para que vuelva a leer el fichero firewall.users con la nueva configuración,
para hacerlo tecleamos
Código:
/etc/init.d/firewall restart
Aquí un ejemplo:
Código:
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
ACCEPT all -- 127.0.0.1 0.0.0.0/0
ACCEPT all -- 192.168.1.0/24 0.0.0.0/0
ACCEPT all -- 192.168.2.0/24 0.0.0.0/0
Chain FORWARD (policy DROP)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state NEW,ESTABLISHED
Si añadimos un dominio de tipo ddns al fichero firewall.users, cuando se renueve la ip dejará de tener acceso, para que vuelva a tener acceso hay que hacer /etc/init.d/firewall restart
Eso podríamos añadirlo al cron para que se ejecutara cada 15 minutos por ejemplo y listo.
El hecho de tener que hacer -firewall restart- implica desactivar el firewall y volver a arrancarlo, cosa que no me gusta demasiado, porque creo que podría permitir el acceso desde el exterior un instante y no sé si sería suficiente para que en ese momento se establezca alguna conexión no deseada.
Podría evitarse con algún script que renovara las reglas de iptables sin necesidad de hacer el restart del firewall.
Estoy en ello, lo subiré en breve...
Un saludo!
PD. Por supuesto abierto a sugerencias, mejoras, y si hay errores no era mi intención.