配置客户端证书身份认证(mTLS).note

1、配置 客户端证书身份认证:
与Windows不同,Linux的证书不需要有 服务器身份认证、客户端身份认证字段,只需要CA能够信任即可,可以不需要有DNS字段,CN字段也无需与客户端匹配,只要是张证书就行
(1)haproxy配置:
vim /etc/haproxy/haproxy.cfg
# 参数解释:
ca-file [file] //指定ca根证书文件(如果客户端证书是由子CA签发,则该文件需要包含根CA的证书和子CA的证书)
verify required //要求客户端必须提供有效证书(否则不允许访问443端口)(2)将Web证书导出为 pkcs12格式文件:
# openssl pkcs12 -export -out [转换后的pkcs12文件名] -in [要被转换的证书文件] -inkey [要被转换证书的私钥] -certfile [ca根证书]
openssl pkcs12 -export -out client.p12 -in skill39.crt -inkey skill39.key -certfile ca.crt将它拷贝给客户端
(3)客户端导入pkcs12格式证书:
cp client.p12 /home/user
chmod 755 /home/user/client.p12打开火狐浏览器导入证书:



输入前面生成时输入的密码:


·客户端测试访问:
可以看到弹出了证书选择页面,点击OK

访问成功:

如果没有证书,或者取消选择证书就会报错:
