FreeBSD wget无法验证由Lets Encrypt颁发的证书
时间:2020-01-09 10:38:42 来源:igfitidea点击:
在FreeBSD上每当我使用wget命令从Internet下载内容时,都会显示:
ERROR: cannot verify download.freebsd.orgs certificate, issued by CN=Let\s Encrypt Authority X3,O=Let\s Encrypt,C=US:
如何在FreeBSD 12上解决此问题?
说明:wget的默认设置是根据公认的证书颁发机构验证服务器证书。
此错误表明wget无法在本地找到根证书。
您必须在FreeBSD服务器上安装根证书。
没有根证书,所有命令和软件(例如Firefox)都将失败。
FreeBSD带有ca_root_nss软件包。
它包括来自Mozilla Project的根证书捆绑包。
您所要做的就是安装ca_root_nss软件包来摆脱此问题。
如何查找有关ca_root_nss软件包的信息
与grep命令一起运行以下pkg命令以进行搜索:
# pkg search ca | grep root
输出示例:
R-cran-urca-1.3.0_2 Unit root and cointegration tests for time series data ca_root_nss-3.41 Root certificate bundle from the Mozilla Project p5-CACertOrg-CA-20110724.005 CACert.org CA root certificate in PEM format
因此,如果运行wget,则可能会收到如下错误:
$ wget https://download.freebsd.org/ftp/releases/amd64/12.0-RELEASE/base.txz
错误:无法验证由CN = Let \ s加密机构X3颁发的download.freebsd.orgs证书,O = Let \ s加密,C = US :
FreeBSD wget无法验证证书颁发机构
现在我们知道了包名。
让我们安装它:
# pkg install ca_root_nss
安装ca_root_nss软件包以从FreeBSD上的Mozilla项目获取根证书捆绑包
捆绑在FreeBSD上的/etc/ssl和/usr/local/openssl /目录中的CA根证书。
测试一下
再次运行wget命令,它应该可以正常工作:
$ wget https://download.freebsd.org/ftp/releases/amd64/12.0-RELEASE/base.txz
输出示例:
--2016-12-17 15:32:38-- https://download.freebsd.org/ftp/releases/amd64/12.0-RELEASE/base.txz Resolving download.freebsd.org (download.freebsd.org)... 149.20.1.200, 2001:4f8:1:11::15:0 Connecting to download.freebsd.org (download.freebsd.org)|149.20.1.200|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 154325028 (147M) [application/octet-stream] Saving to: 'base.txz' base.txz 100%[=====================================>] 147.18M 46.5MB/s in 3.8s 2016-12-17 15:32:42 (38.6 MB/s) - 'base.txz' saved [154325028/154325028]
关于免签证明的说明
如果您无法安装ca_root_nss软件包,请将--no-check-certificate
传递给wget命令。
这意味着wget不会对照可用的证书颁发机构检查服务器证书。
而且wget不需要URL主机名来匹配证书提供的公用名:
$ wget --no-check-certificate https://url $ wget --no-check-certificate https://www.theitroad.local/