PostgreSQL 启动失败。无法加载私钥文件 < server.key >> : 密钥值不匹配

PostgreSQL 启动失败。无法加载私钥文件 < server.key >> : 密钥值不匹配

我尝试在我的 Linux Debian 7.2 服务器上安装 PostgreSQL 但是失败了。

这是我做的:

user ~ $ sudo apt-get install postgresql
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Les paquets supplémentaires suivants seront installés :
  postgresql-9.1 postgresql-client-9.1 postgresql-client-common postgresql-common
Paquets suggérés :
  oidentd ident-server locales-all postgresql-doc-9.1
Les NOUVEAUX paquets suivants seront installés :
  postgresql postgresql-9.1 postgresql-client-9.1 postgresql-client-common postgresql-common
0 mis à jour, 5 nouvellement installés, 0 à enlever et 0 non mis à jour.
Il est nécessaire de prendre 0 o/4 518 ko dans les archives.
Après cette opération, 22,0 Mo d'espace disque supplémentaires seront utilisés.
Souhaitez-vous continuer [O/n] ? O
Préconfiguration des paquets...
Sélection du paquet postgresql-client-common précédemment désélectionné.
(Lecture de la base de données... 51752 fichiers et répertoires déjà installés.)
Dépaquetage de postgresql-client-common (à partir de .../postgresql-client-common_134wheezy4_all.deb) ...
Sélection du paquet postgresql-client-9.1 précédemment désélectionné.
Dépaquetage de postgresql-client-9.1 (à partir de .../postgresql-client-9.1_9.1.14-0+deb7u1_amd64.deb) ...
Sélection du paquet postgresql-common précédemment désélectionné.
Dépaquetage de postgresql-common (à partir de .../postgresql-common_134wheezy4_all.deb) ...
Ajout de « détournement de /usr/bin/pg_config en /usr/bin/pg_config.libpq-dev par postgresql-common »
Sélection du paquet postgresql-9.1 précédemment désélectionné.
Dépaquetage de postgresql-9.1 (à partir de .../postgresql-9.1_9.1.14-0+deb7u1_amd64.deb) ...
Sélection du paquet postgresql précédemment désélectionné.
Dépaquetage de postgresql (à partir de .../postgresql_9.1+134wheezy4_all.deb) ...
Traitement des actions différées (« triggers ») pour « man-db »...
Paramétrage de postgresql-client-common (134wheezy4) ...
Paramétrage de postgresql-client-9.1 (9.1.14-0+deb7u1) ...
update-alternatives: utilisation de « /usr/share/postgresql/9.1/man/man1/psql.1.gz » pour fournir « /usr/share/man/man1/psql.1.gz » (psql.1.gz) en mode automatique
Paramétrage de postgresql-common (134wheezy4) ...
Ajout de l'utilisateur postgres au groupe ssl-cert
Building PostgreSQL dictionaries from installed myspell/hunspell packages...
Paramétrage de postgresql-9.1 (9.1.14-0+deb7u1) ...
Creating new cluster (configuration: /etc/postgresql/9.1/main, data: /var/lib/postgresql/9.1/main)...
Moving configuration file /var/lib/postgresql/9.1/main/postgresql.conf to /etc/postgresql/9.1/main...
Moving configuration file /var/lib/postgresql/9.1/main/pg_hba.conf to /etc/postgresql/9.1/main...
Moving configuration file /var/lib/postgresql/9.1/main/pg_ident.conf to /etc/postgresql/9.1/main...
Configuring postgresql.conf to use port 5432...
update-alternatives: utilisation de « /usr/share/postgresql/9.1/man/man1/postmaster.1.gz » pour fournir « /usr/share/man/man1/postmaster.1.gz » (postmaster.1.gz) en mode automatique
[....] Starting PostgreSQL 9.1 database server: main[....] The PostgreSQL server failed to start. Please check the log output: 2014-12-28 14:05:24 CET FATAL: n'a pas pu charger le fichier de cl? priv?e << server.key >> : key values misma[FAIL.. failed!
 failed!
invoke-rc.d: initscript postgresql, action "start" failed.
dpkg: erreur de traitement de postgresql-9.1 (--configure) :
 le sous-processus script post-installation installé a retourné une erreur de sortie d'état 1
dpkg: des problèmes de dépendances empêchent la configuration de postgresql :
 postgresql dépend de postgresql-9.1 ; cependant :
 Le paquet postgresql-9.1 n'est pas encore configuré.

dpkg: erreur de traitement de postgresql (--configure) :
 problèmes de dépendances - laissé non configuré
Des erreurs ont été rencontrées pendant l'exécution :
 postgresql-9.1
 postgresql
[ Rootkit Hunter version 1.4.0 ]
File updated: searched for 169 files, found 136
E: Sub-process /usr/bin/dpkg returned an error code (1)

当我检查日志文件时它只说

2014-12-28 14:05:24 CET FATAL:无法下载 cl 文件? priv?e << server.key >> : 密钥值不匹配

(无法加载私钥文件<<server.key>>:密钥值不匹配

我尝试完全卸载并重新安装,但仍然不起作用。有什么帮助吗?

答案1

我也遇到了这个问题。我通过执行以下操作解决了此问题:

cd /var/lib/postgresql/9.1/main #Change 9.1 to your version

删除旧证书的符号链接

sudo rm server.* 

然后重新生成证书

openssl genrsa -des3 -out server.key 2048
openssl rsa -in server.key -out server.key.insecure
mv server.key server.key.secure
mv server.key.insecure server.key

openssl req -new -key server.key -out server.csr
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

然后设置权限

chown postgres.postgres server.*
chmod 640 server.*

希望这可以帮助

答案2

ssl_cert_file如果您指向证书,则会出现相同的错误消息,而不只是单一的证书。

答案3

我今天也遇到了这个问题,这个问题是由于引用的证书和私钥文件不属于彼此(复制粘贴错误)造成的。

用匹配的对替换证书+密钥文件也解决了这个问题。

答案4

当我尝试按照以下步骤使用我们自己的 CA 创建自签名证书时,我遇到了类似的问题:

  • openssl genpkey -out test.key -algorithm RSA -pkeyopt rsa_keygen_bits:2048 - 步骤1
  • openssl req -new -nodes -key test.key -out test.csr -subj /CN=* - 步骤2
  • openssl x509 -req -in test.csr -CA cm-ca.pem -CAkey cm-ca.key -CAcreateserial -out test.pem -days 365 -sha256 - Step3 当我在 pod 中安装 CA Key 而不是使用从步骤 1 生成的密钥时,我遇到了此错误。确保您使用的是正确的证书+密钥组合。

相关内容