{"repo":"shizunge/endlessh-go","free":true,"listed":false,"github":"https://github.com/shizunge/endlessh-go","clone":"git clone https://github.com/shizunge/endlessh-go.git","description":"A golang implementation of endlessh (SSH tarpit) exporting Prometheus metrics, visualized by a Grafana dashboard.","language":"Go","stars":1282,"topics":["grafana","monitoring","prometheus","ssh","grafana-dashboard"],"license":"GPL-3.0","category":"analytics","readme_excerpt":"endlessh-go A golang implementation of endlessh exporting Prometheus metrics, visualized by a Grafana dashboard. Introduction Endlessh is a great idea that not only blocks the brute force SSH attacks, but also wastes attackers time as a kind of counter-attack. Besides trapping the attackers, I also want to visualize the Geolocations and other statistics of the sources of attacks. Unfortunately the wonderful original C implementation of endlessh only provides text based log, but I do not like the solution that writes extra scripts to parse the log outputs, then exports the results to a dashboard, because it would introduce extra layers in my current setup and it would depend on the format of the text log file rather than some structured data. Thus I create this golang implementation of endlessh to export Prometheus metrics and a Grafana dashboard to visualize them. If you want a dashboard of sources of attacks and do not mind the endlessh server, besides trapping the attackers, does extra things including: translating IP to Geohash, exporting Prometheus metrics, and using more memory (about 10MB), this is the solution for you. Getting Started Clone the repo then build from source: Alternatively, you can use the docker image: It listens to port 2222 by default. Then you can try to connect to the endlessh server. Your SSH client should hang there. If you want log like the C implementation, you need to set both CLI arguments -logtostderr and -v=1 , then the log will go to stderr.","default_branch":null,"files":null,"tree":[],"storefront":"/r/shizunge","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/shizunge/endlessh-go/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}