我相信我最终混淆了/etc/ssl目录树上的权限,因为最后一次修改是在11月18日,也就是在我无法让我的PostgreSQL工作的一天之后。
当我打字时
sudo服务postgresql启动
我得到了
致命:无法访问私钥文件“/etc/ssl/私有/ssl-cert-snakeoil.key. key”:权限被拒绝
检查权限
~$ sudo -i ~$ ls -la /etc/ssl/私有 drw-r -rwxrwxrwx 1 postgres postgres 1704套装4 11:26 ssl-cert-snake.key
检查组组成
~$ id postgres uid=114(postgres) gid=127(postgres) groups=127(postgres),114(ssl-cert)
我还注意到我在/etc/ssl/certs/上的.etc文件没有符号链接。我不知道这是否有什么区别..。
拜托,帮我解决这个问题。
谢谢。
编辑:应该在服务器故障上发布吗?
发布于 2018-04-16 14:35:14
尝试将postgres用户添加到组ssl-cert中
运行以下代码以解决问题:
# > It happened to me and it turned out that I removed erroneously the postgres user from "ssl-cert" group, set it back with
sudo gpasswd -a postgres ssl-cert
# Fixed ownership and mode
sudo chown root:ssl-cert /etc/ssl/private/ssl-cert-snakeoil.key
sudo chmod 740 /etc/ssl/private/ssl-cert-snakeoil.key
# now postgresql starts! (and install command doesn't fail anymore)
sudo /etc/init.d/postgresql start科齐到GabLeRoux
发布于 2016-06-09 10:44:22
检查…的输出
$ sudo -u postgres
$ cd /etc/ssl/private
$ ls如果响应是“拒绝权限”,请执行以下操作
$ chown postgres:ssl-cert /etc/ssl/private/
$ chown postgres:postgres /etc/ssl/private/ssl-cert-snakeoil.key发布于 2019-12-08 09:06:18
只有当您更改了/etc/ssl/私有的权限时才能工作
mkdir /etc/ssl/private-copy; mv /etc/ssl/private/* /etc/ssl/private-copy/; rm -r /etc/ssl/private; mv /etc/ssl/private-copy /etc/ssl/private; chmod -R 0700 /etc/ssl/private; chown -R postgres /etc/ssl/private复制整个命令(这是一行代码)。
如果这不适用于您,请使用
groups postgres来模仿postgres用户组,并确保您的postgres用户具有ssl-cert根postgres (订单无关紧要)。
现在让我们检查一下您对ssl/私有文件的权限:
$ ls -la /etc/ssl/
> drwx------ 2 postgres root private如果这不是输出,则更改sudo chmod -R 700 /etc/ssl/private和所有者的权限( chown -R postgres:root /etc/ssl/private )
//Now check permissions on ssl-cert-snakeoil.key,
//which will be inside your **private** directory.
$ ls -la /etc/ssl/private/ssl-cert-snakeoil.key
> -rwx------ 1 postgres root /etc/ssl/private/ssl-cert-snakeoil.keyhttps://stackoverflow.com/questions/34209661
复制相似问题