本日も乙

ただの自己満足な備忘録。

ログ監視(Logwatch)のインストール

サーバを運用していくと/var/log に様々なログが溜まってくる。 ログを見ることで、メール配信の状況(メールが送れているか、遅延していないか)や誰がいつサーバにログインしたかを知ることができる。 また、さくらVPSなどでサーバを公開すると、外部からSSH接続やメールアカウントなどに攻撃を仕掛けられることが多いのでログを監視して対策を練ることもある。 しかし、毎日ログを手動で監視することは面倒だし、時間が無かったりする。 そこで、logwatchをインストールすることで、毎日定期的にログをまとめてメールで送ってくれるので便利。

  1. logwatchのインストール
  2. yum で一発でインストールできる。
    $ sudo yum -y install logwatch
    
  3. ログレポートの確認
  4. $ sudo logwatch --print
    
    実行すると、以下のように出力される。
    ################### Logwatch 7.3.6 (05/19/07) ####################
            Processing Initiated: Sun Mar  3 04:20:14 2013
            Date Range Processed: yesterday
                                  ( 2013-Mar-02 )
                                  Period is day.
          Detail Level of Output: 0
                  Type of Output: unformatted
               Logfiles for Host: xxxxxx.sakura.ne.jp
      ##################################################################
    
     --------------------- Postfix Begin ------------------------
    
        2.307K  Bytes accepted                             2,362
        2.307K  Bytes delivered                            2,362
     ========   ================================================
    
            1   Accepted                                  33.33%
            2   Rejected                                  66.67%
     --------   ------------------------------------------------
            3   Total                                    100.00%
     ========   ================================================
    
            2   Reject relay denied                      100.00%
     --------   ------------------------------------------------
            2   Total Rejects                            100.00%
     ========   ================================================
    
            2   Connections made
            2   Connections lost
            2   Disconnections
            1   Removed from queue
            1   Sent via SMTP
    
            1   Connection failure (outbound)
    
    
    
     ---------------------- Postfix End -------------------------
    
    
     --------------------- Disk Space Begin ------------------------
    
     Filesystem            Size  Used Avail Use% Mounted on
     /dev/vda3              97G   12G   81G  13% /
     /dev/vda1             251M   53M  186M  23% /boot
    
    
     ---------------------- Disk Space End -------------------------
    
    
     ###################### Logwatch End #########################
    
    logwatchは実行された前日のログを見やすい形にまとめてくれる。
  5. メールアドレスの設定
  6. 上記の出力結果をメールで送信することができる。 事前にsendmailpostfix等でメール送信の設定をしておく必要がある。
    $ sudo vim /etc/logwatch/conf/logwatch.conf
    
    # 受信したいメールアドレスを設定する
    MailTo = hogehoge@fuga.com
    
    送信確認
    $ sudo logwatch
    
    以下の様なエラーが出た場合は、logwatch.confにsendmailの設定を追記する。
    Can't exec "sendmail": No such file or directory at /usr/sbin/logwatch line 1018,  line 1.
    Can't execute sendmail -t: No such file or directory
    
    /etc/logwatch/conf/logwatch.conf
    # メール送信コマンドを設定
    mailer = "/usr/sbin/sendmail -t"
    
  7. cronの設定
  8. 毎日定期的にメール送信するためには、cronで設定する。 ただ、さくらVPSの場合はデフォルトで毎朝4時30分ぐらいにメール送信されるように設定されている。