Kualo / docs
On this page

Using SSH on Kualo hosting: a getting-started guide

SSH (Secure Shell) gives you direct command-line access to your Kualo hosting account, making it an essential tool for running CLI utilities, debugging cron jobs, and working with developer tools that have no graphical interface.

6 min read Updated 8 Jun 2026

SSH (Secure Shell) gives you direct command-line access to your Kualo hosting account, making it an essential tool for running CLI utilities, debugging cron jobs, and working with developer tools that have no graphical interface.

What you need before you start

To connect over SSH you need:

  • An active Kualo hosting account with SSH access enabled (see below)
  • A terminal application or dedicated SSH client on your computer
  • Your cPanel username and password, or an SSH key pair
  • The correct SSH port for your server (contact our support team to confirm this, as we use a non-standard port)

We do not use the default SSH port 22. Contact our support team before your first connection and they will confirm the correct port for your server.

Enabling SSH access in cPanel

SSH access is not enabled by default on all accounts. To turn it on:

  1. Log in to cPanel. If you are unsure how, see our guide on how to log in to cPanel.
  2. Scroll to the Security section and click SSH Access.
  3. Click Manage SSH Keys if you want to use key-based authentication (recommended - see below), or simply confirm that shell access is enabled for your account.
  4. If shell access shows as disabled, raise a support ticket and ask us to enable it.

Choosing an SSH client

We recommend using a proper, dedicated SSH client rather than the terminal emulator built into cPanel. The cPanel terminal is less reliable, can time out unexpectedly, and lacks the features you need for comfortable day-to-day use.

On macOS, the built-in Terminal application works well. Open it and use the ssh command directly - no extra software is needed. If you want a more feature-rich experience, iTerm2 is an excellent third-party terminal emulator for macOS with split panes, search, and extensive customisation.

On Linux, the built-in terminal works well. Open it and use the ssh command directly - no extra software is needed.

On Windows, good options include:

  • Windows Terminal with OpenSSH - built into Windows 10 and 11; the simplest option if you are already comfortable with the command line
  • PuTTY - a long-established, free SSH client with a straightforward graphical interface; download it from putty.org
  • MobaXterm - a more feature-rich option that combines SSH, SFTP file browsing, and a tabbed interface in one application; download it from mobaxterm.mobatek.net
  • Termius - a cross-platform client with a clean interface, useful if you manage connections to multiple servers; download it from termius.com

Connecting to your account

The basic SSH command takes this form:

ssh -p PORT [email protected]

Replace PORT with the port our support team confirmed, username with your cPanel username, and yourdomain.com with your domain name or server hostname.

For example:

ssh -p 2222 [email protected]

On your first connection, your SSH client will ask you to confirm the server's host key fingerprint. Type yes to accept it and continue. You will then be prompted for your cPanel password.

If you connect regularly, save the connection details in your SSH client so you do not have to type them each time. In PuTTY, use the Saved Sessions feature. In Terminal on macOS, you can add an entry to ~/.ssh/config (see the SSH keys section below for an example).

Basic commands to get you started

Once you are connected, your session starts in your home directory. Here are the commands you will use most often:

# Show your current directory
pwd

# List files and folders
ls -la

# Change directory
cd public_html

# Go up one level
cd ..

# View a file
cat wp-config.php

# Edit a file with the nano editor
nano wp-config.php

# Check disk usage for the current directory
du -sh *

# Show running PHP version
php -v

# Exit the SSH session
exit

Your website files live in ~/public_html for your primary domain. Addon domain files are typically in their own subdirectory under your home folder.

Setting up SSH keys

SSH keys are a more secure and more convenient alternative to password authentication. Instead of typing a password each time, your client presents a cryptographic key that the server verifies automatically. This is particularly valuable if you manage more than one hosting account, such as a reseller managing multiple client sites, because you can reuse the same key pair across all of them.

Generate a key pair

On macOS, Linux, or Windows with OpenSSH, run:

ssh-keygen -t ed25519 -C "[email protected]"

Accept the default file location (~/.ssh/id_ed25519) or specify your own. Set a passphrase when prompted - this protects the private key if your computer is ever compromised.

This creates two files:

  • ~/.ssh/id_ed25519 - your private key (never share this)
  • ~/.ssh/id_ed25519.pub - your public key (this is what you upload to the server)

Add the public key to cPanel

  1. In cPanel, go to Security > SSH Access > Manage SSH Keys.
  2. Click Import Key.
  3. Give the key a name, paste the contents of your .pub file into the Public Key field, and leave the Private Key field empty.
  4. Click Import.
  5. Back on the key list, click Manage next to your new key and then Authorise to activate it.

Connect using your key

ssh -p PORT -i ~/.ssh/id_ed25519 [email protected]

To avoid typing the port and key path every time, add a block like this to ~/.ssh/config:

Host mysite
    HostName yourdomain.com
    User username
    Port PORT
    IdentityFile ~/.ssh/id_ed25519

You can then connect with simply:

ssh mysite

If you are a reseller or if you manage several Kualo cPanel accounts, add a separate Host block for each one. This makes switching between accounts fast and avoids any risk of connecting to the wrong server.

What you can do over SSH

With SSH access established, you can:

Troubleshooting connection problems

Connection refused or timed out - the most common cause is using the wrong port. Double-check the port with our support team.

Permission denied (publickey,password) - if you are using key authentication, confirm that the key has been authorised in cPanel (not just imported). If you are using a password, check your cPanel credentials are correct.

Host key verification failed - this can happen if you have connected before and the server's key has changed legitimately (for example, after a server migration). Remove the old entry from ~/.ssh/known_hosts and reconnect.

If you are still stuck after working through these steps, raise a support ticket and we will help you get connected.

Was this helpful?
Your feedback helps us find gaps in the docs.
Still need a hand?
Real people, around the clock - start a chat or open a ticket and we'll help you put it right.