K75106155: Configuring OCSP Stapling (13.X - 16.X)
Total Page:16
File Type:pdf, Size:1020Kb
K75106155: Configuring OCSP stapling (13.x - 16.x) Non-Diagnostic Original Publication Date: Feb 13, 2019 Update Date: Sep 3, 2021 Topic This article applies to BIG-IP 13.x - 16.x. For information about other versions, refer to the following article: K17111035: Configuring OCSP stapling (11.x - 12.x) You should consider using this procedure under the following condition: You want to configure the BIG-IP system to use Online Certificate Status Protocol (OCSP) stapling. Description OCSP The original OCSP implementation described in RFC 2560 requires that client applications perform a DNS and an OCSP request, using either HTTP or HTTPs, during the Secure Socket Layer (SSL)/Transport Layer Security (TLS) handshake to validate a secure website's SSL certificate revocation status. The additional DNS and HTTP/HTTPs requests made during the SSL/TLS handshake causes noticeable performance delays for client applications and significantly increases network traffic and processing overhead for the validating OCSP responders. OCSP is introduced to improve SSL/TLS handshake performance while maintaining security. OCSP stapling OCSP stapling (described in RFC 6066 and RFC 6960) is a performance improvement to the original OCSP internet protocol used to verify SSL certificate revocation status. When a secure web server implements OCSP stapling and a remote client application makes a new SSL connection, the secure web server queries the OCSP responder and obtains a signed and time-sensitive OCSP response during the SSL/TLS handshake. The secure web server then responds to the client application on behalf of the OCSP responder, sending (or stapling) the OCSP response in the status_request TLS Certificate Status Request extension. The client application is then able to verify the SSL certificate's revocation status. The secure web server also caches the OCSP response, and subsequent client connections to the same secure web site receive the cached stapled response, which greatly improves overall SSL/TLS handshake performance. While this performance improvement may appear less secure, a trusted entity signs OCSP responses, which allows client applications to verify the authenticity of the response. One possible risk occurs when a certificate revocation notification update (revoked) becomes delayed until the previously cached (good) OCSP response has expired. Important: The client application must include the status_request extension in its TLS Client Hello handshake message to enable OCSP stapling. OCSP responses You can configure the BIG-IP system to use OCSP stapling for websites that are secured using a Client SSL profile. For more information about how a BIG-IP system manages cached OCSP responses, refer to the following list: Certificate monitoring The BIG-IP system can monitor the revocation status for SSL certificates. Revocation monitoring works by querying the OCSP server after the cached OCSP response has expired to determine the SSL certificates revocation status. When monitoring is enabled, you can also propagate the revocation status of SSL certificates to virtual servers . Revoked responses Revoked responses indefinitely remain in the cache. To remove all cached OCSP responses for a specific virtual server and Client SSL profile, use the Deleting the OCSP response cache procedure. The nextUpdate extension OCSP responders can include an optional nextUpdate extension to indicate the time that new certificate revocation status information will be made available. The BIG-IP system does not cache an OCSP response when the nextUpdate extension is missing. Viewing OCSP profile statistics There is currently no command available for viewing the OCSP response cache. You can however view OCSP profile statistics such as errors and number of requests. To do so, use the Viewing OCSP profile statistics procedure. Prerequisites You must meet the following prerequisites to use this procedure: You have a remote OCSP responder. You have access to the Configuration utility. You have a virtual server configured to process SSL traffic using a Client SSL profile. You have configured the network time protocol (NTP) on the BIG-IP system and remote OCSP responder. The following service ports are accessible between the BIG-IP system and the OCSP responder: 53 (DNS) and 80 or 443 (OCSP). You have access to a Linux command line if testing is required. Procedures Import the CA or OCSP responder signing certificate Configure the OCSP stapling profile Modify the SSL certificate Modify the Client SSL profile Test the OCSP configuration View OCSP profile statistics Delete the OCSP response cache Import the CA or OCSP responder signing certificate The BIG-IP system must verify the authenticity of the OCSP responder's SSL certificate. Before configuring the OCSP responder and Client SSL profiles, obtain the Certificate Authority (CA) certificate used to sign the OCSP responder's SSL certificate. You can import the CA certificate by performing the following procedure: Note: The SSL certificate file should include the BEGIN CERTIFICATE and END CERTIFICATE lines and contain no white space, extra line breaks, or additional characters. Impact of procedure: Performing the following procedure should not have a negative impact on your system. 1. Log in to the Configuration utility. 2. Navigate to System > Certificate Management > Traffic Certificate Management > SSL Certificates List. 3. Click Import. 4. From the Import Type list, click Certificate. 5. For Certificate Name, click Create New and type a name for the certificate in the box. 6. For Certificate Source, click Upload File and browse to the file on your computer, or click Paste Text and paste the source location into the box. 7. Click Import. Configure the OCSP stapling profile Prior to configuring the OCSP stapling profile, you may need to contact the OCSP responder's administrator to ensure the OCSP options are correctly configured. To configure the OCSP stapling profile, perform the following procedure: Impact of procedure: Performing the following procedure should not have a negative impact on your system. 1. Log in to the Configuration utility. 2. Navigate to System > Certificate Management > Traffic Certificate Management > OCSP. 3. Click Create. 4. Under General Properties, type a unique identifier or name for the OCSP profile. 5. 5. Under Connection, for Use Proxy Server, select the check box if you intend to use servers that can proxy HTTP requests to an external server to fetch responses or leave this check box unselected if you intend to use a domain name in either the OCSP stapling profile's Responder URL option or in the secure website SSL certificate Authority Information Access (AIA) extension to fetch responses. 6. For DNS Resolver/Proxy Server Pool, depending on your selection for the previous setting, specify the appropriate DNS resolver or proxy server, or click + to define a new one. 7. Optionally configure the following Connection settings: Route Domain - Click the route domain the system uses for fetching OCSP responses using HTTP forward proxy, or click + to define a new route domain. Concurrent Connections Limit - Type the maximum number of connections per second allowed for OCSP certificate validation. The default value is 50. Responder URL - Type the HTTP/HTTPs based URL used to override the AIA extension configured in the OCSP responder's SSL/TLS certificate. The default is empty or no value. Timeout - Type the time in seconds that the system waits for a reply from the OCSP responder before dropping the connection. The value should be less than the value set for the handshake timeout in the Client SSL profile referencing the OCSP stapling profile. The default is 8. 8. Optionally configure the following Response Validation settings: Trusted Responders - Click the name of the certificate the system uses for validating the OCSP response when the responder's certificate is omitted from the response. Clock Skew - Type the maximum allowable difference between the OCSP responder and the BIG-IP system, in seconds. The default value is 300. Important: Configure NTP on both the OCSP responder and BIG-IP system to avoid time issues affecting OCSP responses. Status Age - Type the maximum allowed lag time in seconds that the BIG-IP system accepts for the thisUpdate time in the OCSP response. If this maximum is exceeded, the system drops the response. If you set this value to 0 (zero), the system skips this validation. The default value is 0 . Options - Select the Strict Responder Certificate Checking check box to require the system to validate OCSP signing extensions. This option is disabled by default. 9. Optionally configure the following Response Caching settings: Timeout - Specify the lifetime of the OCSP response stored in the cache. The time period for cached responses is the minimum of the response validity period of the nextUpdate extension and the configured Timeout. Select Specify to enter a custom value in seconds. The default value is Indefinite. Error Timeout - Type the lifetime of an error response in the cache, in seconds. The default value is 3600. 10. Optionally configure the following Request Signing settings: Certificate - Click the name of the certificate the system uses to sign an OCSP request. The default value is None. Key - Click the name of the key the system uses to sign an OCSP request. The default value is None. Passphrase - Type the passphrase the system uses to sign an OCSP request. Hash Algorithm - Click the name of the hash algorithm the system uses to sign an OCSP request. The default value is SHA256. 11. 11. After you configure the settings, click Finished. Modify the SSL certificate You must associate the OCSP profile and the CA or OCSP responder signing certificate, which you imported in the first procedure, with the SSL certificate associated with the Client SSL profile. You can also choose to monitor the SSL certificate's revocation status. To do so, perform the following procedure: Impact of procedure: Performing the following procedure enables OCSP verification by client applications when they present the TLS status_request extension during the SSL/TLS handshake.