21+ years in hosting · Jaipur, India · INR billing with 18% GST · 24/7 email support
Blog · WebJi® India

What is SSH Access and Why Developers Need It

Quick answer

SSH (Secure Shell) is the protocol that opens an encrypted command-line session between your computer and a server, by default on TCP port 22. On hosting it lets you run WP-CLI, Composer, Git, database exports and permission fixes directly, which is far faster than moving files one by one over FTP.

For developers, agencies and site owners who want to work on a hosting account or VPS from the command line safely.

✓ In business since 2005
✓ INR + GST billing
✓ 24/7 Email Support — avg reply < 60 min
GuideWebJi®
knowledge
Read time
4 min
Sections
7
Updated
14 Nov 2026
Written by
WebJi® team

What is SSH?

SSH (Secure Shell) is a network protocol that opens an encrypted command-line session on a remote server, by default over TCP port 22. It replaced Telnet, rsh and rlogin, which sent usernames, passwords and every command in plain text that anyone on the network could read.

Everything you type and everything the server prints back travels encrypted, so intercepted traffic is useless to an attacker. On a hosting account the shell is where bulk work happens: moving thousands of files, dumping a database or updating an application, jobs that FTP handles one file at a time.

What does SSH access let you do on hosting?

SSH access lets you run server commands directly, so tasks that time out in a browser or FTP client finish in one line. It is the working environment for developers, agencies and anyone maintaining WordPress at scale.

  • Tools: WP-CLI, Composer, Git, mysqldump, rsync and permission sweeps.
  • Bulk jobs: unzip a 2 GB backup, search-replace a database, or fix ownership across a site.
  • Diagnostics: follow an error log live while you reproduce the fault.
  • Deployment: pull code from a repository, as in deploying a website with Git.
Level of SSH access by hosting type
HostingSSH accessWhat you can change
cPanel shared hostingJailshell, usually after activationYour own account's files and databases
VPSFull root from first bootThe whole operating system
Dedicated serverFull rootThe whole machine

How do you connect to a server with SSH?

From a Mac or Linux terminal, or PowerShell on Windows 10 and later, run ssh user@yourserver; add -p only when the port is not 22 and -i to choose a key file.

ssh user@server.example.com
ssh -p 2222 user@server.example.com
ssh -i ~/.ssh/webji_key user@server.example.com

The first connection shows the server's host key fingerprint and asks you to confirm it. Compare it with the value from your host before typing yes; that single check stops an impostor server sitting between you and your files. Windows users who prefer a graphical client can follow the PuTTY guide, and "Connection refused" errors are traced in fixing SSH connection refused on a VPS.

How do you set up SSH key login?

Generate a key pair on your own computer, place the public key on the server, and log in without sending a password. The private key never leaves your machine; the server only checks that you hold it.

ssh-keygen -t ed25519 -C "you@yourbusiness.in"
ssh-copy-id -i ~/.ssh/id_ed25519.pub user@server.example.com
ssh user@server.example.com

Give the key a passphrase when ssh-keygen asks, so a stolen laptop is not a stolen server. Where ssh-copy-id is unavailable, paste the contents of the .pub file into ~/.ssh/authorized_keys on the server, or import it in the hosting panel. Ubuntu-specific steps are in generating an SSH key on Ubuntu.

How do you enable SSH in cPanel?

In cPanel, open Security › SSH Access › Manage SSH Keys, generate or import a key, click Authorize, then connect with the cPanel username. The session opens in jailshell, a confined shell that limits you to your own account.

  1. Open SSH Access and choose Manage SSH Keys.
  2. Import your existing public key, or generate a new pair and download the private key.
  3. Click Manage next to the key, then Authorize.
  4. Connect with ssh cpanelusername@yourdomain.in using the port your host specifies.

Inside jailshell, WP-CLI, Composer, Git and mysqldump work normally; other accounts and the server's system files are fenced off. If the SSH Access icon is missing, shell access is disabled for the account and the host must turn it on. WebJi® cPanel hosting customers can request it from support@webji.services.

How is SSH different from FTP, SFTP and FTPS?

SSH gives you a command shell; FTP only moves files and sends the login in plain text; SFTP is file transfer that runs inside SSH on the same port 22. FTPS is a separate protocol: classic FTP wrapped in TLS.

SSH and file-transfer protocols compared
ProtocolDefault portProtectionUse it for
SSH22Encrypted sessionRunning commands
SFTP22Same SSH encryption, same keysDefault choice for hosting file transfer
FTPS21 (explicit TLS) or 990 (implicit)TLS around FTPSetups that mandate FTPS
FTP21None; logins and files in plain textLegacy tools only

The trade-offs are covered in FTP vs SFTP.

Which SSH commands should beginners learn first?

Ten commands cover most hosting work: pwd, ls -la, cd, tail -f, grep, find, nano, mysqldump, wp and chmod. None needs root, so they work the same in jailshell and on a VPS.

Starter SSH commands for a hosting account
CommandExampleWhat it does
pwdpwdShows the directory you are in
ls -lals -la public_htmlLists files with permissions and owners
cdcd public_htmlMoves into the web root
tail -ftail -f error_logFollows a log live
grepgrep -i "fatal" error_logFinds lines that match
findfind . -name "*.zip" -size +100MLocates large or lost files
nanonano .htaccessEdits a file in the terminal
mysqldumpmysqldump -u dbuser -p dbname > backup.sqlExports a database
wpwp plugin update --allRuns WP-CLI tasks
chmodchmod 644 wp-config.phpSets file permissions

A longer reference is in Linux commands for hosting.

How do you keep SSH access secure?

Use key login with a passphrase, disable password login once keys work, verify host fingerprints, and remove keys the day someone leaves. On a VPS where you hold root, these habits matter most.

  • Disable passwords: on a VPS set PasswordAuthentication no in /etc/ssh/sshd_config, then reload the SSH service while keeping your current session open.
  • Investigate mismatch warnings: a "host key changed" warning means the server was rebuilt or something is intercepting; confirm with the host before continuing.
  • Review authorized_keys: after every staff or agency change.
  • Add a second factor: see SSH two-factor authentication.
FAQ

Frequently asked questions

Is SSH the same as a VPN?

No. SSH encrypts a session to one server so you can run commands or transfer files. A VPN encrypts all network traffic between your device and a network. SSH can forward individual ports, but it is not a replacement for a full VPN.

Why does SSH ask "Are you sure you want to continue connecting"?

Because your computer has not seen that server's host key before. Typing yes stores the fingerprint in ~/.ssh/known_hosts, and future connections are checked against it. Compare the fingerprint with your host's published value the first time.

Can I use SSH on Windows without PuTTY?

Yes. Windows 10 and 11 include an OpenSSH client, so ssh, ssh-keygen and scp work in PowerShell or Command Prompt. PuTTY is still useful if you prefer saved sessions in a graphical window.

Why can't I run sudo on shared hosting?

Jailshell gives you control of your own account only, so system-wide commands such as sudo, installing packages or restarting services are blocked. If your project needs them, a VPS with full root is the right plan.

Last editorial update: 14 November 2026.

WebJi® since 2005

Ready to get started with WebJi®?

Join 12,000+ businesses across India and overseas. INR pricing, 18% GST shown before payment and 24/7 email support in Hindi and English — average first reply under 60 minutes.