Oracle Linux7でSyslogサーバ構築

3479 ワード

会社に散らばるログ関連を一か所に集めるためにSyslogサーバを構築しようと思います。

OS情報

NAME="Oracle Linux Server"
VERSION="7.9"
ID="ol"
ID_LIKE="fedora"
VARIANT="Server"
VARIANT_ID="server"
VERSION_ID="7.9"
PRETTY_NAME="Oracle Linux Server 7.9"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:oracle:linux:7:9:server"
HOME_URL="https://linux.oracle.com/"
BUG_REPORT_URL="https://bugzilla.oracle.com/"

ORACLE_BUGZILLA_PRODUCT="Oracle Linux 7"
ORACLE_BUGZILLA_PRODUCT_VERSION=7.9
ORACLE_SUPPORT_PRODUCT="Oracle Linux"
ORACLE_SUPPORT_PRODUCT_VERSION=7.9

準備

入力
yum update -y

rsyslogのインストール

ubuntu20.04は既にインストールされているのでスキップします。

/etc/rsyslog.confの編集

入力
vim /etc/rsyslog.conf
編集箇所
# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514

Firewallのポート開放

入力
firewall-cmd --zone=public --add-port=514/udp

rsyslogの再起動

入力
systemctl restart rsyslog

機器別に出力振り分け

このままだといくつかの機器からのログが一緒に出力されて非常に見辛いので機器別(ホスト別)にしたいと思います。
とりあえず下記を/etc/rsyslog.confに追記します。
多分場所はどこでもOK

RTX1200シリーズの場合

ルータで側の設定

syslog host 10.0.5.31
syslog facility local1

syslogサーバ側の設定

/etc/rsyslog.conf
*.info;mail.none;authpriv.none;cron.none;local1.none     /var/log/messages
# RTX1200
local1.*     /var/log/rtx1210.log

FrotiGate60Fの場合

FortiGate側の設定

facility値がlocal7であることを覚えておきます。

FGT60FTK2109BTDP # show full-configuration log syslogd setting
config log syslogd setting
    set status enable
    set server "10.0.5.31"
    set mode udp
    set port 514
    set facility local7
    set source-ip ''
    set format default
    set priority default
    set max-log-rate 0
    set interface-select-method auto
end

FGT60FTK2109BTDP #

syslogサーバ側の設定

/etc/rsyslog.conf
*.info;mail.none;authpriv.none;cron.none;local1.none     /var/log/messages
#FortiGate
local7.*     /var/log/fortigate.log

rsyslogの再起動

systemctl restart rsyslog