sincecutoff.com
← all changes

railway adds native SSH and SSH key management

Introduced 2026-03-18 · score 0.98

HOW TO USE IT

When opening an interactive shell, connect with `ssh <service-instance-id>@ssh.railway.com`. To manage keys, use `railway ssh keys` to list, `add` to register a local key, `remove` to delete a key, or `github` to import keys from your linked GitHub account.

ssh <service-instance-id>@ssh.railway.com
railway ssh keys add --key <public-key-path> --name <key-name>
railway ssh keys remove

WHY THIS HELPS

Connect interactively to a Railway service instance or manage SSH keys for a repository’s development environment.

REQUIREMENTS AND LIMITATIONS

  • Version: v4.33.0
  • <service-instance-id> (required): Service instance ID used as the SSH username when the service has no public domain.
  • keys list: Lists registered SSH keys; `list` is the default when no subcommand is given.
  • keys add: Registers a local SSH key with Railway.
  • --key <PATH>: Public key file path for `add`.
  • --name <NAME>: Name for the key being registered with `add`.
  • keys remove: Removes a registered SSH key.
  • --2fa-code <CODE>: 2FA code for verification when removing a key.
  • keys github: Imports SSH keys from the linked GitHub account.
  • Prerequisite: Have an SSH key registered with Railway before connecting. On the first `railway ssh`, the CLI prompts to register a local key.
  • Native SSH is for interactive shells.
  • Command execution and tmux sessions still use WebSocket relay because SSH exec is not supported through the QUIC tunnel.
  • The `--relay` flag is hidden.
  • Removing a registered SSH key supports 2FA.

FIRST-PARTY EVIDENCE

Check the installed version and the source before using it. Entry JSON

Report a problem with this card