Skip to content

Linux VPS access over public IP

Connecting to a Linux Elastic VPS on Stack Harbor PaaS with any SSH client via its attached public IP — example commands for macOS, Linux, BSD, and Windows.

When a Linux Elastic VPS has a public IP attached, you can reach it from any third-party SSH client over that address. The access level is the same as you get over the platform’s SSH Gateway — full root, with whatever shell tooling you installed inside the VPS.

You can find the public IP of a VPS by expanding the node in the dashboard, or from the email you received when the container was created.

For Windows-based VPS containers, the remote-access protocol is RDP, not SSH. The instructions below apply to Linux VPS containers.

From macOS, Linux, or BSD

OpenSSH ships with every modern Unix-like system. From a terminal:

ssh {userName}@{hostname}

Where:

  • {userName} is the login from the post-creation email (root by default)
  • {hostname} is the attached public IP

On the first connection you will be asked to confirm the host fingerprint and add it to your known_hosts. Type yes to continue. Then enter the password from the post-creation email.

You are in. The same pattern works with any other client — Termius, Tabby, Warp, Tmux + ssh, anything that speaks OpenSSH.

From Windows

Windows 10 and later ship OpenSSH as an optional component, so the macOS/Linux command works in PowerShell or Windows Terminal too. For a graphical client, PuTTY is the well-known choice:

  1. Launch PuTTY.
  2. In the Session tab, put the public IP in the Host Name field. Leave Port at 22 and Connection type at SSH.
  3. Click Open.
  4. In the console window, enter the login (root by default) and then the password from the post-creation email.

You are connected. PuTTY lets you save the session so you can reconnect with a single double-click later.

Key-based authentication

Password authentication is fine for first contact, but you should switch to a key as soon as you can:

  1. On your workstation: ssh-keygen -t ed25519.
  2. Copy the public key (~/.ssh/id_ed25519.pub by default).
  3. In the VPS, append it to ~/.ssh/authorized_keys (or use ssh-copy-id user@host to do it in one step).
  4. Test by connecting again — you should not be prompted for a password.
  5. Once key-based auth works, edit /etc/ssh/sshd_config and set PasswordAuthentication no, then restart sshd.

The key is yours alone — keep the private half on the workstation and protect it with a passphrase.

Operational notes

  • Firewall. The VPS runs its own firewall — make sure inbound port 22 (or whichever port you set sshd to) is allowed on the public interface.
  • Public IP cost. A public IP is a paid option. If your VPS only needs to be reachable from your office or from a CI runner, you can use the SSH Gateway over the Shared Load Balancer at no IP cost.
  • Reconfigured SSH port. If you change sshd to listen on a non-standard port, add -p <port> to the client command (or set Port in PuTTY).

See also