9.2 Ensure 'MASTER_SSL_VERIFY_SERVER_CERT' Is Set to 'YES' or '1'

Information

In the MySQL SLAVE context the setting MASTER_SSL_VERIFY_SERVER_CERT indicates whether the SLAVE should verify the MASTER's certificate. This configuration item may be set to Yes or No, and unless SSL has been enabled on the SLAVE, the value will be ignored.

Rationale:

When SSL is in use certificate verification is important to authenticate the party to which a connection is being made. In this case, the SLAVE (client) should verify the MASTER's (server's) certificate to authenticate the MASTER prior to continuing the connection.

Impact:

When using CHANGE MASTER to, be aware of the following:

SLAVE processes need to be stopped prior to executing CHANGE MASTER to.

Use of CHANGE MASTER to starts new relay logs without keeping the old ones unless explicitly told to keep them.

When CHANGE MASTER to is invoked, some information is dumped to the error log (previous values for MASTER_HOST, MASTER_PORT, MASTER_LOG_FILE, and MASTER_LOG_POS).

Invoking CHANGE MASTER to will implicitly commit any ongoing transactions in the session where the CHANGE MASTER to was run, but not all ongoing transactions on the database.

Solution

To remediate this setting you must use the CHANGE MASTER to command.

STOP SLAVE; -- required if replication was already running
CHANGE MASTER to MASTER_SSL_VERIFY_SERVER_CERT=1;
START SLAVE; -- required if you want to restart replication

See Also

https://workbench.cisecurity.org/files/3844

Item Details

Category: CONFIGURATION MANAGEMENT

References: 800-53|CM-6, 800-53|CM-7

Plugin: MySQLDB

Control ID: 5f363125f61169930d607e8b1ccfdf89d4c4e3aad95ab70a79f94d19c534d122