We have fallback logic since a long time in the agent to try to connect to the
server with 2-way SSL if one-way SSL throws an exception. This can cause some
agents to connect with 2-way SSL (connection timeout exception for one-way
SSL) and thereby a cluster having a mix of agents, some connected with one-way
SSL and some connected with 2-way SSL.
Investigate why we have had this logic and if it is no longer appropriate,
remove this fallback logic.
if not self.two_way_ssl_required:
sock = self.create_connection()
self.sock = ssl.wrap_socket(sock, cert_reqs=ssl.CERT_NONE)
logger.info('SSL connection established. Two-way SSL authentication is '
'turned off on the server.')
except (ssl.SSLError, AttributeError):
self.two_way_ssl_required = True
'Insecure connection to https://' + self.host + ':' + self.port +
'/ failed. Reconnecting using two-way SSL authentication..')