web-dev-qa-db-ja.com

LinuxからWindowsログファイルにアクセスする

LinuxからWindowsのログファイルにリモートアクセスしようとしています。これまでのところ、2つの異なるアプローチを見つけました。

  1. Windowsマシンにsyslogサーバーをインストールし、WindowsにログファイルをLinuxに送信させ、それらのファイルを読み取ります
  2. Linux用のwmi実装を使用してログファイルにリモートアクセスします。

実装に飛び込む前に、これら2つのアプローチの制限について知っている人はいますか?

3
damir

私の直感では、2番目のルートがより簡単にたどることができます。最初のルートでは、2つの異なるシステムに触れ、それぞれに独自の癖があります。

  • linuxにリモートsyslogサーバーをインストールしてセットアップします。
  • windowsにログをリモートsyslogサーバーに送信させます。
  • linuxでsyslogの読み取りも設定します

このアプローチは、より多くの「障害点」を作成するようです(Windowsがリモートsyslogにイベントを記録するのをブロックするネットワークの問題を想像してください)。

最初のルートでは、Linux用のwmiクライアントをインストールするだけで済みます。 wbemcliをお勧めします。 (Debian/Ubuntuではapt-get install wbemcliを試してください。)これにより、Windowsロギング(私の経験では堅実です)は変更されません。一時的なネットワークの問題が発生した場合でも、ネットワークが完全に動作するようになると、侵害されていないログへのアクセスが戻ります。

ご存知かもしれませんが、WMIはMicrosoftによる [〜#〜] wbem [〜#〜] (Web-based Enterprise Management)の実装にすぎません。 WBEMは、 Distributed Management Task Force コンソーシアムによって定義された業界標準です。

MSのWMIとWBEM標準にはいくつかの違いがあります(MSが「標準を実装する」と言っている場合がほとんどです)。たとえば、標準のWBEMとは異なるトランスポートプロトコルを使用します(WBEMは通常HTTP over TCP/5988またはHTTPSover TCP/5989を使用します。WMIもわずかに異なる名前名を使用します。それ以外の点では、ほとんど同じです。

2
Kurt Pfeifle

これら2つについてコメントすることはできませんが、3つ目は知っています。ログを読み取ることができ、クエリに応答したり、新しいイベントをLinuxにプッシュしたりできる小さなサーバーをWindowsにインストールします。このようなタスクには、win32モジュールでPythonを使用しました。

1
Aaron Digulla

はい..Windows、sshサーバーにはgit-bashが必要です(bitvise sshdをお勧めします。個人的な接続はありませんが、非常に安定しており、十分にテストされています)。

それが終わったら、Windowsパスにgit-bashを置く必要があります。それからあなたは使うことができます

ssh [email protected] 'bash -c "tail -n 20 -F /c/Users/username/Desktop/logging_file.log"'

詳細はこちら: https://stackoverflow.com/a/50936183/475288

0
alpha_989