![]() |
1
1
有两点。 在这种情况下(通过证书进行客户端身份验证),服务器要么维护它信任的证书列表,要么维护对这些证书进行签名的CAs。服务器将检查所提供的证书是否属于这两种情况之一。 对于所提供的证书,任何人都不能提供任何证书,因为TLS交换将要求客户端使用相关的私钥进行操作,因此服务器将能够验证客户端是否确实拥有所提供的公共证书的相关私钥。 这一点在以下网站上有很好的解释: https://en.wikipedia.org/wiki/Transport_Layer_Security#Client-authenticated_TLS_handshake 我总结如下:
当然,只有在过滤最终客户机证书时,这一切才起作用:如果您允许其中任何一个证书,任何人都可以创建一个具有任何身份的证书。 |
![]() |
2
0
配置Apache以允许相互身份验证非常简单 http://httpd.apache.org 非常清楚。基本上,您需要两个证书:服务器一个安装在Apache服务器上,然后客户端一个安装在Firefox浏览器或客户端应用程序或其他设备上。客户端证书必须由Apache服务器知道的CA之一颁发,才能成功进行身份验证。 本项目 https://github.com/amusarra/docker-apache-ssl-tls-mutual-authentication 实现Apache SSL/TLS相互身份验证的完整配置 |