this post was submitted on 22 Nov 2023
2 points (100.0% liked)

Self-Hosted Main

502 readers
1 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

For Example

We welcome posts that include suggestions for good self-hosted alternatives to popular online services, how they are better, or how they give back control of your data. Also include hints and tips for less technical readers.

Useful Lists

founded 1 year ago
MODERATORS
 

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?

top 37 comments
sorted by: hot top controversial new old
[–] [email protected] 1 points 10 months ago

RemindMe! 8 hours

[–] [email protected] 1 points 10 months ago

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.

[–] [email protected] 1 points 10 months ago

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!

[–] [email protected] 1 points 10 months ago

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.

[–] [email protected] 1 points 10 months ago

I’ve gone down this rabbit hole and have yet to find a solution I like. The only routes I haven’t gone down yet are the grey log or sec onion, as the learning curve is steep.

I do use crowdsec and that has been semi-helpful at showing me where a scanner is trying to poke around and on what service.

I currently use ntopng’s community version and that’s been acceptable for now. Some parts are a bit confusing and the documentation didn’t help me understand, but the tables are really well laid out and I can easily see the server/cliebt relationship with in and outbound traffic. I’ll try and share screenshots of how it looks for me to see if that helps you.

[–] [email protected] 1 points 10 months ago

ReminMe! 2 days

[–] [email protected] 1 points 10 months ago
[–] [email protected] 1 points 10 months ago (1 children)
[–] [email protected] 1 points 9 months ago (1 children)
[–] [email protected] 1 points 9 months ago

Awesome, thank you mate 😉🤝

[–] [email protected] 1 points 10 months ago

It seems as if you would like to see all traffic identified up to layer 7. That is pretty much enterprise level traffic inspection. I’ve done a lot of it on the edge of our network using a Palo Alto firewall with pretty much all software licenses enabled. I could create full blown reports of single users and/or applications. I sure did point out some co-workers ánd applications who where misbehaving on our network.

[–] [email protected] 1 points 10 months ago

Zabbx agent on my docker host, can monitor traffic per container.

[–] [email protected] 1 points 10 months ago

RemindMe! 5 days

[–] [email protected] 1 points 10 months ago

RemindMe! 2 days

[–] [email protected] 1 points 10 months ago

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.

[–] [email protected] 1 points 10 months ago

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.

[–] [email protected] 1 points 10 months ago

I found this and will be testing it. Looks like it's free for home use.

https://corelight.com/

[–] [email protected] 1 points 10 months ago (1 children)

I do. I monitor it in a lot of ways.

  1. IDS at the router
  2. Anomoli Detection at the router
  3. Host based agents on everything I can
  4. L7 Firewalls on everything I can
  5. DNS based monitoring for everything

Wireguard and Cloudflare Tunnels make network traffic monitoring difficult because it's all encrypted traffic.

[–] [email protected] 1 points 10 months ago

What do you use for l7 firewalls?

[–] [email protected] 1 points 10 months ago

RemindMe! 5 days

[–] [email protected] 1 points 10 months ago

RemindMe! 7 days

[–] [email protected] 1 points 10 months ago

RemindMe! 3 days

[–] [email protected] 1 points 10 months ago

I have a pfsense and use ntopng

[–] [email protected] 1 points 10 months ago

I use my fortigate router as it logs everything natively. Logs DNS request, outbound traffic, internal lan local traffic, and so much more

[–] [email protected] 1 points 10 months ago

I use cadvisor to get stats and Prometheus and grafana. Works very well

[–] [email protected] 1 points 10 months ago

I wrote a couple scripts that ingest my Apache and SSHD logs to tell me how many hits I had, how many unique hosts they came from and where they are in the world. It even spits out a nice map at the end of the day: https://imgur.com/aJ6aVZp

[–] [email protected] 1 points 10 months ago

I've been a network engineer, security analyst, security engineer, and SOAR engineer over the course of the last 20 years; I don't want to think about any of that shit when I'm not being paid for it. I have backups of the things I can't replace, no port forwarding/ingress rules from WAN on the firewall, and the network is heavily segmented and uses least privilege. The random security stuff I leverage is set to drop/block and my family does a good job being vocal when something isn't working. If I needed to start over tomorrow, I'd just build a new server with Ansible playbooks on my GitHub.

[–] [email protected] 1 points 10 months ago

I own a WISP with about 100 clients and admin another wisp/fisp with around 500 clients.

I love "the dude" by mikrotik. It pulls data via SNMP and gives me a great heads up overview of everything. it also graphs the data over time.

I use LibreMNS also to pull network data via SNMP and it graphs historical data.

[–] [email protected] 1 points 10 months ago

I have my Unifi Switch mirror the trunk port and send that to Splunk Stream, but I haven't found it that useless to have that level of data.

[–] [email protected] 1 points 10 months ago

I use Pi-Hole & NextDNS for all my DNS and I check once a week, for extra security I run a Fortigate 61E with AV/IPS and of course VLAN just for IoT and NVR.

[–] [email protected] 1 points 10 months ago

RemindMe! 2 Days

[–] [email protected] 1 points 10 months ago

Do you monitor network traffic?

Generally, no. But I seriously restrict container networking, most of my containers are unable to reach internet, unless absolutely necessary. Also, my firewall is not super-restrictive, but it is different from defaults :)

Sometimes I do some monitoring though.

[–] [email protected] 1 points 10 months ago

Why not use Macvlan and join your Dockers to that rather than a bridge to Tailscale or Cloudflared? Then they are broken out so you can apply monitoring.

[–] [email protected] 1 points 10 months ago (1 children)

Easy, set up a mail server, then 98% of your traffic will be inbound attack attempts on that. Like mine...

[–] [email protected] 1 points 10 months ago

Do you mean I should monitor my email server running on a XP?

[–] [email protected] 1 points 10 months ago

Yep, monitoring in multiple places with Zabbix

I have pfSense as well (soon to be OPNsense) and that shows traffic per network it's connected to, so that's great for live traffic

Zabbix monitors the networks and collects traffic data

Zabbix also monitors all containers and their network traffic

[–] [email protected] 1 points 10 months ago

I was recently thinking about setting up a transparent squid proxy at router level, I'm curious if it could be useful in this context.