YouTube tiltás [megoldva]

Üdv!

Adva van egy openwrt-s router.
Le tudom valahogy tiltani megadott Mac address-re a youtube elérést?

Köszönöm!

Hozzászólások

Teljesen? Nem. Kimegy VPN-re és onnan megnézni. Operába be is van építve, csak aktiválnia kell.
Milyen szinten kell tiltani (ki a cégközönség)?

Egyébként legegyszerűbb megoldás (láma célközönségnek DNS hijacking nélkül):
1. DHCP-vel mindenkinek normál (mondjuk szolgáltató, Google) DNS szerverek, kivétel az adott MAC neki a router címét osztod ki
2. Routeren DNS alapú adblock szűrőben felveszed Google címeit (például https://github.com/openwrt/packages/blob/master/net/simple-adblock/file…)

L7 szűrésre képes web gw/proxy, ssl bontással.

Sokba fog kerülni, pénzben vagy időben.

Szia!

MAC address alapján nem, de ha DHCP-vel fix ip-t állítasz be arra a gépre/gépekre amin szűrni akarsz, akkor megoldható.

Ez a megoldás nem 100%-os, mivel ha PROXY/Tunnel-t használ akkor nem működik, de ilyet alap user nem ismer.:)

dnsutils csomagra szükség lesz (host parancs).



## domain-ek amiket blokkolni akarsz ##
--> /etc/iptables/blacklist
----------------------------------
youtube.com
www.youtube.com
----------------------------------

## ip címek amikről ne működjön ##
--> /etc/iptables/blackips
----------------------------------
192.168.0.100
192.168.0.120
192.168.0.130
----------------------------------

--> /etc/iptables/blacklist.1 (rendezéshez kell)
--> /etc/iptables/blacklist.2 (rendezéshez kell)
--> /etc/iptables/blacklist.3 (rendezéshez kell)

## Ezt CRON-ba berakod, futtassa pl.: 60 percenként ##
--> /etc/init.d/iptables_blacklist.sh
----------------------------------------------
***initd-header***

s_blackips="/etc/iptables/blackips"
s_blacklist="/etc/iptables/blacklist"
s_blacklist_1="/etc/iptables/blacklist.1"
s_blacklist_2="/etc/iptables/blacklist.2"
s_blacklist_3="/etc/iptables/blacklist.3"
s_nat_interface="eth1"

f_main_init() {
    cat /dev/null > ${s_blacklist_1}
    cat /dev/null > ${s_blacklist_2}
    cat /dev/null > ${s_blacklist_3}
}

f_main_blacklist_gen() {

   cat ${s_blacklist} | while read line; do
   {
     ## ipv4 address ##
     s_temp1=$(host -4 ${line})
     echo ${s_temp1} | while read mine;do
     {
       s_temp2=$(echo ${mine}| grep -ice "has address")
       if [ ${s_temp2} -eq 1 ];then
       {
          echo ${mine} | grep -i "has address" | cut -d" " -f4 >> "${s_blacklist_1}"
       }
       fi
     }
     done
   }
   done

  ## Rendezés / Szűrés ##
  sort "${s_blacklist_1}" -o "${s_blacklist_2}"
  uniq "${s_blacklist_2}" > "${s_blacklist_3}"

  ## local ipv4 címek kiszűrése ##
  sed -i -e '/^0\./d' "${s_blacklist_3}"
  sed -i -e '/^10\./d' "${s_blacklist_3}"
  sed -i -e '/^127\./d' "${s_blacklist_3}"
  sed -i -e '/^169\.254\./d' "${s_blacklist_3}"
  sed -i -e '/^172\.(16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31)/d' "${s_blacklist_3}"

}

f_main_blacklist_load() {

iptables -t nat -F
iptables -t nat -X

cat ${s_blackips} | while read line; do
{
    cat ${s_blacklist_3} | while read mine; do
    {
       iptables -t nat -A POSTROUTING -o ${s_nat_interface} -s ${line} -d ${mine} -j DROP
    }
    done
}
done

 iptables -t nat -A POSTROUTING -o ${s_nat_interface} -j MASQUAERADE

}


##########
## MAIN ##
##########

case $1 in
      start)
         f_main_init
         f_main_blacklist_gen
         f_main_blacklist_load
         exit 0
      ;;
     *)
         echo "Usage: start"
         exit 2
     ;;
esac

---------------------------------------------