pkcs11_lib — NSS 初始化失败(数据库不好?)

pkcs11_lib — NSS 初始化失败(数据库不好?)

无论出于什么原因,我都无法让 PKCS#11 和 PAM 正常工作国家安全局已停止工作并且我无法创建新的数据库。

以下是 PKCS11 和 NSS 的输出:

DEBUG:pkcs11_lib.c:187: Initializing NSS ...
DEBUG:pkcs11_lib.c:197: Initializing NSS ... database=/etc/pam_pkcs11/nssdb
DEBUG:pkcs11_lib.c:206: NSS_Initialize failed: (null)
ERROR:pam_pkcs11.c:250: Failed to initialize crypto

在检查了所有配置和操作方法后,我用 Google 搜索并发现了以下内容:certutil:功能失败:安全库:数据库错误

这让我想起我可能从未创建过新的 nss 数据库。(但是我认为这会自动完成?)

但是当我尝试创建一个新的数据库时,我得到以下信息:

# certutil -d /etc/pam_pkcs11/nssdb -N
certutil: function failed: SEC_ERROR_LEGACY_DATABASE: The certificate/key database is in an old, unsupported format.

因此我进行了一些挖掘并尝试:

# certutil -d sql:/etc/pam_pkcs11/nssdb -N
certutil: function failed: SEC_ERROR_BAD_DATABASE: security library: bad database.

系统:Fedora 21(这是最新的版本)
国家安全局:nss-工具-3.20.1-1.0 + nss-3.20.1-1.0
聚丙烯酰胺:pam_pkcs11-0.6.8-6
OpenSC:opensc-0.14.0-2
OpenSSL:openssl-1.0.1k-12
SQLite:sqlite-3.8.11.1-1

答案1

我可能应该回家吃点东西或做点别的事。

忘记创建文件夹nssdb(是的,它是一个文件夹而不是文件......在我调试期间,谷歌提出的每个论坛中都明确说明了这一点)。

我应该知道这一点。

# mkdir -p /etc/pam_pkcs11/nssdb
# chmod 700 /etc/pam_pkcs11/nssdb
# certutil -d /etc/pam_pkcs11/nssdb -N

还请注意,当使用 NSS 与 PAM 时,尤其是在较旧的系统上。
绝不使用sql:样式 nss 数据库。

相关内容