Synopsis
One of the many new and exciting features available in Windows 2008 Terminal Server is RemoteApp. RemoteApp is a seamless windows mechanism that allows users to connect to specific applications through Terminal Services.
Similar to Citrix’s Published Applications, RemoteApp applications integrate seamlessly into the client desktop and appear as though they are running locally on the client machine. In fact, it is possible that the end user may not even be aware that the application they are using is actually running remotely. If a user executes multiple RemoteApp applications on a specific server, the applications share a single terminal session.
RemoteApp application windows are resizable. Drag-and-drop functionality is supported between multiple monitors. If the application creates a notification area icon, the icon will appear in the notification area on the client machine. The same goes for application popup windows. The popup windows are redirected to the client machine. The client clipboard can be redirected to the Terminal Server to support copy and paste functionality between remote and local applications.
RemoteApp is configured by using the TS RemoteApp Manager mmc snap-in. The RemoteApp Manager tool allows you to setup the remote applications and configure the method with which to deploy the applications to your clients.
Take a look below:
Deploying RemoteApp Applications to the End User
Applications can be deployed to the client using a few different methods. MSI packages can be created and pushed down to the client via Group Policy. The installer package will add the RemoteApp application to the start menu on the client machine. When creating the MSI package, you also have the ability to associate client extensions for the application with the RemoteApp program.
In addition to Windows Installer Packages, ‘.rdp’ files can be created that will launch the RemoteApp application when the end user double-clicks on it. The final (and my favorite) method with which to deploy applications is through Terminal Services Web Access. The TS Web Access role enables you to deploy applications and desktops from a web browser and can be added to any Windows 2008 Server. It is not restricted to servers that have the Terminal Server role installed. The TS Web Access role does require IIS, as well as some .NET components. If the TS Web Access role exists on a server other than the Terminal Server, the Terminal Server will need to be added to the TS Web Access Computers security group. In order to manage TS Web Access, you will want to log on to the TS Web Access Server as either a local Administrator or a user that is a member of the TS Web Access Administrators group.
It is important to note that the TS Web Access RemoteApp functionality requires RDC 6.1 on the client machine. This client is included with Windows Server 2008, Windows Vista SP1, and Windows XP SP3.
Terminating RemoteApp Sessions
RemoteApp sessions will become disconnected when all RemoteApp application windows are closed. Once all RemoteApp windows are closed, there is a 20 second wait time. The session is then disconnected. The RemoteApp session will remain in a disconnected state until the client reconnects to the session. However, Group Policy can be used to terminate disconnected sessions.
There is a new Group Policy setting in Windows Server 2008 called 'Set time limit for logoff of RemoteApp sessions'. This setting allows administrators to specify a length of time for RemoteApp sessions that are disconnected to be logged off. This policy setting is located in ‘Computer Configuration\Administrative Templates\Windows Components\Terminal Services\Terminal Server\Session Time Limits’ in the Group Policy Editor’.
In my testing, I found that RemoteApp does not prevent users from launching other applications through the parent RemoteApp application. In other words, if I publish Explorer, I will be able to launch other applications through Explorer. You may want to use a third-party product such as Simplify Lockdown to restrict access to applications that are deemed unsafe or unnecessary.
If you are interested in using RemoteApp to deploy applications and desktops, it would be worth your time to also take a look at Terminal Services Gateway. TS Gateway provides an RDP connection over HTTPS, which creates a secure connection between the end-user and the application that they are accessing.