Skip to content

serdarkose/NetLedger

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NetLedger

A lightweight network logger for Linux systems - including both Desktop and embedded environments - that captures and records all network connections and DNS lookups with hash-chained logs.

Features

  • Real-time network connection monitoring
  • DNS lookup logging
  • Hash-chained log integrity

Prerequisites

  • Linux system (Desktop or embedded)
  • GCC/Clang compiler with C++17 support
  • Root privileges for network monitoring

Work Logic

TBD

Installation

TBD

Building from Source

To build, test, or clean NetLedger from source, use the provided build script with the following options:

script/build.sh build    # Configure and compile the project
script/build.sh test     # Run unit tests
script/build.sh clean    # Remove build artifacts
script/build.sh depends  # Install required dependencies (requires sudo)

This script will use your system's default C++ compiler. The resulting binaries will be placed in the build/ directory.

For details, please see script/build.sh

Requirements:

  • Linux system (Desktop or embedded)
  • GCC or Clang with C++17 support
  • cmake and make installed
  • Root privileges for network monitoring
  • Internet access for installing dependencies (depends option)

Requirements:

  • Ensure all prerequisites are installed (see above).
  • Run the script from the project root directory.

System Installation

TBD

Usage

TBD

Configuration

TBD

Log Format

TBD

Security Considerations

TBD

Troubleshooting

TBD

Contributing

  1. Fork the repository
  2. Create a 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

C++ version

C++17 is taken as base considering wider compatibility, especially on the embedded platforms

Coding Guide

This project follows Google C++ Style Guide for all source code. Please ensure your contributions adhere to these conventions, including:

  • Consistent naming and formatting
  • Proper file organization and documentation
  • Clear and maintainable code structure

Refer to the style guide for detailed recommendations on source file elements and best practices.

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

About

Lightweight, cross-platform network logger that captures all network connections and DNS lookups with a hash-chained logs.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors