SSH (Secure Shell) is an encrypted command-line connection to your hosting account or server.
SSH, short for Secure Shell, lets you open a text-based connection to a server and run commands on it as if you were sitting at its keyboard. Everything you type and everything the server sends back is encrypted, so passwords and data can't be read by anyone watching the network.
On a hosting account, SSH gives you a terminal inside your own space on the server. From there you can move and edit files, import a database, run Composer or git, and use WP-CLI to manage a WordPress site without opening the dashboard.
How SSH works
When you connect, your SSH client and the server agree on encryption keys, the server proves its identity with a host key, and then you prove yours. On a Mac, Linux or modern Windows computer, you connect from a terminal with a command like:
ssh username@example.com
The first time, your client asks you to confirm the server's fingerprint. After that, it warns you if the fingerprint ever changes, which protects you from impostor servers.
SSH keys vs passwords
You can log in over SSH with a password, but SSH keys are safer and more convenient. A key pair has two halves:
- A private key that stays on your computer and should never be shared
- A public key that you add to the server
The server checks that you hold the private key without it ever being sent. Keys can't be guessed in a brute-force attack the way passwords can, and you can protect the private key with a passphrase.
What you can do with SSH on a hosting account
- Upload or extract large archives much faster than through a browser
- Search and edit files with command-line tools
- Import and export MySQL databases
- Deploy code with git and install dependencies with Composer
- Run maintenance scripts, test cron jobs and read error logs
On shared hosting, you have access to your own account only, not root access to the whole server. That's different from a VPS, where you control the entire system.
SSH vs FTP and SFTP
FTP only moves files, and plain FTP sends your password unencrypted. SFTP is a file transfer protocol that runs over SSH, so it's encrypted and uses the same login. SSH itself goes further, letting you run commands as well as transfer files. AblePage includes SSH and SFTP access on every plan.
Common SSH problems
- "Permission denied" usually means the wrong username, password or key
- A refused connection or a timeout often means the wrong port, or that SSH access isn't enabled for your account yet
- A host key warning after a server move is expected, but check with your host before accepting the new key