SSH, (or Secure Shell), is most often used as a command line alternative to FTP. With FTP, you use a client to log into your server. With SSH, you use a terminal (or Shell) and type in commands to access your server.
All SSH traffic travels over a secured connection, rather than plain text. Because of this, the connection is encrypted and secure. DreamHost currently uses OpenSSH software on the server end.
Why should I use SSH?
SSH allows you to take advantage of many tools which are not available with an FTP client. For example:
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.
Step 1 — Enabling Shell access
Before you are able to log into your server via SSH, you must change your website user to a SHELL user in the panel. This process is detailed in the following 'Enabling Shell Access' article:
This Shell user is the username you use to log into your server as shown below.
Step 2 — Opening up a terminal application
A terminal is a program you use to type Shell commands. There are several terminal clients (applications) you can use on any operating system. View the following article for the easiest options for Windows, Mac, and Linux:
Once you have chosen a terminal, you can proceed with locating your hostname and logging into your server.
Step 3 — Locating your hostname
When you're ready to log into your server via SSH, you'll need to know your hostname. This can differ depending on which type of server you're site is on. View the 'Finding your server name' article for details on how to obtain the correct name.
|example.com||You can use this if you're logging into a specific website. Just change 'example.com' to your actual domain name.|
|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|
|dp-ab12cd34ef.dreamhostps.com||'dp-ab12cd34ef' is the name of your DreamPress instance|
This article uses server.dreamhost.com as a general example. Make sure to use the correct server name for your particular site or server.
Step 4 — Using commands to log into your server
Run the following command in your terminal to log in:
[server]$ ssh email@example.com
[server]$ ssh firstname.lastname@example.org
Be sure to change example.com to your actual domain, or server.dreamhost.com to the server you're connecting to.
How to configure passwordless login
Once you set up a shell user, you must enter your password each time when logging into the server. If you’d like to avoid entering your password each time, you can set up Passwordless Login. This way, you'll be able to automatically log in each time without needing to enter your password.
How to configure passwordless login in Mac OS X and Linux
View the following article for instructions on how to enable this in OS X and Linux:
How to configure passwordless login in Windows
If you're using Windows, you'll need to download a third-party program named PuTTY to emulate a shell environment. View the following articles for further details:
- Enabling Shell access
- SSH client software
- Troubleshooting SSH
- How to configure passwordless login in Mac OS X and Linux
- How do I set up passwordless login in PuTTY?
- UNIX commands
- Updating host keys