virtual server web hosting
Virtual hosting, or sub-hosting, is one of the most powerful features of the Enetrics Communications Virtual Server system. With virtual hosting, you can support multiple domain names on a single Virtual Server. In other words, with virtual hosting, you can host http://www.abc.com and http://www.xyz.com on the same Virtual Server, each with its own domain name and each serving pages in it's own directory on the Virtual Server. You can give each virtual host the following unique characteristics:
  • Its own FTP login
  • Access to its subdirectory only
  • E-mail addresses with its own domain name
Limitations of Virtual Hosting
Virtual hosting, or subhosting, is a great feature of Enetrics Communications's Virtual Server system. However, there are some limitations to this capability that you should understand. These limitations include the following:
  • Browsers must be HTTP/1.1-compliant
  • Load balancing (i.e. it is possible for one subhost to use more than its "fair share" of Virtual Server system resources)
  • Shared IP address
  • No Telnet access
  • E-mail limitations
  • Security risks
Being HTTP/1.1-Compliant
Enetrics Communications's Virtual Servers use HTTP/1.1, which makes subhosting a reality. However, to view subhosts you must have a browser that is HTTP/1.1-compliant. Generally speaking, subhosts are supported by Netscape Navigator 2.0+ and Microsoft Internet Explorer 3.0+. Any other browser that is HTTP/1.1-compliant is also able to access virtual subhosted servers.

If your clients use an older browser that is not HTTP/1.1-compliant, they are unable to view their sites or other sites that use virtual subhosting.

Balancing Virtual Server Loads

A Virtual Server is capable of handling 30,000 to 100,000 hits per day (assuming hits generally request about 5 Kbytes of data), depending upon which Virtual Server system plan you have as well as other factors such as what type of content is being served, your effective use of memory and cpu.

This number does not represent "visitors," rather hits or requests for files. For instance, if you have five subhosted domain names, each trying to accommodate 10,000 hits per day (which really is not that much if you have a graphically intensive page; one request for a .gif or .jpeg file equals one hit), there is likely a slowdown that affects all of your clients on the Virtual Server you are using to subhost.

When a slowdown occurs, the Virtual Server administrator should reduce the number of subhosts on the Virtual Server by doing the following:

  • Upgrading one of the especially high traffic virtual hosted sites to its own Virtual Server
  • Moving some subhosts to a less busy Virtual Server

Either way, proper load balancing can be accomplished by administrators that have a feel for serious virtual subhosting. A Virtual Server can only host a finite number of virtual hosts because of resource allocations. The following limits are recommended for virtual hosting. These are not hard limits, but until you get used to managing load balancing, we recommend you stay within these limits.

  • VPS v1: FreeBSD: Server B: 30 subhosts
  • VPS v1: FreeBSD: Server C: 45 subhosts
  • VPS v1: Solaris: Server B - 30 Subhosts
  • VPS v1: Solaris: Server C - 45 Subhosts

Sharing an IP AddressVirtual subhosting uses the resources of a single Virtual Server to accommodate the needs of multiple web sites. Among the resources that are shared is the single IP address that is associated with the Virtual Server. Search engine "spiders" that are not HTTP/1.1-compliant are unable to index these sites. However, most major spiders and search engines are now HTTP/1.1-compliant.

A Virtual Server can only support a single digital certificate. This makes the use of SSL difficult, since all subhosts must use the same digital certificate, and only one domain name can be associated with a digital certificate.

No TelnetA virtual subhost does not have Telnet access to the Virtual Server. There are several ways to set up Virtual Server access for virtual host customers, including access via:
  • FTP
  • iManager
  • FrontPage 2000/2002
E-mail LimitationsThere are some limitations to the e-mail capability of subhosts, namely how the Virtual Server interprets e-mail addresses. For instance, if you send e-mail to john@abc.com and john@xyz.com, the Virtual Server views these as the same address, because both domain names resolve to the same IP address (john@192.41.5.2). However, Enetrics Communications has developed a way to get around this limitation by using a proprietary utility titled "virtmaps." For more information, see the "Creating E-mail Address Mappings or Virtmaps" section of Chapter 4.

Security Risks
It is important to consider some of the security issues that relate to virtual subhosting. Because the virtual subhosts operate in the same Virtual Server environment, CGI scripts that are executed by any virtual subhost will inherit privileges to access any directory or file in your Virtual Server directory hierarchy.

For example, a malicious virtual subhosted client could write a simple script to remove all of the files on your Virtual Server. Another script could send the contents of your ~/etc/passwd file to a remote e-mail address where "weak" passwords could be decrypted. If your login password is susceptible to a dictionary crack, a subhosted client could effectively steal shell access away from you.

It is recommended that you do not offer full cgi-bin access to your virtual subhosted clients unless you have complete trust in them (and even then, they may accidentally cause damage to your Virtual Server). We recommend one of the following alternatives.

1. Provide stock CGI scripts in a directory you controlMost web sites do not demand a great deal of custom CGI programming. It is likely that you could provide a library of "stock" CGI scripts which your subhosted clients could then use. A sample composition of such a library might include a counter, a guestbook, and a generic form processor. You would store these scripts in a subdirectory of your cgi-bin directory (e.g. vhlib). You would then configure each of your virtual subhosts to use this cgi-bin directory by adding the following lines to their <VirtualHost> definition:

ScriptAlias /cgi-bin/ /usr/local/etc/httpd/cgi-bin/vhlib/

2. Configure the cgi-bin directory separate from the Virtual Subhosts' home directoryAnother alternative is to provide each of your subhosted clients with a cgi-bin that is not a subdirectory in his or her home directory. This would prohibit clients from uploading and executing any arbitrary script. Instead, the subhosted client would e-mail you the script, you would review it, and then install it into his or her cgi-bin directory (which can be configured to be a subdirectory of your main cgi-bin directory). An example is shown below.

ScriptAlias /cgi-bin/ /usr/local/etc/httpd/cgi-bin/SUBDIRECTORY/

The subdirectory SUBDIRECTORY becomes the cgi-bin directory for the subhosted client. (You may want to use the same subdirectory name for both the ~/www/vhosts and ~/www/cgi-bin to keep things neat and tidy.)

We recognize that in most cases it is likely that not only are you providing your clients with hosting service, but you are also designing their web content and writing their CGI scripts as well. So this discussion may not be applicable to your specific situation, but it is still an element to remember should you decide to expand the scope of your services in the future.

Hosting  ::  Web Design  :: Server Administration  ::  Tech Support  ::  Contacts
Data Centers  ::  Tier I Global IP Network  ::  SLA/Contracts  ::  Search  ::  Account Login