Zabbix 3.4でのSELinux設定について
--------------
問い合わせ内容
--------------
いつもお世話になっております。
下記URLにてSELinuxを有効し、ポリシー設定を
「SELinuxを利用する場合」の箇所から設定しようと実行中ですが、
「vi /var/log/audit/audit.log」にて
・type=AVC msg=audit(1461052103.437:366): avc: denied { read } for pid=2057 comm="zabbix_agentd" name="messages"
dev="dm-0" ino=319455 scontext=system_u:system_r:zabbix_agent_t:s0 tcontext=system_u:object_r:var_log_t:s0 tclass=file
・type=AVC msg=audit(1461052723.005:364): avc: denied { open } for pid=2087 comm="zabbix_agentd" path="/var
/log/messages" dev="dm-0" ino=319455 scontext=system_u:system_r:zabbix_agent_t:s0 tcontext=system_u:object_r:var_log_t:s0 tclass=file
を追記するべきか、
「selinux-syslogread」コマンドが急にでできてログを切り出しますとありますが、
Zabbixサーバ構築初心者の為、どのような指示かわからない状況です。
お手数ですが、設定方法についてご存知でしたら
ご教示いただけないでしょうか
------------
Zabix Server
------------
cat /etc/redhat-release
OS:CentOS Linux release 7.5.1804 (Core)
# zabbix_agentd -V
zabbix_agentd (daemon) (Zabbix) 3.4.11
----------------------
設定参考サイト
----------------------
https://qiita.com/atanaka7/items/9c8736553262f64c03f6#selinux%E3%82%92%E...
TNK - 投稿数: 4769
selinux-syslogreadというのは、私が何のファイルかを忘れないよ
うにつけたファイル名ですので、コマンドでもなんでもありません。
参考された記事に記載してある内容が記載された単なるテキストフ
ァイルです。
SELinuxによって制限されたというログから、解除したい制限に関
する部分を切り出してモジュールを作成してください。
masak - 投稿数: 20
Zabbixの設定というよりSELinuxの設定ですね。
①設定参考サイトの解説になりますが、まず、設定したい権限のログ「selinux-syslogread」というファイル名で切り出します。
※切り出す理由はコマンドで自動的にポリシーを作る手順なので余計なポリシーが生成されないようにするためです。
今回の設定だと、記載いただいているログを切り出します。
・type=AVC msg=audit(1461052103.437:366): avc: denied { read } for pid=2057 comm="zabbix_agentd" name="messages"
dev="dm-0" ino=319455 scontext=system_u:system_r:zabbix_agent_t:s0 tcontext=system_u:object_r:var_log_t:s0 tclass=file
・type=AVC msg=audit(1461052723.005:364): avc: denied { open } for pid=2087 comm="zabbix_agentd" path="/var
/log/messages" dev="dm-0" ino=319455 scontext=system_u:system_r:zabbix_agent_t:s0 tcontext=system_u:object_r:var_log_t:s0 tclass=file
②次に切り出したログのファイル「selinux-syslogread」を「audit2allow 」コマンドへ渡してポリシーファイルを生成します。
cat selinux-syslogread | audit2allow -M syslog-read
③すると、ポリシーファイル「syslog-read.te」と「syslog-read.pp」が生成されます。
④最後に、ポリシーを読み込ませて完了です。
semodule -i syslog-read.pp
samlele - 投稿数: 19
TNKさん、masakさん
ご回答ありがとうございます。
SELinuxの設定については承知しました。
ですが、現在管理しているZabbixサーバの「var/log/audit/audit.log」の中身を見ても
下記ログが存在しないので、これらを追記するのかどうか伺いたいです。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
・type=AVC msg=audit(1461052103.437:366): avc: denied { read } for pid=2057 comm="zabbix_agentd" name="messages"
dev="dm-0" ino=319455 scontext=system_u:system_r:zabbix_agent_t:s0 tcontext=system_u:object_r:var_log_t:s0 tclass=file
・type=AVC msg=audit(1461052723.005:364): avc: denied { open } for pid=2087 comm="zabbix_agentd" path="/var
/log/messages" dev="dm-0" ino=319455 scontext=system_u:system_r:zabbix_agent_t:s0 tcontext=system_u:object_r:var_log_t:s0 tclass=file
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
・type=AVC msg=audit(xxxxxx): avc: denied { open } ほにゃららはあるのですがPid=xxxxが一致しません、
また
・type=AVC msg=audit(1xxxxxx):): avc: denied { read } については、存在すらしていません。
恐らくより詳細を投稿するべきとご指摘があると思いますが、それすらどうしたらよいかわからない初心者です。
どうすればよいかご教授いただけませんでしょか?
TNK - 投稿数: 4769
私が記載したのは一例です。
pidは、プロセスIDですので、OS上で起動しているプロセスやOSを
起動してからどのタイミングで起動するかによって数字は異なりま
す。
ポリシーの作成にpidの値自体は関係ありません。
私が記載したログでもご自身が確認したログでもどちらでも構いま
せん。
openしかなくreadがないのは、openの制限で止まっていて、readの
処理に行く前で制限されて止まっているのでしょう。
openのみの制限解除だけをしてみて頂ければわかりますが、次は
readの制限にひっかかると思います。
ですので、複数のレベルの制限解除が必要な場合は、サービスを起
動して失敗のログを確認し、失敗のログからポリシーを追加という
ステップを複数回繰り返して正常に機能するようなポリシー設定が
完了するのでご注意ください。