Skip to content

Save SSH tunnel configurations and start a tunnel with port forwarding using one of the saved configurations.

Notifications You must be signed in to change notification settings

magdyamr542/ssh-tunnel-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SSH tunnel manager

Save SSH tunnel configurations and start a tunnel with port forwarding using one of the saved configurations.

Features

  • Save an SSH tunnel configuration with a description
  • Start an SSH tunnel with port forwarding using a configuration. Same as ssh -L [LOCAL_IP:]LOCAL_PORT:DESTINATION:DESTINATION_PORT [USER@]SSH_SERVER
  • List all configurations
  • Remove a configuration

Install

go install github.com/magdyamr542/ssh-tunnel-manager@latest

Usage

Run ssh-tunnel-manager for usage manual. Run ssh-tunnel-manager install-autocomplete to enable auto completion.

Example

  • Adding a configuration for a tunnel to a development cluster

    ssh-tunnel-manager add \
    --name my-dev-tunnel \
    --description "A tunnel to access the db in dev cluster" \
    --server my-ssh.server.com \
    --user me \
    --keyFile ~/.ssh/key \
    --remoteHost my-db.remote.com \
    --remotePort 5432
    
  • Listing the configurations

    ssh-tunnel-manager list
    
    # output
    my-dev-tunnel (A tunnel to access the db in dev cluster)
      - SSH server:  my-ssh.server.com
      - User:        me
      - Private key: <your-.ssh-path>/key
      - Remote:      my-db.remote.com:5432
    
  • Start tunneling using a configuration. Now you can access your remote db from localhost:1234

    ssh-tunnel-manager tunnel my-dev-tunnel 1234
    
    # output
    2023/02/20 09:19:32 SSH server "my-ssh.server.com" specifies no port. Will use 22
    2023/02/20 09:19:33 Connecting to "my-ssh.server.com:22" with a timeout of 8s
    2023/02/20 09:19:34 Connected
    2023/02/20 09:19:35 Tunneling "localhost:1234" <==> "my-db.remote.com:5432" through "my-ssh.server.com:22"
    

About

Save SSH tunnel configurations and start a tunnel with port forwarding using one of the saved configurations.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages