A professional desktop application for managing SSH reverse tunnels with an intuitive graphical interface. Perfect for developers, system administrators, and anyone needing secure remote access to local services.
- ๐ SSH Reverse Tunnels - Easy configuration of SSH
-Rtunnels - ๐ฏ Visual Management - Native Windows interface for managing multiple tunnels
- ๐ Auto-detection - Automatic loading of hosts from SSH config
- ๐ Multi-language - Support for English and Spanish
- ๐ Real-time Monitoring - Live status updates for active tunnels
- ๐ผ System Tray Integration - Runs discreetly in background
- ๐ Secure - Uses SSH key authentication
- ๐ One-click Management - Start/stop tunnels with single clicks
- Python: 3.9 or higher
- SSH Client: OpenSSH installed and in PATH
- Operating System: Windows 10/11
pip install PySide6 paramiko psutil# Clone or download the repository
git clone https://github.com/daniscript18/ssh-tunnel-manager
cd ssh-tunnel-manager
# Install dependencies
pip install -r requirements.txt
# Run application
python ssh_tunnel_manager.pyDownload SSHTunnelManager.exe from [Releases] and run directly.
File: C:\Users\<user>\.ssh\config (Windows)
# Example configuration for VPS server
Host my-vps
HostName 192.168.1.100
User ubuntu
Port 22
IdentityFile ~/.ssh/id_rsa
ServerAliveInterval 60
ServerAliveCountMax 3
# Example for cloud service
Host aws-server
HostName ec2-xx-xx-xx-xx.compute-1.amazonaws.com
User ec2-user
IdentityFile ~/.ssh/aws-key.pem
# Configuration for multiple hosts
Host dev-server
HostName dev.example.com
User developer
Port 2222
Host prod-server
HostName prod.example.com
User adminTo allow port forwarding, edit /etc/ssh/sshd_config on the server:
# Enable remote port forwarding
GatewayPorts yes
AllowTcpForwarding yes
ClientAliveInterval 30
ClientAliveCountMax 3
# Recommended security options
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yesRestart SSH service after changes:
sudo systemctl restart sshd- Select SSH Host from the dropdown (loaded from your SSH config)
- Configure Ports:
- Remote Port: Port on the VPS server
- Local Port: Port on your local machine
- Click "Start Tunnel"
Host: my-vps
Remote Port: 25565
Local Port: 25565
Host: my-vps
Remote Port: 8080
Local Port: 3000
Host: my-vps
Remote Port: 5432
Local Port: 5432
- View Status: Real-time list of active tunnels
- Stop Individual: Select and stop specific tunnels
- Stop All: Terminate all tunnels at once
- System Tray: Monitor and control from system tray
Solution: Install OpenSSH Client through Windows Features
Solution: Verify SSH key configuration and permissions
Solution: Check server connectivity and firewall settings
Solution: Port is occupied, choose a different remote port
pip install pyinstaller
pyinstaller --onefile --windowed --name "SSHTunnelManager" --icon=icon.ico --add-data "icon.ico;." ssh_tunnel_manager.py- TunnelManager: Core tunnel management logic
- TunnelApp: Native Windows GUI with PySide6
- SSH Config Parser: Automatic host detection
- Process Manager: Robust process handling with psutil
- Use SSH Keys instead of passwords
- Non-standard ports for public services
- Restrictive firewall rules
- Regular updates of SSH components
- Monitor connection logs
The application supports both English and Spanish. Use the language selector in the main interface to switch between languages.
Contributions are welcome! Please feel free to submit Pull Requests.
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Distributed under MIT License. See LICENSE for more information.
If you encounter issues:
- Check the troubleshooting section
- Verify your SSH configuration
- Ensure ports are not blocked by firewall
- Open an issue with detailed information
- ๐ง Email: daniscript18@outlook.com
- ๐ Discord: daniscript18
- ๐ Issues: GitHub Issues
Remember! SSH tunnels are powerful but require proper security configuration. Always follow best practices. ๐ก๏ธ

