我负责维护两台 Debian 服务器。每次我必须对安全证书做任何事情时,我都会谷歌搜索教程并击败它,直到它最终起作用。
然而,在我的搜索中,我经常遇到不同的文件格式(.key, .csr, .pem),但我从来没有找到对每种文件格式的用途的很好的解释。
我想知道 ServerFault 的好人是否可以就此问题提供一些说明?
有人告诉我,可以制作不需要登录的 Web 应用程序。用户登录到 Windows,它通过 Active Directory (LDAP) 查找进行身份验证。然后,他们应该能够访问我的 web 应用程序并且永远不会看到登录提示。这些客户一直将其称为单点登录(可能是错误的,也是我困惑的一部分)。
但是,从我从 Tomcat 文档中读到的 Single Sign On 是:
当您希望让用户能够登录到与您的虚拟主机关联的任何一个 Web 应用程序,然后让同一虚拟主机上的所有其他 Web 应用程序识别他们的身份时,可以使用单点登录阀。
这对我来说非常清楚。用户必须登录一次才能访问 tomcat 实例上的每个 web 应用程序。但是,我需要做的是以某种方式让他们登录,而无需向我的 tomcat 服务器提供任何凭据。
所以,为了让它起作用,我想:
我见过一些使用客户端证书的例子......特别是 DoD PKI 系统,这对我来说很有意义,因为在这些情况下你配置 Tomcat 来请求客户端证书,但只是登录到 Windows 我不明白这是怎么回事将工作以及浏览器将传递给服务器的信息等。这是 NTLM 的用途吗?
我正在使用 OpenVPN,虽然我可以使用 easyrsa 生成证书就好了,但我不太了解 easyrsa vars 文件中的设置:
export KEY_COUNTRY=""
export KEY_PROVINCE=""
export KEY_CITY=""
export KEY_ORG
export KEY_EMAIL=""
export KEY_EMAIL=
export KEY_CN=
export KEY_NAME=
export KEY_OU=
export PKCS11_MODULE_PATH=
export PKCS11_PIN=1234
Run Code Online (Sandbox Code Playgroud)
谁能解释一下这些设置?提前致谢。
在配置 PKI 供内部使用时,是否有私有 OID 空间,无需支付和/或注册您自己的 OID 范围即可使用?想想 OID 范围的 RFC1918 地址。
我们将 Cisco 网络设备配置为使用他们的域帐户通过在 Windows 2008R2 服务器上运行的具有网络保护角色的 RADIUS 对网络管理员进行身份验证。这对于在配置设备时通过 SSH 登录交换机非常有用。
我们现在正处于为登录部署智能卡的开始阶段。有谁知道使用智能卡而不是域用户名和密码登录 Cisco 交换机的方法吗?
我们使用的 SSH 客户端是 Putty。工作站是 Windows 7。RADIUS 在 Windows 2008R2 上运行。我们在 Windows 2008 上运行我们自己的证书颁发机构;网络未连接到 Internet。
我们宁愿不必为此功能购买额外的专有设备。
我最近重建了我的 PKI,我想删除颁发给我网络中所有客户端计算机的证书。听起来像是 Powershell 的工作!所以我写了这个脚本由 GPO 分发,从 SysVol 运行,并在启动时在客户端机器上触发:
set-location cert:\LocalMachine\My
$certname = $env:COMPUTERNAME + ".domain.com"
get-item * | %{
if($_.issuer -like "CN=IssuingCA*" -and $_.DnsNameList.unicode -like $certname) { remove-item .\$_.Thumbprint -Force }
}
Run Code Online (Sandbox Code Playgroud)
从提升的命令提示符:
-WhatIf添加到Remove-Item脚本中的命令时,同样没有错误并且证书不会被删除。这是权限问题吗?有没有更聪明/更简单的方法来做到这一点?
谢谢!
我有很多 CSR 需要在 Windows 中签名/颁发和导出。我希望我能以某种方式对它们进行批处理(certutil 听起来它可以完成一些工作),但我不太确定我该如何去做。可行吗?
任何帮助将不胜感激。
我正在为 Intranet 创建一个证书颁发机构。
我已经生成了根和中间 CA,并使用中间 CA 成功签署了服务器证书。服务器证书具有CN=mysite.com.
将来,此服务器证书将过期,我将需要颁发一个新证书。但是,如果我创建另一个相同的 CSR,CN=mysite.com那么当我签署它时,我会得到
failed to update database
TXT_DB error number 2
Run Code Online (Sandbox Code Playgroud)
如果我用不同的 CN 创建一个新的 CSR,这个错误就会消失,但 CN 必须相同,否则浏览器不会说它有效,对吧?
我该如何解决?
编辑:我正在遵循本指南——在链接页面结束之前一切都很好,但是当我尝试重复此页面上的步骤以创建第二个证书时,openssl 要求我为新证书提供不同的 CN。
SUBJ="/C=$C/ST=$ST/L=$L/O=$O/OU=$OU/CN=$CN"
# Generate CSR
echo "$PW" | openssl req \
-config "$CAROOT/intermediate/openssl.cnf" \
-new -sha256 -subj "$SUBJ" -passin stdin \
-key "$PRIV_ENC" -out "$CSR_INT" >/dev/null 2>&1 ||
{
>&2 echo "Could not openssl req";
exit 1;
}
# Sign CSR
openssl ca \
-config "$CAROOT/intermediate/openssl.cnf" …Run Code Online (Sandbox Code Playgroud) certificate openssl pki ssl-certificate certificate-authority
如果我的 Web 服务器(最新的 Apache)具有有效(未过期或撤销)的 Verisign 证书链(根 -> 中间 -> 叶/我的服务器),那么服务器是否将整个(?)链发送给客户端?Web 客户端(例如,最新的 Chrome)是否需要在线查找每个相同的证书,尤其是在客户端已经信任根 CA 的情况下?
如果客户无法联系威瑞信会怎样?(例如,在没有 WiFi 的笔记本电脑上设置 LAMP)。
编辑:我真的很抱歉不得不说这个问题已经神奇地自我修复了,我不知道为什么。作为对其中一个答案的回应,我从 CA 链中删除了所有 EKU,但它不起作用。度假回来后,我一次创建了证书链1,即。RootCA->VPN然后RootCA->IntermediateCA->VPN,最后,RootCA->IntermediateCA->ServerCA->VPN它仍然有效!我不知道它为什么起作用,但我很兴奋。只是为了绝对确定是删除 EKU 解决了这个问题,我回去向链中的 CA 添加了随机 EKU,瞧,它仍然有效......这绝对令人愤怒,我向你道歉所有试图提供帮助的人。我发誓,在我不在的情况下,绝对没有其他任何改变,也没有人碰过任何东西。结束编辑
尝试将 OpenVPN 客户端(Android 或 Windows 7/10)连接到我的测试服务器时,我收到以下错误:
验证错误:深度=1,错误=不支持的证书用途:C=CA、ST=QC、L=Montreal、O=Company Inc、OU=PKI、CN=Server Certificate Authority
我在 OpenBSD 上运行 OpenVPN 2.3.7。我正在使用使用XCA创建的以下 PKI CA 层次结构:
RootCA -> IntermediateCA -> ServerCA
Run Code Online (Sandbox Code Playgroud)
我为我的 VPN 服务器创建了一个由我的 ServerCA 签名的证书。请注意 depth=1。这似乎不是最终 VPN Server 证书的问题。OpenVPN是抱怨发行的VPN服务器证书。甚至错误消息中的 CN 是 ServerCA 的 CN,而不是 vpn 服务器的 CN。
据我所知,除了签署证书之外,链中的 CA 没有任何其他目的。
这是 VPN 服务器的证书配置。请注意,旧的 Netscape 服务器扩展在那里,这是 OpenVPN 所要求的:
nsCertType=server, email
extendedKeyUsage=serverAuth, nsSGC, ipsecEndSystem, iKEIntermediate
keyUsage=digitalSignature, keyEncipherment, dataEncipherment, …Run Code Online (Sandbox Code Playgroud) pki ×10
certificate ×2
openvpn ×2
apache-2.4 ×1
cisco ×1
csr ×1
oid ×1
openssl ×1
powershell ×1
radius ×1
smartcard ×1
ssl ×1
windows ×1