TLS を設定して Elastic Stack の通信を暗号化する
クラスタ内のノード間の通信を保護するために、Transport Layer Security(TLS)を使用して通信を暗号化します。この基本セキュリティ設定は、承認されていないノードによるクラスタへのアクセス防止に役立ちます。
セキュリティで保護されたクラスタの Elastic Search ノードでは、他のノードとの通信を開始する前に、認証局(CA)によって署名された証明書を使用して自身を識別する必要があります。クラスタでは、これらの証明書の真正性を検証する必要があります。認証局(CA)はデジタル証明書を発行する信頼できるエンティティです。これらの証明書は、暗号化でエンティティを公開キーとリンクするために使用されるデータファイルです。
証明書はイベントサービスにバンドルされていません。独自の CA を使用して、セキュリティで保護されていない既存のクラスターでセキュリティを有効にするか、トランスポート インターフェイスで TLS を手動で設定できます。TLS を使用して HTTP トラフィックを保護することもできます。
イベントサービスバージョン 23.4.0 では、次のソフトウェアバージョンと変数がサポートされます。
| 認証 | Basic 認証 |
| TLSのバージョン | TLSv1.3 |
| APPLICATION_HOME(変数) | /home/ec2-user/appdynamics/platform/product/events-service/processor |
トランスポート インターフェイスで Basic 認証と TLS を有効にする
クラスターに複数のノードがある場合は、Basic 認証を有効にしてから、ノード間の Transport Layer Security(TLS)を設定する必要があります。実稼働モードのクラスターでは、Basic 認証では不十分です。
HTTP インターフェイスで TLS を有効にする
ad.es.node.security.tls.http.enabled プロパティは、イベントサービスと ElasticSearch 間の HTTP 通信の TLS を有効または無効にします。
次の点を確認します。
ad.es.node.security.basic.auth.enabled=trueおよびad.es.node.security.tls.transport.enabled=trueプロパティが有効になっている- イベントサービスサーバーを停止する
その後で次の手順を実行します。
TLS が有効になっているか確認する
イベントサービスで Elastic Search クラスターと通信できるようになり、これは events-service-api-store.log ファイルで確認できます。
ログ
[2023-03-25T15:11:19,192+05:30] [INFO ] [main] [c.a.a.p.e.n.s.ElasticsearchDependencyModule] Elasticsearch healthy, it should now be responsive.
[2023-03-25T15:11:19,194+05:30] [INFO ] [main] [c.a.a.p.e.index.MetaDataIndexCreator] Creating metaData indices...
次のように、HTTP で TLS が有効になっているか確認します。
HTTP で TLS が有効になっているか確認する
❯ curl -X GET "https://localhost:9200" -k -u elastic:pass123
{
"name" : "ATKUMAR3-M-2344",
"cluster_name" : "appdynamics-events-service-cluster",
"cluster_uuid" : "eLk8ZXUDTe2yKTt-AChDLg",
"version" : {
"number" : "8.4.3",
"build_flavor" : "default",
"build_type" : "tar",
"build_hash" : "42f05b9372a9a4a470db3b52817899b99a76ee73",
"build_date" : "2022-10-04T07:17:24.662462378Z",
"build_snapshot" : false,
"lucene_version" : "9.3.0",
"minimum_wire_compatibility_version" : "7.17.0",
"minimum_index_compatibility_version" : "7.0.0"
},
"tagline" : "You Know, for Search"
}