harumaki.net

インフラ屋の覚書や、ラーメン食べある記とか。

CentOS GNU/Linux 運用

[CentOS7] user.slice 由来で出力される大量のログを抑制する

投稿日:2017年7月25日

 
社内のバッチ用途で、久々にオンプレのサーバにCentOS7を入れてセットアップをしていたら/var/log/messagesにuser.sliceのメッセージが短時間で大量に出ていた。
ここんとこサーバ使うときもEC2どっぷりなうえ、ElasticBeansTalkにAutoScaling運用に慣れてしまって、サーバを1からちゃんと立ててないからか、こういうの知らなかった…(という言い訳。いかーん汗)

	Jul 25 16:40:01 [localhost] systemd: Created slice User Slice of root.
	Jul 25 16:40:01 [localhost] systemd: Starting User Slice of root.
	Jul 25 16:40:01 [localhost] systemd: Started Session 274 of user root.
	Jul 25 16:40:01 [localhost] systemd: Starting Session 274 of user root.
	Jul 25 16:40:02 [localhost] systemd: Removed slice User Slice of root.
	Jul 25 16:40:02 [localhost] systemd: Stopping User Slice of root.
	Jul 25 16:50:01 [localhost] systemd: Created slice User Slice of root.
	Jul 25 16:50:01 [localhost] systemd: Starting User Slice of root.
	Jul 25 16:50:01 [localhost] systemd: Started Session 275 of user root.
	Jul 25 16:50:01 [localhost] systemd: Starting Session 275 of user root.
	Jul 25 16:50:01 [localhost] systemd: Removed slice User Slice of root.
	Jul 25 16:50:01 [localhost] systemd: Stopping User Slice of root.
	Jul 25 16:55:01 [localhost] systemd: Created slice User Slice of pcp.
	Jul 25 16:55:01 [localhost] systemd: Starting User Slice of pcp.
	Jul 25 16:55:01 [localhost] systemd: Started Session 276 of user pcp.
	Jul 25 16:55:01 [localhost] systemd: Starting Session 276 of user pcp.
	Jul 25 16:55:01 [localhost] systemd: Removed slice User Slice of pcp.
	Jul 25 16:55:01 [localhost] systemd: Stopping User Slice of pcp.
	Jul 25 16:58:01 [localhost] systemd: Created slice User Slice of pcp.
	Jul 25 16:58:01 [localhost] systemd: Starting User Slice of pcp.

…以降もズラズラと出力。

と思ったら通常のメッセージとして出力されるものらしい。

参考:お世話になっております。
systemd メッセージ Created slice & Starting Session でログがあふれる

セキュリティを考えたら必要なログ何だろうと思うが、”ユーザーがログインするたびに表示されます”という割には
実際にログインしているわけでもないのに何なのか?出力行数が多すぎる!
とにかくウザい、ということで上記のRedHatのページで紹介されている手順でrsyslogにてフィルターを作成して適用する、という方法を実施。

1.コンフィグファイルの作成

	# echo 'if $programname == "systemd" and ($msg contains "Starting Session" or $msg contains "Started Session" or $msg contains "Created slice" or $msg contains "Starting user-" or $msg contains "Starting User Slice of" or $msg contains "Removed session" or $msg contains "Removed slice User Slice of" or $msg contains "Stopping User Slice of") then stop' >/etc/rsyslog.d/ignore-systemd-session-slice.conf

 

2.作成したファイルの確認

	# cat /etc/rsyslog.d/ignore-systemd-session-slice.conf
	if $programname == "systemd" and ($msg contains "Starting Session" or $msg contains "Started Session" or $msg contains "Created slice" or $msg contains "Starting user-" or $msg contains "Starting User Slice of" or $msg contains "Removed session" or $msg contains "Removed slice User Slice of" or $msg contains "Stopping User Slice of") then stop

 

3.rsyslogdを再起動

	# systemctl restart rsyslog.service

 

4.再起動後にステータス確認

	# systemctl status crond.service 
	● crond.service - Command Scheduler
	   Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)
	   Active: active (running) since 火 2018-07-24 16:16:02 JST; 1 day 1h ago
	 Main PID: 1135 (crond)
	   CGroup: /system.slice/crond.service
	           └─1135 /usr/sbin/crond -n

	 7月 24 16:16:02 intra-001 systemd[1]: Started Command Scheduler.
	 7月 24 16:16:02 intra-001 systemd[1]: Starting Command Scheduler...
	 7月 24 16:16:02 intra-001 crond[1135]: (CRON) INFO (RANDOM_DELAY will be scaled with factor 23% if used.)
	 7月 24 16:16:03 intra-001 crond[1135]: (CRON) INFO (running with inotify support)
	 7月 25 17:41:01 intra-001 crond[1135]: (*system*) RELOAD (/etc/crontab)
	 7月 25 17:42:01 intra-001 crond[1135]: (*system*) RELOAD (/etc/crontab)

5.追加分書式

上記の手順および設定によりログ出力の抑制を確認したが、一部“system-logind”のログが残っていた。

↓こんなやつ

	Jul 25 17:50:09 [localhost] systemd-logind: New session 289 of user admin.
	Jul 25 17:50:44 [localhost] systemd-logind: New session 290 of user admin.
	Jul 25 17:50:58 [localhost] systemd-logind: Removed session 290.
	Jul 25 17:51:04 [localhost] systemd-logind: Removed session 289.
	Jul 25 18:11:13 [localhost] systemd-logind: New session 296 of user admin.
	…以下ダラダラ続くw

これはsystemdとは別口になるのと、user.sliceと比べてウザくない(謎)ので残しておいてもいいかな?と思ったが、もともと/var/log/secureでアクセスと認証の履歴は残っているし、やっぱり要らないか、ということでこちらも出力を停止することに。
system-logindのすべてのログを抑制する必要は無いので、systemdと同じく”or $msg contains~” 書式で手作業で設定を追加。

	if $programname == "systemd-logind" and ($msg contains "New session" or $msg contains "Removed session") then stop

上記を/etc/rsyslog.d/ignore-systemd-session-slice.confへ追加し、再度rsyslogdをrestartし、抑制OK。
(てか、明示的にフィルターを作成しないと抑制できないってめんどい…)

-CentOS, GNU/Linux, 運用
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


関連記事

no image

postfix設定変更(inet_protocols)

参考:お世話になっております。 Postfix IPv6サポート http://www.postfix-jp.info/trans-2.2/jhtml/IPV6_README.html EC2のCen …

[juniper] SRX(JunOS) SNMP設定

参考:お世話になっております。 SRX Getting Started – Configure SNMP Agent Todoとしては ・snmpコミュニティの設定 ・snmpコミュニティ …

no image

ssh 公開鍵認証と公開鍵の登録

▼ssh 公開鍵認証と公開鍵の登録 1)クライアントで公開鍵を生成 2)サーバ側で公開鍵を登録 3)ログインテスト ▼ssh 公開鍵認証と公開鍵の登録 † 作業自体は簡単なんですが ユー …

no image

ZABBIXインストール(1.0)

2005/03/14 1)ダウンロードと展開 2)コンパイルとインストール 3)サーバ設定 4)GUI設定 5)起動 【init.dでのプロセス操作】 システム監視ツールzabbixのインストールドキ …

no image

script​/標準入力の判定(case文)

ホスト名を標準入力にて引数として追加し、ホストグループを判定する勉強用スクリプト。 ホスト名の先頭にweb、db、app、mailがあった場合はホストグループとサーバールートを出力、 ホスト名が対象外 …