#!/usr/bin/env python import sys sys.path.insert(0, "../..") import socket, tempfile, ssl, subprocess addr = socket.gethostbyname(sys.argv[1]) s = ssl.get_server_certificate((addr, 443)) f = tempfile.NamedTemporaryFile() f.write(s) f.flush() p = subprocess.Popen( [ "openssl", "x509", "-in", f.name, "-text", "-noout" ], stdout = subprocess.PIPE ) out, _ = p.communicate() print out