Overview
This article explains what SSH is and how to use it at DreamHost.
What is SSH?
Secure Shell (SSH) is a cryptographic protocol used to encrypt and secure connections over an insecure network. SSH uses a terminal application to run SSH commands, either on your home computer or your DreamHost server.
The instructions in this article are for all servers except DreamPress. If you are on a DreamPress plan and need to log into your server via SSH, view the following article instead.
Difference between FTP and SSH
FTP
FTP (now SFTP) is an older network protocol that connects to the server using a visual SFTP client (such as Filezilla). This makes it simple to see directories and files on your local computer and DreamHost server by clicking on icons.
If you're making simple adjustments to your website, such as uploading/download files, FTP is the easier choice. See this article for further details.
SSH
SSH connects to the server using a terminal application. There are no visual depictions of data within the Shell. Everything is command line text. For example, this command checks the nameservers for dreamhost.com:
[server]$ dig ns +short dreamhost.com ns1.dreamhost.com ns2.dreamhost.com ns3.dreamhost.com
These tools can make it much easier to troubleshoot and manage your website. However, SSH can be difficult to use for new users, so some knowledge of the UNIX Shell is highly recommended.
SSH is recommended if you need to run specific commands that are not possible with an SFTP client.
How to use SSH
The following steps explain how to log into your DreamHost server using an SSH terminal.
Enabling Shell access
Before you are able to log into your server, you must change your website user to a SHELL user in the panel. See the Creating a user with Shell (SSH) access article for detailed instructions.
Opening up a terminal application
View the SSH client software article to select a terminal application from a list. Once you have chosen a terminal, open it to view a blank screen.
Locating your hostname
To log into your server, you'll need to locate your hostname. View this article for instructions on locating the hostname, as it will appear different depending on which type of server your site is hosted on. The following are examples of how it appears.
Hostname | Description |
---|---|
example.com | You can use this if you're logging into a specific website. Just change example.com to your actual domain name. Your site must be hosted at DreamHost for this to work. |
server.dreamhost.com | server is the name of your shared server |
ps123456.dreamhostps.com | ps123456 is the name of your VPS server |
ds123456.dreamservers.com | ds123456 is the name of your Dedicated Server |
This article uses server.dreamhost.com as a general example. Make sure to use the correct server name for your particular site or server.
Logging into your server
To log in, type in ssh, followed by your Shell username, an @ sign, then your server name. For example:
[server]$ ssh username@server.dreamhost.com
-or-
[server]$ ssh username@example.com
You are then asked for your Shell user's password to log in.
You are now logged into your server and can start running SSH commands. View the UNIX commands articles to get started with the basics.
How to configure passwordless login
When logging into the server with a Shell user, you must enter your password every time. You can avoid this by configuring Passwordless Login so you are instead automatically logged in.
Configuring passwordless login in macOS X and Linux
View this article for instructions on how to enable Passwordless Login in macOS and Linux:
Configuring passwordless login in Windows
If you're using Windows, you can use a third-party program named PuTTY to set this up. See the following articles for further details:
See also
DreamHost links
Third-party links