Python SSL Tutorial

Python er et fortolket sprog, der er blevet populær med mange programmører og server administratorer.Det er kendt for sin relative lethed-i-brug og dens målbare bibliotek af værktøjer til at håndtere almindelige computeropgaver, lige fra grafik animation til netværk.Et eksempel på dette er SSL-bibliotek, som giver alle de værktøjer en udvikler har brug for at skabe en Secure Sockets for klienter og servere Layer (SSL).

hvad du har brug

  • SSL bibliotek
  • SSL certifikat og nøgle (valgfri)

Instruktioner

  1. Åbn en tekst-editor, helst en programmering editor med Python syntaksfremhævning.

  2. Indsæt følgende kode i din editor, taget direkte fra Python SSL biblioteket dokumentation:

    import socket, ssl, pprint

    s = socket.socket (socket.AF_INET, socket.SOCK_STREAM)

    kræve et certifikatfra serveren

    ssl_sock = ssl.wrap_socket (s,

    ca_certs = "/ etc / ca_certs_file",

    cert_reqs = ssl.CERT_REQUIRED)

    ssl_sock.connect (('www.verisign.com «, 443))

    pprint.pprint (ssl_sock.getpeercert ())

    notat, at lukning af SSLSocket også vil lukke den underliggende socket

    ssl_sock.close ()

    Denne enkle SSL klient program vil oprette forbindelse til en server (i dette tilfælde, verisign.com), anmode om en kopi af sin SSL certifikat, og udskrive de oplysninger om det, før du lukker forbindelsen.Gem dit arbejde som "SSLclient.py."

  3. Åbn en ny teksteditor og indsæt følgende SSL-server kode ind i det.Igen er denne kode taget direkte fra SSL dokumentation:

    import socket, ssl

    context = ssl.SSLContext (ssl.PROTOCOL_TLSv1)

    context.load_cert_chain (Certfile = "mycertfile", keyfile = "mykeyfile")

    bindsocket = socket.socket ()

    bindsocket.bind (('myaddr.mydomain.com «, 10023))

    bindsocket.listen (5)

    mens Sand:

    newsocket, fromaddr = bindsocket.accept ()

    connstream = context.wrap_socket (newsocket, server_side = True)

    prøve:

    deal_with_client (connstream)

    endelig:

    connstream.close ()

    Denne kode er lidt mere kompliceret, og det kræver, at du køber et SSL-certifikat.Disse certifikater kan ikke være program-genereret.De skal være skabt af en "betroet" certifikat udbyder, såsom Verisign.Certifikater generelt koste mellem $ 399 og $ 1499 om året, selv om de nogle gange kan købes billigere i kombination med web-hosting servicekontrakter.Hvis du har et certifikat og dets nøgle, erstatte "mycertfile" med filnavn til dit certifikat og "mykeyfile" med filnavnet for sin nøgle.

326
0
2
Python Programming