This is a simple SSH Tunnel utility written in Python. It allows you to create secure SSH tunnels easily.
The SSH Tunnel Utility helps you to forward ports securely using SSH. This can be useful for accessing services behind a firewall or for encrypting traffic.
- Easy to use
- Secure port forwarding
- Lightweight and fast
- Python 3.x
pip
(Python package installer)- SSH client
-
Install Python
If you don't have Python installed, you can install it using Homebrew. First, install Homebrew if you haven't already:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Then, install Python:
brew install python
-
Install
sshpass
sshpass
is a utility for non-interactive SSH password authentication. You can install it using Homebrew:brew install hudochenkov/sshpass/sshpass
-
Install
pip
pip
is the Python package installer. It should come with Python, but if it's not installed, you can install it using:python3 -m ensurepip --upgrade
-
Install SSH Client
macOS comes with an SSH client pre-installed. You can verify it by running:
ssh -V
If it's not installed, you can install it using Homebrew:
brew install openssh
-
Clone the Repository
Open your terminal and run the following command to clone the repository:
git clone https://github.com/M100K300/sshTunnelMac.git
-
Navigate to the Project Directory
cd ssh_tunnel_util
-
Create a Virtual Environment
It's a good practice to use a virtual environment to manage dependencies. Run the following commands:
python3 -m venv venv source venv/bin/activate
-
Install Dependencies
Use
pip
to install the required dependencies:pip install -r requirements.txt
-
Run the Application
You can now run the SSH Tunnel Utility:
python ssh_tunnel_util.py
To use the SSH Tunnel Utility, follow the instructions provided in the application. Typically, you will need to specify the local port, remote port, and the SSH server details.
This project is licensed under the GNU GENERAL PUBLIC LICENSE.
Contributions are welcome! Please fork the repository and submit a pull request.
For any questions or issues, please open an issue on GitHub.