1

我喜欢将数据从多个来源传输到一个目标收集服务器,但我不确定如何同时确保:

  1. 数据已加密,即无需信任网络
  2. 数据已签名,即目标可以信任源
  3. 没有来源与其他来源共享凭据

但是,在network插件中,到目前为止,我只找到了值signencryptfor SecurityLevel,但没有找到两者。看来,对于不同的来源,我不能拥有不同的凭据 ( Username+ )。Password也许我只是误解了collectd?

4

1 回答 1

1

有2个问题。

1) 加密与签名

  • SecurityLevel "sign"提供发件人验证。
  • SecurityLevel "encrypt"提供加密和发件人验证。

在私钥/公钥方案中,签名和加密是分开的:您可以在不加密的情况下进行签名,或者在不签名的情况下进行加密。然而,collectd 使用共享密钥方案:加密和签名都保证发送者知道共享密钥:发送者总是得到验证。

2) 多个凭证

您可以为不同的来源拥有不同的凭据。请参阅以下示例配置。

<Plugin "network">
  <Listen "192.168.0.1">
    SecurityLevel "Encrypt"
    AuthFile "/etc/collectd/auth_file"
  </Listen>
</Plugin>

其中/etc/collectd/auth_file包含使用以下格式的凭据。

user1: password1
user2: password2

参考资料:https ://collectd.org/wiki/index.php?title=Networking_introduction

于 2016-09-28T02:48:04.010 回答