If you have chosen to run your website on a Virtual Private Server from your web hosting provider, then congratulations! You’re in the company of businesses that recognize the advantages of sophisticated technology and speedy page and email response.
You know that your hosting company will take care of your machine maintenance, so you are freed up to take care of other responsibilities. You also know that by hosting on a machine with robust capabilities, you save money and your site visitors enjoy fast response times.
You can choose your operating system and can customize your software. You can also manage the remote server from your desk using Secure Shell Access, or SSH. And you’re not paying for disk space, RAM and CPU performance.
Most customers choose a VPS so that they have complete control over their server’s configuration. Hosting services will generally install the base server software, and you can customize the rest of your setup. Companies also choose VPS hosting for some other reasons, such as:
Robust security: VPS server environments offer enhanced security features that include robust monitoring, improved reliability, and more backup space. Once you start using SSH to communicate with them, your pipe to the server will also be protected.
Traffic capacity: The best problem to have is increased site traffic. The worst problem to have is a website that can’t handle it. A VPS can scale to accommodate heavy traffic if your online audience grows.
PCI compliance: E-commerce websites should reside on a VPS. Sites that accept credit card information must comply with Payment Card Industry Security Standards, and VPS servers are more like to pass a compliance test.
Multi-domain capacity: Web developers can host an unlimited number of domains on one VPS server. This feature allows you to manage all your domains from one location.
Dedicated Network IP Address: If your company does email marketing, your communication is less likely to be caught in a company spam filter if it is sent from a single, stable IP address.
Most VPS server software is either Windows-based or Linux-based. Some are OSX -based, but for our purposes here we’ll discuss the most widely-used systems.
Server administrators debate the virtues of each of these systems, but they both have an appropriate place in the VPS server world. Here are some notable differences between them:
Supports ASP and ASP.NET pages that a site may rely on, and similarly, support for Microsoft Access and Microsoft SQL databases. Windows VPS also offers Remote Desktop access that users may prefer over VPS control panels. Your VPS host charges money for this operating system since it is commercial software. SSH access requires an SSH client to connect to a Windows server.
If cost is a determining factor, the free Linux server operating system is the way to go. Since Linux is open source, server administrators can tweak it to improve reliability and performance. This operating system also has built-in SSH that allows direct communication between the system and the administrator.
Network engineers developed Secure Shell, or SSH, as an answer to the early Telnet protocol. Telnet allowed remote login over a TCP/IP network to remote computers and hardware.
Clients would use a Telnet client much like an FTP client to communicate with a host in plaintext, or unencrypted, text. Although Telnet was a great way to get to a remote machine, it led to serious security issues. Anyone with access to the network was able to see usernames and passwords used to access the remote computer.
SSH encrypts the communications between computers and engineers now use it almost exclusively. It allows secure file transfers and logins and protects against snooping attacks. SSH is built into Unix and Linux operating systems and can be used by Windows with an SSH client.
Once you have chosen to use a VPS to host your website, your hosting service will give you credentials to use to communicate with your server. The credentials include your server’s IP address and your username. You will use this information to connect to your VPS regardless of your communication method.
We talked about using an SSH client with Windows. You may choose from several, but one of the most popular is an application called PuTTY. Many of these GUIs perform the same essential functions, so we’ll concentrate on this one for now.
If you have ever used an FTP client, you will see some similarities with PuTTY right away. The client will ask you what computer you want to connect to, and a port number for communication.
You’ll identify your server with its IP address, and enter the default SSH port number 22 if it isn’t already defined. You will also establish a connection type SSH if it isn’t already selected.
PuTTY gives you an opportunity to save your session: take it. You won’t have to enter the IP address, PuTTY preferences or your server configuration again.
Once you’ve entered the above information, click “open.”
SSH is built into these operating systems so you won’t need to download client software to connect to your server. You will use your command line utility.
This interface can be intimidating at first, but it’s easy to learn. It is the preferred method of many developers who enjoy that kind of control.
The Linux operating system has an SSH client built into it called Open SSH. To log in to a remote machine, type ssh (example machine) at a shell prompt. Like the PuTTY experience, if this is the first time you have connected via SSL, you will receive an untrusted connection warning, with an option to continue connecting.
Typing yes will add that machine to your computer’s list of known hosts, and the next command screen will tell you just that. The next time you connect to that server, your client will recognize it and trust it.
Mac OS X also has SSH built into the operating system. In the Utilities folder, there is an application called Terminal. This app opens a command-line interface from which you can run SSH commands.
The initial connection syntax is this: ssh username@(server IP address). This connection will generate the same authentication warning and the option to continue. The user may then log in to the remote server.
The basis of SSH is security. We talked about Telnet sending plaintext between computers; SSH sends encrypted text, or cyphertext, between machines.
Before you connect to your remote server using any method, you need a set of encryption keys: one for you which is private, and one that resides in your user folder on the server, which is public.
The server can identify your machine by matching up these keys. In the UNIX and Linux sections, you will see examples wherein the client issues a challenge to the user to confirm the authenticity of the server. The existence of these keys prompts that challenge.
In the Windows environment, PuTTY will ask for the user to upload the public key to the server, and it will match to the private key on the user’s machine. This process establishes a pipe between you and the server that only the two entities can access and read.
You will only have to add the key once–PuTTY will remember the host for future authentication.
See that public-key cryptography up there? That public/private key handshake creates a solid and closed pipe between the user and the server. That type of encryption is designed to eliminate passwords, which are becoming increasingly less secure.
In a real-world example, imagine you are an administrator for a hundred servers. Logging on to them to make any changes would require a hundred passwords. SSH eliminates the need for them and requires that you only keep one password to unlock the single private key that resides on your machine.
You may use a content management system like WordPress to manage your website. That CMS also gives you plugins to backups and migrations. SSH speaks directly to the server so you can perform these operations with lightning speed.
You can access your live website directly even if it’s offline by circumventing management tools. You can even change the domain name.
You can make a file that contains a list of your servers and call that file to authenticate your keys. Then you can run BASH scripts through SSH on all your machines at once, like installing software or updating files.
Secure Shell encryption is one of the most protected protocols in use today. Network security standards organizations are embracing a password-free future to combat malicious attacks and other forms of hacking.
SSH allows users to employ other protocols more securely, like FTP and Telnet. A user can mount a remote drive to use on their desktop, and that connection is free from snooping.
If you’re going to host your site on a VPS, it’s essential to use the best tools available to manage your server. Some of those tools may not be fancy graphical applications. One of the best is SSH, a simple command line protocol that can make a big difference in your server management workflow.