curl(四)证书相关

一  证书相关

①  -k

1、客户端忽略'服务端证书'校验 -k | --insecure  --> '单向'

 [1]、这个选项显式地允许curl '执行不安全' 的'SSL连接和传输'

 [2]、所有SSL连接都试图通过使用'默认安装的CA证书捆绑包'来确保安全

 [3]、这使得所有被认为是'不安全'的连接失败,除非使用'-k'  --> '自签形式'

curl(四)证书相关_第1张图片

场景: 一般不是CA签名的'自签'证书

curl(四)证书相关_第2张图片

②  --cert-type

--cert-type  '证书类型'

  1、告诉curl提供的'证书'是'什么类型'的证书

  2、可以为'PEM'、'DER'和'ENG'是公认的类型

  3、如果'未指定',则'缺省'为'PEM'

  4、如果'多次使用'此选项,将使用'最后一个'选项

curl(四)证书相关_第3张图片

③  --cacert

--cacert  'CA证书'

  1、告诉curl使用'指定的证书文件'来'验证'对方证书

  2、文件可能包含'多个CA证书',证书必须采用'PEM'格式

  3、通常情况下,curl是使用'默认文件'构建的,因此此选项通常用于'更改默认文件'

curl(四)证书相关_第4张图片

④  --capath

--capath  CA证书'路径'

  1、告诉curl使用'指定的证书目录'来验证'对等方'

  2、可以通过使用':冒号'分隔多条路径,例如path1:path2:path3,证书必须是'PEM格式'的

  3、如果curl是基于OpenSSL构建的,那么目录必须使用OpenSSL提供的c_rehash程序进行处理

  备注: 如果--cacert文件包含'许多'CA证书,推荐使用'--capath'取代'--cacert'

  4、如果设置了此选项,将'忽略默认的capath值',如果多次使用,将使用'最后'一个值

curl(四)证书相关_第5张图片

⑤  --cert

--cert | -E '客户端证书'  --> "双向认证 --> 客户端证书校验"

  1、告诉curl在使用HTTPS、FTPS或其他'基于SSL的协议'获取文件时使用'指定的客户端证书文件'

  2、如果使用安全传输,证书必须为'PKCS#12格式',如果使用任何其他引擎,证书必须为'PEM格式'

  3、如果未指定'可选'密码,将在终端上查询该密码

注意: 这个选项假设一个certificate是'私钥和私钥'连接在一起的,参见'--cert'和'--key'

curl(四)证书相关_第6张图片

⑥  --key

--key '私钥'

备注: '私钥文件名',允许在此'单独文件中'提供私钥,如果'多次'使用此选项,将使用'最后'一个选项

curl(四)证书相关_第7张图片

⑦  --ciphers

--ciphers '加密套件' 了解

curl(四)证书相关_第8张图片

nginx常见异常定位

⑧  --pass

1、--pass '私钥的密码'

备注: 私钥的'密码短语',如果'多次使用'此选项,将使用'最后一个'选项

curl(四)证书相关_第9张图片

⑨  TLS版本

1、选项--tlsv1.0,--tlsv1.1并--tlsv1.2 设置curl 将使用的'最低TLS 版本'

2、要指定'最大'使用--tls-max 

curl(四)证书相关_第10张图片

1、-1 '--tlsv1'   --> '7.29.0'版本'有'的参数,后续'没有'了,通过'其它方式'提供

curl(四)证书相关_第11张图片

curl 指定的tls版本

备注: 注意 '高版本' curl '默认'的SSL协议版本,以及'不同ssl协议参数' 哪个版本'引入'的

curl(四)证书相关_第12张图片

curl(四)证书相关_第13张图片

curl(四)证书相关_第14张图片

⑩   简单案例

curl 双向认证

curl -k --cert ./client.crt --key ./client.key  --cacert  ./ca.pem

curl 调用k8s/TKE接口    curl 访问api-server

你可能感兴趣的:(curl,ssl,--tlsv1.2)