Skip to content

andey-robins/gosniffer

Repository files navigation

gosniffer

A wifi sniffing infrastructure written in golang.

Table of Contents

Configuration

The application can be run in three different modes, detailed below. Mode selection is done by setting the environment variable RUNNING_MODE to one of {worker, server, web}

Worker Mode

In this mode, the application listens on a wifi interface and performs all of the sniffing. It either logs data to STDOUT as it comes in or sends it to an aggregator server if an environment variable is set. Set AGGREGATOR_IP to the address of the aggregator server.

Server Mode

In this mode, the application serves as the aggregator server for the worker nodes, exposes an API for querying, persists data in a database, and pushes information over websockets to clients for display.

Client Mode

In client mode, the application opens a connection with the websocket interface of a server and serves an HTTP site with a nice display for information. Set SERVER_IP to the address of the server to connect to.

Running Instructions

The program is configured with a Makefile to automatically fill in relevant environment variables. Start the applications with the following commands:

  • make web
  • make server
  • make worker

Binary Creation

To build the binary version of the program, either run make build or go build main.go. Make build is simply an alias to the go build command.

About

A wifi sniffing infrastructure written in golang.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published