サーバ関連 目次

概要

rsyslogを使用したログ転送の設定。

転送設定

サーバ側

サーバ側は受信モジュールの有効化と受信ポート・プロトコルの定義を行う。

  • 【変更前】/etc/rsyslogd.conf
    # Provides UDP syslog reception
    #$ModLoad imudp.so
    #$UDPServerRun 514
    
    # Provides TCP syslog reception
    #$ModLoad imtcp.so  
    #$InputTCPServerRun 514
  • 【変更後】/etc/rsyslogd.conf
    # Provides UDP syslog reception
    $ModLoad imudp.so
    $UDPServerRun 514
    
    # Provides TCP syslog reception
    $ModLoad imtcp.so  
    $InputTCPServerRun 514

送信元アドレスを基準としたアクセス制限を設ける場合には以下の設定を追加する。
TCPとUDPの設定は1行では記述することができなため、個別に定義する必要がある。
尚、初期状態では全アドレスから受け付ける動作となるため、制限を設けない場合には以下の設定は不要である。

  • 書式:/etc/rsyslogd.conf
    $AllowedSender [TCP|UDP], [IP Address]/[bit],[IP Address]...

  • 例:10.0.0.0/8と192.168.1.254のみ受信
    $AllowedSender UDP, 10.0.0.0/8, 192.168.1.254
    $AllowedSender TCP, 10.0.0.0/8, 192.168.1.254

クライアント側

クライアント側には送信内容と送信先アドレスを定義する。
@の数で転送プロトコルを制御しており、1つはUDP、2つはTCPとなる。
通常は転送と同時にローカルディスクへの書き出しも行うが、設定の末尾にログ破棄の設定を入れることで、転送のみとすることも可能。

  • 書式:/etc/rsyslogd.conf
    [facility].[severity] [@@|@][Server]:[Port]

  • 例:全てのログをTCP(514)で転送する
    *.* @@[IP Address]:514

  • 例:全てのログをUDP(514)で転送する
    *.* @[IP Address]:514

  • 例:infoのログをUDP(514)で転送する
    *.info @[IP Address]:514

  • 例:既存の振り分け設定に転送設定を追加する
    *.info;mail.none;authpriv.none;cron.none  /var/log/messages
    & @@[IP Address]:514

  • 例:転送したログを破棄する(ローカルに書き込まない)
    *.info @[IP Address]:514
    & ~

振り分け定義

サーバ側が受信したログを振り分けて保管する場合の設定。
ログファイルの保管ルールを定義した後、振り分けルールと保管ルールを紐付けた設定を行う。

  • ログファイル保管時の定義
    $template [LogFormat],"/[PATH]/[FILE NAME]"

  • IPアドレスを基準とした振り分けの定義
    :fromhost-ip, startswith, "[IP Address(前方一致)]" -?[LogFormat]
    & ~

  • 例:ログフォーマット(/[PAHT]/[IP Address]_[HostName]/[YYYY]/[IP Address]_[HostName].YYYY-MM.messages.log)
    $template [LogFormat],"/[PATH]/%fromhost-ip%_%fromhost%/%$year%/%fromhost-ip%_%fromhost%.%$year%-%$month%.messages.log"

  • 例:振り分け(192.168.230〜239のアドレス)
    :fromhost-ip, startswith, "192.168.1.23" -?MonthFiles2
    & ~

設定サンプル

サーバ設定

##  Provides UDP syslog reception
##

$ModLoad imudp
$UDPServerRun 514

# Restrict incoming source IP address(UDP)
#
$AllowedSender UDP, 10.0.0.0/8

## Provides TCP syslog reception
##

$ModLoad imtcp
$InputTCPServerRun 514

# Restrict incoming source IP address(TCP)
#
$AllowedSender TDP, 10.0.0.0/8

#### TEMPLATE ####

## Log Format Template

$template TraditionalFormat,"%timestamp% %hostname% %syslogtag%%msg%:::drop-last-lf%\n"

## File Format Template

# Base Template
$template DynamicFileName1,"/data-logs/syslog/%fromhost-ip%_%fromhost%/%fromhost-ip%_%fromhost%.messages.log"
$template DynamicFileName2,"/data-logs/syslog/%fromhost-ip%_%fromhost%/%fromhost-ip%_%fromhost%.%programname%.messages.log"

# Year/Month/Day Template
$template MonthFiles1,"/data-logs/syslog/%fromhost-ip%_%fromhost%/%$year%/%fromhost-ip%_%fromhost%.%$year%-%$month%.messages.log"
$template MonthFiles2,"/data-logs/syslog/%fromhost-ip%_%fromhost%/%$year%/%fromhost-ip%_%fromhost%.%$year%-%$month%.%programname%.log"

#### RULES ####

##
## IP Level rules
##

## 192.168.23x
:fromhost-ip, startswith, "192.168.1.23" -?MonthFiles2
& ~

## 192.168.1.xxx
:fromhost-ip, startswith, "192.168.1." -?MonthFiles1
& ~

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS