В общем решение нашел сам , смысл скрипта заключается в том что бы получить каждый сертификат отдельно и по каждому отдельно вызвать "openssl x509" ,  если кому то это поможет в будущем то оставлю здесь свой скрипт на python:
#!/usr/bin/python3
import re
import datetime
import sys
import traceback
from subprocess import PIPE, Popen, DEVNULL
def get_cert_dates(hostname):
    try:
        result = []
        certs = Popen('sudo openssl s_client -showcerts -verify_quiet -servername {0} -connect {0}:443'.format(hostname), shell=True,
                      stdout=PIPE, stdin=DEVNULL, stderr=PIPE).stdout.read().decode('utf-8')
        pattern = r'(-----BEGIN CERTIFICATE-----[\D\d]*?-----END CERTIFICATE-----)'
        for cert in re.findall(pattern, certs):
            data = Popen('echo "{}" |sudo openssl x509 -subject -dates -noout'.format(cert), shell=True, stdout=PIPE,
                         stderr=PIPE).stdout.read().decode('utf-8').split('\n')
            subject = re.search(r'CN\s*=\s*([\D\d]*?$)',
                                data[0]).group(1).strip().replace(' ', '_').replace("'", '')
            expiry_dt = datetime.datetime.strptime(re.search(r'notAfter\s*=\s*([\D\d]*?$)', data[2]).group(1),
                                                   '%b %d %H:%M:%S %Y %Z')
            expiry_ts = int(datetime.datetime.timestamp(expiry_dt))
            end = expiry_ts - int(datetime.datetime.timestamp(datetime.datetime.now()))
            result.append({'subject': subject, 'expiry_dt': expiry_dt, 'expiry_ts': expiry_ts, 'end': end})
        return result
    except:
        print(traceback.format_exc())
print(get_cert_dates('yandex.ru'))