Mauro, a não ser que eu esteja redondamente enganado, a única maneira de vc fazer isso com proxy transparente é usando uma função do squid (tem nas versões mais recentes) chamada SSL_BUMP, na qual vc usa um certificado para fazer todo o tráfego, inclusive o HTTPS passar pelo proxy transparente.
Uma solução mais eficiente, que oferece um certo nível de transparência é usar o WPAD. Com ele, o proxy não vai ser transparente, mas vai ser configurado automaticamente para o usuário, o que na maioria das vezes é bom o suficiente.
Soluções baseadas em strings ou ranges no iptables geralmente são mto custosas e/ou ineficientes. Os ips do facebook não são sempre os mesmos e processar as strings no iptables é custoso (cpu) e nem sempre funciona como o esperado.