No description
Find a file
Peter Kurfer 38f8ff319e Apply commented improvements
- skip shutdown of gRPC server if failed to start
- minor refactoring
2020-06-15 12:32:18 +02:00
.github/workflows Cleanup 2020-06-15 12:32:18 +02:00
api Add gRPC spec 2020-06-15 12:32:18 +02:00
assets/fakeFiles Initial working version 2020-04-01 04:08:21 +02:00
cmd Split to server and CLI binaries 2020-06-15 12:32:18 +02:00
deploy Prepare systemd deployment 2020-04-12 00:09:30 +02:00
docs Add Makefile and reference to docs 2020-04-07 00:31:47 +02:00
internal Apply commented improvements 2020-06-15 12:32:18 +02:00
pkg Cleanup 2020-06-15 12:32:18 +02:00
plugins Cleanup 2020-06-15 12:32:18 +02:00
.dockerignore Split to server and CLI binaries 2020-06-15 12:32:18 +02:00
.gitattributes Initial working version 2020-04-01 04:08:21 +02:00
.gitignore Cleanup 2020-06-15 12:32:18 +02:00
.goreleaser.yml Cleanup 2020-06-15 12:32:18 +02:00
config.yaml Add gRPC API implementation 2020-06-15 12:32:18 +02:00
Dockerfile Move TLS/cert handling to main app 2020-04-26 00:32:46 +02:00
go.mod Cleanup 2020-06-15 12:32:18 +02:00
go.sum Cleanup 2020-06-15 12:32:18 +02:00
LICENSE Create LICENSE 2020-04-11 12:17:15 +02:00
Makefile Cleanup 2020-06-15 12:32:18 +02:00
README.md Add GoReport badge 2020-04-26 18:32:42 +02:00

INetMock

Go Go Report Card Quality Gate Status Lines of Code Maintainability Rating Security Rating Bugs Vulnerabilities

INetMock is kind of a fork of INetSim. "Kind of" in terms that both applications overlap in their functionality to serve as "fake internet" routers.

INetMock right now does not implement so many protocols like INetSim. In fact it is only able to respond to HTTP, HTTPS, DNS, DNS-over-TLS (DoT) requests and to act as an HTTP proxy. The most notable advantage of INetMOck over INetSim is that it issues proper TLS certificates on the fly signed by a CA certificate that can be deployed to client systems to achieve "proper" TLS encryption - as long as the client does not use certificate pinning or something similar.

A second advantage is that INetMock is a complete rewrite in Go, based on a plugin system that allows dynamic configuration while it has a way smaller memory footprint and far better startup and shutdown times. It also does not enforce root privileges as it is also possible to run the application with the required capabilities to open ports e.g. with SystemD (a sample unit file can be found in the deploy/ directory).

This project is still heavy work-in-progress. There may be breaking changes at any time. There's no guarantee for anything except no kittens will be harmed!

Docs

Docs are available either in the docs/ directory or as rendered markdown book at the GitHub pages.

Contribution/feature requests

Please create an issue for any proposal, feature requests, found bug,... I'm glad for every kind of feedback!

Right now I've no special workflow for pull requests but I will look into every proposed change.