どのような自動化された侵入通知/検出セットアップがホームデスクトップの使用に適していますか?


27

私はかなり長い間Linuxを使っていますが、スキャンやログイン試行の失敗などの疑わしいネットワークアクティビティをその場でメールまたは視覚/音声通知。

私はログなどを調べる方法を知っていますが、ほとんどの場合それは手動の時間のかかるプロセスです。優れたログ解析機能を備えた半/完全に自動化されたものを探しています。

Snortなどのネットワークを監視するためのIDSシステムは知っていますが、それらは平均的なホームユーザーにとってはやり過ぎであり、起動するのに苦痛なプロセスです。

ホームユーザーとして私にとって良い選択肢は何ですか?


「パッシブ」をどのように定義しますか?たとえば、あなたがたまに何かを実行して、何か怪しいことが起こっているかどうかを確認します。
ナネ

回答:


15

簡単で効果的な一般的な解決策は、logcheckを使用することです。

sudo apt-get install logcheck
[edit /etc/logcheck/logcheck.conf to your liking]

logcheckは、定期的にすべてのログを効率的にスキャンし(前回中断したところから開始)、表示内容をフィルター処理して正常と見なされるものをすべて除去し、オプションで正常/通常のパターンと一致しないものでアラートをメールで送信します。

主なアイデアは、ログファイル内の重大なエントリの出現を常に監視することです。すべてのエントリは常に必要なので、必要はありません。

logcheckは高度に構成可能です(man logcheck)。以下を含むすべてを構成できます。

  • チェックの頻度
  • チェックされるログファイル
  • 正常とみなされるものとそうでないもの
  • アラート(異常なイベント)を電子メールで送信する場所

もっと。無視(通常/ルーチン)パターンは、/ etc / logcheck / ignore.d。*の下の複数のファイルにあり、必要に応じてカスタマイズできます。主に無視する独自のパターンを追加することができます。デフォルトのUbuntuパッケージには、多くのサービスの無視パターンを備えた広範なファイルのセットがすでに付属しているため、システムの動作が異常でない限り、追加することはあまりありません。事前に設定された3つの無視ファイルプロファイルセットがあります: ignore.d.workstationignore.d.server、およびignore.d.paranoidから選択できます。

ログチェックの背後にある主な考え方は、システムで実行されているさまざまなサービスがすでに異常なイベントを記録しているということです。たとえば、sshdまたはpamはすでに認証の失敗を記録します。そのため、主な欠落コンポーネントは次のとおりです。

  • 正常なものをフィルタリングする
  • 警告サービス

どちらも便利なパッケージのlogcheckで提供されます。logcheckを他のロギングと組み合わせることができます。たとえば、iptablesは、ルールを追加することで明示的に許可されていないネットワーク接続試行をsyslogに設定できます。

 iptables -A input -j LOG
 iptables -A input -j DROP

すべての許可ルールの直後。

私が見つけlogcheckのよりもはるかに有用であることがlogwatchのそれは正常な活動と考えられているものを無視するルールの非常に大きな数のパッケージ化事前来るので(他の回答で提案されています)。その結果、電子メールで送信されるアラートの信号/ノイズ比がはるかに高くなります。YMMV。

logcheckのもう1つの利点は、ログを記録するサービスと直交するため、機能の重複がないことです。syslog異常または異常を問わず、イベントをログに記録するために使用する新しいサービスを/var/logあなたのファイルに追加するたびに、自動的にアラートを取得し始めます。

の仕方:

logcheckすでに事前構成されているため、この回答の先頭にある2行は、開始するために必要なすべてを本質的にカバーしています。インストールするだけで、最上位の設定ファイルに移動 します。電子/etc/logcheck/logcheck.confメールアドレスを変更して、logcheckアラートを電子メールで送信します。

次に、2番目のステップを詳しく説明するわかりやすいリファレンスを示します。UbuntuはDebianに基づいているため、これらの手順はUbuntuでも機能するはずです。 ここに別の良いリファレンスがあります。

