RHEL9 rsyslog リモートホストにログを転送する方法
環境
Red Hat Enterprise Linux release 9.2 (Plow)
操作例
リモートホストにログを転送して、特定ホストで複数ホストのログを一括管理します。
1. 受信側ホストの設定を行います
# 35-36行目 : コメント解除 # 37行目 : 許可する送信元を設定 module(load="imtcp") # needs to be done just once input(type="imtcp" port="514") $AllowedSender TCP, 127.0.0.1, 192.168.0.0/24, *.arkgame.com
2.rsyslogを再起動します
# systemctl restart rsyslog
3.firewalld 稼働中の場合はポート許可する
# firewall-cmd --add-port=514/tcp # firewall-cmd --runtime-to-permanent
4.送信側ホストの設定を行います
# vi /etc/rsyslog.conf
# 最終行に追記する
action(type="omfwd" queue.filename="fwdRule.arkgame.com" queue.maxdiskspace="1g" queue.saveonshutdown="on" queue.type="LinkedList" action.resumeRetryCount="-1" Target="arkgame.com" Port="514" Protocol="tcp")
# queue.filename : キューファイル名
# queue.maxdiskspace : キューに確保するディスクスペース
# queue.saveonshutdown=on : シャットダウン時にキューデータをディスクに保存
# queue.type=LinkedList : 10,000 メッセージを保持可能な非同期キュー
# action.resumeRetryCount=-1 : サーバーが無応答の場合リトライし続ける
# Target=*** : ログ受信サーバーを指定
# systemctl restart rsyslog
5.送信側ホストのログが受信側ホストにも記録される
# tail /var/log/secure