reconYa

A powerful network reconnaissance and asset discovery tool built with Go and HTMX, designed to help map and monitor network devices with precision and elegance.

Get Started Learn More
reconYa Dashboard

Key Features

Advanced Scanning

Comprehensive port scanning and ping sweeping to discover all devices on your network quickly and efficiently.

Device Identification

Accurate identification and classification of network devices to help you understand your network infrastructure.

Network Visualization

Clear and interactive network topology mapping for a comprehensive view of your entire network.

Event Monitoring

Real-time logging and monitoring of network events to stay informed about changes and potential issues.

Modern Dashboard

Sleek, responsive web interface for all devices, making network management accessible from anywhere.

Security Focused

Built with security in mind, helping you identify potential vulnerabilities in your network infrastructure.

Installation

Prerequisites

  • Go 1.21+
  • nmap
  • make (pre-installed on most systems)

Quick Start

$ git clone https://github.com/Dyneteq/reconya.git
$ cd reconya
$ make install
$ make start

Access the application at http://localhost:3008

Available Commands

After installation, use these commands to manage reconYa:

  1. Start reconYa:
    $ make start
  2. Check service status:
    $ make status
  3. Stop the service:
    $ make stop
  4. Access the application at http://localhost:3008
Detailed Guide

Architecture

Technology Stack

  • Backend: Go API server with SQLite for storage
  • Frontend: HTMX templates with responsive Bootstrap UI
  • Scanning: Network operations through nmap and native Go libraries
  • Real-time: Polling system with configurable intervals
  • Deployment: Simple Makefile-based installation and management

Database: SQLite

The application uses SQLite for its database, offering several advantages:

  • Self-contained, no separate database service required
  • Simple setup with minimal configuration
  • Perfect for personal or organizational deployments
  • Lightweight and portable
  • Data is stored locally in a single file
  • No need for database administration

Security Notes

  • Always use strong passwords in production environments
  • Use an .env file for all sensitive configuration
  • Never expose the backend API directly to the internet
  • Run with least privilege required for network scanning
  • Keep dependencies updated to patch security vulnerabilities
  • Regularly test your deployment for security issues

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository on GitHub
  2. Create your feature branch
    git checkout -b feature/amazing-feature
  3. Commit your changes
    git commit -m 'Add some amazing feature'
  4. Push to the branch
    git push origin feature/amazing-feature
  5. Open a Pull Request with a detailed description
Open an Issue