这是我如何做到的指南,因此本质上并不是一个问题。
如何在 Ubuntu 23.10 Linux 上使用 CAC 读卡器、CAC 卡和 Google Chrome 浏览器。对我有用。
保持 CAC 读卡器处于断开状态。
以 root 身份安装这些软件包并启用和启动 pcscd 守护进程。
apt 安装 opensc-pkcs11 libpcsclite1 libpcsclite-dev pcscd pcsc-tools sssd libpam-sss libnss3-tools gnutls-bin
systemctl 启用 pcscd
systemctl 启动 pcscd
以下步骤将以标准用户身份而不是 root 身份完成。
使用此命令列出当前可用的模块:
modutil -list -dbdir $HOME/.pki/nssdb/
我的系统有以下情况:
PKCS #11 模块列表
NSS 内部 PKCS #11 模块 uri:pkcs11:library-manufacturer=Mozilla%20Foundation;library-description=NSS%20Internal%20Crypto%20Services;library-version=3.98 插槽:2 个插槽附加状态:已加载
插槽:NSS 内部加密服务令牌:NSS 通用加密服务 uri:pkcs11:token=NSS%20Generic%20Crypto%20Services;制造商=Mozilla%20Foundation;序列号=00000000000000000;型号=NSS%203
插槽:NSS 用户私钥和证书服务令牌:NSS 证书数据库 uri:pkcs11:token=NSS%20Certificate%20DB;制造商=Mozilla%20Foundation;序列号=00000000000000000;型号=NSS%203
您需要添加 CAC 模块以使您的 CAC 阅读器能够运行并且系统能够读取 CAC 卡。
为此,请连接未插入 CAC 卡的 CAC 读卡器(我必须这样做)并运行以下命令来添加模块:
modutil -dbdir sql:.pki/nssdb/ -add "CAC 模块" -libfile /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so
通过再次运行列表命令来验证它是否已正确添加,您应该会看到第二个条目“2。”:
modutil -list -dbdir $HOME/.pki/nssdb/
CAC 模块库名称:/usr/lib/x86_64-linux-gnu/opensc-pkcs11.so uri:pkcs11:library-manufacturer=OpenSC%20Project;library-description=OpenSC%20smartcard%20framework;library-version=0.23 插槽:1 个插槽附加状态:已加载
插槽:Alcor Micro AU9540 00 00 令牌:uri:pkcs11:
从系统中删除 CAC 阅读器并再次运行列表:
modutil -list -dbdir $HOME/.pki/nssdb/
- CAC 模块库名称:/usr/lib/x86_64-linux-gnu/opensc-pkcs11.so uri:pkcs11:library-manufacturer=OpenSC%20Project;library-description=OpenSC%20smartcard%20framework;library-version=0.23 插槽:此模块没有附加插槽状态:已加载
注意插槽:部分显示“插槽:没有插槽连接到此模块”,这是正常的。
如果需要删除 CAC 模块:
modutil -dbdir sql:.pki/nssdb/ -delete "CAC Module"
您可能需要重新启动 pcscd 守护程序:
sudo systemctl restart pcscd
现在连接您的 CAC 读卡器并插入您的 CAC 卡,然后运行以下命令进行测试。您应该会看到密码或 PIN 提示,请输入您的 PIN。
certutil -L -d .pki/nssdb/-h“全部”
证书昵称 我的证书名称
SSL,S/MIME,JAR/XPI
输入“YOUR.NAME.123456789”的密码或 PIN:
YOUR.NAME.123456789:PIV 身份验证证书 u,u,u
YOUR.NAME.123456789:数字签名证书 u,u,u
YOUR.NAME.123456789:密钥管理证书 u,u,u
YOUR.NAME.123456789:卡身份验证证书 u,u,u
如果所有这一切正常,您现在应该能够使用 Google Chrome 和您的 CAC 和 PIN 来授权登录您的网站。