標準システム監視ツールの一般的な概要

難易度:初心者

GNU / Linux標準ツールの概要は、初心者のLinuxユーザーがOSを監視するのに役立ちます。 通常、使用済みアプリケーションは、既知のディストリビューションのディストリビューションに含まれています。 有用な副作用は、若いシステムおよびネットワーク管理者を妥協の[疑い]の条件に向けることができると思います。

ローカル監視

雑誌。

ロギングシステムのパフォーマンスは非常に重要です。 ログファイルは、システムで発生するプロセスに関する最初の情報源であり、もちろん、侵入の痕跡を一掃する攻撃者の最初の標的です。 サイバー犯罪者は常に活動の証拠を可能な限り隠そうとするため、別のリソースまたはメールで雑誌を保存または複製することをお勧めします。 当然、システムの動作レポートが届く電子ボックスは、別のノードでサービスする必要があります。 この場合、原則として、信頼できます。
FHSは、ログファイルを配置するディレクトリを提供します。 標準的なログの場所の短いリストを次に示します。

http-、ftp-server、MTA / MDA、ネットワークサービスのジャーナリングは、すでにより狭く専門的なトピックです。 明らかな理由から、この記事では理由が考慮されないことを望みます。
(システム全体の)問題が発生した場合、最初にdmesgコマンドの出力とmessagesdebugdaemon.logのエントリを調べる必要があります。 最後の2つ、特に問題がサービスに関連している場合。
もちろん、登録ファイルへの示されたパスがシステムによって異なる可能性があることを予約します。 そのような状況では、配布資料を参照する必要があります。
たとえば、リストのみを提供しました。 ログファイルの場所は、マニュアルページまたは構成ファイルから確認できます。 通常、これは問題になりません。 たとえば、共有ネットワークフォルダーの操作に関するメモをどこに置くか、 ログファイルディレクティブは、対応するSambaデーモンの構成ファイル(原則として/etc/samba/smb.conf)を定義します。 ほとんどのネットワーク(主にサービス)の設定で、ログエントリの形式と一部の詳細レベルを指定することもできます。

ファイルの変更。

ファイルの変更を検出するための非常に優れたツールは、標準の検索プログラムです。 mtimeパラメーターの賢明な使用は、ファイルシステムの変更を確立するのに役立ちます。たとえば、コマンド
find /etc -mtime -1

最終日に変更されたファイルが表示されます。 さまざまな時点でのファイルの非常に優れた検索については、 Unixの検索チュートリアルで 説明されています

プロセス。

実行中のプロセスの分析は、 トッププログラムを使用して実行する必要があります。 出力例:
top - 15:21:36 up 4 days, 19:04, 2 users, load average: 0.06, 0.01, 0.00
Tasks: 92 total, 1 running, 91 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 0.7%sy, 0.0%ni, 97.4%id, 1.7%wa, 0.3%hi, 0.0%si, 0.0%st
Mem: 256088k total, 249192k used, 6896k free, 5320k buffers
Swap: 265064k total, 304k used, 264760k free, 176876k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
27362 decoy 15 0 17400 11m 3616 S 0.3 4.7 3:48.28 rtorrent
1 root 18 0 2912 1848 524 S 0.0 0.7 0:01.83 init
...

表の最初の列にはプロセス番号が含まれています。 たとえば、 killコマンドによる削除に使用できます。 次(左から右へ)には、起動を開始したユーザーの名前、タスクの優先度、特にオーバーヘッド情報、特にアプリケーションのシステムリソースの使用、プロセスの実行時間、開始コマンドが続きます。
リアルタイムモニターの上部に加えて、 psプロセスのスナップショットの強力なジェネレーターもあります。 たとえば、特定のプログラム、たとえばMidnight Commanderが現在実行されているかどうかは、次のコマンドで確認できます。
ps aux | grep mc | grep -v grep

htopをインストールすることを強くお勧めします。これは、 topの類似物である(一度だけ参照する)ユーザーにとってより快適で視覚的なものです。

ネットワーク状態

Nmapスキャナー。

使用に関するほぼ個別の本が書かれている非常に強力なツール。 以下に例を示します。
$ nmap -sT -v -v -v localhost
Starting nmap 3.55 ( www.insecure.org/nmap ) at 2005-02-04 22:01 EET
Machine 127.0.0.1 MIGHT actually be listening on probe port 80
Host localhost.localdomain (127.0.0.1) appears to be up ... good.
Initiating Connect() Scan against localhost.localdomain (127.0.0.1) at 22:17
Adding open port 111/tcp
Adding open port 25/tcp
Adding open port 113/tcp
Adding open port 22/tcp
Adding open port 80/tcp
Adding open port 631/tcp
The Connect() Scan took 1 second to scan 1660 ports.
Interesting ports on localhost.localdomain (127.0.0.1):
(The 1654 ports scanned but not shown below are in state: closed)
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
80/tcp open http
111/tcp open rpcbind
113/tcp open auth
631/tcp open ipp

Nmap run completed -- 1 IP address (1 host up) scanned in 0.503 seconds

したがって、Webサーバーがマシン上で実行されています。 別の例(RPC DCOMのノードを確認します):
# nmap -sS -p 135 xxx.xxx.xxx.xxx

Starting nmap 3.55 ( www.insecure.org/nmap ) at 2005-02-04 22:06 EET
Interesting ports on *.* (xxx.xxx.xxx.xxx):
PORT STATE SERVICE
135/tcp filtered msrpc

Nmap run completed -- 1 IP address (1 host up) scanned in 45.798 seconds

:一部のタイプのスキャンにはルート権限が必要です。
nmapスキャナーは、個々のノードだけでなく、範囲全体もチェックできます。 原則として、システムの「クリーン」インストールには含まれませんが、インストールは簡単で、監査目的で強く推奨されます。
疑わしい異常がある場合、またはnmapの結果に基づいて、 tcpdumpトラフィックアナライザー(スニファー)を起動し、「疑わない」ネットワークパケットをフィルタリングして、残っているものを確認することが非常に役立つ場合があります。 実際、 tcpdumpはスニファーでなく、写真を撮りますが、そのような状況では非常に役立ちます。
使用するもう1つの優れたツールはnetstatです。 アクティブなネットワーク接続をリストするために使用されます。
$ netstat -l
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 *:32769 *:* LISTEN
tcp 0 0 *:62978 *:* LISTEN
tcp 0 0 *:sunrpc *:* LISTEN
tcp 0 0 *:auth *:* LISTEN
tcp 0 0 localhost.localdoma:ipp *:* LISTEN
tcp 0 0 localhost.localdom:5335 *:* LISTEN
tcp 0 0 *:29305 *:* LISTEN
tcp 0 0 localhost.localdom:smtp *:* LISTEN

lsoffuserなどのLinuxツールと組み合わせて、どのプログラムがどのポートを使用するかを学習します。

おわりに

「最小」のシステムモニターを確認しようとしました。 説明されているすべてのツールは、ほとんどすべてのLinuxビルドに含まれています。 強力で重量のあるサードパーティのIDSソフトウェアシステムとFSシェルについては言及していません。
結論として、最も標準的なツールセットを適切に使用すると、基本的な監査が可能になります。 覚えておいてください:セキュリティの問題はフィクションの妄想ではありません! 多くの人々は、侵入後の自分の保護について考えます。 「予防策が不要であることを確認する最善の方法は、それらを時間内に服用することです」とマーフィー氏は言いました。

最後に簡単な概要...

プロセス分析:

ネットワーク分析:

ファイルシステム分析:

Source: https://habr.com/ru/post/J49204/


All Articles