Curitiba/PR Contato
Administração e Suporte em Ti
O script abaixo foi adicionado em regras já existentes de firewall com iptables.
O teste foi realizado satisfatoriamente com o CentOS 6.8 
Como root instalar o jwhois.
yum install jwhois -y
mkdir -p /scripts
Inserir as seguintes linhas...

whois -h whois.radb.net '!gAS32934' | tr ' ' '\n' | grep ^[0-9] > /scripts/facebook_ip
for i in $(cat /scripts/facebook_ip); do
 # se deseja bloqueio para todos, na rede descomente a linha abaixo
   # route add -net $i reject;
 # se desejar bloquear pelo iptables, descomente as linhas abaixo;
 # os "MACs" são exemplos de macs que devem ter acesso, excluindo os demais
 iptables -I INPUT -d $i -j DROP ;
 iptables -I INPUT -m mac --mac-source bc:5f:f4:46:94:ce -d $i -j ACCEPT ;
 iptables -I INPUT -m mac --mac-source 10:78:d2:bd:34:58 -d $i -j ACCEPT ;
 iptables -I FORWARD -d $i -j DROP;
 iptables -I FORWARD -m mac --mac-source 10:78:d2:bd:34:58 -d $i -j ACCEPT ;
 iptables -I FORWARD -m mac --mac-source bc:5f:f4:46:94:ce -d $i -j ACCEPT ;
done


Ao listar as regras do iptables, os endereços macs liberados devem aparecer antes das regras de bloqueio
Ex:
[root@servidor scripts]# iptables -L INPUT -n -v
Chain INPUT (policy ACCEPT 7384K packets, 1140M bytes)
 pkts bytes target prot opt in out source destination
 0 0 ACCEPT all -- * * 0.0.0.0/0 69.63.176.0/20 MAC 10:78:D2:BD:34:58
 0 0 ACCEPT all -- * * 0.0.0.0/0 69.63.176.0/20 MAC BC:5F:F4:46:94:CE
 0 0 DROP all -- * * 0.0.0.0/0 69.63.176.0/20
 0 0 ACCEPT all -- * * 0.0.0.0/0 173.252.96.0/19 MAC 10:78:D2:BD:34:58
 0 0 ACCEPT all -- * * 0.0.0.0/0 173.252.96.0/19 MAC BC:5F:F4:46:94:CE
 0 0 DROP all -- * * 0.0.0.0/0 173.252.96.0/19