まずはSSL証明書を作成します。自己署名証明書(いわゆるオレオレ証明書)を作ります。
mkdir certs
cd certs
openssl genrsa -out server.key
openssl req -new -key server.key -out server.csr -subj "/C=JP/ST=Tokyo/L=Eden/O=edenPJ/CN=raspberrypi.local"
cat <<'EOS' > san.txt
subjectAltName = DNS:raspberrypi.local, IP:192.168.1.93
EOS
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt -extfile san.txt
openssl x509 -text -in server.crt -noout
ここまでで、秘密鍵『server.key』とサーバー証明書『server.crt』が作成できました。あとはFlaskを起動する際のオプションを変更しましょう。
app.run(debug=True, port=5000, ssl_context=('./certs/server.crt', './certs/server.key'), host='0.0.0.0')
今のところ私はpiユーザーで起動させていますので、ポートを5000にしています。
rootで実行すれば1024番以下のポートでもアサインできますので、標準の443番を設定する場合はrootで起動してください。