Upload
concentrated-technology
View
405
Download
2
Tags:
Embed Size (px)
DESCRIPTION
“The Cloud” is everywhere, but did you know that creating your own everywhere accessible cloud applications isn’t difficult. All you need are some certificates and Microsoft’s Remote Desktop Services. Greg Shields is a Microsoft MVP in RDS, and he’s got the step-by-step solution for cloud-enabling your applications. Join him in this session to learn exactly how you’ll securely extend your applications to everywhere with an Internet connection. Your boss and your users will love you for it.
Citation preview
Securely Extending RDS to the InternetHow to Internet-Enable your Applications
Greg Shields, MVPSenior Partner and Principal Technologist
www.ConcentratedTech.com
RDS: Not Just About Desktops Any More!
The Many Jobs of the RDS Administrator
• Server Administrator• Workstation Administrator
● Systems Babysitter…
• Application Administrator● Installing, managing, maintaining, patching…
• Security & Lockdown Administrator● Protect users from themselves and others…
• Workflow Administrator● Getting users to their applications…
NEW!
5 Ways to Deploy RemoteApps
RDP File Distribution● Create an RDP file and store it in a file server or distribute it to
users. Users double-click to launch app. RD Web Access
● Users double-click applications on web sites to launch. Local Desktop Installation
● RemoteApps are wrapped into MSI files, which are “installed” onto desktops.
Local Desktop Installation with Client Extension Re-association
● Same as above, but local client file extensions are modified to enable document invocation.
RemoteApp and Desktop Connection● Windows 7 RADC regularly synchronizes data from server to
populate desktop & Start Menu with configured apps.
#1 - RDP File Distribution
• In Server 2003, only “true” native way to distribute connections to Remote Desktops.
● Can also manually host RDP files on a web page.
• Superseded in 2008 by new technologies, however remains useful for…
● Users who want user-based customizability for RDP connections.
● Users who need portability for application connections, such as those who roam networks.
● Users who share/customize connections
• IMPORTANT: Currently the only way to deploy RemoteApp for Hyper-V applications!
#2 - RD Web Access
• Enabling an app in RDWA requires two clicks.● Provisioning and deprovisioning apps is ridiculously fast/easy.● Useful for users who use few applications that do not integrate
with each other.● Very useful for applications that rapidly change, change
versions, or require offline maintenance.
• Zero additional effort at the individual desktop.
#2 - RD Web Access
• R2 supports the “hiding” of apps.● Use perms and “User Assignment” to restrict app access.
• Limited to a single server out-of-the-box in 2008.● RD Session Broker creates RDS farm of similarly-configured
servers.● SharePoint web part integration can group dissimilar servers.
Non-trivial.
• R2 adds the ability to consolidate multiple RDSHs.• Does not support document invocation or local desktop
integration.
#2 - RD Web Access
Enabling or disabling access requires only a few mouse clicks in Server Manager.
#3 - Local Desktop Installation
• Wrapping RDP files into MSI files enables local desktop installation.
● RemoteApps launched from local Start Menu or desktop shortcut.
● Enhances RemoteApp “seamlessness”.
• MSI files must be installed onto each desktop.● Active Directory Software Installation through Group Policy● A systems management solution (SCCM)● Shoe leather.
• Removing applications once installed is complex with any mechanism.
● Non-trivial to change once implemented.
#3 - Local Desktop Installation
#4 - Client Extension Re-Association
• Client extension re-association is an optional part of local desktop installation.
● Modifies client extensions (.DOCX, .XLSX, etc.) to enable document invocation.
● Users maintain existing local desktop workflow by double-clicking documents.
● Highest degree of “seamlessness” possible with RDS and non-W7.
• Document Invocation!
#4 - Client Extension Re-association
Associate client extensions for this program with the
RemoteApp program
#4 - Client Extension Re-association
Extensions re-associate with
“Remote Desktop Connection”
#5 – RemoteApp & Desktop Connection
• If you have Windows 7 / 08R2, then you have RADC. No other OSs currently support RADC.
• RADC works functionally similar to Citrix XenApp Plug-in.
● Plug-in regularly checks server to download XML file.● XML file contains connection information about configured
RemoteApps and desktops● By default, client checks once per hour, so propagation can take
time.
Securing the User’s Connection
What You’ll Need
• Enabling Internet-grade security for RDS sessions requires a few extra components:
● RD Gateway Server● SSL Server certificate from Public CA● A firewall● Some holes in the firewall
16
What You’ll Need
• Enabling Internet-grade security for RDS sessions requires a few extra components:
17
dc.contoso.com
contoso.com
server1.contoso.comRemote Desktop
Gateway
server2.contoso.comRemote Desktop
Session Host
client1.myhome.com
443/TCP 3389/TCP
What You’ll Need
• Enabling Internet-grade security for RDS sessions requires a few extra components:
18
dc.contoso.com
contoso.com
server1.contoso.comRemote Desktop
Gateway
server2.contoso.comRemote Desktop
Session Host
client1.myhome.com
443/TCP 3389/TCP
Wait a minute!
Anyone see problems here?
LIVE DRAW:RDG Architectures
Four RDG Architectures
Option #1: No DMZ. RDG in the LAN.
20
Four RDG Architectures
Option #1: No DMZ. RDG in the LAN.Option #2: RDG in the DMZ. No internal AD exposure
for RDG.
21
Four RDG Architectures
Option #1: No DMZ. RDG in the LAN.Option #2: RDG in the DMZ. No internal AD exposure
for RDG.Option #3: RDG in the DMZ. Internal AD is exposed to
RDG. Option #3a: Use internal DC. Open lots of ports. Option #3b: Internal RODC in the DMZ. Open lots of ports. Option #3c: Forest trust to DC in the DMZ.
22
Four RDG Architectures
Option #1: No DMZ. RDG in the LAN.Option #2: RDG in the DMZ. No internal AD exposure
for RDG.Option #3: RDG in the DMZ. Internal AD is exposed to
RDG. Option #3a: Use internal DC. Open lots of ports. Option #3b: Internal RODC in the DMZ. Open lots of ports. Option #3c: Forest trust to DC in the DMZ.
Option #4: ISA in the DMZ. RDG in the LAN. Option #4 is Microsoft’s (and the industry’s) recommended
practice.
23
The Vast Power of SSL Reverse Proxying!
An SSL Reverse Proxy is a device used to bridge external SSL connections to the inside. Inbound SSL connections are terminated at the proxy. Decrypts SSL communication. Inspects them for malicious code. (Optionally) Reconstructs them into a new SSL connection and
forwards traffic inside.
HTTPS – HTTPS or HTTPS – HTTP HTTPS – HTTPS is better for internal security. HTTPS – HTTP is better for performance.
24
Installing the RDG
Four questions are required during installation.● Server authentication certificate. If you’ve correctly installed
your certificate to the local computer’s Personal Store, you will see that certificate listed in the box.
● RD Gateway User Groups. Groups which are allowed to connect to internal resources through this RDG server.
● RD CAP. Identifies mechanisms used for authenticating users to the RD Gateway server: Password or smart card.
● RD RAP. Identifies internal computers which can be accessed by users who enter through the RDG.
25
SSL Certificates
• Server certificate attributes● Must be a computer certificate● Extended key usage must be for Server Authentication
(OID 1.3.6.1.5.5.7.3.1)● Subject Name must exactly match the RDG’s external FQDN,
must also match internal FQDN if used internally.● Must be installed to the local computer’s Personal Store and
not the current user’s Personal Store
26
SSL Certificates
• Server certificate attributes● Must be a computer certificate● Extended key usage must be for Server Authentication
(OID 1.3.6.1.5.5.7.3.1)● Subject Name must exactly match the RDG’s external FQDN,
must also match internal FQDN if used internally.● Must be installed to the local computer’s Personal Store and
not the current user’s Personal Store
• Although it is possible to create free certificates through 2008 Certificate Services, save yourself headache and heartache and BUY ONE.
● $20/year at GoDaddy, automatically trusted, and useful for multiple steps in this process
27
SSL Certificates
28
RD CAPs and RAPs
29
RD CAP RD RAP
The “Who” The “What”
Concerned about RDG Performance?
• Don’t be.
• Microsoft asserts that a single RDG server can support up to 1200 concurrent connections.
● Dual-processor server with 4GB of RAM.● Virtualizing RDG is suggested.● Important Note: Windows Server Standard Edition has a hard
limit of 256 concurrent connections.● Enterprise and Datacenter Edition have no connection limits.
30
DEMO:RDG Settings & Configuration
Exposing the RemoteApp
• Once the RDG is installed, this creates the pathway by which RemoteApps can flow.
• The next step is tocreate the RemoteApp.
● Install an application.● Expose the application
using RemoteApp Manager● Enable RDG settings within
the RemoteApp● Distribute the RemoteApp
through one or moremechanisms
32
Special RDG Settings
• Two settings on this screen need special attention:
33
Enables single sign-on between RDG and RDSH
Enables direct RDSH access for LAN clients
Too Many Error Messages!
• At this point, your clients can invoke the RDP file to connect either locally or via the Internet.
• However, for reasons of scripting security, Microsoft requires an authentication at connection.
• This confuses users.• Creates pain for
we admins.
34
Eliminate Error Messages!
• Eliminate one of the two error messages by digitally signing your RDP file.
• Possible to use same servercertificate as installedto RDG.
• Install certificate to RDSH’slocal computer PersonalStore.
• You’ll know if you screwedthis part up.
35
Error Messages to Questions
• Signing the file creates the necessary authentication between client and server.
● Prevents RDP file from being tampered with.● RDP files cannot be modified in any way, or it will break the
certificate signage.
• However, it doesn’t entirely eliminate the error message.● Instead, the user sees: “Do you trust the publisher of this
RemoteApp program?”● User can click Yes, also can click “Don’t ask me again”.
36
Securely Extending RDS to the InternetHow to Internet-Enable your Applications
Greg Shields, MVPSenior Partner and Principal Technologist
www.ConcentratedTech.com