This book deals with terminal servers as central execution platforms for Windows- based applications. Users can access these terminal servers using clients that do not necessarily have to be overly intelligent. This might not sound terribly spectacular and might even remind you of the “good old days” of mainframes. You might also be wondering if the author of this book is an advocate of the old technologies who is seizing an opportunity to rebuff the current client/server concept. Quite the contrary! Terminal servers “adopt” an idea that has matured and developed out of the mainframe world and strengthens the client/server model. Widely distributed client/server environments will be re-centralized without changing the original goals that were set with their introduction.
I should emphasize that I have no wish to argue the success that mainframes have enjoyed. The more involved I get in terminal servers and large project environments, the deeper I venture into the mainframe world, which has much to teach about operational concepts and system stability.
In 1995, I first heard about a special multiple-user variant of Microsoft Windows NT. It was called WinCenter Pro and, through integrating additional functions, it allowed multiple users to log on simultaneously and even start their sessions using X11 clients. WinCenter was the perfect concept that I needed for a mixed UNIX – and Microsoft Windows environment with almost 800 computers. With WinCenter, UNIX users were finally able to work with the “killer applications” from the PC environment. Soon after the purchase of a 15-concurrent-user license and its installation on our first server, WinCenter Pro became one of the most frequently used services on the network at one of the world’s largest research institutes for computer graphics, the Fraunhofer Institute for Computer Graphics, which has its headquarters in Germany and affiliated institutes in the United States, Portugal, and Singapore. In this way, approximately 200 UNIX graphics developers increasingly began to accept Windows NT. Unknowingly, I thus became one of the first system administrators in Europe to successfully establish a multiple-user server running Windows NT in a large, heterogeneous environment.
It was not necessarily easy to configure and run a PC with a multi-user Windows NT, especially on a network that could not deny its UNIX roots. The amount of time that I needed to set up (and understand) a stable system was quite substantial. But other administrators reported similar experiences, and the idea took root to modify the “hands-on training seminars” that I had been holding since 1996 on Windows NT administration to include WinCenter administrators. These seminars became so successful; they were quickly adapted to Microsoft Windows NT 4.0 Server, Terminal Server Edition, and Windows 2000 Terminal Services as soon as they became available. In view of the success of these seminars and my documentation on the WinCenter production environment, Thomas Pohlmann of Microsoft Press Germany and I had the idea to write a book about the terminal server for the German-speaking market, a book designed to be a real help for routine terminal server operation.
The first book was an unexpected and huge success; a second book followed when Windows 2000 and its Terminal Services were launched. The second book revealed the increasing relevance of Terminal Services for corporate environments. The third book, the one you are reading now, became an international edition and describes Microsoft Windows Server 2003 Terminal Services. Two additional, new areas of interest are also included: Web integration and application access portals. Much has changed since Windows NT 4.0 Server, Terminal Server Edition, Microsoft Press Germany, 1999 and Windows 2000 Terminal Services, Microsoft Press Germany, 2000 were released. This book draws on the experience gathered during eight years of terminal server projects with many customers in the United States and Europe. The individual project scope has changed from several dozens of users on individual servers to many thousands of users on several hundreds of servers. The terminal server concept has matured.
I would like to thank Martin DelRe, Valerie Woolley, and Florian Helmchen at Microsoft Press for their wonderful encouragement to publish a book whose target group might be somewhat different from the usual Microsoft readership. The contents of this book are not based solely on my own project experience and the limitless amount of “processed” information available in knowledge base articles, white papers, conference presentations, product manuals, tons of Help pages, and news groups. On the contrary, the knowledge and diligence of a number of specialists made invaluable contributions to this book and its quality.
My special appreciation goes to Josef Zeiler at SBC-Consulting. As my German technical editor, he ensured that my imprecise or just plain wrong explanations did not find their way into this book. Furthermore, he supplied valuable information on the topic of licensing. Our technical discussions were often arduous, but always very productive.
You would not be able to read this book in English were it not for the tireless efforts of the translators who met tighter-than-tight deadlines and made this mission impossible possible. Special thanks to Monika Schutz, who in addition to translating managed the first phase of the transcontinental translation project, Patricia Callow, Claire Jokubauskas, and Gabrielle Vernier.
Pete Zeeb (technical reviewer) and Lisa Pawlewicz (copyeditor) with Microsoft Press, U.S., were essential players as they lent their skills to provide a nicely translated and technically accurate English version of Microsoft Windows Server 2003 Terminal Services.
Sascha Goeckel is responsible for central Europe in his function as Technical Reseller Manager at AppSense Technologies Ltd. It was he, of course, who wrote the draft version describing the AppSense products in this book. Our discussions were always a great inspiration, especially on the topic of basic security in terminal server environments.
Frank Seibert is the Director of Consulting Services at visionapp operating in Germany and in England. He is, in my humble opinion, a walking-talking encyclopedia on all topics even remotely connected to terminal servers. Many of the small (and great) configuration tricks described in this book are based on his vast knowledge, such as the optimized printer integration described in Chapter 14.
Andreas Mariotti is a freelance consultant who works on many IT projects. He focuses on Windows terminal servers and Citrix MetaFrame, particularly on software distribution and automation. Andreas’s knowledge about deploying terminal servers in large corporate environments is vast. He was one of my most important resources, especially when describing the application configuration in Chapter 5. He is also responsible for many minor, but important, improvements to almost all chapters. I have come to believe that Andreas probably knows every Knowledge Base article and white paper on terminal servers by heart.
Thomas Goehring is the specialist for server and security infrastructure at visionapp. I am indebted to him for the detailed information about access control (Chapter 8) and the different encryption options for communicating with terminal servers.
Christian Weyer was one of my students when I was working on my Ph.D. thesis. After successfully concluding his studies, he founded his own little company, which he named Eyesoft. He is now a Regional Director at Microsoft, MVP ASP.NET & XML Web Services, a successful book author, and a much- sought-after lecturer at many conferences. I owe it to Christian that Microsoft .NET technologies found sufficient recognition in this book. Without his help, I would have never understood the technical context, as described in Chapter 5, for instance.
The topics relating to application access portals in Chapter 13 also involve the Citrix MetaFrame Secure Access Manager. Marc O. Borchert supplied this description. He is a Senior Strategic Systems Engineer at Citrix and draws his knowledge on this rather new product from the practical experience he has gained from customers and partners all over Europe. Additionally, he has a direct line to the product developers at Citrix.
I would also to like thank the following individuals for the detailed information, critical comments, corrections, tips, or test installations that contributed to this book: Mark Austin (AppSense), Peter Bergler (Microsoft), Christian Ferber (Fujitsu Siemens Computers), Christian Gehring (Citrix), Ralf Germowitz (BFE), Mark Gerrards (AppSense), Peter Ghostine (Emergent Online), Costin Hagiu (Microsoft), RenÚ Huebel (Fujitsu Siemens Computers), Christine Koch (Microsoft), Bob Kruger (Citrix), Jennifer Lang (Citrix), Daniel Liebisch (Citrix), Russ Naples (Citrix), Rizwan Pirani (Citrix), Mark Russinovich (WinInternals Software and SysInternals), Adam Overton (Microsoft), Enrico Schwalbe (Citrix), David Smith (Citrix), David Solomon (David Solomon Expert Seminars), Patrick Sommer (Software Spectrum), Oliver Schroeder (MCS), Edwin Sternitzky (Citrix), Mark Templeton (Citrix), and Walter Weinfurter (Microsoft).
Furthermore, I would express my thanks to my colleagues at visionapp, who are always ready to offer their advice and support: Petra Boeckmann, Chris Dittmar, Marc Freidhof, Klaus Friemann, Ulrike Gebhard, Thomas Gierich, Thorsten Goebel, Simon Hirth, Sascha Holzenthal, Sigfried Kienzel, Oliver Mahr, Klaus Mitter, Frank Roth, Dirk Schaefer, Ingo Schulz, Meik Schwind, Enis Sari, Perry Stanford, Michael Syre, Markus Thorwartl, Daniel Vollmer, and Daniel Winkler. Special thanks, of course, go to Joerg Krick and Jan Zirn, the managing directors of visionapp, for their generosity, giving me all the time and support I needed to write this book in addition to my regular job as Chief System Architect.
I would also like to thank the Ober-Ramstadt volleyball team for providing me with much-needed physical and mental balance during the writing of this book. They remained undeterred by my mood swings and continued to practice, celebrate, and live through unforgettable matches with me.
Last, but absolutely not least, my very special thank-you goes to my wife, Tina, and my sons, Luca and Tobias. They are the center of my personal universe. I’d also like to thank my parents and my parents-in-law, Erika and Dieter Liebschner. My family has always been and always will be my most valuable moral support. Every day, they show me what is truly important in this life.
Dr. Bernhard Tritsch
Germany, October 2003