How to Build a Workstation Server

by Paul Christian Nelis

A workstation server is defined as a system used as a server, but whose components are typically used for workstation computing tasks. It is not complicated adapting a workstation for use as a server, but there are a few things to consider.

In theory, the designations of workstation or server are made according to which role each machine is playing at a specific moment. When a machine is requesting a service or information, it's considered a client. When a machine is providing information or a service, it's called a server. Machines that play the role of client much more frequently than that of server are typically called clients, but that does not mean they cannot or do not perform the function of server from time to time. So though the label is situational, it is also common practice to consider a machine a workstation if it functions as a workstation more often than as a server.

In practice, the computer industry has released special versions of its software that bias usage toward clients or servers. Microsoft and Apple sell workstation and server versions of their operating systems. Because these different versions of the operating systems have different capabilities, in practice the difference between server and workstation for these systems may be more than situational--it may involve crucial differences in capabilities as well.

Planning

Compare what you want to do with the capabilities of available operating systems. Because there can be different capabilities associated with different operating systems, knowing what you want to provide for the other computers in the community may help dictate which operating system you may need. If you just want to share files, and the number of simultaneous requests are expected to be low, then practically any operating system will work well for you. If you want to build a file transfer protocol (FTP) server to accept and offer files to the Internet, you might think twice before using Microsoft's Vista. Microsoft's Internet Information Server (IIS) 7 can provide low concurrency Web pages running on the Vista workstation operating system, but it's limited to publishing with FTP. Users cannot upload to the workstation OS--only to Windows Server running IIS7. In the case of Windows Vista, other FTP packages can be used on the workstation to get around the FTP limitation imposed by IIS.

Macintosh Workstation Sharing

Research what server software you may already have. If you are considering using a Macintosh workstation as a server, there are many server software packages already installed and ready to go in the workstation operating system. When you open up the "Sharing" folder in "System Preferences," there are 11 services built into the OS and ready to be activated. Other services may be activated by other means. The Macintosh workstation OS does not automatically configure the network file system (NFS), for instance, but the capability is still included on the hard drive. If you know your way around UNIX systems, and have a guide to follow, it's not too complicated to make your Mac workstation an NFS server. See References for an example guide to activating NFS on a Macintosh workstation.

http://Apache.Org

Consider open source software. Apache can turn any common operating system into a Web server. Though many operating systems are shipped with at least some type of web server, Apache's scalable Web server is the most common one on the Internet, and as it's available on nearly every common operating system. A decision to use Apache at the start is never a dead-end decision. Apache can be the Web server tool for any future version of your infrastructure. Simply visit Apache.org to download and install the binaries (or even the source-code) relevant to your workstation operating system.

Plan for the connectivity. Though it may sound odd, even a single machine that will run both client and server software (talking to itself) still needs a network protocol defined and working. Choose your network protocol to fit your circumstances. If you have Macintosh systems that do not connect to the Internet but still should connect to each other, it might make sense to choose AppleTalk as your network protocol. If the systems already connect to the Internet, you are probably using TCP/IP, so that becomes an obvious choice, but implementation becomes a bit more difficult than it would with AppleTalk. Microsoft systems may have a slightly easier time with TCP/IP, but there's no easy way around the prospect of having to configure TCP/IP on a UNIX system, such as Solaris or Linux. Whatever the choice, the server must be running what each client is running to talk to them all. If one Macintosh is only running AppleTalk, and the rest of the systems are running TCP/IP, then either the server should run them both or the AppleTalk machine should start running TCP/IP as well.

Implementation

Set the server's network address. There won't be any success until the network protocols are installed and configured. In fact, some server software won't even install until it can detect that its required network is installed and functioning. For example, let's tackle TCP/IP. AppleTalk is self-configuring, as is NetBEUI, but neither are as commonly in use as TCP/IP. This Internet protocol works because each machine on the network has a unique address--as each cell phone has a unique phone number. In your network, there is either a server handing out these addresses whenever a computer asks for one, or each computer is manually configured with a permanent address. It's common to have a system handing them out when asked. This system is the dynamic host configuration protocol (DHCP) server. For your system to reliably serve clients, each client will have to be able to learn the address of your server. To make this address constant, either configure the DHCP server to always give your server the same address or exclude that address from those given out by DHCP and hard-code the address in the workstation's network configuration settings. If you are not already familiar with these tools, consult with your local systems administrator or Internet service provider (ISP) for more information.

Ensure correct name translation. When you point your browser at sun.com, you type in letters, not numbers. So how does TCP/IP work on numbers if you don't use numbers to find things on the Internet? You could use numbers, but there's no need. The Domain Name System (DNS) was constructed by Internet designers who were tired of typing in numbers, and wanted a type of phone book they could rely on. UNIX systems rely on DNS primarily because DNS has evolved as UNIX has evolved. Microsoft and Apple systems, starting out in small work groups, can make use of DNS, but will also just try to locate systems with broadcast packets--the computer equivalent of leaning out the window and simply calling for the machine you want. Microsoft even developed their own type of phone book service called the Windows Internet Naming Service (WINS). The larger the network you would like to serve, the more likely it is that clients won't see your server without updating the DNS or WINS entries for it. Though it's possible that these services are being automatically updated for you, if you have trouble connecting to your server, these are among the first places to check for issue. If you are not already familiar with these tools, consult with your local systems administrator or Internet Service Provider (ISP) for more information.

Activate the software that serves information. One of the simplest examples of making a workstation a server is for the purpose of file sharing. To provide a directory in which your peers may share files, turn on the file server software already resident on your workstation and identify what directory and under what conditions you wish to share. Staying with the Macintosh example, the file sharing programs with GUI support can be launched from within the "System Preferences/Sharing" folder. Selecting the "File Sharing" option turns on the capability, but this should not be done without also configuring the "Options" and "Setting" security on the directories being shared.

Configure the server software for your needs. It is an industry best practice to spend at least a few minutes ensuring that the software you are using is configured for the needs of the particular installation. The Macintosh operating system can provide file sharing capabilities through a variety of different networking protocols. As a general rule, it is wise to only offer the service on those protocols you know your clients will need. To select the file sharing protocols you wish to activate, click the "Options" button in the lower-right-hand corner of the "Sharing" dialog box in "System Preferences." Turn off protocols you are not likely to need. Leverage the security settings to help ensure that unauthorized users do not create mischief on your system.

Tip

  • check Whether it's file sharing with NFS, or transfers with FTP it is wise to make the folder used for these transfers an out-of-the-way folder. Users of your system cannot typically access directories above the shared directory in the hierarchy, but unless you are vigilant about security, they may be able to access sub-directories. If you should share the root directory of a UNIX system (/.) or of a Windows system (C:\) you might accidentally expose the operating system files to network users. It's safer to create a directory just for sharing and keep network users confined to that directory hierarchy.

Warning

  • close Research really is valuable when adapting a workstation for use as a server. There are some features of server software that may not work as expected or at all when run on a workstation version of an operating system.

Items you will need

About the Author

Graduating with a Bachelor's Degree in Physics and Writing, Paul Nelis has spent twenty years writing, teaching and practicing in the computer industry. An experienced technical editor, Paul has also published articles in journals such as Enterprise NT Magazine. Paul is currently a consulting manager at a major computer manufacturer.

Photo Credits

  • photo_camera Apache feather is from Apache.org, other images developed by Paul Nelis