如何在Linux系统中移除notrust验证 (linux去掉notrust)

在Linux系统中,notrust是一种用于对证书进行验证的安全措施,它可以帮助我们避免遭受恶意证书的攻击。但是在某些情况下,我们可能需要将notrust验证给移除掉,比如说我们需要使用一些自签名的证书,但notrust会拒绝这些证书。那么,该呢?下面将为大家详细介绍。

1. 修改curl配置文件

curl是一个非常常用的http请求工具,我们可以在它的配置文件中找到notrust验证的选项。我们只需要修改这个选项的值,就可以将notrust验证关闭。

打开终端,输入以下命令查找curl配置文件:

“`

$ locate curlrc

“`

命令会输出所有的curl配置文件路径,一般情况下,我们只需要修改主配置文件/usr/local/etc/curlrc即可。

“`

$ nano /usr/local/etc/curlrc

“`

在配置文件中找到notrust验证的代码段,一般以“–cert-status”或“-k”开头:

“`

# Allow connections to SSL sites without certs (HACKS!)

-k

–no-check-certificate

–cert-status

“`

我们只需要在这个代码段前面添加#,将其注释掉即可:

“`

# Allow connections to SSL sites without certs (HACKS!)

# -k

# –no-check-certificate

# –cert-status

“`

然后按下Ctrl+X,保存修改并退出。

现在我们可以重新使用curl测试自签名证书了:

“`

curl -v –cacert mycert.pem https://example.com

“`

2. 编辑OpenSSL配置文件

除了curl之外,还有一种方法可以将notrust验证禁用,那就是编辑OpenSSL的配置文件。这个方法相对来说比较麻烦,需要对一些系统配置文件进行修改,因此请在修改前备份好文件。

打开终端,输入以下命令查找OpenSSL配置文件:

“`

$ locate openssl.cnf

“`

一般来说,主配置文件的路径是/etc/ssl/openssl.cnf,我们可以将其拷贝到主目录下备份:

“`

$ sudo cp /etc/ssl/openssl.cnf ~/

“`

然后用nano或vim等文本编辑器打开配置文件:

“`

$ nano ~/openssl.cnf

“`

在文本编辑器中,我们可以找到以下代码段:

“`

[system_default_sect]

CertificateChecks = no # Don’t check for ‘trusted’ CA certificates

[CipherString]

DEFAULT = DEFAULT:@SECLEVEL=1

“`

我们只需要将CertificateChecks这一行的值修改为“no”,就可以将notrust验证禁用:

“`

[system_default_sect]

CertificateChecks = no # Don’t check for ‘trusted’ CA certificates

[CipherString]

DEFAULT = DEFAULT:@SECLEVEL=1

“`

然后按下Ctrl+X,保存修改并退出。

现在我们可以重新使用自签名证书了:

“`

openssl s_client -CAfile mycert.pem -connect example.com:443

“`

3. 导入自签名证书

我们还有一种方法可以将notrust验证禁用,那就是手动将自签名证书导入系统的ca-certificates中。

将证书文件复制到系统证书目录:

“`

$ sudo cp mycert.pem /usr/local/share/ca-certificates/

“`

然后更新证书列表:

“`

$ sudo update-ca-certificates

“`

更新成功后,我们就可以重新使用自签名证书了。

以上就是在Linux系统中移除notrust验证的三种方法,可以根据自己的实际情况进行选择。需要注意的是,在移除notrust验证之后,我们就失去了一些安全措施,因此需要加强对证书的管理和检验,以确保系统的安全。


数据运维技术 » 如何在Linux系统中移除notrust验证 (linux去掉notrust)