Initial commit
This commit is contained in:
97
README.md
Normal file
97
README.md
Normal file
@@ -0,0 +1,97 @@
|
||||
# C-Data ONU tools
|
||||
Tools for managing settings of the C-Data FD511G-X xPON ONU (and possibly other models), which are not available from the web interface:
|
||||
enabling/disabling shell access, getting SSH/Telnet password.
|
||||
|
||||

|
||||
|
||||
## Abstract
|
||||
The ONU web interface (usually available at http://192.168.101.1) allows you to download a configuration backup as a file. This is a regular XML file that is encrypted using XOR encryption with a key of `0x26`.
|
||||
The tools presented here are designed to load, read, and modify this configuration file.
|
||||
|
||||
## Tools
|
||||
- `enable_shell_access.py` helps to enable/disable SSH/Telnet root shell access from LAN/WAN and change username & password.
|
||||
Usage:
|
||||
```
|
||||
$ python enable_shell_access.py --help
|
||||
usage: enable_shell_access.py [-h] [-a AUTHORIZATION] [-d] [-i {LAN,WAN}] [-p {SSH,Telnet}] [--change-username CHANGE_USERNAME] [--change-password CHANGE_PASSWORD] [host]
|
||||
|
||||
Program to enable or disable Telnet or SSH access to the C-Data FD511G-X ONU
|
||||
|
||||
positional arguments:
|
||||
host ONU host (IP address or domain). Default: 192.168.101.1.
|
||||
|
||||
options:
|
||||
-h, --help show this help message and exit
|
||||
-a, --authorization AUTHORIZATION
|
||||
Web interface authorization credentials, separated by colon. Default: adminisp:adminisp.
|
||||
-d, --disable Disable access. If this argument is not passed, it enables access.
|
||||
-i, --interface {LAN,WAN}
|
||||
Interface for enabling access: LAN or WAN. Default: LAN.
|
||||
-p, --protocol {SSH,Telnet}
|
||||
Protocol for enabling access: SSH or Telnet. Default: SSH.
|
||||
--change-username CHANGE_USERNAME
|
||||
Set new username
|
||||
--change-password CHANGE_PASSWORD
|
||||
Set new password
|
||||
```
|
||||
Usage examples:
|
||||
- enable LAN SSH access:
|
||||
```
|
||||
$ python enable_shell_access.py 192.168.101.1
|
||||
Logging in to http://192.168.101.1 with adminisp:adminisp...
|
||||
Current SSH credentials:
|
||||
username: manu
|
||||
password: c8a9b413
|
||||
|
||||
SSH access from LAN enabled
|
||||
Uploading new configuration to the ONU...
|
||||
Config successfully uploaded. Do you want to reboot ONU now? (Y/n) : Y
|
||||
ONU reboot error. The device is probably already rebooting.
|
||||
```
|
||||
- disable LAN Telnet access:
|
||||
```
|
||||
$ python enable_shell_access.py 192.168.101.1 -p Telnet -d
|
||||
Logging in to http://192.168.101.1 with adminisp:adminisp...
|
||||
Current Telnet credentials:
|
||||
username: manu
|
||||
password: c8a9b413
|
||||
|
||||
Telnet access from LAN disabled
|
||||
Uploading new configuration to the ONU...
|
||||
Config successfully uploaded. Do you want to reboot ONU now? (Y/n) : Y
|
||||
Device is rebooting. Please wait.
|
||||
```
|
||||
- login with custom web interface credentials:
|
||||
```
|
||||
$ python enable_shell_access.py 192.168.101.1 -a adminisp:admin1234
|
||||
Logging in to http://192.168.101.1 with adminisp:admin1234...
|
||||
Current SSH credentials:
|
||||
username: manu
|
||||
password: c8a9b413
|
||||
|
||||
SSH access from LAN enabled
|
||||
Uploading new configuration to the ONU...
|
||||
Config successfully uploaded. Do you want to reboot ONU now? (Y/n) : Y
|
||||
ONU reboot error. The device is probably already rebooting.
|
||||
```
|
||||
|
||||
- `extract_credentials.py` extracts credentials from the binary config file, including SSH and Telnet username & password, and also saves decrypted version of the config file.
|
||||
Usage:
|
||||
```
|
||||
$ python extract_credentials.py ~/config.bin
|
||||
File decrypted and saved to "/home/user/config.xml"
|
||||
|
||||
Web interface credentials:
|
||||
root-level account:
|
||||
username: adminisp
|
||||
password: adminisp
|
||||
|
||||
user-level account:
|
||||
username: admin
|
||||
password: admin
|
||||
|
||||
|
||||
Shell credentials (Telnet and SSH):
|
||||
username: manu
|
||||
password: c8a9b413
|
||||
```
|
Reference in New Issue
Block a user