Couper l’ac­cès wifi d’un appa­reil la nuit avec OpenWRT

Mon fils possède plusieurs appa­reils suscep­tibles d’al­ler sur Inter­net. Comme je ne suis pas dans sa chambre la nuit, comment faire pour s’as­su­rer qu’il ne va pas passer sa nuit à regar­der des vidéos sur Youtube ? En lui coupant l’ac­cès à Inter­net, pardi.

Oui, je sais, confiance, tous­sa… mais bon, j’ai été jeune moi aussi, et je sais bien qu’on est toujours tenté d’en­freindre les règles… surtout quand c’est aussi simple que se cacher avec son machin sous la couette ūüôā (moi c’était une lampe et un bouquin, mais c’est moins discret, la lumière passant géné­ra­le­ment en dessous de la porte.

On peut géné­ra­le­ment, avec les box des FAI clas­siques, choi­sir des plages d’ac­ti­va­tion du wifi. Mais j’ai envie d’avoir du wifi tard le soir, moi ! Et de toute façon, je n’uti­lise pas de box d’un FAI clas­sique : j’uti­lise un VPN chez LDN grâce à mon nouveau jouet que j’aime d’amour, le Turris Omnia qui utilise OpenWRT.

Du coup, c’est assez simple : il suffit de rele­ver l’adresse MAC de l’ap­pa­reil à bloquer et d’ajou­ter cette règle à /etc/config/firewall :

config rule
    option src 'lan'
    option dest '*' 
    option src_mac 'XX:XX:XX:XX:XX:XX'
    option proto 'tcp udp'
    option start_time '20:30'
    option stop_time '07:30'
    option weekdays 'mon tue wed thu fri sat sun'
    option target 'REJECT'
    option name 'Parental control'

Un petit /etc/init.d/firewall restart, et hop ! C’est tout bon ūüôā

Edit : Sango­kuss vient de m’in­for­mer que luci-app-wifi-sche­dule peut faire le job d’une box clas­sique pour défi­nir des plages d’ac­ti­va­tion du wifi sur le système LEDE (basé sur OpenWRT). Ça n’est pas dans les dépôts de mon OpenWRT, et ça ne corres­pond pas à mon besoin, mais ça peut être utile ūüôā