We are a small office of 20 users. Our current network is like below. We have a static IP on the Wireless Router's WAN port.Local network <-> Wireless Router <-> Cable InternetI want to put in a Linux box that will run Squid and ownCloud, like below. The ISP's static IP will shift to the Linux box, which will connect to the router's WAN port.Local network <-> Wireless Router <-> Linux box <-> Cable InternetIs it possible to configure Squid such that users who connect to the Router do not have to configure any proxy for themselves but (and?) are forced to go through the proxy?I want to set up whitelists for certain users. Is it possible to enforce whitelists based on ACLs?How will the ACLs work on mobile devices? 
What is the correct way of setting up a Squid Proxy in front of wireless router
squid
I think this article will include everything you need.http://www.deckle.co.uk/squid-users-guide/transparent-caching-proxy.htmlAnd yes, squid is often used as a transparent proxy, in fact many ISPs implement it unbeknownst to the users in order to reduce traffic.You should set this up inside your network though, don't put the cache outside the network on the internet (proxies have a bad habit of being heinously abused). 