209 lines
4.9 KiB
Markdown
209 lines
4.9 KiB
Markdown
|
|
# Hysteria2 CLI Tool
|
|
|
|
## Overview
|
|
|
|
The Hysteria2 CLI Tool is a powerful command-line utility designed to manage Hysteria2 and associated services. With updated functionality, it now includes advanced SNI management, traffic monitoring, IP address configurations, and enhanced user management features.
|
|
|
|
---
|
|
|
|
## Commands
|
|
|
|
### Hysteria2 Management
|
|
|
|
#### Install Hysteria2
|
|
```bash
|
|
python3 cli.py install-hysteria2 --port PORT --sni SNI
|
|
```
|
|
- `--port`, `-p`: **Required.** Port for the Hysteria2 server.
|
|
- `--sni`, `-s`: Optional. SNI value (default: `bts.com`).
|
|
|
|
#### Uninstall Hysteria2
|
|
```bash
|
|
python3 cli.py uninstall-hysteria2
|
|
```
|
|
|
|
#### Update Hysteria2
|
|
```bash
|
|
python3 cli.py update-hysteria2
|
|
```
|
|
|
|
#### Restart Hysteria2
|
|
```bash
|
|
python3 cli.py restart-hysteria2
|
|
```
|
|
|
|
#### Change Port
|
|
```bash
|
|
python3 cli.py change-hysteria2-port --port NEW_PORT
|
|
```
|
|
- `--port`, `-p`: **Required.** New port for the Hysteria2 server.
|
|
|
|
#### Change SNI
|
|
```bash
|
|
python3 cli.py change-hysteria2-sni --sni NEW_SNI
|
|
```
|
|
- `--sni`, `-s`: **Required.** New SNI value.
|
|
|
|
---
|
|
|
|
### User Management
|
|
|
|
#### Add User
|
|
```bash
|
|
python3 cli.py add-user --username USERNAME --traffic-limit LIMIT --expiration-days DAYS [--password PASSWORD] [--creation-date DATE]
|
|
```
|
|
- `--username`, `-u`: **Required.** Username for the new user.
|
|
- `--traffic-limit`, `-t`: **Required.** Traffic limit in GB.
|
|
- `--expiration-days`, `-e`: **Required.** Number of days until expiration.
|
|
- `--password`, `-p`: Optional. Custom password (auto-generated if not provided).
|
|
- `--creation-date`, `-c`: Optional. Custom creation date (current date if not provided).
|
|
|
|
#### Edit User
|
|
```bash
|
|
python3 cli.py edit-user --username USERNAME [OPTIONS]
|
|
```
|
|
- `--new-username`, `-nu`: New username.
|
|
- `--new-traffic-limit`, `-nt`: New traffic limit in GB.
|
|
- `--new-expiration-days`, `-ne`: New expiration days.
|
|
- `--renew-password`, `-rp`: Generate a new password.
|
|
- `--renew-creation-date`, `-rc`: Reset creation date.
|
|
- `--blocked`, `-b`: Block/unblock the user.
|
|
|
|
#### Show User URI
|
|
```bash
|
|
python3 cli.py show-user-uri --username USERNAME [OPTIONS]
|
|
```
|
|
- `--qrcode`, `-qr`: Generate a QR code.
|
|
- `--ipv`, `-ip`: Specify IP version (4 or 6).
|
|
- `--all`, `-a`: Show both IPv4 and IPv6 URIs.
|
|
- `--singbox`, `-s`: Generate a Singbox sublink.
|
|
- `--normalsub`, `-n`: Generate a Normal sublink.
|
|
|
|
#### Other User Commands
|
|
- Get User Info:
|
|
```bash
|
|
python3 cli.py get-user --username USERNAME
|
|
```
|
|
- Reset User:
|
|
```bash
|
|
python3 cli.py reset-user --username USERNAME
|
|
```
|
|
- Remove User:
|
|
```bash
|
|
python3 cli.py remove-user --username USERNAME
|
|
```
|
|
- List Users:
|
|
```bash
|
|
python3 cli.py list-users
|
|
```
|
|
|
|
---
|
|
|
|
### Traffic and System Management
|
|
|
|
#### Traffic Status
|
|
```bash
|
|
python3 cli.py traffic-status
|
|
```
|
|
|
|
#### Server Information
|
|
```bash
|
|
python3 cli.py server-info
|
|
```
|
|
|
|
#### Backup Configuration
|
|
```bash
|
|
python3 cli.py backup-hysteria
|
|
```
|
|
|
|
#### IP Address Management
|
|
```bash
|
|
python3 cli.py ip-address [OPTIONS]
|
|
```
|
|
- `--edit`: Edit IP addresses manually.
|
|
- `--ipv4`: Specify a new IPv4 address.
|
|
- `--ipv6`: Specify a new IPv6 address.
|
|
|
|
#### Update Geo Files
|
|
```bash
|
|
python3 cli.py update-geo
|
|
```
|
|
|
|
---
|
|
|
|
### Advanced Features
|
|
|
|
#### OBFS Management
|
|
```bash
|
|
python3 cli.py manage-obfs [OPTIONS]
|
|
```
|
|
- `--remove`, `-r`: Remove OBFS from the configuration.
|
|
- `--generate`, `-g`: Generate a new OBFS value.
|
|
|
|
#### TCP Brutal
|
|
```bash
|
|
python3 cli.py install-tcp-brutal
|
|
```
|
|
|
|
#### WARP Management
|
|
- Install WARP:
|
|
```bash
|
|
python3 cli.py install-warp
|
|
```
|
|
- Uninstall WARP:
|
|
```bash
|
|
python3 cli.py uninstall-warp
|
|
```
|
|
- Configure WARP:
|
|
```bash
|
|
python3 cli.py configure-warp [OPTIONS]
|
|
```
|
|
- `--all`, `-a`: Use WARP for all connections.
|
|
- `--popular-sites`, `-p`: Use WARP for popular sites.
|
|
- `--domestic-sites`, `-d`: Use WARP for domestic sites.
|
|
- `--block-adult-sites`, `-x`: Block adult content.
|
|
- `--warp-option`, `-w`: Choose between 'warp' or 'warp plus'.
|
|
- `--warp-key`, `-k`: Specify a WARP Plus key.
|
|
|
|
- Check WARP Status:
|
|
```bash
|
|
python3 cli.py warp-status
|
|
```
|
|
|
|
#### Telegram Bot Management
|
|
```bash
|
|
python3 cli.py telegram --action ACTION --token TOKEN --adminid ADMIN_ID
|
|
```
|
|
- `--action`, `-a`: Start or stop the bot.
|
|
- `--token`, `-t`: Telegram bot token (required for `start`).
|
|
- `--adminid`, `-aid`: Admin's Telegram ID.
|
|
|
|
#### Singbox Service Management
|
|
```bash
|
|
python3 cli.py singbox --action ACTION --domain DOMAIN --port PORT
|
|
```
|
|
- `--action`, `-a`: Start or stop the Singbox service.
|
|
- `--domain`, `-d`: Domain name for SSL.
|
|
- `--port`, `-p`: Port number.
|
|
|
|
#### Normal SubLink Service
|
|
```bash
|
|
python3 cli.py normal-sub --action ACTION --domain DOMAIN --port PORT
|
|
```
|
|
- `--action`, `-a`: Start or stop the Normal sublink service.
|
|
- `--domain`, `-d`: Domain name for SSL.
|
|
- `--port`, `-p`: Port number.
|
|
|
|
---
|
|
|
|
## Debugging
|
|
To enable debugging, set the `DEBUG` variable to `True` in the script:
|
|
```python
|
|
DEBUG = True
|
|
```
|
|
|
|
This will print all commands being executed for easier troubleshooting.
|
|
|
|
---
|