Somente a questão do SQUID ainda não está muito clara. Preciso que:
1 - Se o usuário não colocar o proxy no navegador, não consiga navegar nem em http e nem em https ![Zangado >:(](https://ubuntuforum-br.org/Smileys/default/angry.gif)
Mole: Bloqueie tudo que vá passar da rede interna pra externa.
iptables -A FORWARD -p tcp -j DROP
Depois libere só os acessos legítimos, tipo, correio eletrônico:
iptables -A FORWARD -p tcp --dport 25 -j ACCEPT
Só tenha cuidado que, apesar de eu ter dito "depois", a regra de liberação tem que vir antes, no script.
2 - Se o usuário não colocar o proxy no navegador, possa utilizar o compartilhamento samba da rede e o ssh normalmente ![Sorriso forçado ;D](https://ubuntuforum-br.org/Smileys/default/grin.gif)
Seu script de firewall só vai controlar o que passar pelo firewall; compartilhamentos samba da rede não passam pelo firewall, a menos que o servidor de arquivos seja justamente o firewall. Nesse caso, é um tráfego que está entrando (INPUT), não atravessando (FORWARD). É só incluir a liberação na cadeia correta.
Sobre o ssh... é pra liberar ssh no servidor, ou pra fora?
![Hein??? ???](https://ubuntuforum-br.org/Smileys/default/huh.gif)
3 - Se o usuário colocar o proxy no navegador, todas suas requisições passem pelo SQUID, sem usuário e senha. ![Rolar os Olhos ::)](https://ubuntuforum-br.org/Smileys/default/rolleyes.gif)
iptables -A INPUT -p tcp --dport 3128 -j ACCEPT
![Piscar ;)](https://ubuntuforum-br.org/Smileys/default/wink.gif)
Ah!!! Informe-se sobre o WPAD. Assim o usuário não vai precisar colocar o proxy no navegador: basta selecionar "detectar automaticamente".