序章


アプリケーションは、「ログファイル」と呼ばれるものを作成して、任意の時点で発生するアクティビティを追跡します。 これらのファイルは、単純なテキスト出力とはほど遠いものですが、特に管理対象のサーバーがビジー状態の場合は、処理が非常に複雑になる可能性があります。

ログファイルを参照するときが来たら(例: 障害やデータの損失などの場合)、利用可能なすべてのヘルプを利用することが重要になります。 過去の出来事に関して彼らが何を語ることができるかをすばやく理解(解析)し、正確に何が起こったかを分析できることは、解決策を考え出すために非常に重要になります。

Linuxシステムの強化、セキュリティの監視、およびアラートの電子メール送信に関する以前の記事の足跡をたどって、このDigitalOceanの記事では、Logwatchについて説明します。アプリケーション関連のタスクや問題に取り組むときは、少し簡単です。

ログファイル


Startrekの宇宙船のブラックボックスと同じように、システムを維持します(つまり サーバー)が実行されている場合、管理者は今日でもログに依存しています。 冗談はさておき、これらのアプリケーションで生成されたファイルは、完全/部分的なデータ回復の目的で、過去に[特定の時間に]何が起こったかを追跡して理解する上で決定的な役割を果たします(つまり、 トランザクションログから)、パフォーマンスまたは戦略関連の分析(例: サーバーログから)または将来の修正(例: アクセスログから)。

簡単に言うと、ログファイルは、特定の時間範囲内で発生するアクションとイベントで構成されます。

システムの保守を担当する管理者が特定の目的に必要な正確な情報を見つけられるように、適切なログファイルをできるだけ詳細にする必要があります。 このため、ログファイルは通常簡潔ではなく、人間にとって意味のあるものにするために徹底的な分析とフィルタリングを必要とする繰り返しの負荷と(ほとんど)冗長なエントリの負荷が含まれています。

ここで、このジョブ用に設計されたコンピューターアプリケーションであるLogwatchが登場します。

Logwatchを入力してください


ログ管理は、主に検索、ログローテーション/保持、およびレポートで構成される領域です。 Logwatchは、マシンで行われているアクティビティの短いダイジェストを毎日分析して報告することにより、簡単なログ管理を支援するアプリケーションです。

Logwatchによって作成されたレポートは、サービス(つまり、 アプリケーション)システム上で実行されます。これは、比較的単純な構成ファイルを変更することにより、好きなものまたはそれらすべてで構成されるように構成できます。 さらに、Logwatchを使用すると、特定のニーズに合わせたカスタム分析スクリプトを作成できます。

Logwatchのインストール


注意: Logwatchは無害なアプリケーションであり、現在のサービスやワークロードに干渉することはありません。 ただし、いつものように、最初に新しいシステムで試して、必ずバックアップを取ることをお勧めします。

CentOS/RHELの場合


LogwatchをRHELベースのシステムにインストールするのは非常に簡単です(例: CentOS)。 さまざまなPerlスクリプトで構成されるアプリケーションであるため、特定の関連する依存関係が必要です。 yum パッケージマネージャーを使用するので、これは自動的に処理されます。 mailxがすでにインストールされていない限り、Logwatchはプロセス中にもmailxをダウンロードします。

CentOS / RHELにLogwatchをインストールするには、以下を実行します。

$ yum install -y logwatch

Ubuntu/Debianの場合


Debianベースのシステム用のLogwatchの入手(例: Ubuntu)は、パッケージマネージャー(aptitude v。)の違いを除けば、上記で説明したプロセスと非常によく似ています。 yum)。

LogwatchをUbuntu/Debianにインストールするには、以下を実行します。

$ aptitude install -y logwatch

Logwatchの構成


その設定は手動で実行するたびに上書きできますが、一般的には、一般的な構成を使用してLogwatchを毎日実行する必要があります。

Logwatchの一般的な構成の設定


Logwatchのデフォルトの構成ファイルは次の場所にあります。

/usr/share/logwatch/default.conf/logwatch.conf

内容を変更するために、nanoテキストエディタを使用してこのファイルを開きましょう。

$ nano /usr/share/logwatch/default.conf/logwatch.conf

上記のコマンドを実行すると、アプリケーションが自動または手動で実行されるたびに使用する変数の長いリストが表示されます。

使用を開始するには、これらのデフォルトにいくつかの変更を加える必要があります。

