Ok, respondendo minha própria pergunta:
O Squid permite que você defina os TOS em seus pacotes de saída. A configuração é
tcp_outgoing_tos. Portanto, crie um acl com os IPs ou domínios permitidos e defina, por exemplo, tcp_outgoing_tos 0x10 whitelist
Os pacotes de outras aplicações normalmente possuem TOS 0x0.
Agora siga as etapas no próprio tutorial do squid link , mas em vez de corresponder ao proprietário do pacote , nós combinamos com o TOS.
# handle connections on the same box (SQUIDIP is a loopback instance)
iptables -t nat -A OUTPUT -p tcp --dport 80 -m tos --tos 0x10 -j ACCEPT
iptables -t nat -A OUTPUT -p tcp --dport 80 -j DNAT --to-destination SQUIDIP:3127
Ao usar o csf, talvez seja necessário aceitar também esses pacotes na cadeia OUTPUT da tabela de filtros. Coloque a regra no começo da cadeia.
iptables -I OUTPUT -p tcp --dport 80 -m tos --tos 0x10 -j ACCEPT