I'm posting this message since I fixed the problem with the same error codes. It may help others who encounter a similar issue.

I used to run the py script for sending emails. On another side, the mail server Cert got renewed and all of the sudden my script failing to connect to the server.

    bash # python3 email_send.py
    Traceback (most recent call last):
      File "emailsend.py", line 143, in <module>
        server.starttls(context=context)
       File "/usr/lib/python3.8/smtplib.py", line 774, in starttls
        self.sock = context.wrap_socket(self.sock,
      File "/usr/lib/python3.8/ssl.py", line 500, in wrap_socket
        return self.sslsocket_class._create(
      File "/usr/lib/python3.8/ssl.py", line 1040, in _create
        self.do_handshake()
      File "/usr/lib/python3.8/ssl.py", line 1309, in do_handshake
        self._sslobj.do_handshake()
    ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1108)

I solved this issue by adding the last two lines.

   context = ssl.create_default_context()
   context.check_hostname = False
   context.verify_mode = ssl.CERT_NONE
0

There are 0 best solutions below