如何用Apache做客户端证书authentication

这个问题很清楚,但是我没有在网上find任何有用的教程。 所以我希望我能在这里有一些运气。

基本上,我想用Apache构build一个客户端证书authentication。 我为我所托pipe的站点configuration了Apache的conf文件。 我把这个conf放在这里:

SSLVerifyClient require SSLVerifyDepth 1 SSLCACertificateFile /etc/apache2/ssl/client.crt 

但是我不知道如何生成客户端的证书和密钥文件。 还有,我应该在Apache服务器configuration中的SSLCACertificateFile文件上添加什么文件?

服务器是否简单地将客户端发送的证书文件与服务器上的证书文件进行比较? 客户端证书authentication究竟在做什么?

您将在这里找到如何创建CA证书和此CA证书所签发的证书的说明: http :

事情是这样的:

  • 你设置你的根CA密钥和证书
  • 客户端生成他的私钥和证书请求
  • 他们向您发送证书请求
  • 您使用证书请求,根CA证书和根CA密钥生成证书
  • 您将证书返回给客户端

然后,您可以检查客户端是否提供由CA“签名”的证书。