一、生成证书
本文基于该文章生成证书等相关文件(CA(自签)、server、client):https://www.cnblogs.com/xiao987334176/p/11041241.html(备用:https://blog.csdn.net/HD243608836/article/details/113621373)
二、客户端配置
注意:windows与linux的curl命令行参数相同,改一下路径即可
1. windows需要重新安装curl(版本7.75.0),自带的curl无效:
(说明:务必重新安装curl,windows自带的curl的安全认证机制不同于通用版的curl,windows版本的curl依靠WinSSL / WinTLS (也就是微软的 Secure Channel,见 https://msdn.microsoft.com/en-us/library/aa380123.aspx )来提供 https 支持,而Linux版本的curl依靠的是openssl 的版本,两者表现并不一致。)
2. 将三个文件放入客户端的同一个文件夹中(例如:c:\t\)
ca.crt 、client.crt 、client.key
三、客户端验证
1. 上传文件(cmd命令):
curl --cacert c:\t\ca.crt --key c:\t\client.key --cert c:\t\client.crt -F file=@abcd.csv https://a.abc.com/api/uploadFile
备注:如果有问题,可以增加“ curl -v -i ” 查看详细信息便于调试
curl -v -i