Hacker News
Show HN: Knock-Knock.net – Visualizing the bots knocking on my server's door
djkurlander
|next
[-]
site: https://knock-knock.net
Every server with port 22 open gets hammered by bots trying to brute-force SSH. I built a honeypot that accepts every connection, records the credentials they try, and displays it all on a live dashboard with a 3D globe.
Some fun things you'll notice:
- Bots try the same passwords everywhere — "admin", "123456", "password" are the classics. Yes, you'll see the Spaceballs password in the top 10.
- Certain countries and ISPs dominate the leaderboards
- Attacks come in waves — sometimes nothing for a minute, then a burst of 50 from one IP cycling through a wordlist
- There's a knock-knock joke panel because I couldn't resist
Originally inspired by my kids asking "who keeps trying to log into your computer?" when they saw me tailing SSH logs.
The stack is Python (FastAPI + paramiko for the honeypot), Redis pub/sub for real-time updates, SQLite for stats, and globe.gl for the visualization. WebSocket pushes every knock to your browser as it happens.
The whole thing runs on a $6.75/year VPS. The domain costs more than the server.
tkp-415
|root
|parent
|next
[-]
djkurlander
|root
|parent
[-]
mmarian
|root
|parent
|next
|previous
[-]
I'm curious, how do you think this helps you answer the question? Proxies are incredibly easy to come by these days, rotation makes it hard to identify what's behind it all.
djkurlander
|root
|parent
[-]
Bender
|root
|parent
|next
|previous
[-]
djkurlander
|root
|parent
[-]
orojackson
|root
|parent
|next
[-]
djkurlander
|root
|parent
[-]
tamimio
|root
|parent
|next
|previous
[-]
And I remember more than a decade ago I went down the rabbit hole hunting these bots and indeed, I found Netherlands was always the king of hill when it comes to bots, followed by US, Netherlands still there I see.
djkurlander
|root
|parent
[-]
One of my favorite visualizations for this is to switch to the globe view and choose the “HEAT” style for a 3D heatmap superimposed on the globe. Green means few hits, and red signifies lots of hits. The Netherlands is so small that it’s tough to see though!
arjie
|next
|previous
[-]
djkurlander
|root
|parent
[-]
jwkerr
|next
|previous
[-]
djkurlander
|root
|parent
[-]
Providers can shut down abusive IPs. I run a script every night to report attacks to abuseIPDB.com (included in the extras folder on the knock-knock GitHub repository). Some providers just don’t care.