有没有一种方法可以通过collectd中的SSL及其网络插件或其他插件将数据发送到服务器?

有没有一种方法可以通过collectd中的SSL及其网络插件或其他插件将数据发送到服务器?,c,ssl,openssl,monitoring,collectd,C,Ssl,Openssl,Monitoring,Collectd,我的动机是通过SSL加密将collectd记录的所有统计数据从客户机发送到服务器 Collectd有一个网络插件,它执行向服务器发送统计信息的功能,我们可以在Collectd.conf文件中为服务器设置配置:- 客户端配置- 安全级别加密 用户名“用户” 密码“秘密” 接口“eth0” 计时生活“128” 正向真实 服务器配置- #服务器设置: 安全级标志 AuthFile“/etc/collectd/passwd” 接口“eth0” 计时生活“128” 正向真实 此配置正在执行将

我的动机是通过SSL加密将collectd记录的所有统计数据从客户机发送到服务器

Collectd有一个网络插件,它执行向服务器发送统计信息的功能,我们可以在Collectd.conf文件中为服务器设置配置:-

客户端配置-


安全级别加密
用户名“用户”
密码“秘密”
接口“eth0”
计时生活“128”
正向真实

服务器配置-

#服务器设置:
安全级标志
AuthFile“/etc/collectd/passwd”
接口“eth0”
计时生活“128”
正向真实

此配置正在执行将数据发送到具有身份验证的服务器的任务

是否有任何方法可以在此配置中添加SSL加密,或者是否有任何其他方法可以将SSL加密添加到collectd


尽管SecurityLevel Encrypt将加密使用AES-256发送的数据。但是,我们如何使用SSL来保护它,并通过添加所需的证书来适应其公钥和私钥的概念。

如果您将侦听器和客户端都设置为使用
SecurityLevel Encrypt
,您将得到主页上所宣传的您想要的:

当安全级别设置为加密时,通过 网络将使用AES-256加密


SSL主要不是关于加密,而是关于身份验证。这是证书私钥/公钥的主要用途

加密部分在第二步协商,并使用标准的共享密钥加密(如AES)

Collectd的网络使用了相同的概念,但使用了登录/密码来处理签名

因此,简短的回答是:不,collectd网络插件目前不处理PKI(/证书)身份验证。它使用自己的登录/密码对签名过程


至于加密,当前的实现虽然不是标准TLS,但大致相同。

Securitylevel Encrypt将只加密发送的数据。但它是如何实现公钥和私钥加密的SSL概念的呢?如果它解决了SSL的目的,那么我可以在哪里添加证书?
<Server "192.168.0.109" "25826">
    SecurityLevel Encrypt
    Username "user"
    Password "secret"
    Interface "eth0"
</Server>
TimeToLive "128"
Forward true
# server setup:
<Listen "*" "25826">
    SecurityLevel Sign
    AuthFile "/etc/collectd/passwd"
    Interface "eth0"
</Listen>
TimeToLive "128"
Forward true