Wikipedia defines Secure Shell as
Secure Shell (SSH) is a cryptographic network protocol for secure data communication, remote command-line login, remote command execution, and other secure network services between two networked computers that connects, via a secure channel over an insecure network, a server and a client (running SSH server and SSH client programs, respectively).
For a layman it is similar to what you see as “Command Prompt” on Windows PC or Terminal in Mac OS X. By using ssh, you can login to your server and access files and folders in your account in text format instead of graphical interface. This feature is for Advanced Users for powerful control of their web hosting account.
Most of the tasks related to web hosting can be done using cPanel or FTP. However some tasks are more conveniently done using ssh e.g. editing .htaccess file for mod_rewrite rules.
You need ssh client on your computer to login to an ssh server. There are free and commercial software available. For Windows, putty is a popular free ssh client. It does not even need to be installed. You can download putty.exe file and run it on your computer.
When you are running putty, it will ask you to enter following information of the remote server to connect to it:
Host Name (or IP Address): This is your server IP address or domain name.
Port: 22 (You may need to check with your hosting provider if this port does not work. They may have set it to a different port for security reasons).
Connection type: SSH
Click Save to save the session settings for future connections.
Click Open to make a connection to the remote server.
First time you connect, it will issue a Security Alert:
The server’s host key is not cached in the registry. You have no guarantee that the server is the computer you think it is…..
This is normal for the first time. When you click Yes and continue, it will be cached for future connections.
Enter your ssh username when prompted with login as: (this is typically your cPanel username)
Enter password. If ssh is allowed for your account, you’ll be in ssh environment and can issue linux shell commands. If it is disabled or you enter wrong password, access will be denied. Please contact support for help. When you login successfully, it will also print a line that Last login: showing you the last date/time when someone logged into this account and the IP address of the user.
If you are on Mac OS X or Linux computer, you can go to Terminal and issue a command like this
Where username is your cPanel username, and IP is your server IP address. If ssh is on a different port then the command would be
ssh -pXXX username@IP
Where XXX is the ssh port.
Once you are logged in, you can issue linux shell commands. Below is a short list of important commands.
|Command||Meaning and description|
|pwd||print absolute path of current working folder|
|cd||change folder to home folder|
|cd public_html||change folder to public_html. This is typically where your website files reside. You can replace public_html with other folder names to move around.|
|cd ../||Move up one folder in the folder (directory) tree.|
|clear||clear the screen so you can enter new commands without any old output on it|
|rm xyz.txt||remove (delete) xyz.txt file|
|cp xyz.txt abc.txt||Copy xyz.txt file as abc.txt (for making a duplicate or backup of the file)|
|mv abc.txt xyz.txt||Rename file abc.txt as xyz.txt|
|uptime||Display the current time with how long the server has been up and running since last reboot|
|hostname||Display server’s hostname|
|ls||List all files in current folder. ‘dir’ also works as replacement command|
|ls *.jpg||List all files with names ending in .jpg in current folder|
|exit||Log off your shell|