インストールすると、継続的な改善プロセスが開始されます。時間が経つにつれて、すでに知っていることや気にする必要のないことを無視して、ルールを改善します。この改良プロセスは、お気に入りのテキストエディターでファイルにテキスト行を追加するのと同じくらい簡単です。

無視ファイルの各行は拡張正規表現です(を参照man 7 regex)が、無視するログ行に一致する限り、単純な文字列を使用できます。ただ、文字が好きなことを覚えて*?「+」、 []()彼らが実際にログの行に表示されている場合ので、あなたはバックスラッシュでエスケープしなければならない、正規表現の中で特別な\ファイルを無視しました。

つまり、受け取りたくないアラートを受け取った場合は、メールで送信されたログ行を見て、それに一致するパターンを、選択した無視ファイルの1行として追加します。/etc/logcheck/ignore.d.<yourloglevel>/my-ignores個人的な無視ファイルとして使用することをお勧めし ます。どこ<yourloglevel>の一つであるparanoidserverまたは workstation(既にメイン設定ファイルで選択したとおり/etc/logcheck/logcheck.conf)。他の無視ファイルの例を見て、プロセスIDやタイムスタンプなど、常に変化するテキストを説明する方法を確認してください。学ぶべき多くの既存の例があります。

最後のヒント:新しいルールのテストに非常に便利なlogcheck、少し便利なユーティリティが付属していlogcheck-testます。man logcheck-test詳細については。


こんにちは、私はlogcheckの背後にあるアイデアが好きです...そのための詳細なガイドを教えていただけますか?ありがとう:)
irenicus09

1
@ irenicus09:参照用のオプションリンクを含むハウツーセクションを追加しました。
arielf

賞金、非常によく書かれた答えの男に勝ちました。ありがとう:)
irenicus09

3

ネットワーク上に多くのシステムがない場合、SnortのようなIDSのセットアップはおそらく過剰です(特に、マシン上にネットワークサービスがない場合)。まず、システムで何が起こっているかのレポートを自分自身に送信するようにログウォッチを構成することをお勧めします。それが完了したら、可能な限り多くの関連情報を取得できるようにsyslogを構成します。


こんにちは、私はあなたの答えが好きです...しかし、それを行う方法についてもう少し詳細を共有してもらえますか 特に経験の浅いユーザーにとっては、設定をいじることは非常に難しい場合があります。しかし、そのための詳細なガイドを教えていただければ幸いです。ありがとう。
irenicus09


ガイドのおかげで、私はログウォッチのセットアップに成功し、気に入っています。ポートスキャンモニターについては、portsentryのセットアップも行いました。自分にとって最適なものを決定する前に、他のツールなどを試してみます:)
irenicus09

1

ネットワークでサービス(ftp、web、nfs、sshなど)を実行する場合、確実に侵入検知が必要です。これは、それらがインターネット上で公開されているためです。

  • 設定ミス
  • ソフトウェアの脆弱性

経験豊富なネットワーク管理者による毎日の監視が必要です。このサービスを実行する場合、おそらくこの問題を回避する方法についての最低限の知識を既に持っているでしょう。

このサービスのいずれも実行していない場合、インターネットルーターのファイアウォールは、ポート上の着信接続を既にブロックしています。ネットワークルーターをスキャンするには

あなたがすべて緑なら、あなたはすべて良いです。

最後になりましたが、おそらくルーターには侵入検知システムが組み込まれています(すべてのルーターの99%がストライプ化されたLinuxサーバーを実行しているため)。これについては、ルーターの製造元のマニュアルを確認する必要があります。


こんにちは、答えてくれてありがとう。それは非常に洞察力があり、あなたが話していることはすべて知っています。しかし、私のポイントは、システム上でさまざまなサービスを実行していると言えます。セキュリティの観点からアクティビティをどのように正確に追跡しますか。ホームユーザーとしてシンプルで使いやすいソリューションが必要で、その部分は避けたと思います:)
irenicus09
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.