OpenWrt: Control Parental II, matando conexiones

2019-08-26

En este artículo vimos como controlar los dispositivos conectados a nuestro router, administrar en que horario se podían conectar a Internet, que tipo de contenido ver, etc, utilizando dnsmasq. Pero este método tenia un problema, y es que no desconectaba los dispositivos que ya tenían una conexión activa en el router.

Esto lo podemos solucionar creando un sencillo script y utilizando cron para programar su ejecución cada 20 minutos, o el tiempo que tu quieras establecer, para volver a ordenar las reglas del cortafuegos.

Script

Creamos el fichero /etc/cronfw.sh e insertamos el siguiente script:

#!/bin/sh

# Insert rule for forwarding established connection traffic, just before the final rule (reject)
new_rule_num=$(iptables -v -L FORWARD --line-numbers | grep reject | cut -d ' ' -f 1)
iptables -I FORWARD $new_rule_num -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

# Delete first rule for forwarding established connection traffic
old_rule_num=$(iptables -v -L FORWARD --line-numbers | grep ESTABLISHED | cut -d ' ' -f 1 | sed -n 1p)
iptables -D FORWARD $old_rule_num

# Get rid of any duplicate ESTABLISHED rules (these seem to be caused when restarting the firewall)
est_count=$(iptables -v -L FORWARD --line-numbers | grep ESTABLISHED | wc -l)
while [ $est_count -gt 1 ]; do
      old_rule_num=$(iptables -v -L FORWARD --line-numbers | grep ESTABLISHED | cut -d ' ' -f 1 | sed -n 1p)
      iptables -D FORWARD $old_rule_num
      est_count=$(iptables -v -L FORWARD --line-numbers | grep ESTABLISHED | wc -l)
done

y le damos permisos de ejecución

chmod +x /etc/cronfw.sh

Cron

Ahora vamos a SistemaTareas programadas

e insertamos la siguiente línea:

*/20 * * * * /etc/cronfw.sh

Esto hará que se ejecute cada 20 minutos

Nos aseguráramos de que el cron esté habilitado, en SistemaInicioRearrancar

Si no funciona asegúrate de que tienes instalado el paquete ipset

Espero que te haya gustado, pasa un buen día.

Fuente:

Espero que te haya gustado, pasa un buen día. :penguin:

Ingrese la dirección de su instancia


Más publicaciones como esta

Asus RT-AC68U: Instalación de Transmission

2019-02-11 | #router #torrent

Si hemos instalado Entware en nuestro router, tenemos la posibilidad de instalar diverso software y scripts. Si además le conectamos un disco USB podemos utilizarlo junto a Transmission para descargar torrents. Instalación La instalación de software se hace desde la terminal del router, así que debemos conectarnos vía SSH e introducir el siguiente comando: opkg install transmission-web transmission-daemon-openssl transmission-remote-openssl Cuando termine la instalación de los paquetes debemos de parar el servicio con el comando /opt/etc/init.

Continuar leyendo 


OpenWrt: Preservar la privacidad cifrando peticiones DNS (DNSCrypt)

2018-04-26 | #router

DNSCrypt nos ayuda a preservar nuestra privacidad ya que permite cifrar el tráfico DNS entre nosotros y nuestro proveedor de internet, si no sabes muy bien de lo que estoy escribiendo te recomiendo la lectura de este articulo Instalación La instalación es muy sencilla, instalamos el paquete y sus dependencias: opkg update opkg install dnscrypt-proxy Instalamos el paquete para poder administrar DNSCrypt mediante LuCI opkg install luci-app-dnscrypt-proxy Tras la instalación, podemos ver el nuevo servicio en LuCI

Continuar leyendo 