reconYa

A powerful network reconnaissance and asset discovery tool built with Go and React, 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.19+ (automatically installed)
  • Node.js 14+ and npm (automatically installed)
  • nmap (automatically installed)

Quick Start

$ git clone https://github.com/Dyneteq/reconya.git
$ cd reconya
$ npm run install

Access the application at http://localhost:3000

Available Commands

After installation, use these commands to manage reconYa:

  1. Start reconYa services:
    $ npm run start
  2. Check service status:
    $ npm run status
  3. Stop all services:
    $ npm run stop
  4. Access the application at http://localhost:3000
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: Node.js-based installation and management scripts

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