Zabbixサーバ6.0.3でのログ監視について

掲題の件ですが、Zabbixのエージェントを使ってUbuntuのシステムの監視をしたいと思っております。
エージェントのインストールを実施して、メモリの監視、CPUの使用率の監視(共にタイプはZabbixエージェント)は出来てトリガーの設定も出来ているのですが
ログの監視(log[/var/log/messages)をしようと思って(タイプはZabbixエージェント(アクティブ))、キーに(log[/var/log/messages,failed,,,,])を設定してみた所
Cannot open file "/var/log/messages": [13] Permission deniedと表示されてしまって、ログの監視が出来ないという状況です。
ls -lにて権限を確認してみた所、以下の様になっていました。

また、zabbix_agentd.logの監視は監視が出来るか確認の為に設定をしてみた所、監視が出来るのを確認しました。

【/var/log/messagesの権限】
-rw-r-----. 1 root root XXXXX 8月 XX HH:MM messages

【/var/log/zabbix/zabbix_agentd.logの権限】
-rw-rw-r--. 1 zabbix zabbix XXXXX 8月 XX HH:MM zabbix_agentd.log

また、zabbix-agentd.confについては、以下の様になっています。
Server=ZabbixサーバのIP
ServerActive=ZabbixサーバのIP
Hostname=Zabbixサーバに登録しているエージェントの名前
AllowRoot=1

すいませんが、何か、知恵をお借りできればと思い、こちらに投稿させて頂きました。

よろしくお願いします。

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー TNK の写真

Zabbixエージェントがrootで起動できていないのではありませんか?
プロセスがrootユーザーで起動されているのかを再度確認してくだ
さい。

マニュアル:
https://www.zabbix.com/documentation/6.0/en/manual/appendix/install/run_...

ただし、Zabbixエージェントをrootで起動することはお勧めしませ
ん。
Zabbixエージェントを経由して、EnableRemoteCommandsを有効にし
ているとさらに、外部から攻撃を受けてしまう危険性があるので、
ログ監視だけであるならば、適切なパーミッションの設定を行って
対応されることをお勧めします。

ユーザー Hiroshi Fujimoto の写真

TNK様

ご回答ありがとうございます。
現在、zabbix-agentd.confの方を確認してみた所、
AllowRoot=1になっている事は確認できましたが、監視が出来ていない様です。

以下の内容で、/etc/systemd/system/zabbix-agent.service.d/override.confを作って

[Service]
User=root
Group=root

以下のコマンドを実行するという事で解決するのではないかという事でしょうか
systemctl daemon-reload
systemctl restart zabbix-agent

それとも、既存のzabbix_agentd.confに
AllowRoot=1は確認出来ているので
User=rootを追記するという事で良かったでしょうか?

ユーザー Hiroshi Fujimoto の写真

TNK様
override.confと
既存のzabbix_agentd.confにUser=rootを追記
をしてみたのですが、やはりダメで

ps aux | grep zabbixをしてみて確認してみた所、
rootではなくzabbixで起動しているようです。

何か対応の方法等ありますでしょうか?

ユーザー TNK の写真

環境を構築して試してみましたが、マニュアルの記載が適切ではな
いようです。

AlmaLinux 8.6とUbuntu 20.04で試してみましたが、

 /etc/systemd/system/zabbix-agent.service.d/override.conf

は削除してください。
/usr/lib/systemd/system/zabbix-agent.service内のUserとGroup
をrootに設定し、zabbix_agentd.confでAllowRootに1を設定後、

 $ sudo systemctl daemon-reload

を実行してからZabbixエージェントのサービスを起動してみてくだ
さい。

ユーザー Hiroshi Fujimoto の写真

TNK様
有難うございます。

確認した結果、記載します。

/etc/systemd/system/zabbix-agent.service.d/override.conf
↑↑↑ここに関しては削除して元々の状態の↓↓↓にしておきました。
/etc/systemd/system/


/usr/lib/systemd/system/zabbix-agent.serviceについては、以下にしました。
User=zabbix
Group=zabbix
↓↓↓
User=root
Group=root


sudo systemctl daemon-reload
↑は問題なく
systemctl restart zabbix-agent.service
を実行すると
Job for zabbix-agent.service failed because a configured resource limit was exceeded. See "systemctl status zabbix-agent.service" and "journalctl -xe" for details.
となってしまいます。
そもそも、Zabbix エージェントが起動してくれなくなってしまいます。
対処の方法があれば、教えて頂ければと思います。

よろしくお願いします。

ユーザー TNK の写真

ログファイルに何か出力されているはずです。
その内容を確認して対処してください。

ユーザー Hiroshi Fujimoto の写真

TNK様
ご回答ありがとうございます。

Zabbix Agentの/var/log/zabbix/zabbix_agentd.logに以下のログが出力されていました。

active check "log[/var/log/messages,warning,,,,]" is not supported: Cannot open file "/var/log/messages": [13] Permission denied

/usr/lib/systemd/system/zabbix-agent.serviceを以前の
User=root
Group=root
↓↓↓↓↓【変更後】↓↓↓↓↓
User=zabbix
Group=zabbix

systemctl daemon-reload
systemctl restart zabbix-agent.service
↑↑↑↑上記コマンドで、問題なく起動したようです。
systemctl status zabbix-agent.serviceのコマンドを実行した所
Active: active (running)と表示されたので、起動しているかと思います。

お手数をお掛けして申し訳ございません。
何か対応の方法があれば、教えて頂ければ。。。

ユーザー TNK の写真

きちんと設定した時刻とログの時刻をきちんと確認してください。
Userをzabbixにしたらzabbixユーザーで起動していませんか?
それでファイルのパーミッションを変更していないなら、そのログ
ファイルは読み込めないままです。

Hiroshi Fujimotoさんご自身で使用されている環境を把握するよう
にしてください。
エラー内容によっては、OS自体のsyslogなど他のログも確認して何
がおきているのかを確認してください。

最後に、最初にも書きましたが、Zabbixエージェントをrootで起動
する運用はお勧めしません。
SELinuxを有効にしているような環境であればなおさら、サービス
をrootユーザーで起動することは、その環境のセキュリティポリシー
として許されないのではありませんか?