How to Log in to My KVM VPS

This guide explains how to access your KVM server using SSH (for Linux-based systems) and how to use the control-panel web console when SSH is unavailable. It also includes RDP notes for Windows VPS and a troubleshooting checklist.

Prerequisites

Server IP / Hostname YOUR.SERVER.IP or vps.example.com
Username root (Linux) or Administrator (Windows). Some Linux images use ubuntu, debian, centos, etc.
Authentication Password or SSH key pair (recommended)
Port Default SSH 22/tcp (unless you set a custom port). RDP for Windows: 3389/tcp.

Option A — SSH from macOS / Linux

  1. Open Terminal.
  2. Connect with your user (replace values):
    ssh [email protected]
  3. On first connect, confirm the host key fingerprint with yes.
  4. Enter your password (if using password auth) or unlock your private key if prompted.

Using a custom SSH port:

ssh -p 2222 [email protected]

Connecting over IPv6: enclose the address in brackets.

ssh root@[2001:db8:1234::10]

Option B — SSH from Windows

1) Windows Terminal / PowerShell (built-in OpenSSH)

  1. Open Windows Terminal or PowerShell.
  2. Run:
    ssh [email protected]
  3. Accept the host key, then enter your password or key passphrase.

2) PuTTY (if you prefer a GUI)

  1. Open PuTTY, enter Host Name: YOUR.SERVER.IP and Port: 22, Connection type: SSH.
  2. (Optional) Set auto-login username at Connection > Dataroot.
  3. (If using a key) Convert/import your private key in PuTTYgen and add it under Connection > SSH > AuthPrivate key file.
  4. Click Open, accept the host key, and authenticate.

Using SSH Keys (recommended)

Generate a key pair

  • macOS/Linux:
    ssh-keygen -t ed25519 -C "[email protected]"
  • Windows (PowerShell):
    ssh-keygen -t ed25519

This creates a private key (keep secret) and a public key (shareable) in ~/.ssh/. Upload the .pub key in the server creation page or paste it to ~/.ssh/authorized_keys inside the server.

Install your public key on the server

  • Automatic (from another Linux/macOS host):
    ssh-copy-id -i ~/.ssh/id_ed25519.pub [email protected]
  • Manual:
    mkdir -p ~/.ssh
    chmod 700 ~/.ssh
    echo "PASTE_YOUR_PUBLIC_KEY_HERE" >> ~/.ssh/authorized_keys
    chmod 600 ~/.ssh/authorized_keys

After confirming key login works, you can disable password login for higher security (see “Harden SSH” below).

Accessing the Control-Panel Web Console

If SSH is blocked or you misconfigured the firewall/SSH, use the provider’s web console (VNC/Serial) from your service dashboard:

  1. Open your client area and select the KVM VPS.
  2. Use actions like Start, Shutdown, Reboot, Console, Reinstall, Reset root/Administrator password.
  3. Click Console to get an in-browser screen/keyboard for emergency access (works even if SSH is down).

From the console you can fix firewall rules, repair sshd, or revert network changes.

Windows VPS — RDP Login (if your OS is Windows)

  1. From Windows: Press Win + R, type mstsc, click Connect, enter YOUR.SERVER.IP, user Administrator, then your password.
  2. From macOS: Install “Microsoft Remote Desktop” from the App Store, add a PC with YOUR.SERVER.IP, connect as Administrator.
  3. Ensure the Windows firewall allows RDP (Inbound rule for 3389/tcp). The control panel console can help if you need to enable it locally.

Post-Login: Basic Hardening

  1. Create a non-root sudo user
    adduser adminuser
    usermod -aG sudo adminuser
  2. Harden SSH (edit /etc/ssh/sshd_config):
    PermitRootLogin no
    PasswordAuthentication no
    PubkeyAuthentication yes
    # Optional: move SSH to a non-default port
    # Port 2222

    Then reload the service:
    sudo systemctl reload sshd (Debian/Ubuntu) or sudo systemctl reload sshd (RHEL/Alma/Rocky).

  3. Enable a firewall:
    • UFW (Debian/Ubuntu):
      sudo ufw allow 22/tcp
      sudo ufw enable
      sudo ufw status
    • firewalld (RHEL/Alma/Rocky):
      sudo firewall-cmd --add-service=ssh --permanent
      sudo firewall-cmd --reload
  4. Install Fail2ban (optional) to limit brute-force attempts.
  5. Keep packages updated: apt update && apt upgrade -y or dnf update -y.

Change SSH Port (optional)

  1. Edit /etc/ssh/sshd_config and set e.g. Port 2222.
  2. Allow the new port in your firewall:
    • UFW: sudo ufw allow 2222/tcp
    • firewalld: sudo firewall-cmd --add-port=2222/tcp --permanent && sudo firewall-cmd --reload
  3. Reload SSH: sudo systemctl reload sshd
  4. Next login:
    ssh -p 2222 [email protected]

Troubleshooting

  • Timeout / No route — Server is off, wrong IP, network block, or firewall drop.
    • Check power state in the control panel; use Console if needed.
    • From your computer:
      # Linux/macOS
      ping -c 3 YOUR.SERVER.IP
      nc -vz YOUR.SERVER.IP 22
      # Windows PowerShell
      Test-NetConnection YOUR.SERVER.IP -Port 22
  • Connection refused — Host reachable but SSH not listening.
    • Start SSH via console:
      sudo systemctl enable --now ssh   # Debian/Ubuntu
      sudo systemctl enable --now sshd  # RHEL/Alma/Rocky
    • Confirm port with:
      sudo ss -tulpn | grep ssh
  • Permission denied (publickey) — Key missing or wrong user.
    • Ensure your public key is in ~/.ssh/authorized_keys.
    • Fix permissions:
      chmod 700 ~/.ssh
      chmod 600 ~/.ssh/authorized_keys
    • Try the correct default user (e.g., ubuntu on Ubuntu cloud images).
  • Host key verification failed — The server was reinstalled or IP reassigned.
    • Remove the old key on your device:
      ssh-keygen -R YOUR.SERVER.IP
    • Reconnect and accept the new fingerprint.
  • Port blocked by ISP or network — Try a different port (e.g., 443) and allow it in the firewall.
  • Login very slow — DNS reverse/lookup delays; set UseDNS no in sshd_config and ensure /etc/hosts has your hostname.

Where to find your credentials and console

In your hosting dashboard, open the service details page for your KVM VPS to view the IP addresses (IPv4/IPv6), current SSH/RDP credentials, ISO/reinstall options, reverse DNS, and the Console button for emergency access.


Tip: After confirming that key-based SSH works on a non-root user, disable password logins and root SSH access for maximum security. Always keep a working console path in case you lock yourself out.


Was this article helpful?

mood_bad Dislike 0
mood Like 0
visibility Views: 35