有没有一种方法可以安全地使用套接字库

时间:2019-11-23 14:24:56

标签: python sockets ssl

伙计们,我正在寻找一种安全连接我的python套接字程序的方法。
我想像了以下内容:

from socket import *
server = socket(AF_INET, SOCK_STREAM, cert="cetificate.pem")
server.bind(("192.168.2.100",8080))
server.listen()
while True:
  client, addr = socket.accept()
  client.sendall(b"Hello, World!")

我在github上找到了一个替代解决方案,但是它非常复杂,我不理解。 请帮帮我

1 个答案:

答案 0 :(得分:0)

我找到了解决方法:

import socket
import ssl
context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER)
context.load_cert_chain('/path/to/certchain.pem', '/path/to/private.key')

with socket.socket(socket.AF_INET, socket.SOCK_STREAM, 0) as sock:
    sock.bind(('127.0.0.1', 8443))
    sock.listen(5)
    with context.wrap_socket(sock, server_side=True) as ssock:
        conn, addr = ssock.accept()