LoginSignup
1

More than 5 years have passed since last update.

Zabbix 3.2でServer <=> Agentを暗号化する 

Last updated at Posted at 2016-10-24

ZabbixのAgent <=> Server通信で、インターネット越しの場合も監視内容がもれないように暗号化します。
今回はPSK(pre-shared keys)を利用して暗号化します。

環境

  • OS X EI Captian (10.11.6)
  • Zabbix 3.2.1

Macへのインストールは以下で行っている。なお、TLSをONにするために、configure時に --with-gnutls を忘れないようにする。

鍵の作成

GnuTLSで鍵を作成します。GnuTLSをインストールしていない場合は、 brew install gnutls であらかじめいれておきます。

$ cd /var/tmp
$ psktool -u zabbix_agent -p database.psk -s 32

Generating a random key for user 'zabbix_agent'
Key stored to database.psk

するとdatabase.pskに鍵があるのでcatなどで確認します。

zabbix_agent:a3107a610fb59c4a67d1ec8a836f8cca47dacabf8b85deb57a980184e04a67e7

Agentの設定更新

/usr/local/etc/zabbix/zabbix_agentd.psk に先程の鍵をいれます。ただしユーザ名は必要ないので、鍵の部分だけ格納します。

echo "a3107a610fb59c4a67d1ec8a836f8cca47dacabf8b85deb57a980184e04a67e7" > /usr/local/etc/zabbix/zabbix_agentd.psk

PSKを使い通信するように、設定ファイル /usr/local/etc/zabbix_agentd.conf を更新します。

TLSConnect=psk
TLSAccept=psk
TLSPSKIdentity=zabbix_agent
TLSPSKFile=/usr/local/etc/zabbix/zabbix_agentd.psk

Serverの設定更新

Web UI上から以下のように設定します。

image

すべて設定が終わったら、AgentとServerを再起動します。

トラブルシューティング

正しく設定できない場合は、ログをみて、TLSが有効になっているか確認してください。
ログで以下のように TLS support がNOになっていると、TLSサポートされていないので、 --with-gnutls をつけて再度Zabbix自体をインストールしてください。

  6525:20161024:105752.796 ****** Enabled features ******
  6525:20161024:105752.796 SNMP monitoring:           YES
  6525:20161024:105752.796 IPMI monitoring:            NO
  6525:20161024:105752.796 Web monitoring:            YES
  6525:20161024:105752.796 VMware monitoring:          NO
  6525:20161024:105752.796 SMTP authentication:       YES
  6525:20161024:105752.796 Jabber notifications:       NO
  6525:20161024:105752.796 Ez Texting notifications:  YES
  6525:20161024:105752.796 ODBC:                       NO
  6525:20161024:105752.796 SSH2 support:               NO
  6525:20161024:105752.796 IPv6 support:               NO
  6525:20161024:105752.796 TLS support:                NO
  6525:20161024:105752.796 ******************************

追記: PSKで暗号化するとzabbix_getがそのままでは使えなくなる

回避するために以下のようにする

zabbix_get -s localhost -k proc.num[ruby,,,td-agent] --tls-connect=psk --tls-psk-identity=zabbix_agent --tls-psk-file=/usr/local/etc/zabbix/zabbix_agentd.psk

参考

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1