序章
アプリケーションは、「ログファイル」と呼ばれるものを作成して、任意の時点で発生するアクティビティを追跡します。 これらのファイルは、単純なテキスト出力とはほど遠いものですが、特に管理対象のサーバーがビジー状態の場合は、処理が非常に複雑になる可能性があります。
ログファイルを参照するときが来たら(例: 障害やデータの損失などの場合)、利用可能なすべてのヘルプを利用することが重要になります。 過去の出来事に関して彼らが何を語ることができるかをすばやく理解(解析)し、正確に何が起こったかを分析できることは、解決策を考え出すために非常に重要になります。
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 = sysadmin@mydomain.com
2. これらのレポートの発信元の電子メールアドレスfrom:
MailFrom = Logwatch
Logwatch
をもう一度自分のものに交換することをお勧めします。
例: MailFrom = sysadmin@mydomain.com
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 -------------------------