Skip to content

Redirect All Traffic Through Tor Network For Any Linux Build in Go

Notifications You must be signed in to change notification settings

TeoDev1611/anongo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Anongo 👻

Anongo (Go Ghost) is a high-performance, security-focused port of AnonGT (originally in Python) rewritten in Go. It creates a transparent anonymity layer by forcing all system network traffic through the Tor network, implementing advanced anti-leak protections and forensic cleaning.

🌟 Why the Go Port? (Advantages over Python)

  • Parallel Execution: Leverages Go's Goroutines to run the network watchdog, ARP monitor, and Tor manager concurrently with minimal overhead.
  • Enhanced Cryptography: Upgraded from AES-CBC to AES-256-GCM, providing authenticated encryption and better resistance against data tampering.
  • Static Binary: No need for a Python interpreter or complex pip dependencies; just a single, fast-executing binary.
  • Lower Resource Footprint: Significantly more efficient memory and CPU usage compared to the original Python implementation.
  • Robust Network Handling: Uses gopacket for low-level network monitoring, which is faster and more reliable than Scapy.

Buy Me A Coffee

🚀 How it Works

Anongo creates a "Ghost Tunnel" using a combination of Tor's Transparent Proxy and Surgical Iptables Redirection:

  1. Network Shielding: It creates custom iptables chains (ANONGO_NAT and ANONGO_FILTER) to redirect all TCP traffic to Tor's TransPort (9040) and DNS traffic to DNSPort (5353).
  2. Anti-Leak Engine:
    • IPv6 Killswitch: Automatically drops all IPv6 traffic to prevent common leaks.
    • UDP Filtering: Blocks non-Tor UDP traffic (e.g., QUIC, STUN) while allowing DNS redirection.
    • LAN Exemption: Automatically detects and excludes local networks (127.0.0.1, 192.168.x.x, etc.) so you don't lose access to your local router or devices.
  3. Privilege Dropping: Tor is executed under a specific system user (tor or debian-tor). This allows Anongo to tell iptables: "Redirect everything EXCEPT the traffic coming from the Tor user," preventing infinite traffic loops.
  4. Watchdog Monitoring: A background goroutine verifies connection integrity every 15 seconds. If rules are deleted or the IP leaks, it instantly reapplies the shield.

🏗️ Technical Architecture

The project is organized into modular packages to ensure maintainability and high performance:

  • pkg/network: Manages iptables rules, IPv6 disabling, and the network Watchdog.
  • pkg/tor: Handles the lifecycle of the Tor process, identity switching, and circuit health.
  • pkg/security: Implements anti-forensics measures (RAM wiping, history truncation, log cleaning).
  • pkg/crypto: Provides high-grade encryption for local data (AES-256-GCM).
  • pkg/i18n: Multi-language support (English/Spanish).

🛠️ Requirements & Dependencies

System Binaries

You must have the following installed on your Linux system:

  • tor: The core anonymity service.
  • iptables / ip6tables: For network redirection.
  • procps (pkill): To manage process cleanup.
  • kmod: To ensure iptables modules are loaded.

Go Dependencies

The project leverages these libraries:

  • github.com/pterm/pterm: For the interactive CLI and dashboard.
  • github.com/coreos/go-iptables: For surgical firewall management.
  • golang.org/x/net/proxy: For secure SOCKS5 verification.

📥 Installation

  1. Clone the repository:

    git clone https://github.com/TeoDev1611/anongo.git
    cd anongo
  2. Build the binary:

    go build -o anongo ./cmd/anongo/main.go

🎮 Usage

Anongo requires root privileges to manage network interfaces and process state.

Command Line Flags

Flag Description Default
-lang Set the interface language (en or es). es
-logs Enable logging the session output to anongo_session.log. false

Basic Execution

# Run in English with logs enabled
sudo ./anongo -lang en -logs

Menu Options

  • Activate Anonymity: Secures the connection and starts the tunnel.
  • Stop Tunnel: Safely restores original network settings without flushing your personal rules.
  • Change Identity: Restarts Tor circuits to obtain a new public IP.
  • Detailed Check: Displays a table comparing your public vs. encrypted interface.
  • Anti-Forensics: Wipes system traces, clears RAM caches (drop_caches), and truncates bash/zsh history.
  • Emergency Cleanup: Failsafe option to force-restore all settings.

🔒 Security Features

  • Surgical Iptables: Uses isolated chains. It won't interfere with your custom firewall rules.
  • Memory Safety: Written in Go, eliminating buffer overflow risks present in C-based alternatives.
  • Anti-Forensics: Clears /proc/sys/vm/drop_caches, system logs (auth.log, syslog), and session histories to minimize the forensic footprint.

⚠️ Security Disclaimer

Anongo is a tool for security research and privacy. While it provides strong anonymity, no tool is 100% foolproof.

  • Using this tool does not make you immune to fingerprinting or application-level leaks (e.g., browser plugins).
  • Always use a privacy-hardened browser (like Tor Browser) even when the tunnel is active.
  • The developers are not responsible for any misuse or damages caused by this tool.

☕ Support

If you find Anongo useful and want to support its development, you can buy me a coffee!

Buy Me A Coffee

📄 License

This project is licensed under the GPL v3 License.

About

Redirect All Traffic Through Tor Network For Any Linux Build in Go

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Languages