EZproxy 7.3 was built with the most current Long Term Support release of OpenSSL (3.0.11t).
By default, the following encryption/security options are disabled:
The default SSLCipherSuite string remains unchanged from v6.3.5.
The following directives can be used to customize OpenSSL settings.
Directive | Values | Description |
---|---|---|
SSLCipherSuite |
OpenSSL ciphers |
In EZproxy 6.3.5 and later, SSLCipherSuite defaults to the following values: ALL:!EXPORT:!LOW:!aNULL:!eNULL:!SSLv2:!RC4 Additional values can be appended or used to replace those in the default to customize EZproxy OpenSSL security settings. This directive should be placed before any LoginPortSSL statement in config.txt. |
SSLHonorCipherOrder |
On |
Assigning this directive a value Assigning this directive a value |
SSLOpenSSLConfCmd |
Supported Configuration File Commands | This directive allows OpenSSL-specific commands to be used to control advanced settings of OpenSSL. |
The following OpenSSL parameters are compatible with EZproxy.
Parameters | Values | Description |
---|---|---|
Diffie-Hellman parameters | dhparam | These parameters can now be included within a key file in the SSL subdirectory. Such values can be generated with the OpenSSL dhparam command. |
Elliptical Curve parameters | ecparam | These parameters can now be included within a key file in the SSL subdirectory. Such values can be generated with the OpenSSL ecparam command. |
Details about previous versions of EZproxy and compatibility with OpenSSL can be found below.
SSLCipherSuite -outbound ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256
SSLOpenSSLConfCmd -inbound MinProtocol TLSv1.1
SSLOpenSSLConfCmd -outbound MinProtocol TLSv1.1
The default SSLCipherSuite string remains unchanged from v6.3.5.
The default SSLCipherSuite string remains unchanged from v6.3.5.
The default SSLCipherSuite string remains unchanged from v6.3.5.
The default SSLCipherSuite string remains unchanged from v6.3.5.
The new default SSLCipherSuite string unchanged from v6.3.5.
ALL: !EXPORT: !LOW: !aNULL: !eNULL: !SSLv2: !RC4
Previously these options had to be disabled manually with directives in config.txt.
The new default SSLCipherSuite string is:
HIGH:MEDIUM:!ADH:!Anull:!LOW:!EXP:!SSLv2:@STRENGTH
All other settings available in EZproxy V5.7.44 are available in EZproxy V6.0.8.
The following config.txt statements control the SSL/TLS options your instance of EZproxy will use.
Directive | Values | Description |
---|---|---|
Option Disable SSLv2 |
NA | By default, EZproxy V5.7.44 disables SSL 3 and enables SSL 2. Because EZproxy V5.7.44 supports TLS 1.0 for client to webserver interactions, OCLC recommends that you also disable SSL 2 in addition to the default-disabled SSL 3.To do this, place Option DisableSSLv2 before any LoginPortSSL statements in your config.txt file. After disable SSL and retaining the default setting of disabled SSL 3, you EZproxy will default to TLS 1.0. |
SSLCipherSuite |
Cipher Strings |
SSLCipherSuite offers finer-grained control over SSL/TLS options. We use OpenSSL as our security library layer, and SSLCipherSuite options are passed directly to OpenSSL for processing. EZproxy V5.7.44 supports all of the cipher settings defined by OpenSSL Cipher Strings. SSLCipherSuite was introduced with the first V5.7 release. OCLC recommends updating to V5.7.44 if you use SSLCipherSuite. For more details about SSLCipherSuite values and EZproxy directives, see SSLCipherSuite below. |
Option EnableSSLv3 |
NA | SSL 2 and SSL 3 are older protocol definitions that normally should not be used. We provide the ability to use them since some legacy environments may need them. If you are using an environment that requires SSL 3, you can force EZproxy to use this protocol by entering Option EnableSSLv3 before an LoginPortSSL statements in your config.txt file, but this is not the recommended setting. |
If SSLCipherSuite is present in config.txt, and no values are defined for this directive, EZproxy defaults to the values:
SSLCipherSuite HIGH:MEDIUM:LOW:EXP:!ADH:!aNULL
The table below provides additional directives that influence the SSLCipherSuite string.
Directive | Values appended to default |
---|---|
Option DisableSSL56bit |
:!LOW!EXP |
Option DisableSSL40bit |
:!EXP |
|
:!SSLv2 |
After any of the above changes are applied, EZproxy always appends to the default string:
:@STRENGTH
Note: EZproxy supports the following formats for the SSLCipherSuite directive:
A separate entry for inbound and outbound suites as follows:
SSLCipherSuite -inbound (inboundsuite)
and/or:
SSLCipherSuite -outbound (outboundsuite)
EZproxy also supports a combined entry with a shared suite (the CipherSuite for both inbound and outbound must be the same):
SSLCipherSuite -inbound -outbound (sharedsuite)
EZproxy does not allow a single entry with a separate inbound suite and an outbound suite. Where the inbound and outbound suites are intended to be different. The following example is not allowed:
SSLCipherSuite -inbound (inboundsuite) -outbound (outboundsuite)
EZproxy supports, 40 bit encryption, 56 bit encryption, and 128, 192 and 256 bit AES encryption. Encryption keys define the size of the cipher used to encrypt data transmitted via SSL/TLS over https: connections.
40 and 56 bit encryption should be disabled by default; however, OCLC provides 40 and 56 bit encryption for legacy purposes. OCLC recommends that you disable 40 and 56 bit encryption unless you have specific legacy requirements.
To disable 40 bit encryption, add the following statement to your config.txt file:
Option DisableSSL40bit
To disable 56 bit encryption, add the following statement to your config.txt file:
Option DisableSSL56bit