我被要求执行“配置 SSL 相互(双向)身份验证”,但我不知道从哪里开始或如何测试它。
服务器和许多客户端。仅当他们拥有来自服务器的签名证书时,他们才能访问服务器上的代码。服务器可以生成这些证书并禁用它们
这里一个教程,但我很害怕失去与我正在处理的服务器的连接,因为如果我重新生成新密钥,它是主服务器。
我必须是 root 用户吗?
这有什么bash吗?
任何信息,将不胜感激 。
答案1
标准/普通 HTTPS 使您能够从公共受信任的根 CA 建立服务器的身份,在浏览器中导入客户端的 SSL 证书(标记为启用身份验证)是您使用 SSL 证书执行客户端身份验证的方式。最终结果是客户端浏览器通过 HTTPS 对服务器进行身份验证,服务器通过客户端的身份验证证书对客户端进行身份验证。
本教程描述了配置 apache 进行客户端 ssl 身份验证/验证的过程,这是该过程中唯一不常见的部分。它只是添加到虚拟主机配置中的一组 3 或 4 个指令。
作为示例(从跳转中窃取),您可以在<VirtualHost>
配置中包含以下内容:
<Location /cert>
SSLRequireSSL
SSLVerifyClient require
SSLVerifyDepth 10
</Location>
这迫使 apache 要求对下面的所有 URL 进行 SSL 身份验证/cert
(在本例中可以追溯到十个签名 CA)。然后您可以使用SSLCA证书文件在 Vhost 配置中更改您接受签名的 CA。