Logstash-security-and-monitoring

提供:Dev Guides
移動先:案内検索

Logstash-セキュリティと監視

この章では、Logstashのセキュリティと監視の側面について説明します。

モニタリング

Logstashは、実稼働環境でサーバーとサービスを監視するための非常に優れたツールです。 実稼働環境のアプリケーションは、アクセスログ、エラーログなどのさまざまな種類のログデータを生成します。 Logstashは、フィルタープラグインを使用して、エラー、アクセス、またはその他のイベントの数をカウントまたは分析できます。 この分析とカウントは、さまざまなサーバーとそのサービスの監視に使用できます。

Logstashは、 HTTP Poller のようなプラグインを提供して、Webサイトのステータス監視を監視します。 ここでは、ローカルApache Tomcatサーバーでホストされている mysite という名前のWebサイトを監視しています。

logstash.conf

この構成ファイルでは、間隔設定で指定された時間間隔後に、プラグインで指定されたサイトにアクセスするためにhttp_pollerプラグインが使用されます。 最後に、サイトのステータスを標準出力に書き込みます。

input {
   http_poller {
      urls => {
         site => "http://localhost:8080/mysite"
      }
      request_timeout => 20
      interval => 30
      metadata_target => "http_poller_metadata"
   }
}
output {
   if [http_poller_metadata][code] == 200 {
      stdout {
         codec => line{format => "%{http_poller_metadata[response_message]}"}
      }
   }
   if [http_poller_metadata][code] != 200 {
      stdout {
         codec => line{format => "down"}
      }
   }
}

logstashを実行する

次のコマンドでLogstashを実行できます。

>logstash –f logstash.conf

標準

サイトが稼働している場合、出力は次のようになります-

Ok

Tomcatの* Managerアプリ*を使用してサイトを停止すると、出力は次のように変わります-

down

セキュリティ

Logstashは、外部システムとの安全な通信のための多くの機能を提供し、認証メカニズムをサポートします。 すべてのLogstashプラグインは、HTTP接続を介した認証と暗号化をサポートしています。

HTTPプロトコルによるセキュリティ

ElasticsearchプラグインなどのLogstashが提供するさまざまなプラグインには、認証目的のユーザーやパスワードなどの設定があります。

elasticsearch {
   user => <username>
   password => <password>
}

もう1つの認証は、Elasticsearchの* PKI(公開キー基盤)*です。 開発者は、PKI認証を有効にするためにElasticsearch出力プラグインで2つの設定を定義する必要があります。

elasticsearch {
   keystore => <string_value>
   keystore_password => <password>
}

HTTPSプロトコルでは、開発者はSSL/TLSに認証局の証明書を使用できます。

elasticsearch {
   ssl => true
   cacert => <path to .pem file>
}

トランスポートプロトコルによるセキュリティ

Elasticsearchでトランスポートプロトコルを使用するには、ユーザーがプロトコル設定をtransportに設定する必要があります。 これにより、JSONオブジェクトの非整列化が回避され、効率が向上します。

基本認証は、Elasticsearch出力プロトコルのhttpプロトコルで実行されるものと同じです。

elasticsearch {
   protocol => “transport”
   user => <username>
   password => <password>
}

PKI認証では、Elasticsearch出力プロトコルの他の設定でSSLセットがtrueになる必要もあります-

elasticsearch {
   protocol => “transport”
   ssl => true
   keystore => <string_value>
   keystore_password => <password>
}

最後に、SSLセキュリティには、通信の他のセキュリティ方法よりも多くの設定が必要です。

elasticsearch {
   ssl => true
   ssl => true
   keystore => <string_value>
   keystore_password => <password>
   truststore =>
   truststore_password => <password>
}

Logstashのその他のセキュリティ上の利点

Logstashは、システムソースを入力して、サービス拒否攻撃などの攻撃を防ぐのに役立ちます。 ログの監視とそれらのログ内のさまざまなイベントの分析は、システム管理者が着信接続とエラーの変動を確認するのに役立ちます。 これらの分析は、サーバーで攻撃が発生しているかどうかを確認するのに役立ちます。

Elasticsearch Companyの他の製品( x-packfilebeat など)は、Logstashと安全に通信するための機能を提供します。