ログメッセージに転送元のサーバーのホスト名が表示されるように、「/etc/hosts」ファイルに次の2行を追記します。
1 2 |
192.168.10.101 server1 192.168.10.102 server2 |
このファイルは、IPアドレスとホスト名の名前解決に使われます。ここでは、ログ転送元のサーバーのホスト名とIPアドレスをそれぞれ「server1」「192.168.10.101」、「server2」「192.168.10.102」としました。
デフォルトで用意されているログ設定も書き換える必要があります。nanoエディタで「/etc/rsyslog.d/50-default.conf」を開いてください。
1 |
$ sudo nano /etc/rsyslog.d/50-default.conf |
8行目の「auth,authpriv.* /var/log/auth.log」を、
1 |
auth,authpriv.*:fromhost-ip, isequal, "192.168.10.100" /var/log/auth.log |
のように書き換えます。「fromhost-ip」はプロパティーで、ログを転送したサーバーのIPアドレスを示しています。「isequal」は条件式です。プロパティーとこの後に指定した文字列が一致するかどうかを確認し、一致した場合に「アクション」に指定した処理を実行します。アクションについては、第19回(https://shell-mag.com/19st_linuxoperations/)で解説しています。「192.168.10.100」が文字列に当たる部分で、ログ管理サーバー自身のIPアドレスを記述しています。このように書き換えることで、認証やセキュリティにかかわるログを受信していても「/var/log/auth.log」ファイルにログ管理サーバー自身のログしか記録されないようになります。
変更した以上の設定をrsyslogに反映するために、
1 |
$ sudo systemctl restart rsyslog |
を実行します。これでログを一元管理する設定は完了です。