There I was, in eastern Washington State with nothing more than a slow 56-KB Internet connection and a PC. And the client’s computer was in Chicago with a 500-MB SQL Server database that needed some serious reorganization. What next? Stop operations for two days to download the database to my machine and another two days to upload the fixed database? Get on a plane and head for O’Hare airport? Tell the client to find another consultant? None of the above—thanks to Windows Terminal Services, I was able to work effectively on the client’s server without leaving my office, even over that 56-KB line. A few hours later, after running the necessary updates in Query Analyzer in a Terminal Services session, there was nothing left to do but send a bill.
I do as much work remotely as possible. Along the way, I’ve accumulated a few things that make Terminal Services more pleasant to work with. If you’re just getting started, these hints can save you time and energy.
Get the Terminal Services Advanced Client
When you install Terminal Services, it will set up the necessary software that clients can use to connect to your server. Rather than using this software, though, I suggest that you download the Microsoft Terminal Services Advanced Client. There are several versions of this client. For working with my customers’ servers, I prefer the MMC snap-in version, shown in Figure A. This version lets you manage multiple servers from the familiar MMC interface and easily switch back and forth between them.
Use Terminal Services to "bounce" into internal networks
In some circumstances, you might want to use Terminal Services to get into a computer that you can’t directly reach from the Internet. In these cases, you can bounce through a computer that is reachable by both the internal and external networks. I’ve used this technique to work with a SQL Server that was protected by NAT, for example. The trick is to set up Terminal Services twice, once on the border server that performs the address translation and once on the actual target server. From your computer across the Internet, you can then open a session on the border computer. Within that session, you immediately run the Terminal Services client software again and connect to the internal computer in that session. Even with the overhead of two sets of redirection, performance is acceptable in this scenario.
When you’re using this sort of Terminal Services bounce, be careful where you click. A maximized application window, for example, will end up with three Windows title bars and window widgets all stacked on top of one another (one from each of the Terminal Services clients and one from the application itself). If you click the wrong X to close the application when you’ve finished, you’ll shut down your session instead. If you’re already connected to your client’s network via a VPN, you can also run Terminal Services over that connection to get directly to the internal servers.
Check your timeouts
Because Remote Administration mode allows only two connections, be careful to always log out when you’ve finished with an administrative task. If you just shut down the Terminal Services client, you can inadvertently get into a state where there are no connections available because the server still thinks two users are online. You can do some configuration to lessen the danger here. On the server, select Start | Programs | Administrative Tools | Terminal Services Configuration, right-click the default connection, and select Properties. This will open the RDP-Tcp Properties dialog box, as shown in Figure B. Here you can set timeouts to ensure that disconnected or hung sessions are automatically recycled.
Use the online resources Chat with the local administrator
If you’re just getting started with Terminal Services, there can be quite a lot to learn. Even if you’re not using Application Server mode, you may need to think about overall network architecture and security. Microsoft has made plenty of resources available online for those using this technology. You may want to bookmark these pages:
If you’re logged on to a server at the same time that someone else is using it from the console, you can also use Terminal Services as a chat client. From within your client window, select Start | Programs | Administrative Tools | Terminal Services Manager. This will open an MMC console that shows all of the sessions on the machine, including the one you’re on and the active console session (if there is one). To get your message across to the other user, simply right-click one of the sessions and select Send Message. Messages pop up using Windows’ own default messenger service, so you won’t want to use this for extensive conversation, but it’s great for quick messages like “I need to reboot now, is that okay?”
What's the future hold?
With the advent of Windows Server 2003, a few changes to Terminal Services are on the horizon. The Remote Administration mode has been renamed Remote Desktop For Administrators, but its core functionality remains the same. New features include the ability to connect remotely to the actual console session and support for 24-bit color and higher resolutions. As always, a few things get rearranged in the user interface. For instance, Remote Desktop For Administrators is now enabled from the Remote tab of the System Control Panel applet, rather than being installed as a Windows component.
There are also some changes to Terminal Services licensing in Windows Server 2003. Some computers that did not need a separately purchased Client Access License (CAL) for Windows 2000 will need one for Windows Server 2003; you can get the details from the Microsoft Licensing Web site. However, the new license requirements do not apply to Remote Desktop For Administrators, so there’s no need to worry that a round of server upgrades will lock you out of being able to help your clients. Try it now and you might find that Terminal Services becomes a steady companion in your hectic consulting career.
TechRepublic originally published this article on 30 April 2003.