我尝试在本地主机和本地网络的 IP 地址上运行 Flask 应用程序,它运行得很好(没有 SSL)。
但是,当我尝试使用 SSL 运行应用程序时,Web 浏览器未加载页面并给出错误:
您的连接不是私有的:NET::ERR_CERT_INVALID
我尝试过但失败的方法:
1。使用自签名
.pem
证书(主题类型=CA)
使用生成的证书
.pem
、证书密钥并配置我的烧瓶应用程序使用它。
openssl req -x509 -newkey rsa:4096 -nodes -out cert.pem -keyout key.pem -days 365
app.run(
host='192.168.1.127', port="8282", debug=True,
ssl_context=('cert.pem', 'key.pem'),
)
2。使用自签名
.crt
证书
使用生成的证书
.crt
、证书密钥并配置我的烧瓶应用程序使用它。
$ openssl genrsa -des3 -out server.key 1024
$ openssl req -new -key server.key -out server.csr
$ cp server.key server.key.org
$ openssl rsa -in server.key.org -out server.key
$ openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
app.run(
host='192.168.1.127', port="8282", debug=True,
ssl_context=('server.crt', 'server.key')
)
3.使用
ssl_context='adhoc'
运行 Flask
```
app.run(
host='192.168.1.127', port="8282", debug=True,
ssl_context='adhoc'
)
```
我正在尝试构建一个系统,其中多个树莓派位于房子的不同房间,但它们连接到同一个家庭网络。
同一网络上有一台主计算机充当控制器,为了成功实现该系统,我需要通过 HTTPS 从控制器系统向所有 Raspberry PI 发出请求。
它正在工作。
消息“连接不是私有的”具有误导性。实际发生的情况是,连接是使用不在您的信任链中的证书进行加密的。即使是这样,我怀疑浏览器是否会接受 IP 地址的证书。 无论如何,您的连接确实是加密的。
您没有显示其他详细信息。但您可以尝试将生成的证书添加到系统的信任链中。