前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Zabbix6.0 LTS 预共享密钥PSK通信加密(六)

Zabbix6.0 LTS 预共享密钥PSK通信加密(六)

作者头像
Kevin song
发布2022-04-15 09:15:19
1.6K0
发布2022-04-15 09:15:19
举报
文章被收录于专栏:运维监控日志分析

概述

Zabbix 中的每个预共享密钥(PSK)实际上是一对:

  • 非秘密 PSK 身份字符串
  • 秘密 PSK 字符串值

PSK 标识字符串是一个非空的 UTF-8 字符串。例如,"PSKProxy01"。它是 Zabbix 组件引用此特定 PSK 的唯一名称。PSK 身份字符串在网络上以明文方式传输避免写入敏感信息。

PSK 字符串值是复杂的十六进制数字字符,例如"04e82108ecd1f7ac2c5328962484484c36a16f6087bb5214f28e13bff94c59ec"。

在 Zabbix Server 使用 PSK 连接到Proxy之前,Server会在数据库中查找为该Proxy配置的 PSK 身份和 PSK 值(实际上是在配置缓存中)。收到连接后,Proxy会使用其配置文件中的 PSK 标识和 PSK 值。如果双方具有相同的 PSK 标识字符串和 PSK 值,则连接可能成功。

每个 PSK 标识只能与一个PSK字符串值配对。需要确保不存在具有相同标识字符串但值不同的两个 PSK。不遵守规则可能会导致使用带有此 PSK 标识字符串的 PSK 的 Zabbix 组件之间的通信发生不可预测的中断。

PSK字符串2种生成方式

  • 使用OpenSSL
代码语言:javascript
复制
ubuntu@node01:/opt$ openssl rand -hex 32 
04e82108ecd1f7ac2c5328962484484c36a16f6087bb5214f28e13bff94c59ec
  • 使用GnuTLS
代码语言:javascript
复制
ubuntu@node01:/opt$ sudo psktool -u psk_identity -p database.psk -s 32
Generating a random key for user 'psk_identity'
Key stored to database.psk

查看psktool生成的psk 文件

代码语言:javascript
复制
ubuntu@node01:/opt$ sudo cat database.psk 
psk_identity:23a80711aceb463a9e4fc97a226cf2dba5af12b916ac20cfd050fb8bb29aaa17

注意:使用 psktool 生成一个带有 PSK 标识及其关联 PSK 的数据库文件。Zabbix只需要PSK文件中的PSK,因此应该从文件中删除"psk_identity:"。

Zabbix Server==Zabbix Proxy PSK通信加密

1,使用OpenSSL生成PSK值

代码语言:javascript
复制
ubuntu@zabbix-proxy01:/etc/zabbix$ pwd
/etc/zabbix
ubuntu@zabbix-proxy01:/etc/zabbix$ openssl rand -hex 32
8e8fa61998bb6bd955c6dec12bfb2dec87fca842720edf6634116b5b0f4996f6

2,PSK值写入到文件中

代码语言:javascript
复制
ubuntu@zabbix-proxy01:/etc/zabbix$ sudo echo '8e8fa61998bb6bd955c6dec12bfb2dec87fca842720edf6634116b5b0f4996f6' >zabbix_proxy01.psk

3,设置 PSK 文件的访问权限 - Zabbix 用户读取

代码语言:javascript
复制
ubuntu@zabbix-proxy01:/etc/zabbix$ chown zabbix.zabbix zabbix_proxy01.psk
ubuntu@zabbix-proxy01:/etc/zabbix$ sudo chmod 600 zabbix_proxy01.psk
ubuntu@zabbix-proxy01:/etc/zabbix$ ll zabbix_proxy01.psk
-rw------- 1 zabbix zabbix 65 Mar 18 03:41 zabbix_proxy01.psk

4,Zabbix Proxy配置文件zabbix_proxy.conf中编辑TLS参数

代码语言:javascript
复制
[root@zabbix-proxy ~]# vim /etc/zabbix/zabbix_proxy.conf
TLSConnect=psk # 加密链接方式
TLSAccept=psk # 接受psk的请求
TLSPSKIdentity=PSKProxy01 # 身份认证名
TLSPSKFile=/etc/zabbix/zabbix_proxy01.psk # psk加密文件位置

Zabbix Proxy将使用 PSK 连接到Zabbix Server。PSK 标识将是“PSKProxy01”。

5,在 Zabbix 前端为此Proxy配置 PSK。转到管理→Proxies,选择Proxy,转到"加密"选项卡。在"来自Proxy的连接"标记PSK中。将"PSK 身份"字段"PSKProxy01"和"PSK字符串"粘贴到"PSK"字段中。点击"更新"。

6,重新启动Zabbix Proxy。将开始使用基于 PSK 的加密连接到Zabbix Server。检查服务器和代理日志文件中的错误消息。

对于Proxy被动模式,过程相似。唯一的区别 TLSAccept=psk在代理配置文件中设置并将 Zabbix 前端中的"连接到Proxy"设置为PSK。

官方文档

https://www.zabbix.com/documentation/6.0/en/manual/encryption/using_pre_shared_keys

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-03-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 开源搬运工宋师傅 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档