文章主要介绍了zabbix的psk加密结合zabbix_get取值,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

Zabbix版本从3.0之后,开始支持Zabbix server, Zabbix proxy, Zabbix agent, zabbix_sender and zabbix_get之间的通信加密,加密方式有预共享密钥(PSK)和证书加密,加密配置是可选项,一些proxies和agents可以使用证书认证加密通信,另外一些可以使用PSK加密通信,而剩余的可以不使用加密进行通信,需要注意的是如果希望使用加密通信,编译的时候必须加入 –with-openssl参数。

1.生成并添加PSK共享密钥

  使用命令openssl rand -hex 32生产一串密钥,配置步骤如下:

[root@zabbix scripts]# openssl rand -hex 32
ef52cbe2d1a35e6bb3c43b22bd4f1a1d7bf24d1ccb7c47f6a602425970da5432
# 将生成的密钥写入该文件
vim /data/zabbix/etc/psk/zabbix.psk
vim /data/zabbix/etc/zabbix_agentd.conf
#加入
TLSConnect=psk
TLSAccept=psk
TLSPSKFile=/data/zabbix/etc/psk/zabbix.psk
TLSPSKIdentity=PSK ID 
#配置完成后重启zabbix_agent进程

2. 在zabbix web gui中添加

3.测试命令

zabbix_get -s 127.0.0.1 -k "system.CPU.load[all,avg1]" --tls-connect=psk --tls-psk-identity="PSK ID" --tls-psk-file=/data/zabbix/etc/psk/zabbix.psk
[root@10.28.233.188 ~]$/data/zabbix/bin/zabbix_get -s 10.81.47.129 -p 9528 -k "tps" --tls-connect psk --tls-psk-identity="LianYu" --tls-psk-file /data/zabbix/etc/psk/zabbix.psk 
452.05

4..zabbix_get用法

# 只能在zabbix server端使用此命令
 
    zabbix_get -s host-name-or-IP [ -p port-number ] [ -I IP-address ] -k item-key 
    zabbix_get -s host-name-or-IP [ -p port-number ] [ -I IP -address ] --tls-connect cert --tls-ca-file CA-file [ --tls-crl-file CRL-file ] [ --tls-agent-cert-issuer cert-issuer ] [ --tls- agent-cert-subject cert-subject ] --tls-cert-file cert-file --tls-key-file key-file -k item-key 
    zabbix_get -s host-name-or-IP [ -p port-number ] [ -I IP-address ] --tls-connect psk --tls-psk-identity PSK-identity --tls-psk-file PSK-file -k item-key 
    zabbix_get -h 
    zabbix_get -V 
  
  OPTIONS
 
    -s, - host host-name-or-IP
      指定主机的主机名或IP地址。
    -p, - port port-number
      指定主机上运行的代理的端口号。默认值为10050。
    -I, - source-address IP-address
      指定源IP地址。
    -k,--key 项键
      指定要检索值的项的键。
    --tls-connect 值
    如何连接到代理。价值观:
          加密方式
             无加密连接(默认)
 
          PSK
          使用TLS和预共享密钥进行连接
          cert
          使用TLS和证书连接
    --tls-ca-file CA文件
    包含用于对等证书验证的顶级CA(s)证书的文件的完整路径名。
    --tls-crl-file CRL文件
    包含已吊销证书的文件的完整路径名。
    --tls-agent-cert-issuer颁发者 证书
    允许的代理证书颁发者。
    --tls-agent-cert-subject cert-subject
    允许的代理证书主题。
    --tls-cert-file 证书文件
    包含证书或证书链的文件的完整路径名。
    --tls-key-file 密钥文件
    包含私钥的文件的完整路径名。
    --tls-psk-identity PSK-identity
    PSK身份字符串。
    --tls-psk-file PSK文件
    包含预共享密钥的文件的完整路径名。
    -h, - help
    显示此帮助并退出。
    -V, - version
    输出版本信息并退出。

示例:

1 zabbix_get -s 127.0.0.1 -p 10050 -k“system.cpu.load [all,avg1]” 
2 zabbix_get -s 127.0.0.1 -p 10050 -k“system.cpu.load [all,avg1]” - tls- connect cert --tls-ca-file / home / zabbix / zabbix_ca_file --tls-agent-cert-issuer“CN =签名CA,OU = IT操作,O =示例公司,DC =示例,DC = com” - tls-agent-cert-subject“CN = server1,OU = IT operations,O = Example Corp,DC = example,DC = com”--tls-cert-file /home/zabbix/zabbix_get.crt --tls-key -file /home/zabbix/zabbix_get.key 
3 zabbix_get -s 127.0.0.1 -p 10050 -k“system.cpu.load [all,avg1]” - tls-connect psk --tls-psk-identity“PSK ID Zabbix agentd“--tls-psk-file /home/zabbix/zabbix_agentd.psk

总结

以上所述是小编给大家介绍的zabbix的psk加密结合zabbix_get取值,希望对大家有所帮助,