Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Please show me a fully open-source solution in this situation:

  • Small network with about 30 pc with wireless cards.
  • An Regular Asus wireless access-point which connected to the server.
  • Server is a normal x86 PC with Ubuntu Linux. Server connects to Internet by ADSL.

  • I want to monitor the traffic (visited sites & urls) and bandwidth (total size of download data per weak) of all users.

    • monitoring should done per USER (maybe by user-name in vpn connection) or MAC ID (because just specified network cards can connect to AP. each user has its own mac address)
    • not limiting the quota or traffic shaping or QoS. Just monitoring, even not real-time.

I do little search and I see some firewalls, such as Untangle, ... or things like OpenWRT. I can buy a cheap wireless router (such as Asus N10+ which compatible by open-wrt). but its not preferred.

In my case, what is the best fully open-source solution? Thanks.

share|improve this question

closed as not constructive by Ƭᴇcʜιᴇ007, Dave M, Indrek, Nifle, Canadian Luke Sep 10 '12 at 16:49

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

    
-1 I suggest you do more than a little search. –  Dave Sep 10 '12 at 11:49
    
In Super User, and all the StackExchange sites, shopping or product recommendations are considered off topic and open ended, and sometimes even too localized. Try to reword your question in a way that you are not asking for products, but more of processes; this will help keep it on topic –  Canadian Luke Sep 10 '12 at 16:49

1 Answer 1

up vote 2 down vote accepted

you can installl a proxy server like squid and use a report analyzer SARG or manageengine. You can find more analyzers in this serverfault answer.

To monitor use per user, you will need to make them authenticate to squid and not use a transparent proxy or you will get only global use.

With a proxy on your server, you will be able to monitor but also to restrict the access to specific sites or words if needed. You have a lot of options to block per user, time or IP for example.

share|improve this answer
    
Thanks. but i want to preserve all the ports OPEN. squid just pass http(80) port, not ssh,smtp,... –  paykoob Sep 11 '12 at 5:32
    
On your firewall, you redirect only port 80 to squid and let the other ports without redirecting so they won't be affected by squid. –  laurent Sep 11 '12 at 18:02
    
but squid need authentication. and each program (firefox, git,...) need to enter the user-name & password. I dont like it. it's preferred to enter them once(e.g by vpn connection) and all the apps use the connection. –  paykoob Sep 13 '12 at 4:17
1  
I think you should read a little more on squid (or other proxy server) and you probably will be able to do what you want. For example, if your users use always the same computer, you can use squid transparent proxy (no login needed), fix the IPs in DHCP (should be possible because you say each user has one MAC ID authorized) and monitor the IPs (transparent mode can't monitor users as they are not logged in but can monitor IPs). Anyways, I don't believe you will be able to do that from a VPN login alone. –  laurent Sep 13 '12 at 20:12

Not the answer you're looking for? Browse other questions tagged or ask your own question.