将来、ここで定義された特定の設定を変更するために戻ってきたいと思うかもしれないことを覚えておいてください。 上記で説明したように(構成#5)、Logwatchによって分析されるすべてのサービス(アプリケーション)がこのファイルにリストされます。 仮想サーバーにアプリケーションをインストールまたは削除するときに、ここで設定を変更することにより、アプリケーションのすべてまたは一部に関するレポートを引き続き受信できます(以下を参照*)。

設定する必要のある重要なオプション:

注意:ドキュメントに次の変更を加える場合は、矢印キーを使用して行を上下に移動する必要があります。 変更(項目1〜6)が完了したら、 CTRL + X を押してから、Yで確定して保存して閉じる必要があります。 変更は、次にlogwatchが実行されたときに自動的に有効になります。

1. 日次ダイジェスト(レポート)の送信先の電子メールアドレス:

MailTo = root

rootを自分のメールアドレスに置き換えます。

例: MailTo = [email protected]

2. これらのレポートの発信元の電子メールアドレスfrom

MailFrom = Logwatch

Logwatchをもう一度自分のものに交換することをお勧めします。

例: MailFrom = [email protected]

3. レポートの範囲の設定:

Range = yesterday

すべて(すべて最初から利用可能)、今日(ちょうど今日)または昨日(ちょうど昨日)のレポートを受信するオプションがあります。

例: Range = Today

4. レポートの詳細の設定:

Detail = Low

ここでレポートの詳細を変更できます。 オプションは、、およびです。

例: Detail = Medium

5. 分析するサービス(アプリケーション)の設定:

デフォルトでは、Logwatchは非常に幅広いサービスをカバーしています。 完全なリストを表示したい場合は、/usr/share/logwatch/にあるファイルscripts/servicesの内容を照会できます。

例: ls -l /usr/share/logwatch/scripts/services

Service = All

すべてのサービスまたは特定のサービスのレポートを受信するように選択できます。

すべてのサービスについて、次のように行を維持します。 Service = All

特定のレポートを受け取りたい場合は、次の例のように変更して、各サービスを新しい行にリストします(例: Service = [name])。

例:

Service = sendmail
Service = http
Service = identd
Service = sshd2
Service = sudo
..

6. 日報の無効化:

# DailyReport = No

毎日のレポを生成したくない場合は、この行のコメントを解除する必要があります。

例: DailyReport = No instead of # DailyReport = No

以上です! これらの変更を行うと、サーバーから自動的にログファイルに基づいた日次レポートを受信します。

Logwatchの詳細、およびレポートを受信するためのカスタムサービスの作成については、ここをクリックして完全なドキュメントにアクセスできます。

Logwatchを手動で実行する


コマンドラインから必要なときにいつでも手動でLogwatchを実行するオプションがあることに注意してください。

[ドキュメントから]利用可能なオプションは次のとおりです。

logwatch  [--detail  level  ] [--logfile log-file-group ] [--service service-name ] [--print]
   [--mailto address ] [--archives] [--range range  ]  [--debug  level  ]  [--save  file-name  ]
   [--logdir  directory ] [--hostname hostname ] [--splithosts] [--multiemail] [--output output-
   type ] [--numeric] [--no-oldfiles-log] [--version] [--help|--usage]

オプションを指定しない限り、構成ファイルから読み取られます。

例:

$ logwatch --detail Low --mailto email@address --service http --range today

そして、Logwatchレポートは次のようになります。

################### Logwatch 7.3.6 (05/19/07) ####################
        Processing Initiated: Wed Nov 15 15:07:00 2013
        Date Range Processed: today
                              ( 2013-Nov-15 )
                              Period is day.
      Detail Level of Output: 0
              Type of Output: unformatted
           Logfiles for Host: host_name
                 ##################################################################
    
 --------------------- Postfix Begin ------------------------

    3.453K  Bytes accepted                             3,536
    3.453K  Bytes delivered                            3,536
 ========   ================================================

        3   Accepted                                 100.00%
 --------   ------------------------------------------------
        3   Total                                    100.00%
 ========   ================================================

        3   Removed from queue
        2   Delivered
        1   Sent via SMTP

        1   Connection failure (outbound)

        1   Postfix start


 ---------------------- Postfix End -------------------------


 --------------------- Connections (secure-log) Begin ------------------------

 New Users:
    apache (48)

 New Groups:
    apache (48)


 **Unmatched Entries**
    groupadd: group added to /etc/group: name=apache, GID=48: 1 Time(s)
    groupadd: group added to /etc/gshadow: name=apache: 1 Time(s)

 ---------------------- Connections (secure-log) End -------------------------

 --------------------- SSHD Begin ------------------------


 SSHD Started: 2 Time(s)

 Users logging in through sshd:
    root:
       ip_addr (ip_addr): 1 time

 ---------------------- SSHD End -------------------------
    
 --------------------- yum Begin ------------------------


 Packages Installed:
    apr-1.3.9-5.el6_2.x86_64
    apr-util-1.3.9-3.el6_0.1.x86_64
    perl-YAML-Syck-1.07-4.el6.x86_64
    4:perl-5.10.1-131.el6_4.x86_64
    mailx-12.4-6.el6.x86_64
    1:perl-Pod-Simple-3.13-131.el6_4.x86_64
    1:perl-Pod-Escapes-1.04-131.el6_4.x86_64
    3:perl-version-0.77-131.el6_4.x86_64
    httpd-2.2.15-29.el6.centos.x86_64
    4:perl-libs-5.10.1-131.el6_4.x86_64
    mailcap-2.1.31-2.el6.noarch
    perl-Date-Manip-6.24-1.el6.noarch
    1:perl-Module-Pluggable-3.90-131.el6_4.x86_64
    httpd-tools-2.2.15-29.el6.centos.x86_64
    apr-util-ldap-1.3.9-3.el6_0.1.x86_64
    logwatch-7.3.6-49.el6.noarch

 ---------------------- yum End -------------------------

投稿者: https ://twitter.com/ostezer