PolySSH
A multi-hop SSH connection tool.
Installation
Simply type :
$ gem install polyssh
Usage
$ polyssh [..list of ssh options and intermediate hosts...] user@host:port
You can use as many intermediate hosts as you need.
Example 1 : Traversing a single machine
We want to connect
- to a remote host called
destination
(as userbob
, on default port) - via a firewall (as user
alice
, on non-default port 7222)
The corresponding command using polyssh is :
$ polyssh alice@firewall:7222 bob@destination
Example 2 : traversing two machines with options
We want to connect
- to a remote host called
destination
(as usercharlie
, on default port) - via a firewall (as user
alice
, on non-default port 7222) - then via a router (as user
bob
, on default), with verbosity)
Type the following command using polyssh :
$ polyssh alice@firewall:7222 -verbose bob@router charlie@destination
Credits
- Initial idea & implementation : Bob Muller on Stack Overflow
- Ruby rewrite & packaging : Glenn Y. Rolland
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/glenux/polyssh.
License
The gem is available as open source under the terms of the MIT License.