如何将Curl与HTTPS协议和url一起使用?

Curl是一个命令行工具和库,它实现了HTTP、HTTPS、FTP等协议。Curl还支持HTTPS协议,HTTPS协议是HTTP的安全版本。使用curl可能会产生一些问题。我们将研究如何解决这些相关问题。

null

安装卷曲

我们将从安装 curl 使用以下命令的工具。

Ubuntu、Debian、Mint、Kali:

$ sudo apt install curl
Ubuntu, Debian, Mint, Kali:
Ubuntu、Debian、Mint、Kali:

Fedora、CentOS、RHEL:

$ sudo yum install curl

SSL/TLS问题

特别是在自签名或过期的X.509或SSL/TLS证书中,可能会产生问题。错误详细信息被打印到终端。例如,我们将尝试访问https://www.wikipedia.com and 我们会得到这样的错误

curl: (51) SSL: no alternative certificate subject name matches target host name 'www.wikipedia.com'

我们执行以下命令。

$ curl https://www.wikipedia.com
curl SSL/TLS Problems
curl SSL/TLS问题

允许不安全的连接

为了防止此错误并接受不安全的证书,我们需要提供 --insecure 这将接受所有提供的证书,而不会对此提出任何抱怨。

$ curl --insecure https://www.wikipedia.com
Allow Insecure Connections
允许不安全的连接

手动提供站点HTTPS证书

如果我们不想使用网站提供的证书和手动提供网站HTTPS证书,我们可以使用 -E --cert 证书文件的选项。在本例中,我们将使用名为 wk.cert 连接顺序https://www.wikipedia.com.

$ curl -E wk.cert  https://www.wikipedia.com

明确提供证书颁发机构证书

在某些情况下,我们可能需要使用另一个证书链,然后互联网。证书链提供分层证书之间的信任关系,其中叶是我们要导航的站点证书。证书颁发机构是由证书颁发机构提供的顶级证书。我们可以提供另一个证书颁发机构,如我们公司的本地证书颁发机构 --cacert 选项。

$ curl --cacert mycompany.cert  https://www.mycompany.com

相关文章: 如何在Apache和Nginx中将Http重定向到Https

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享