概述
Zabbix版本从3.0之后,开始支持Zabbix server, Zabbix proxy, Zabbix agent, zabbix_sender and zabbix_get之间的通信加密,加密方式有预共享密钥(PSK)和证书加密。加密配置是可选项,一些proxies和agents可以使用证书认证加密通信,另外一些可以使用PSK加密通信,而剩余的可以不使用加密进行通信。 但是并不是所有的通信都进行了加密
PSK是预共享密钥,是用于验证 L2TP/IPSec 连接的 Unicode 字符串。可以配置“路由和远程访问”来验证支持预共享密钥的 VPN 连接。许多操作系统都支持使用预共享密钥,包括 Windows Server 2003 家族和 Windows XP。也可以配置运行 Windows Server 2003 家族版的“路由和远程访问”的服务器,使用预共享密钥验证来自其他路由器的连接。
预共享密钥模式(pre-shared key,PSK, 又称为个人模式)是设计给负担不起 802.1X 验证服务器的成本和复杂度的家庭和小型公司网络用的,每一个使用者必须输入密语来取用网络,而密语可以是 8 到 63 个ASCII字符、或是 64 个16位数字(256位元)。使用者可以自行斟酌要不要把密语存在电脑里以省去重复键入的麻烦,但密语一定要存在 Wi-Fi 取用点里。
编译支持加密功能
要想支持加密功能,我们必须在编译安装的时候把加密库编译进Zabbix里面。
编译的时候加上 --with-openssl或者其他模式(共三种,但是openssl是最快的)
在zabbix-server中安装时
./configure \
--prefix=/usr/local/zabbix \
--sysconfdir=/etc/zabbix \
--enable-server \
--enable-agent \
--with-mysql \
--with-net-snmp \
--with-libcurl \
--with-openssl
使用预共享密钥(PSK)
1、生成psk
输入命令openssl rand -hex 32
a62f2232dd62c4fee6ae5990735662c83634fcda0560a387e6beec658206bf9a
2、配置agent
创建一个文件/home/zabbix/zabbix-server/etc/zabbix_agentd.conf.d/zabbix_agentd.psk,存入刚刚生成的psk。
编辑/etc/zabbix/zabbix_agentd.conf,添加如下内容
TLSConnect=psk
TLSAccept=psk
TLSPSKFile=/home/zabbix/zabbix-server/etc/zabbix_agentd.conf.d/zabbix_agentd.psk
TLSPSKIdentity=PSK 001
然后重启agent,在server上面测试看看加密连接。
./zabbix_get -s 127.0.0.1 -k "system.cpu.load[all,avg1]" --tls-connect=psk --tls-psk-identity="PSK 001"
--tls-psk-file=/home/zabbix/zabbix-server/etc/zabbix_agentd.conf.d/zabbix_agentd.psk
测试下来没有什么问题,那我们就配置WEB页面。
等待一会