Helo,
Я пытаюсь подключиться и получить страницу с прокси только с сокетом и ssl, но со вторым запросом возникает ошибка 502 Bad Gateway
.
Спасибо
Мой код
import socket
import ssl
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect(('localhost', 8080))
host = "www.google.com"
sock.send("""CONNECT {}:443 HTTP/1.1\r
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0\r
Proxy-Connection: keep-alive\r
Accept-Encoding: raw\r
Connection: keep-alive\r
Host: {}\r
\r
""".format(host, host).encode())
print(sock.recv(1000000).decode())
sock = ssl.wrap_socket(sock)
sock.send("""GET / HTTP/1.1\r
Host: {}\r
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0\r
\r
""".format(host).encode())
data = sock.recv(1000000).decode()
print(data)
Журнал скриптов
HTTP/1.1 200 Connection established
HTTP/1.1 502 Bad Gateway
Server: mitmproxy 4.0.4
Connection: close
Content-Length: 390
Content-Type: text/html
<html>
<head>
<title>502 Bad Gateway</title>
</head>
<body>
<h1>502 Bad Gateway</h1>
<p>TlsProtocolException("Cannot establish TLS with www.google.com:443 (sni: None): TlsException('Cannot validate certificate hostname without SNI')")</p>
</body>
</html>