web-dev-qa-db-ja.com

ZabbixサーバーのSELinuxポリシー

ZabbixサーバーをRHEL7ボックスで実行していますが、(同じボックスで)Webフロントエンドを使用すると、Zabbixサーバーが実行されていないと表示されます。

SELinuxを無効にして他に何も変更しない場合、WebフロントエンドはZabbixサーバーが正常に実行されていることを示します。

Zabbixをどのように通過させることができるかについてのアイデアはありますか?私はすでにポート10050と10051をFirewallDに追加しましたが、SELinuxでは「2秒」でそれらを追加できません。

2
Nathan L.

私はついにそれを理解しました。 Zabbixサーバーには、httpdがポート10051と通信できるようにするSELinuxブールがあります。これを設定するには、Sudo setsebool httpd_can_connect_zabbix 1コマンドを発行します。

これにより、SELinuxを無効にすることなく、Zabbixサーバーが有効になっているかどうかをWebインターフェイスで表示できます。

1
Nathan L.

SELinuxルールを更新する方法、およびサーバーの再起動時に設定を保持する方法について適切なアドバイスを提供する回答はありませんでした。そのためには、次のようにします。

#setsebool -P httpd_can_network_connect on 
#setsebool -P httpd_can_network_connect = true 

これはRHEL7で行われました。

1
Paul Roesler
  1. SELinux

https://www.zabbix.com/forum/showthread.php?t=47375&highlight=selinux 無効にしました-OK

  1. ファイアウォール

ファイアウォールもオフにしてみてください

  1. PHPフロントエンド/ zabbixサーバー構成

一般的な問題は、zabbix_serverがlocalhostではなくIPでのみリッスンしている場合(netstat -tanp | grep:10051)ですが、フロントエンドがlocalhost:10051用に構成され、フロントエンド/ zabbixサーバーを適切にテストおよび構成します

# grep ZBX_SERVER /etc/zabbix/web/zabbix.conf.php
$ZBX_SERVER = 'localhost';
$ZBX_SERVER_PORT = '10051';

# telnet localhost 10051
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused

サーバーがすべてのインターフェース(localhostを含む)でリッスンしている場合、フロントエンド構成でlocalhostも使用できます。

# netstat -tanp | grep :10051 | grep LISTEN
tcp        0      0 0.0.0.0:10051           0.0.0.0:*               LISTEN      825/zabbix_server
tcp6       0      0 :::10051                :::*                    LISTEN      825/zabbix_server
0
Jan Garaj