💡 Self-host something new day 7 - ntopng
2025-06-29 16:55
Before I go on, I kind of feel like I've strayed off the "self-hosting software" path. Originally I would think that anything replacing what I would traditionally be using on the cloud - OneDrive, Google Photos, Email, GitHub, Wordpress, Neocities - would be a valid new thing to self-host, however now I'm into territory that you probably would never host in the cloud in the first place. I'm cracking on though, because I think software like this is essential to anyone self-hosting stuff exposed to the web.
Last one. Made it. Yesterday I mentioned Glances covers process monitoring fairly well, however I was looking for something a bit more on the WAN and LAN network monitoring side. I think I found a winner.
Enter ntopng.
It is exactly what I was after. An easy to navigate web UI with click-through ability to dive into what you want to see. I've been watching a bunch of IPs come and go from all over the world, some through my website, some hitting my gemini capsule. Some are automatically blacklisted as malware. And of course I can see all my local device connected to the network. If I want I can set up endpoints to notify me of things happening. Pretty amazing stuff. I'm using the free "Community" plan which more than meets my needs.
I'll admit I don't know half, or even a quarter of the things happening, but all the symbols and everything give me a quick view of the good and bad actors. If needed I can pull the plug. At least this will show me if I'm under attack. I'll have to dive deeper into the docs and set up those notifications.
Now to Raspberry Pi OS installation. Note I thought I was running Debian on my Raspi, but I'm actually running Raspberry Pi OS. This website shows me how to check.
wget https://packages.ntop.org/RaspberryPI/apt-ntop.deb
sudo dpkg -i apt-ntop.deb
sudo apt-get update
sudo apt-get install ntopng
That's it! Seriously, it's now running via systemctl (already configured for me, thanks!). All I have to go to is http://192.168.1.4:3000/
on my laptop. But wait... Port 3000 was already being used by Forgejo. Damnit. I tried to change the ntopng port to 3001 in the /run/ntopng.conf
file, but for whatever reason it wouldn't like it. So I just changed Forgejo to 3001 (no problems there), and restarted the service, and it worked straight away, after opening up port 3001:
sudo ufw allow 3001
I need to make those local URLs a bit easier to get to. Not sure how people manage stuff like that. Do I keep updating my DNS records and adding to my Caddyfile? Reverse proxy came up a lot during all these installs this week, but I haven't looked into what that is yet. Maybe that's it. Please let me know if you've got an idea.
So that wraps up my week of self-hosting something new every day. I'll do a small summary post later. There was a lot of sideways thinking going on in my head throughout all of these installs. I'd like to unbundle all that. TLDR - it was a bloody good experience.