程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了在 Windows 10 上打开 SSL 时 PostgreSQL 无法工作大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决在 Windows 10 上打开 SSL 时 POSTGReSQL 无法工作?

开发过程中遇到在 Windows 10 上打开 SSL 时 POSTGReSQL 无法工作的问题如何解决?下面主要结合日常开发的经验,给出你关于在 Windows 10 上打开 SSL 时 POSTGReSQL 无法工作的解决方法建议,希望对你解决在 Windows 10 上打开 SSL 时 POSTGReSQL 无法工作有所启发或帮助;

我不确定这个话题是否适合这里,但我不知道在哪里问。

我正在尝试在 windows10 上打开 POSTGResql 10.16 的 SSL。

我阅读了很多关于为 POSTGResql 创建 SSL 证书的文档,但在 windows 10 上花费的文档很少,也没有详细说明。

这些是我做的步骤:

步骤 1,我从

下载 windows 的 OpenSSL 版本

https://slproweb.com/products/Win32OpenSSl.html

并使用路径 C:\OpenSSL-Win64 安装它,设置系统变量。

第 2 步,我使用 cmd run 作为管理员通过命令行创建服务器密钥:

genrsa -out server.key 4096

,对私钥文件设置适当的权限和所有者(此处https://stackoverflow.com/a/51463654)

icacls server.key /reset
icacls server.key /inheritance:r /grant:r "CREATOR owneR:F"

我在这个命令行中得到了来自 cmd.exe 的响应

C:\windows\system32>icacls server.key /reset
processed file:  server.key
successfully processed 1 file; Failed processing 0 files

C:\windows\system32>icacls server.key /inheritance:r /grant:r "CREATOR owneR:F"
processed file:  server.key
successfully processed 1 files; Failed processing 0 files

继续创建服务器证书:

req -new -x509 -days 1826 -key server.key -out server.crt

第三步,由于我是自签名的,所以我使用服务器证书作为受信任的根证书,所以我有3个文件:服务器密钥、服务器crt和根crt(这是一个服务器crt的副本)

我把这三个文件剪切到 C:\Program files\POSTGResql\10\data

第 4 步,我正在设置 POSTGResql.conf:

Listen_addresses = '*'
port = 5432
ssl=on
ssl_cert_file = 'server.crt'
ssl_key_file = 'server.key'
ssl_ca_file = 'root.crt'

并在 pg_hba.conf 末尾添加命令行:

# IPv4 remote connections for authenticated users
hostssl   all     POSTGRes             0.0.0.0/0            md5 clIEntcert=1

最后,当我重新启动 POSTGResql 时出现如下错误

The POSTGResql -x64-10 -POSTGResql Server 10 service on the Local Computer started and then stopped. Some services stop automatically if they are not in use by other services or programs.

在我的 POSTGResql 日志中:

2021-03-28 16:35:44.735 +07 [7624] LOG:  database system was shut down at 2021-03-28 16:34:51 +07

2021-03-28 16:35:45.099 +07 [7044] LOG:  database system is ready to accept connections

2021-03-28 17:39:37.827 +07 [7044] LOG:  received fast shutdown request

2021-03-28 17:39:37.834 +07 [7044] LOG:  aborTing any active transactions

2021-03-28 17:39:37.839 +07 [7044] LOG:  worker process: logical Replication launcher (PID 7972) exited with exit code 1

2021-03-28 17:39:37.843 +07 [7880] LOG:  shutTing down

2021-03-28 17:39:37.877 +07 [7044] LOG:  database system is shut down

我怀疑 POSTGResql 没有读取我放在其数据目录中的 3 个文件。

我参了这些文件

https://www.howtoforge.com/POSTGResql-ssl-certificates

chmod og-rwx server.key in windows

https://www.POSTGResql.org/docs/10/ssl-tcp.html

我已经被它弄乱了很多天,我不知道如何解决这个问题。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

大佬总结

以上是大佬教程为你收集整理的在 Windows 10 上打开 SSL 时 PostgreSQL 无法工作全部内容,希望文章能够帮你解决在 Windows 10 上打开 SSL 时 PostgreSQL 无法工作所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。