Como posso controlar a banda por usuário ? Vi que no dhcpd.conf tem como fixar o IP através do MAC address, seria um começo ? existe um aplicativo algo como o webmin para que eu posso ver gráficos da conexão ou coisas do gênero para gerenciar os usuários ?
O squid permite que vc faça autenticação dos usuários. Nesse caso, uma vez identificado o usuário, vc pode colocá-lo em um perfil de "delay pool".
Não sei se há algum aplicativo que faça esse controle no nível que vc deseja.
Toda a parte de limitações da banda (P2P por exemplo) é feita por IPTables ?
Até onde eu sei, nenhuma limitação de banda é feita pelo iptables. Isso é coisa de outros aplicativos. O iptables até auxilia, fazendo a marcação dos pacotes que precisam ser priorizados, mas a rigor a limitação de banda, em si, é feita pelo kernel em outro módulo que não o netfilter.
Qual é a melhor configuração para o cachê no squid ?
O Squid trabalha com dois caches, um em memória, outro em disco. O tamanho ideal de cada um varia de acordo com o tamanho de sua rede.
Eu acredito que 1GB de memória e 5GB para o disco já seja um bom ponto de partida para uma rede de bom tamanho.
Sobre a memória, uma dica: o Squid usa mais memória além do cache. Além disso, o sistema operacional em si também gasta memória. Eu sugiro não definir cache maior do que 50% da memória física da máquina. Mas qualquer que seja o tamanho do cache definido, é preciso observar e ajustar sempre, para evitar que seu sistema comece a usar Swap (memória virtual).