Zabbix – PSK Encryption Setup

Neste post será apresentado como configurar a criptografia na comunicação agente / servidor no Zabbix.

Devemos utilizar esta feature caso seja algo caso de que é necessário o seu uso , pois segundo o manual do Zabbix uma consulta que em texto plano demora 200ms para ter resposta pode chegar a 1000ms com o uso da criptografia. Isso pode causar timeout em alguns itens e scripts, que devem ser ajustados para evitar problemas.

blog_tls11

1) Habilitando o suporte SSL no servidor e agente 

Instale o openssl no servidor / agente do Zabbix

yum install openssl  openssl-libs openssl-devel 

 

 

1.2 ) Compilando via source para dar suporte SSL

Na linha de compilação foi adicionado –with-openssl

Compilação do Servidor

./configure --enable-server --enable-agent --prefix=/usr/local --sysconfdir=/etc --enable-java  --with-libcurl --with-net-snmp --with-iconv --with-libxml2 --with-mysql --with-openssl

 

Compilação do Agente Linux

./configure --enable-agent --sysconfdir=/etc --with-openssl

 

1.3 ) Agente Windows

Baixe a versão pré-compilada com suporte no site do Zabbix

x86: https://support.zabbix.com/secure/attachment/40104/Zabbix-3.0.1-with-OpenSSL-1.0.2c-x86.zip
x64: https://support.zabbix.com/secure/attachment/40105/Zabbix-3.0.1-with-OpenSSL-1.0.2f-x64.zip

OBS : As versões instaladas via RPM ou DEB já tem suporte.

 

2) Encriptação PSK Chaves Pré-Compartilhadas :

A configuração PSK consiste de uma identidade PSK e chave. A identidade é uma cadeia que não é considerada secreta não é criptografado durante a comunicação, por isso não coloque informação confidencial na cadeia de identidade. A chave é uma cadeia hexadecimal.

Com esta definição  temos um tempo rápido maior se comparado com os certificados digitais , porém o registro da chave podemos ver via interface web logado e diretamente no banco de dados .


O   Zabbix requer a chave que seja pelo menos 32 caracteres. e no  máximo no Zabbix  de 512 caracteres.

 

2.1) Configurando o Agente para PSK :

Crie a chave com o comando abaixo :

 openssl rand -hex 32 > /etc/zabbix/zabbix-agent.psk

Guarde chave criada para configur o host na interface web

Captura de Tela 2016-08-06 às 16.10.25

Adicione as linhas abaixo na configuração do Agent , lembrando que o TLSPSKIdentity é a identificação da chave e será utilizada na interface web.

TLSConnect=psk
TLSAccept=psk
TLSPSKIdentity=PSK01
TLSPSKFile=/etc/zabbix/zabbix-agent.psk

 

Adicione via interface web configurando a aba Encryption :

Captura de Tela 2016-08-06 às 14.05.56

 

2.2) Configuração do PSK :

Captura de Tela 2016-08-06 às 14.08.00

Conforme dito anteriormente, a chave também pode ser vista no banco.

Select utilizado para encontrar o objeto lxczbx-01

select * from hosts where name='lxczbx-01' \G ;

Captura de Tela 2016-08-06 às 15.56.35

Referências
https://www.zabbix.com/documentation/3.0/manual/encryption/using_pre_shared_keys