With my zoo of docker containers and multiple servers hosted locally or on some cloud providers, I feel the need more and more to understand what kind of network traffic is happening. Seeing my outbound traffic on some cloud providers I’m sometimes wondering “huh-where did that traffic come from?”.
And honestly I have to say: I don’t know. Monitoring traffic is a real hurdle since I’m doing a lot via tunnels / wireguard in between servers or to my clients. When I spin up a network analysis tool such as ntopng, I do see a lot of traffic happening that is “Wireguard”. Cool. That doesn’t help me one bit.
I would have to do some deep package inspection I suppose and SSL interception to actually understand WHAT is doing stuff / where network traffic comes from. Honestly I wouldn’t be sure what stuff would be happening if there were some malicious thing running on the server and I really don’t like that. I want to see all traffic and be able to assign it to “known traffic” or in other words - “this traffic belongs to Jellyfin”, “That traffic is my gitea instance”, “the other traffic is syncthing” or something along those lines.
Is there a solution you beautiful people in this subreddit recommend or use? Don’t you care?
You probably want something like netgenius one. That’s enterprise grade but might be a good starting point to research. Alternatively you could look at ips/ids systems that can apply a set of definitions or rules to the analysis, ubiquiti or fortinet has some solutions for this sort of thing but I’m sure there are alternatives out there which would be better depending on your needs.
You are kind of asking several questions here though and may need to clarify a bit what goal you have in mind for the solution you are looking for.
RemindMe! 3 days
Ok it’s time bro
Awesome, thank you mate 😉🤝
I use my fortigate router as it logs everything natively. Logs DNS request, outbound traffic, internal lan local traffic, and so much more
Following
I would suggest looking at Wazuh and setting up a SIEM stack based on it. It would provide what you need and is highly customisable to needs.
RemindMe! 8 hours
ReminMe! 2 days
RemindMe! 5 days
RemindMe! 2 days
I do. I monitor it in a lot of ways.
- IDS at the router
- Anomoli Detection at the router
- Host based agents on everything I can
- L7 Firewalls on everything I can
- DNS based monitoring for everything
Wireguard and Cloudflare Tunnels make network traffic monitoring difficult because it’s all encrypted traffic.
What do you use for l7 firewalls?
Depending on what you run for a perimeter device, but elasticsearch is free and can give you incredible visibility into your network.
That said, it can be a bit of a beast to learn.
Simpler deployment is how I have it, running as Zenarmor Sensei inside my opnsense router/firewall which IS my edge.
There’s also Prometheus and grafana. Grey log.
Lots and lots of options however, just need to feed these log engines your syslogs.
That’s the magic ticket!
Zabbx agent on my docker host, can monitor traffic per container.
I have been using libreNMS for over four years and love it. I started to play with checkmk for its agent but found the network side of checkmk is also lovely/easy to work with. I recommend looking at either of these. Both can run in docker or docker-compose.
Securityonion is a great ids system. I used their distributed system, so I have 1 mini pc as a sensor and another as a manager/search. Works wonderful.
I have a pfsense and use ntopng