The RDS Proxy can open SSH sessions to Linux servers and Artica appliances.
The user starts the usual Remote Desktop client, connects to the gateway and picks an SSH target.
A terminal opens inside the Remote Desktop window.
This documentation has three parts:
Many administrators work from locked-down Windows workstations.
Only the Remote Desktop client (mstsc) is allowed on them.
PuTTY, OpenSSH and WinSCP are blocked or not installed.
Yet these administrators still need a command line on the Artica appliances and on the Linux servers of the company.
With SSH targets, the RDS Proxy becomes the only way in.
The workstation speaks RDP to the gateway.
The gateway speaks SSH to the servers.
Nothing is installed on the workstation or on the servers.
The gateway engine (ReDemPtion) has a native SSH module.
The module draws the terminal in the Remote Desktop window, sends the keystrokes to the server over SSH and reads the screen like a terminal emulator.
An SSH target is a target like the others.
It goes through the same policies, the same second factor, the same session list and the same access events.
Each target chooses how the gateway logs in to the server:
| Mode | What happens |
|---|---|
| Typed at connection | The user types the Linux account and password in the terminal. The password is never shown and never written in the traces. |
| Secret kept in the vault, password | The gateway logs in with a password stored in its vault. The user never sees it. |
| Secret kept in the vault, private key | The gateway logs in with a private SSH key stored in its vault. |
| Secret kept in the vault, bastion key | The gateway logs in with its own SSH key pair. The public key is installed on the server from the console. |
Vault secrets are encrypted on the appliance (AES-256-GCM).
The console and the REST API can replace a secret, never display it.
The bastion key is one SSH key pair that belongs to the gateway (ed25519 by default, RSA 4096 on request).
The console installs its public key on a target account in one click.
The password used for this installation serves one connection and is never stored.
On an Artica appliance, the key goes into the SSH keys the appliance manages, so it survives its own configuration updates.
The gateway records the host key of each server at the first connection.
When the key changes later, the connection is refused, a notification is raised and an access event is written.
If the change is expected (server reinstalled, new key), the administrator clicks Forget the key on the target.
The next connection records the new key.
Ctrl+Alt+F file explorer sends server files to the Windows clipboard.The policy decides what is allowed with its clipboard rights.
See Connect and transfer files.
Every SSH session is recorded, whatever the video setting of the policy.
Next to the video, the gateway keeps three text traces:
Input typed while the server hides the echo (password prompts, sudo) is masked.
It never reaches the transcript or the command list.
The traces follow the retention of the video recordings.
The console shows them in the SSH session trace window of each recording, under RDS Proxy » Videos.
The detection patterns of the policies also apply to SSH commands.
A pattern has a scope: Window titles (RDP sessions) or SSH commands.
Three actions exist for SSH commands:
| Action | Effect |
|---|---|
| Notify | The command runs. A notification and an access event are written. |
| Refuse the command | The command never reaches the server. The gateway clears the line and shows a yellow message with the policy and the pattern. The session goes on. |
| Disconnect | The command never reaches the server, then the session is closed. |
The gateway holds the Enter key until it has read the command line on the screen.
Tab completion, history and line editing are already resolved at that moment.
Each line of a multi-line paste is checked on its own.
sshd with its SFTP subsystem is enough.
| Function | RDP Proxy | RDP Proxy authenticator |
|---|---|---|
| SSH targets, command patterns, traces | 12.3.18 or later | 1.6.0 or later |
| File transfers | 12.3.19 or later | 1.6.1 or later |
The versions are shown on the RDS Proxy status page.
See How to upgrade the RDS Proxy service.
When the version is too old, the target form explains why SSH is not available.
vi, less, top), Enter is not a command.