This is an automated email from the ASF dual-hosted git repository. lgoldstein pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/mina-sshd.git
The following commit(s) were added to refs/heads/master by this push: new 33c9ce5 [SSHD-1047] Updated README documentation to include the section regarding SSH proxy jumps 33c9ce5 is described below commit 33c9ce5d3cc188bd6dee9bda74e38e79462692cf Author: Lyor Goldstein <lgoldst...@apache.org> AuthorDate: Sat Aug 1 11:22:10 2020 +0300 [SSHD-1047] Updated README documentation to include the section regarding SSH proxy jumps --- README.md | 1 + docs/internals.md | 22 ++++++++++++++++++++++ docs/proxies.md | 22 ---------------------- 3 files changed, 23 insertions(+), 22 deletions(-) diff --git a/README.md b/README.md index 2c2ed98..14ba78a 100644 --- a/README.md +++ b/README.md @@ -39,6 +39,7 @@ based applications requiring SSH support. * [OpenSSH support for U2F/FIDO security keys](https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.u2f) * **Note:** the server side supports these keys by default. The client side requires specific initialization * [OpenSSH public-key certificate authentication system for use by SSH](https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys) +* [SSH proxy jumps](./docs/internals.md#ssh-jumps) * SFTP version 3-6 + extensions * `supported` - [DRAFT 05 - section 4.4](http://tools.ietf.org/wg/secsh/draft-ietf-secsh-filexfer/draft-ietf-secsh-filexfer-05.tx) * `supported2` - [DRAFT 13 section 5.4](https://tools.ietf.org/html/draft-ietf-secsh-filexfer-13#page-10) diff --git a/docs/internals.md b/docs/internals.md index 7d7433b..cc6136b 100644 --- a/docs/internals.md +++ b/docs/internals.md @@ -165,6 +165,28 @@ standards, but the interface can be replaced so as to implement whatever proprie } ``` +### SSH Jumps + +The SSH client can be configured to use [SSH proxy jumps](https://en.wikibooks.org/wiki/OpenSSH/Cookbook/Proxies_and_Jump_Hosts). +A *jump host* (also known as a *jump server*) is an intermediary host or an SSH gateway to a remote network, +through which a connection can be made to another host in a dissimilar security zone, for example a demilitarized +zone (DMZ). It bridges two dissimilar security zones and offers controlled access between them. + +Starting from SSHD version 2.6.0, the *ProxyJump* host configuration entry is honored when using the `SshClient` +to connect to a host. The `SshClient` built by default reads the `~/.ssh/config` file. The various CLI clients +also honor the `-J` command line option to specify one or more jumps. + +In order to manually configure jumps, you need to build a `HostConfigEntry` with a `proxyJump` and use it +to connect to the server: + +```java +ConnectFuture future = client.connect(new HostConfigEntry( + "", host, port, user, + proxyUser + "@" + proxyHost + ":" + proxyPort)); +``` + +The configuration options specified in the configuration file for the jump hosts are also honored. + ## `SshConfigFileReader` Can be used to read various standard SSH [client](http://linux.die.net/man/5/ssh_config) diff --git a/docs/proxies.md b/docs/proxies.md deleted file mode 100644 index 4047179..0000000 --- a/docs/proxies.md +++ /dev/null @@ -1,22 +0,0 @@ -# Proxies - -## SSH Jumps - -The SSH client can be configured to use SSH jumps. A *jump host* (also known as a *jump server*) is an -intermediary host or an SSH gateway to a remote network, through which a connection can be made to another -host in a dissimilar security zone, for example a demilitarized zone (DMZ). It bridges two dissimilar -security zones and offers controlled access between them. - -Starting from SSHD 2.6.0, the *ProxyJump* host configuration entry is honored when using the `SshClient` -to connect to a host. The `SshClient` built by default reads the `~/.ssh/config` file. The various CLI clients -also honor the `-J` command line option to specify one or more jumps. - -In order to manually configure jumps, you need to build a `HostConfigEntry` with a `proxyJump` and use it -to connect to the server: -``` -ConnectFuture future = client.connect(new HostConfigEntry( - "", host, port, user, - proxyUser + "@" + proxyHost + ":" + proxyPort)); -``` - -The configuration options specified in the configuration file for the jump hosts are also honored.