自分で作成するためのサンプル
- create CA
openssl genrsa -out ca.key 2048
openssl req -x509 -new -nodes -key ca.key -sha256 -days 1024 -out ca.pem -subj "/CN=MyCA"
- create server cert and signetured by CA key
openssl genrsa -out server.key 2048
openssl req -new -key server.key -out server.csr -config server_cert.cnf
openssl x509 -req -in server.csr -CA ca.pem -CAkey ca.key -CAcreateserial -out server.pem -days 500 -sha256 -extfile server_cert.cnf -extensions v3_ca
- create client cert and signetured by CA
openssl genrsa -out client.key 2048
openssl req -new -key client.key -out client.csr -subj "/CN=myclient"
openssl x509 -req -in client.csr -CA ca.pem -CAkey ca.key -CAcreateserial -out client.pem -days 500 -sha256
- wake uvicorn verver
uvicorn app:app --host 0.0.0.0 --port 8000 --ssl-keyfile=server.key --ssl-certfile=server.pem --ssl-ca-certs=ca.pem --ssl-cert-reqs=2
- comunicate via https
python client.py