Skip to content

Releases: jegly/GeoNetMon

v1.0.2

11 Jun 00:16

Choose a tag to compare

GeoNetMon 1.0.2 — Release Notes

A critical reliability release. If you ran 1.0.0/1.0.1 with the shield enabled, please upgrade — this fixes a bug that could take your network
offline.

Critical fix: no more network blackout

Previous versions could leave you with no internet if the firewall was armed but the app window wasn't open (for example after a reboot). The
background daemon would hold every new connection waiting for an answer that never came, then deny it — and because its rules sit in front of
your normal firewall, resetting UFW or rebooting didn't help; only removing the package did.

1.0.2 makes the firewall fail open whenever the app isn't there to answer:

  • If no GeoNetMon window is connected, new connections are allowed through instead of being held and denied. Your decisions (allow/block rules)
    are still enforced — only the "ask me" case gets out of the way.
  • The kernel packet queue is sized so a burst of connections can't overflow and drop traffic.
  • A crash in packet handling can no longer wedge the firewall.
    1.0.2 makes the firewall fail open whenever the app isn't there to answer:
  • If no GeoNetMon window is connected, new connections are allowed through instead of being held and denied. Your decisions (allow/block rules) are still enforced — only the "ask me" case gets out of the way.
  • The kernel packet queue is sized so a burst of connections can't overflow and drop traffic.
  • A crash in packet handling can no longer wedge the firewall.

Firewall behaviour

  • Closing the app (or Quit) now fully disarms the firewall — it tears down only GeoNetMon's own rules and leaves UFW untouched, and it won't silently re-arm on the next boot. App open = firewall on; close = full stop. (Enable "Run in
    background" in Preferences if you want it to keep running.)

  • "Allow , any connection" now covers the whole app. Rules match on the program's executable, so an allow for Firefox/Chrome/Slack/etc. correctly covers all of that app's helper processes instead of re-prompting for each one.

    Security & correctness (internal audit)

  • IPv6 enforcement gap closed — IPv6 traffic using extension headers (e.g. fragments) is now properly inspected instead of slipping through.

  • Hardened the privileged daemon against malformed packets and malformed control messages.

  • Binary-integrity checks no longer stall packet processing.

    Connection map

  • Live data-flow animation — glowing packets stream along the arcs showing what's connecting where, in real time. Outbound flows away from you, inbound toward you, with risky traffic moving faster.

  • Flows now cross the international date line smoothly (Australia↔US and similar routes flow over the map edge instead of vanishing).

⚙️ Interface & settings

  • Home country is now a dropdown — pick your location by name (needed for the map's arcs/flows) instead of typing an ISO code.
  • Primary menu is now a gear icon.
  • Fixed the red box in the toolbar (a missing column-toggle icon).
  • The new-connection highlight now uses your chosen accent colour instead of a fixed brown.

Install / upgrade

sudo apt install ./geonetmon_1.0.2_all.deb
Then reboot (so your session joins the geonetmon group and the daemon starts clean) and launch GeoNetMon from your app menu.

Panic button if anything ever misbehaves: sudo systemctl stop geonetmond — instantly restores networking without removing the package.

v1.0.1

09 Jun 08:22
e9e538f

Choose a tag to compare

Bug Fixes

  • Fixed app not appearing in GNOME application launcher after install
  • Fixed daemon crashing on startup due to read-only home directory restriction
  • Fixed nftables cleanup commands failing silently on daemon stop
  • Fixed running GUI processes not being killed on apt remove

UI Improvements

  • Connection map now uses high-resolution Natural Earth coastline data
  • Removed legend bar from bottom of connection map
  • Removed High-risk filter button from connection map toolbar
  • Detail panel on connection map now hidden until a dot is clicked
  • Fixed square corners on alert button when notifications are pending

Allow/Deny Prompt

  • Added timed rule options: For 1 minute, For 10 minutes, For 1 hour
  • Unknown connections now show destination IP alongside hostname

Rules Engine

  • Timed rules automatically expire and are cleaned up by the daemon

Installer

  • App menu entry now works correctly on first install (no longer requires sg group wrapper)
  • Duplicate app menu category removed (was appearing twice in some DEs)
  • Version bumped to 1.0.1 in app About screen

GeoNetMon

08 Jun 03:24

Choose a tag to compare

Initial release.

  • Live TCP/UDP connection monitor with per-connection GeoIP, reverse DNS, bandwidth, and risk scoring
  • Interactive outbound firewall — allow/deny prompts per app, with configurable scope and duration (Little Snitch /
    OpenSnitch style)
  • Privilege-separated daemon (geonetmond) — GUI runs unprivileged, daemon handles packet interception via nftables + NFQUEUE
  • DNS-aware prompts — shows hostnames not IPs on the first packet
  • Binary integrity pinning — flags if an allowed app's executable changes
  • Blocklist subscriptions — 14 preset lists (StevenBlack, OISD, Hagezi, URLhaus, Phishing Army and more)
  • World connection map with great-circle arcs
  • Connection history (SQLite, 30 day retention)
  • Statistics dashboard — top apps, hosts, countries
  • GNOME desktop notifications for allow/deny prompts (visible when minimised)
  • Manual IP blocking via ufw, nftables, or iptables
  • Themes: System, Dracula, Catppuccin (Latte, Frappé, Macchiato, Mocha)
  • System tray support

Install

sudo dpkg -i geonetmon_1.0.0_all.deb
sudo apt install -f # pulls any missing dependencies

Log out and back in after install, then launch from your application menu or run geonetmon.