Expose metrics making it possible to map the hits and display them in grafana using the world-map plugin
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
emile 8bdc5f6a52
update dthe acces-controll-allow-origin header
2 years ago
src update dthe acces-controll-allow-origin header 2 years ago
.drone.yml another try to fix the drone file 2 years ago
Dockerfile executing the binary using the jail user 2 years ago
LICENSE added a license 2 years ago
README.md cleaned the readme 2 years ago
go.mod version bumps 2 years ago
go.sum version bumps 2 years ago



A honeypot catching ssh login attempts exposing metrics for dislay using grafana and it's worldmap plugin

Go Report Card Build Status

This honeypot catches login attempts into an ssh service it creates. The login attempts are logged and the country of the attacker is found out using the geo-ip provider ip-api.com. The data is exposed using an http server so that other services can use the exposed data.



Linux, Windows, OSX

$ go build ./...


The docker Image can be build like this:

$ docker build . -t ssh-grab-passwords-map

It can then be run like this:

$ docker run -p 8080:1234 -p 2222:2345 ssh-grab-passwords-map --httpPort 1234 --sshPort 2345

Usage example

The service can be used in combination with Prometheus and Gafana. Prometheus works as a time-series database storing the data and Grafana is used to display it.

The Grafana worldmap plugin can be used to display the attacks. In order to do this, it needs a custom location endpoint which is exposed by the /location endpoint.

Development setup


Release History

No releases yet...


Emile – @hanemile

Distributed under the MIT license. See LICENSE for more information.



  1. Fork it (https://git.darknebu.la/repo/fork/379)
  2. Create your feature branch (git checkout -b feature/fooBar)
  3. Commit your changes (git commit -am 'Add some fooBar')
  4. Push to the branch (git push origin feature/fooBar)
  5. Create a new Pull Request