There are scenarios when you want to use One Identity Safeguard for Privileged Sessions (SPS) to monitor RDP access to servers that accept only Network Level Authentication (NLA, also called CredSSP), but the client, SPS, and the server are not in the same domain (there is no trust between their domains), or any of them is not in a domain at all. For example, you cannot add SPS to the domain for some reason, or the RDP server is a standalone server that is not part of a domain. The following table shows such a scenario.
|User||Client domain membership||SPS domain membership||Server domain membership|
|local or any domain||any domain||not a domain member, or other than <server-domain>||<server-domain>|
Server-side redirection may not work.
To use NLA without domain membership
Navigate to RDP Control > Settings, and select the RDP settings policy that you use in your connection policies.
Clear the Enable Network Level Authentication > Require domain membership option.
By default, One Identity Safeguard for Privileged Sessions (SPS) accepts any certificate shown by the server. The following describes how to accept only verified certificates.
To accept only verified certificates
Create a list of trusted CA certificates that will be used to verify the certificate of the server. For details, see Verifying certificates with Certificate Authorities.
Navigate to RDP Control > Connections and select the connection policy to modify.
Select Verify server certificate.
This setting has no effect if the session uses Network Level Authentication, because in such cases SPS uses a different method to validate the server certificate.
When using Network Level Authentication (NLA, also called CredSSP), there is no verification performed in the TLS layer due to the TLS session-binding. For more information on TLS session-binding, see section [MS-CSSP]: Credential Security Support Provider (CredSSP) Protocol in the Microsoft documentation.
Figure 189: RDP Control > Connections — Using SSL-encryption in RDP connections
Select the CA list to use for verifying the certificate of the server from the Trusted CA list field.
(Optional) Configure your Windows servers to display a certificate signed with the above Certificate Authority for incoming RDP connections. To accomplish this, complete the following steps:
Generate a certificate that contains the IP address or the hostname of the target server in its Common Name (CN) field and sign it with the Certificate Authority whose certificate you added to the Trusted CA list of SPS.
Convert the signed certificate of the target server to PKCS12 format that includes the private key.
Start the Microsoft Management Console (MMC) on the target server and select Add Snap-in > Certificates > Computer Account.
Right-click the Personal store, then select All Tasks > Import, and select the certificate created for the server.
Complete the Certificate Import Wizard, but do not select the Extended certificate properties option.
Select Start > Administrative tools > Remote Desktop > Remote Desktop Session Host Configuration.
Right-click the connection you want to configure and select Properties > General.
Set the Security layer to SSL.
Click Certificate > Select and select the imported certificate. The server will use this certificate to verify its identity for the incoming RDP connections.
To enable TLS-encryption in an RDP connection policy, you have two options:
Enable Network Level Authentication (NLA, also called CredSSP). To enable NLA in RDP connections, see Network Level Authentication (NLA) with One Identity Safeguard for Privileged Sessions (SPS). Note that Network Level Authentication uses SSL-encryption with self-signed certificates, so you do not have to configure a signing CA.
Complete the following steps to configure TLS-encryption.
Depending on your requirements, one or more of the following might be needed:
To use the same certificate for each session, an X.509 certificate and its private key are required. One Identity Safeguard for Privileged Sessions (SPS) can display this certificate to the peers on the client side. Use your own PKI system to generate these certificates, as they cannot be created on SPS. Note that the Common Name of the certificate must contain the domain name or the IP address of target machine. otherwise the clients might reject the certificate.
To generate certificates on-the-fly for a connection, a signing certificate authority is required. For details on creating a signing CA, see Signing certificates on-the-fly.
One Identity recommends using 2048-bit RSA keys (or stronger).
To configure TLS-encryption
Navigate to RDP Control > Connections and select the connection policy in which you want to enable TLS.
Figure 190: RDP Control > Connections — Enabling TLS-encryption for RDP connections
Set the encryption settings used between the client/server and SPS in the Transport security settings section.
To require encryption, select TLS. When the connection is encrypted, SPS has to show a certificate to the peer.
Select the certificate to show to the peers.
If you want to enable TLS-encryption, but you do not have a certificate that is generated by an external CA, or a signing CA, select Generate self-signed certificate. This option is selected by default.
To use the same certificate for every peer, complete the following steps.
Generate and sign a certificate for SPS in your PKI system, and export the certificate and its private key.
Select Use the same certificate for each connection.
Select Private key for host certificate, click and upload the private key.
Select X.509 host certificate, click and upload the certificate.
If you want to use your own Signing CA, complete the following steps.
Create a certificate authority that will be used to sign the certificates that SPS shows to the peer. For details, see Signing certificates on-the-fly.
Select Generate certificate on-the-fly.
In the Signing CA field, select the certificate authority to use.
Import the certificate of the signing Certificate Authority to your clients. Otherwise, the client applications will display a warning because of the unknown Certificate Authority.
To disable TLS-encryption for RDP connections completely, select Legacy RDP Security Layer (also known as: Standard RDP Security). You might want to do this if you were using legacy RDP encryption, and you are experiencing compatibility issues. For example, you might experience compatibility issue when you attempt to connect to a very old Windows machine (for example, Windows Server 2003 or older).
(Optional) Even if you choose TLS-encryption , you have the option to choose using legacy RDP encryption as well. If you experience compatibility issues (for example, when you attempt to connect to a very old Windows machine, such as Windows Server 2003 or older) and want to allow using legacy RDP encryption if TLS-encryption is not possible, select Allow fallback to legacy RDP Security Layer (also known as: Standard RDP Security).
|Caution: Security Hazard!
Selecting the Legacy RDP Security Layer or the Allow fallback to legacy RDP Security Layer options can significantly reduce the strength of the encryption used.
Selecting these options is only recommended if you cannot overcome compatibility issues in any other way.
To avoid security hazard, we recommend using TLS encryption.
The encryption settings are applied to the connection policy.
Remote Desktop Gateway is a Remote Desktop Services server role. This role allows authorized remote users to connect to resources located on an internal or private network from any Internet-connected device. The accessible resources can be terminal servers, remote applications, remote desktops, and so on.
The Remote Desktop Gateway Server Protocol is a remote procedure call (RPC) protocol using HTTPS as the transport mechanism, used primarily for tunneling client to server traffic across firewalls. The One Identity Safeguard for Privileged Sessions (SPS) can act as a Remote Desktop Gateway, receiving connections using the Remote Desktop Gateway Server Protocol and transferring them to the target servers using the RDP protocol.
The Remote Desktop Gateway Server Protocol enables inband destination selection, meaning that SPS can extract the address of the target server from the client connections. This greatly simplifies managing connections on SPS without having to encode the name of the target server in the username, which was problematic as the length of the username is limited on many platforms — especially in non-transparent mode.
To access remote servers using a Remote Desktop Gateway, the clients must use version 6.1 or newer of the Remote Desktop application. Note that officially only version 6.0 is available for the Windows 2003 Server operating system, though it is possible to install a newer version. However, this is a problem only when initiating RDP connections from the Windows 2003 Server host, not when the Windows 2003 Server is the target of the connection.
SPS must be a member of a Windows Domain (for details on joining a domain, see Network Level Authentication (NLA) with domain membership), or you must use a Local User Database (for details, see Creating a Local User Database).
Ensure that the system times of the Domain Controller, the target servers, the clients, and SPS are synchronized.
Gateway authentication on the SPS web interface cannot be used for connection policies that use SPS as a Remote Desktop Gateway. However, the Remote Desktop applications of the clients can be configured to perform two separate authentications, one on the Remote Desktop Gateway (that is, on SPS), and one on the target server. For details on configuring the Remote Desktop applications of the clients to perform gateway authentications, see Configuring Remote Desktop clients for gateway authentication.
The Remote Desktop Gateway Server Protocol supports various authentication methods. SPS acting as a Remote Desktop Gateway supports only NTLM authentication.
SPS can be used as a Remote Desktop Gateway. The terminal service clients must be configured to use SPS as the Remote Desktop Gateway. SPS will connect the server (selected inband) after authentication.
Remote Desktop Gateway will require a certificate. Decide whether you want to use a fix certificate, or an on-the-fly generated certificate before performing the steps below and prepare the certificate.
You may also need to adjust the port settings of the connections. The default port for RDP connections is 3389, but the Remote Desktop Gateway Server Protocol uses port 443. However, the SPS web interface uses port 443 as well, and other connection policies might already use port 443. Therefore, if administrator or user login is enabled on the interface that receives the Remote Desktop Services connections, add a new alias IP address to the interface of SPS and use this alias in your connection policy and the client configurations. For details on creating IP aliases on SPS, see Managing logical interfaces.
When the client uses hostname in inband destination selections, the hostname must comply with RFC5890: Internationalized Domain Names for Applications (IDNA). For example, from the ASCII characters only letters, digits, and the hyphen character is permitted.
Starting with version 6.1.0, SPS rejects connection requests where the hostname does not comply with RFC5890.
To use SPS as a Remote Desktop Gateway
Navigate to RDP Control > Connections and create a new connection policy that will handle the incoming client connections that use the Remote Desktop Gateway Server Protocol.
Enable the Act as a Remote Desktop Gateway option.
Figure 191: RDP Control > Connections — Configuring SPS as a Remote Desktop Gateway (or RD Gateway)
Set the target of the connections.
To direct every incoming connection to a single target server, select Use fixed address and specify the address of the target server.
To extract the destination address from the Remote Desktop Gateway Server Protocol, select Inband destination selection and set the address of the servers the clients are allowed to access in the Target > Domain fields. For details on using inband destination selection, see Modifying the destination address.
In non-transparent mode, enter the IP address generated for the Remote Desktop Gateway service into the To field. Do not enter the IP address configured for administrator or user login.
To act as a Remote Desktop Gateway, SPS needs to display a certificate to the clients.
To display always the same certificate, select Use the same certificate for every connection and upload the X.509 certificate and the matching private key.
One Identity recommends using 2048-bit RSA keys (or stronger).
The Common Name (CN) of the certificate must be the FQDN of SPS, which is the address of the Remote Desktop Gateway specified in the client applications. Otherwise the clients will reject the connections.
To automatically create new certificates on SPS for every client, select Generate certificate on-the-fly, then select the Certificate Authority (CA) to sign the generated certificates with from the Signing CA field. For details on creating a signing CA, see Signing certificates on-the-fly.
By default, the Common Name (CN) of the generated certificate is <SPS-hostname.domainname>. You can set a custom Common Name in the Custom Common Name field.
Save the CA certificate used to sign the certificate that SPS shows into DER format and import it to the clients into the Local Computer > Trusted Root Certificate store of the clients so that the clients can verify the identity of SPS.
Under Authentication backend:
To use Active Directory for authentication, select Active Directory.
To use a Local User Database for authentication, select Local User Database, enter the Domain, and select the Local User Database from the list.
Configure other parameters of the connection policy as needed for your environment.