https://github.com/masterccc/esp8266_honeypot
ESP8266 honeypot that emulates services to monitor and log connection attempts.
https://github.com/masterccc/esp8266_honeypot
esp32 esp8266 honeypot telnet web
Last synced: about 1 month ago
JSON representation
ESP8266 honeypot that emulates services to monitor and log connection attempts.
- Host: GitHub
- URL: https://github.com/masterccc/esp8266_honeypot
- Owner: masterccc
- License: gpl-3.0
- Created: 2025-07-25T17:30:24.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-08-17T21:01:22.000Z (10 months ago)
- Last Synced: 2025-10-05T09:46:28.019Z (8 months ago)
- Topics: esp32, esp8266, honeypot, telnet, web
- Language: C++
- Homepage:
- Size: 337 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ESP8266 Honeypot


## Features
- Fake Telnet server (single session, drops after 10s if a new client connects)
- Fake web server
- Logs Telnet commands and web accesses
- Web admin interface for log viewing/clearing, stats, and OLED control
- OLED status display (time, stats, last event)
- Records suspicious connections (IP, time, command)
## Required Libraries
Install these libraries in the Arduino IDE Library Manager or via PlatformIO:
- `ESP8266WiFi`
- `ESP8266WebServer`
- `WiFiUdp`
- `NTPClient`
- `TelnetStream`
- `Wire`
- `Adafruit_GFX`
- `Adafruit_SSD1306`
## Configuration
Edit `config.h` with your settings:
- **WiFi**
- `WIFI_SSID`: WiFi network name
- `WIFI_PASSWD`: WiFi password
- **Network**
- `localIP`, `gateway`, `subnet`, `dns`: static IP configuration
- **Web & Telnet**
- `PORT_WEB_ADMIN`: admin web server port (e.g., 8080)
- `PORT_WEB_HONEYPOT`: fake web server port (e.g., 80)
- `PORT_TELNET`: telnet port (e.g., 23)
- `HTTP_AUTH_USERNAME`, `HTTP_AUTH_PASSWD`: web admin credentials
- **NTP**
- `NTP_POOL`: NTP pool server
- `NTP_SHIFT`: time zone offset
- `NTP_UPDATE_DELAY`: NTP update interval
- **Misc**
- `CMD_BLACKLIST`, `WEB_BLACKLIST`: ignored commands/URLs for logs
- `DISPLAY_UPDATE_INTERVAL`: OLED refresh rate
## Installation
1. Set up your parameters in `config.h`.
2. Flash the firmware to an ESP8266.
3. Access the admin web interface on the configured port.