a Node.js SSH honeypot to register data about connections attempts
- Record login attempts on PostgreSQL database
- Dashboard to display basic informations about collected samples, including username, password, autonomous system name, country
- Export attempts to CSV
- Able to centralize datas from multiple honeypot hosts
- Report remote IP to AbuseIPDB
- Node.js LTS 16.x or higher
- PostgreSQL 14.x
Just pull the docker image and run it with appropriate environment variables as described below, either by command line or using docker compose
.
Winnie must be configured using environment variables:
SSH_HOST=0.0.0.0
SSH_PORT=3555
HOST=0.0.0.0
PORT=3333
NODE_ENV=production
APP_KEY=
DRIVE_DISK=local
DB_CONNECTION=pg
PG_HOST=
PG_PORT=
PG_USER=
PG_PASSWORD=
PG_DB_NAME=
CACHE_VIEWS=false
WINNIE_NAME=
ENABLE_DASHBOARD= # don't set if you want to setup ssh honeypot only
ABUSEIP_API_KEY= # remove if you don't want to report the attempts
Thanks goes to these wonderful people (emoji key):
Xavier Stouder 💻 |
Adriel 🎨 |
This project follows the all-contributors specification. Contributions of any kind welcome!