NetScaler SSL and Ciphers
Website Visitors:SSL and Cryptography
Goto GUI /System/Profiles/SSL Profile/ and edit the ns_default_ssl_profile_frontend.
- Under “Deny SSL Renegotiation” option, make sure it is set to ALL.
- Scroll down and enable “Enable Session Reuse” option.
- Scroll down and enable HSTS and Include Subdomains options.
Deny SSL Renegotiation set to ALL: SSL renegotiation can be a security risk because it may allow an attacker to inject data into an existing SSL session. By denying SSL renegotiation, you reduce the risk of certain types of attacks, such as man-in-the-middle attacks, that exploit this feature.
Enable Session Reuse: Enabling session reuse allows clients to resume previous SSL sessions without needing to perform a full handshake. This can improve performance by reducing latency and resource consumption on both the client and server sides. It also helps maintain a better user experience, especially for users who frequently connect to the same server.
Enable HSTS (HTTP Strict Transport Security): HSTS is a web security policy mechanism that helps protect websites against man-in-the-middle attacks such as protocol downgrade attacks, SSL Stripping and cookie hijacking. When HSTS is enabled, browsers are instructed to only communicate with the server over HTTPS, preventing any unencrypted HTTP connections.
Include Subdomains option for HSTS: By enabling the “Include Subdomains” option, you ensure that HSTS applies not only to the main domain but also to all its subdomains. This provides an additional layer of security across the entire domain and its subdomains, ensuring that all communications are secured.
We can change SSL and TLS settings on the Gateway vip or LB vip on netscaler and also on the sysytem/profiles/SSL profile in the GUI.
For the SSL/TLS settings, we can create a cipher group under traffic management/ssl/cipher groups so that the cipher group can be added to the gateway vip or lb vip.
While creating cipher group, search for RSA, DHE and ECDHE ciphers and create cipher group. A sample cipher group which includes security, performance and compatibility is given below.
All the ciphers given below should be added in the same order in your cipher group.
TLS1.2-AES-128-SHA256
TLS1.2-AES128-GCM-SHA256
TLS1.2-ECDHE-RSA-AES-128-SHA256
TLS1.2-ECDHE-RSA-AES128-GCM-SHA256
TLS1.2-DHE-RSA-AES128-SHA256
TLS1.2-DHE-RSA-AES128-GCM-SHA256
TLS1.3-AES256-GCM-SHA384
TLS1.3-CHACHA20-POLY1305-SHA256
TLS1.3-AES128-GCM-SHA256
Creating a cipher group with a combination of RSA, DHE, and ECDHE ciphers ensures a balance between security, performance, and compatibility. Here’s a breakdown of why the ciphers you’ve listed are recommended in this specific order:
Reasons for Choosing RSA, DHE, and ECDHE Ciphers
-
ECDHE Ciphers (Elliptic Curve Diffie-Hellman Ephemeral):
- ECDHE-RSA-AES-128-SHA256 / ECDHE-RSA-AES128-GCM-SHA256
- These provide perfect forward secrecy (PFS), which ensures that even if a server’s private key is compromised, past communications remain secure.
- ECDHE performs better than traditional DHE and is recommended for high-security environments without much performance overhead.
- ECDHE-RSA-AES-128-SHA256 / ECDHE-RSA-AES128-GCM-SHA256
-
DHE Ciphers (Diffie-Hellman Ephemeral):
- DHE-RSA-AES128-SHA256 / DHE-RSA-AES128-GCM-SHA256
- DHE also offers PFS, though it is more computationally intensive than ECDHE. Including these ensures compatibility with systems that do not support elliptic curves.
- DHE-RSA-AES128-SHA256 / DHE-RSA-AES128-GCM-SHA256
-
RSA Ciphers:
- TLS1.2-AES-128-SHA256 / TLS1.2-AES128-GCM-SHA256
- RSA-based ciphers provide backward compatibility with legacy systems that don’t support ECDHE or DHE.
- These can be useful in situations where performance is more critical than forward secrecy.
- TLS1.2-AES-128-SHA256 / TLS1.2-AES128-GCM-SHA256
-
TLS 1.3 Ciphers:
- TLS1.3-AES256-GCM-SHA384 / TLS1.3-AES128-GCM-SHA256 / TLS1.3-CHACHA20-POLY1305-SHA256
- TLS 1.3 ciphers are more modern and secure, with improved handshakes and faster performance.
- ChaCha20-Poly1305 is included for devices with limited hardware acceleration, such as mobile platforms, providing fast encryption without needing AES-NI instructions.
- TLS1.3-AES256-GCM-SHA384 / TLS1.3-AES128-GCM-SHA256 / TLS1.3-CHACHA20-POLY1305-SHA256
Order of Ciphers – Security, Performance, and Compatibility
- Why this order matters:
- The strongest and most performant ciphers are placed at the top (e.g., ECDHE) to ensure they are selected first during negotiation.
- Legacy or fallback ciphers (e.g., RSA-based ciphers) are placed lower in the list to ensure that only older clients use them.
- TLS 1.3 ciphers are inherently more secure and optimized, so having them ensures the best encryption when supported.
This kind of ordered cipher group is essential for balancing the different needs of modern web applications, especially in environments where mixed client populations access your services, such as in Citrix deployments or cloud workloads.
Managing Netscaler security
Create a new user account other than the default nsroot. If you have externally authenticated users, goto system/settings/change global system settings. Scroll down and uncheck “Local Authentication” so that external user activities are logged.
Goto system/network/rpc and change the password. RPC is for communication between peer to peer communication. RPC is used for HA and GSLB, basically for any communication between two netscalers.
Goto system/snmp and create snmp (v3 latest) as needed.
Want to learn more on Citrix Automations and solutions???
Subscribe to get our latest content by email.