WProxy is an authenticated SOCKS5 and HTTP proxy tool that supports port multiplexing. It helps you browse the internet securely and efficiently.
- Supports authentication to prevent unauthorized access
- Supports port multiplexing, allowing multiple proxy services on a single port
- Lightweight and cross-platform, runs on Windows, Linux and macOS
- Supports SOCKS5 and HTTP/HTTPS proxy protocols
- Supports forwarding to target domains or IPs specified in HTTP/HTTPS headers
Use the following command to quickly install WProxy:
curl -s https://raw.githubusercontent.com/Wenpiner/WProxy/main/install.sh | sudo bash
The installation script will automatically:
- Detect system architecture (supports amd64 and arm64)
- Download the latest version from GitHub
- Install to the system directory
- Create a configuration file
- Set up a system service (with auto-start on boot)
After installation, you can check the service status with:
systemctl status wproxy
Use the following command to quickly uninstall WProxy:
curl -s https://raw.githubusercontent.com/Wenpiner/WProxy/main/uninstall.sh | sudo bash
The uninstallation script will automatically:
- Stop and disable the WProxy service
- Remove the system service file
- Delete the program files
- Remove the configuration files
If you prefer to install manually, follow these steps:
- Download the latest WProxy binary from the GitHub repository
- Extract the downloaded file to your system
- Run the
./wproxy
command in the terminal to start the proxy server
The configuration file is located at /etc/wproxy/config.yaml
. You can configure the following settings:
- listen_addr: The listening address of the proxy server, default is 0.0.0.0:1080
- username and password: The credentials required for authentication
Default configuration:
listen_addr: "0.0.0.0:1080"
username: "admin"
password: "16-character random password" # Automatically generated during installation
Notes:
- A random 16-character password is automatically generated during installation
- The generated password will be displayed after installation, please keep it safe
- To change the password, edit the configuration file and restart the service
-
Configure your applications or browsers to use WProxy as a proxy server
-
Enter the proxy server's address, port, and authentication credentials (if enabled)
-
Start browsing the internet through the proxy server
-
If you need to forward to target domains or IPs specified in HTTP/HTTPS headers, add the
X-Proxy-Host
,X-Proxy-Scheme
, andX-Proxy-Secret
fields to the request headers. For example:GET /xxx/xxx HTTP/1.1 Host: example.com X-Proxy-Host: target-domain.com X-Proxy-Scheme: http
GET /xxx/xxx HTTP/1.1 Host: example.com X-Proxy-Host: target-domain.com:8080 X-Proxy-Scheme: http
GET /xxx/xxx HTTP/1.1 Host: example.com X-Proxy-Host: target-domain.com:8443 X-Proxy-Scheme: https
GET /xxx/xxx HTTP/1.1 Host: example.com X-Proxy-Host: target-domain.com:8443 X-Proxy-Scheme: https X-Proxy-Secret: your_password
The proxy server will forward the request to the specified target address and port based on these fields.
Proxy-Authorization
corresponds to theBasicAuth
authentication method. If no password is set, this field is not required.
After installation, you can manage the WProxy service with the following commands:
# Start the service
sudo systemctl start wproxy
# Stop the service
sudo systemctl stop wproxy
# Restart the service
sudo systemctl restart wproxy
# Check service status
sudo systemctl status wproxy
# Enable auto-start on boot
sudo systemctl enable wproxy
# Disable auto-start on boot
sudo systemctl disable wproxy
If you find any issues or have suggestions for improvements, feel free to submit an issue or pull request. We're happy to improve WProxy together with the community.
WProxy is released under the MIT License, allowing you to freely use, modify, and distribute this project.