Introduction to Secure Shell (SSH)

Linux servers are very powerful multi-tasking, multi-user machines that use terminal services for control and administration. If you have a Linux server, you will most likely control it with Secure Shell or SSH.

SSH uses port 22 and provides encryption services, along with terminal services. Not long ago, Telnet was the protocol most used to communicate with and control remote hosts. As with the case of FTP, a more secure version of this protocol was needed for modern hosting scenarios.

Your web host will most likely provide your SSH server. You will need to install a SSH client to enable communication with your web host. You will need the IP address of the SSH server, and your authorization credentials. This will all be available from your web host.

A popular Open-Source SSH client, that you can download for free is PuTTY. You can find a version of this application using your favorite search engine. Just search fot putty. Select the listing for the SSH client.

Once downloaded enter the port and authentication information in the options area of PuTTY, and be sure to save this configuration.

Using PuTTY, login to your server. When connected you will see a small re-sizable window presenting your Linux server login prompt. Provide the appropriate credentials and you will then see the main system prompt for your Linux machine.

Since Linux is multi-user, other users may be logged into the server. This is one of the advantages of using Linux in a network environment. Multiple users can authenticate and use the resources of the server. Users may have different roles, such as administrator, user, etc. Your SSH client will be restricted to the rights granted to your specific user account.

It is probably not a good idea to login as the root user. The root user, or superuser account can make changes that you may not intend. It’s best to use a regular user account for everyday activities. Depending on the distribution you’re using, you can execute a command like:

sudo su (works in Ubuntu)

This command allows you to perform administrative tasks, without having admin level privileges. You will be provided a prompt for your personal password. If your account name is on the “sudo su” list (see your administrator about this), you will be granted administrator privileges, until you log out of the admin account. Upon logging out, you will be back in your regular user account.

Once you have gained access to your server, you can issue shell commands to navigate and control the server. The commands used depend on the “flavor” of shell being used by your system. Most Linux users will be using the “bash” shell, but could be using the “dash” shell instead (more about shell “flavors” in a future article).

In summary, logging into your remote host’s shell, you will need to use the SSH protocol. You can use the free PuTTY application for this. the login will require the SSH server’s IP address and your login credentials. In future articles we will examine useful shell commands that every administrator needs to have in their toolbox.

Leave a Reply

Your email address will not be published. Required fields are marked *