Skip to content

Instantly share code, notes, and snippets.

@Crypt0s
Last active March 14, 2024 13:28
Show Gist options
  • Save Crypt0s/7299ccf252149a03805b4248585eaa2b to your computer and use it in GitHub Desktop.
Save Crypt0s/7299ccf252149a03805b4248585eaa2b to your computer and use it in GitHub Desktop.
HTTPS.sh
#!/bin/bash
#bash <(curl -s https://gist.githubusercontent.com/Crypt0s/7299ccf252149a03805b4248585eaa2b/raw/9f9ef8c3c5c8ee1bd5a9ec0e8563f9d681e3957d/HTTPS.sh)
openssl req -nodes -new -x509 -keyout server.key -out server.cert -subj "/C=UA/ST=NJ/L=Roseland/O=Security/OU=OffSec/CN=coreweave.test/emailAddress=dev@www.example.com"
cat > https.py <<- EOM
import ssl
import http.server
import logging
import sys
file_h = logging.FileHandler(filename='https.log')
stdout_h = logging.StreamHandler(stream=sys.stdout)
logging.basicConfig(handlers=[file_h,stdout_h], level=logging.DEBUG, format="")
logger = logging.getLogger("HTTPS")
class handler(http.server.SimpleHTTPRequestHandler):
def log(self):
logger.debug("path: %s" % self.path)
logger.debug(self.headers)
if 'Content-Length' in self.headers and int(self.headers['Content-Length']) > 0:
logger.debug("----body----")
logger.debug(self.rfile.read(int(self.headers['Content-Length'])).decode())
logger.debug("----request end-----")
def do_GET(self):
self.log()
self.send_response(200)
self.send_header('Content-type','text/html')
self.end_headers()
message = "OK"
self.wfile.write(bytes(message, "utf8"))
def do_POST(self):
self.log()
self.send_response(200)
self.send_header('Content-type','text/html')
self.end_headers()
message = "OK"
self.wfile.write(bytes(message, "utf8"))
httpd = http.server.HTTPServer(('0.0.0.0', 443), handler)
httpd.socket = ssl.wrap_socket (httpd.socket, keyfile="server.key", certfile='server.cert', server_side=True)
httpd.serve_forever()
EOM
python3 https.py
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment