From e63a052a3e4299ec8de34a3b644fc99e491f0bd8 Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Tue, 21 Nov 2023 16:14:21 -0500 Subject: [PATCH 01/35] Add on-prem stack install demo --- docs/en/install-upgrade/index.asciidoc | 2 + .../installing-stack-demo-self.asciidoc | 196 ++++++++++++++++++ .../install-upgrade/installing-stack.asciidoc | 2 + 3 files changed, 200 insertions(+) create mode 100644 docs/en/install-upgrade/installing-stack-demo-self.asciidoc diff --git a/docs/en/install-upgrade/index.asciidoc b/docs/en/install-upgrade/index.asciidoc index f3192cd5f..83da58882 100644 --- a/docs/en/install-upgrade/index.asciidoc +++ b/docs/en/install-upgrade/index.asciidoc @@ -17,6 +17,8 @@ include::overview.asciidoc[] include::installing-stack.asciidoc[] +include::installing-stack-demo-self.asciidoc[] + include::air-gapped-install.asciidoc[] include::upgrading-stack.asciidoc[] diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc new file mode 100644 index 000000000..f7c4f9c54 --- /dev/null +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -0,0 +1,196 @@ +// for testing: +:version: 8.11.1 + + +[[installing-stack-demo-self]] +=== Tutorial: Installing a self-managed {stack} + +This tutorial demonstrates how to install and configure the {stack} in a self-managed environment. The example sets up a three node {es} cluster, with {kib}, {fleet-server}, and {agent}, each on separate hosts. + +These examples use hosts running Red Hat Enterprise Linux 8. The steps for other operating systems are similar, and can be found in the documentation linked from each section. + +It should take about an hour to complete all of these steps. + +. <> +. <> + +[discrete] +[[install-stack-self-prereq]] +== Prerequisites + +To get started, you'll need the following: + +* A set of virtual or physical hosts on which to install each stack component. +* On each host, a super user account with `sudo` privileges. + +[discrete] +[[install-stack-self-elasticsearch-primary]] +== Step 1: Set up the initial {es} node + +To begin, we'll use RPM to install {es} on the first host. This first {es} instance will serve as the master node. + +. Create a working directory for the installation package: ++ +["source","shell"] +---- +mkdir elastic-install-files +---- + +. Change into the new directory: ++ +["source","shell"] +---- +cd elastic-install-files +---- + +. Download the {es} RPM and checksum file from the Elastic website. You can find details about these steps in the section {ref}/rpm.html#install-rpm[Download and install the RPM manually]. ++ +["source","sh",subs="attributes"] +---- +wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-{version}-x86_64.rpm +wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-{version}-x86_64.rpm.sha512 +---- + +. Confirm the validity of the downloaded package by checking the SHA of the downloaded RPM against the published checksum: ++ +["source","sh",subs="attributes"] +---- +shasum -a 512 -c elasticsearch-{version}-x86_64.rpm.sha512 +---- ++ +The command should return: `elasticsearch-{version}-x86_64.rpm: OK`. + +. Run the {es} install command: ++ +["source","sh",subs="attributes"] +---- +sudo rpm --install elasticsearch-{version}-x86_64.rpm +---- ++ +The {es} install process enables certain security features by default, including the following: + +* Authentication and authorization are enabled, including a built-in `elastic` superuser account. +* Certificates and keys for TLS are generated for the transport and HTTP layer, and TLS is enabled and configured with these keys and certificates. + +. Copy the terminal output from the install command to a local file. In particular, you'll need the password for the built-in `elastic` superuser account. The output also contains the commands to enable {es} to run as a service, which we'll use in the next step. + +. Run the following two commands to enable {es} to run as a service using `systemd`. This enables {es} to start automatically when the host system reboots. You can find details about this and the following steps in {ref}/starting-elasticsearch.html#start-es-deb-systemd[Running {es} with `systemd`]. ++ +["source","sh",subs="attributes"] +---- +sudo systemctl daemon-reload +sudo systemctl enable elasticsearch.service +---- + +. Start the {es} service: ++ +["source","sh",subs="attributes"] +---- +sudo systemctl start elasticsearch.service +---- + +. Make sure that {es} is running properly. ++ +["source","sh",subs="attributes"] +---- +sudo curl --cacert /etc/elasticsearch/certs/http_ca.crt -u elastic:$ELASTIC_PASSWORD https://localhost:9200 +---- ++ +In the command, replace `$ELASTIC_PASSWORD` with the `elastic` superuser password that you copied from the install command output. ++ +If all is well, the command returns a response like this: ++ +["source","js",subs="attributes,callouts"] +---- +{ + "name" : "Cp9oae6", + "cluster_name" : "elasticsearch", + "cluster_uuid" : "AT69_C_DTp-1qgIJlatQqA", + "version" : { + "number" : "{version_qualified}", + "build_type" : "{build_type}", + "build_hash" : "f27399d", + "build_flavor" : "default", + "build_date" : "2016-03-30T09:51:41.449Z", + "build_snapshot" : false, + "lucene_version" : "{lucene_version}", + "minimum_wire_compatibility_version" : "1.2.3", + "minimum_index_compatibility_version" : "1.2.3" + }, + "tagline" : "You Know, for Search" +} +---- + +[discrete] +[[install-stack-self-elasticsearch-config]] +== Step 2: Configure the initial {es} node for connectivity + +Before moving ahead to configure {es} instances, we'll need to update the {es} configuration on this first node so that other hosts are able to connect to it. This is done by updating the settings in the `elasticsearch.yml` file. For details about all available settings refer to {ref}/settings.html[Configuring {es}]. + +. Open the {es} configuration file in a text editor, such as `vim`: ++ +["source","sh",subs="attributes"] +---- +sudo vim /etc/elasticsearch/elasticsearch.yml +---- + +. In a multi-node {es} cluster, all of the {es} instances need to have the same name. ++ +In the configuration file, uncomment the line `#cluster.name: my-application` and give the {es} instance any name that you'd like: ++ +[source,shell] +---- +cluster.name: elasticsearch-demo +---- + +. Save your changes and close the editor. + +. By default, {es} runs on `localhost`. In order for {es} instances on other nodes to be able to join the cluster, we'll need to set up {es} to run on a routable, external IP address. ++ +In a terminal, run `ifconfig` and copy the value for the host inet IP address. + +. Reopen the configuration file for editing. + +. Uncomment the line `#network.host: 92.168.0.1` and replace the default address with the value that you copied. ++ +[source,shell] +---- +network.host: 10.128.0.84 +---- + +. Next, {es} needs to be enabled to listen for connections from other, external hosts. ++ +Uncomment the line `#transport.host: 0.0.0.0`. The `0.0.0.0` setting enables {es} to listen for connections on all available network interfaces. Note that in a production environment you might want to restrict this by setting this value to match the value set for `network.host`. ++ +[source,shell] +---- +transport.host: 0.0.0.0 +---- ++ +TIP: You can find details about the `network.host` and `transport.host` settings in the {es} {ref}/modules-network.html[Networking] documentation. + +. Save your changes and close the editor. + +. Restart {es}: ++ +[source,shell] +---- +sudo systemctl restart elasticsearch +---- + +. Finally, check the status of your {es} instanace. Log into the {es} node through a separate terminal instance and tail the {es} instance log file: ++ +[source,shell] +---- +sudo tail -f /var/log/elasticsearch/elasticsearch-demo.log +---- + +. In the log file, look for an entry like `current.health="GREEN"` to confirm that {es} is running as expected. In the event of any issues, the log will contain helpful diagnostic information. You can refer to the {es} {ref}/troubleshooting.html[Troubleshooting] documentation for other tips. + +[discrete] +[[install-stack-self-elasticsearch-secondary]] +== Step 3: Set up a second {es} node + +next + + diff --git a/docs/en/install-upgrade/installing-stack.asciidoc b/docs/en/install-upgrade/installing-stack.asciidoc index 950937d4f..f3c632e89 100644 --- a/docs/en/install-upgrade/installing-stack.asciidoc +++ b/docs/en/install-upgrade/installing-stack.asciidoc @@ -8,6 +8,8 @@ Kibana {version}, and Logstash {version}. If you're upgrading an existing installation, see <> for information about how to ensure compatibility with {version}. +For an example of installing and configuring the {stack}, you can try out our <>. + [discrete] [[network-requirements]] === Network requirements From b94e40ded6faa9d1394ee16bfa3d51999f8f484f Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Tue, 21 Nov 2023 18:08:23 -0500 Subject: [PATCH 02/35] Add steps 3 & 4 --- .../installing-stack-demo-self.asciidoc | 180 ++++++++++++++++-- 1 file changed, 168 insertions(+), 12 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index f7c4f9c54..f5f46d3f3 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -5,14 +5,16 @@ [[installing-stack-demo-self]] === Tutorial: Installing a self-managed {stack} -This tutorial demonstrates how to install and configure the {stack} in a self-managed environment. The example sets up a three node {es} cluster, with {kib}, {fleet-server}, and {agent}, each on separate hosts. +This tutorial demonstrates how to install and configure the {stack} in a secure, self-managed environment. Following these steps, you'll set up a three node {es} cluster, with {kib}, {fleet-server}, and {agent}, each on separate hosts. The {agent} will be configured with the System integration, enabling it to gather local system logs and metrics and deliver them into the {es} cluster. Finally, you'll view the system data in {kib}. These examples use hosts running Red Hat Enterprise Linux 8. The steps for other operating systems are similar, and can be found in the documentation linked from each section. -It should take about an hour to complete all of these steps. +It should take an hour or so to complete these steps. -. <> +. <> . <> +. <> +. <> [discrete] [[install-stack-self-prereq]] @@ -24,10 +26,10 @@ To get started, you'll need the following: * On each host, a super user account with `sudo` privileges. [discrete] -[[install-stack-self-elasticsearch-primary]] -== Step 1: Set up the initial {es} node +[[install-stack-self-elasticsearch-first]] +== Step 1: Set up the first {es} node -To begin, we'll use RPM to install {es} on the first host. This first {es} instance will serve as the master node. +To begin, we'll use RPM to install {es} on the first host. This initial {es} instance will serve as the master node. . Create a working directory for the installation package: + @@ -123,7 +125,7 @@ If all is well, the command returns a response like this: [discrete] [[install-stack-self-elasticsearch-config]] -== Step 2: Configure the initial {es} node for connectivity +== Step 2: Configure the first {es} node for connectivity Before moving ahead to configure {es} instances, we'll need to update the {es} configuration on this first node so that other hosts are able to connect to it. This is done by updating the settings in the `elasticsearch.yml` file. For details about all available settings refer to {ref}/settings.html[Configuring {es}]. @@ -151,7 +153,7 @@ In a terminal, run `ifconfig` and copy the value for the host inet IP address. . Reopen the configuration file for editing. -. Uncomment the line `#network.host: 92.168.0.1` and replace the default address with the value that you copied. +. Uncomment the line `#network.host: 92.168.0.1` and replace the default address with the value that you copied. For example: + [source,shell] ---- @@ -178,19 +180,173 @@ TIP: You can find details about the `network.host` and `transport.host` settings sudo systemctl restart elasticsearch ---- -. Finally, check the status of your {es} instanace. Log into the {es} node through a separate terminal instance and tail the {es} instance log file: +. Finally, check the status of your {es} instance: ++ +[source,shell] +---- +sudo systemctl status elasticsearch +---- ++ +The output should confirm that {es} started successfully. ++ +In case you'd like more detailed information, you can log into the {es} node through a separate terminal instance and tail the {es} instance log file: + [source,shell] ---- sudo tail -f /var/log/elasticsearch/elasticsearch-demo.log ---- -. In the log file, look for an entry like `current.health="GREEN"` to confirm that {es} is running as expected. In the event of any issues, the log will contain helpful diagnostic information. You can refer to the {es} {ref}/troubleshooting.html[Troubleshooting] documentation for other tips. +. In the log file, look for an entry like `current.health="GREEN"` to confirm that {es} is running as expected. In the event of any issues, the log will contain helpful diagnostic information. You can also refer to the {es} {ref}/troubleshooting.html[Troubleshooting] documentation for many other problem solving tips. [discrete] -[[install-stack-self-elasticsearch-secondary]] +[[install-stack-self-elasticsearch-second]] == Step 3: Set up a second {es} node -next +To set up a second {es} node, the initial steps are the same as those you followed for <>. + +. Create a working directory for the installation package: ++ +["source","shell"] +---- +mkdir elastic-install-files +---- + +. Change into the new directory: ++ +["source","shell"] +---- +cd elastic-install-files +---- + +. Download the {es} RPM and checksum file: ++ +["source","sh",subs="attributes"] +---- +wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-{version}-x86_64.rpm +wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-{version}-x86_64.rpm.sha512 +---- + +. Check the SHA of the downloaded RPM: ++ +["source","sh",subs="attributes"] +---- +shasum -a 512 -c elasticsearch-{version}-x86_64.rpm.sha512 +---- + +. Run the {es} install command: ++ +["source","sh",subs="attributes"] +---- +sudo rpm --install elasticsearch-{version}-x86_64.rpm +---- ++ +Unlike the setup for the first {es} node, in this case you don't need to copy the output of the install command, since these settings will be updated in a later step. + +. Enable {es} to run as a service: ++ +["source","sh",subs="attributes"] +---- +sudo systemctl daemon-reload +sudo systemctl enable elasticsearch.service +---- + +. To enable this second {es} node to connect to the first, you need to configure an enrollment token. You can find details about these steps in {ref}/rpm.html#_reconfigure_a_node_to_join_an_existing_cluster_2[Reconfigure a node to join an existing cluster] and also in {ref}/add-elasticsearch-nodes.html#_enroll_nodes_in_an_existing_cluster_5[Enroll nodes in an existing cluster]. ++ +Return to your terminal shell into the first {es} node. + +. Generate a node enrollment token: ++ +[source,shell] +---- +sudo /usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s node +---- + +. Copy the generated enrollment token from the command output. + +. In the terminal shell for your second {es} node, pass the enrollment token as a parameter to the `elasticsearch-reconfigure-node` tool: ++ +[source,shell] +---- +sudo /usr/share/elasticsearch/bin/elasticsearch-reconfigure-node --enrollment-token +---- ++ +In the command, replace `] master node changed {previous [], current [...]} +---- ++ +Here, `hostname1` is your first {es} instance node, and `hostname2` is your second {es} instance node. ++ +The message indicates that the second {es} node has successfully contacted the initial {es} node and joined the cluster. + +[discrete] +[[install-stack-self-elasticsearch-third]] +== Step 4: Set up a third {es} node + +To set up your third {es} node, follow exactly the same steps as you did previously in <>. + + + From eb68c935669b621f0a8550860ec4995f0134b181 Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Wed, 22 Nov 2023 18:19:09 -0500 Subject: [PATCH 03/35] Add Kibana install steps --- .../installing-stack-demo-self.asciidoc | 204 +++++++++++++++++- 1 file changed, 195 insertions(+), 9 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index f5f46d3f3..14e0d3c77 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -15,6 +15,7 @@ It should take an hour or so to complete these steps. . <> . <> . <> +. <> [discrete] [[install-stack-self-prereq]] @@ -31,6 +32,8 @@ To get started, you'll need the following: To begin, we'll use RPM to install {es} on the first host. This initial {es} instance will serve as the master node. +. Log in to the host where you'd like to set up your first {es} node. + . Create a working directory for the installation package: + ["source","shell"] @@ -90,6 +93,8 @@ sudo systemctl enable elasticsearch.service ---- sudo systemctl start elasticsearch.service ---- ++ +If you need to, you can stop the service by running `sudo systemctl stop elasticsearch.service`. . Make sure that {es} is running properly. + @@ -202,7 +207,9 @@ sudo tail -f /var/log/elasticsearch/elasticsearch-demo.log [[install-stack-self-elasticsearch-second]] == Step 3: Set up a second {es} node -To set up a second {es} node, the initial steps are the same as those you followed for <>. +To set up a second {es} node, the initial steps are similar to those that you followed for <>. + +. Log in to the host where you'd like to set up your second {es} node. . Create a working directory for the installation package: + @@ -252,6 +259,8 @@ sudo systemctl enable elasticsearch.service . To enable this second {es} node to connect to the first, you need to configure an enrollment token. You can find details about these steps in {ref}/rpm.html#_reconfigure_a_node_to_join_an_existing_cluster_2[Reconfigure a node to join an existing cluster] and also in {ref}/add-elasticsearch-nodes.html#_enroll_nodes_in_an_existing_cluster_5[Enroll nodes in an existing cluster]. + +IMPORTANT: Be sure to run all of these configuration steps before starting the {es} service. ++ Return to your terminal shell into the first {es} node. . Generate a node enrollment token: @@ -273,6 +282,14 @@ sudo /usr/share/elasticsearch/bin/elasticsearch-reconfigure-node --enrollment-to In the command, replace `>. +To set up your third {es} node, follow exactly the same steps as you did previously in <>. The process is identical for each additional {es} node that you would like to add to the cluster. As a recommended best practice, create a new enrollment token for each new node that you add. +[discrete] +[[install-stack-self-kibana]] +== Step 5: Install {kib} +As with {es}, we'll use RPM to install {kib} on another host. You can find details about all of the following steps in the section {kibana-ref}/rpm.html#install-rpm[Install {kib} with RPM]. +. Log in to the host where you'd like to install {kib} and create a working directory for the installation package: ++ +["source","shell"] +---- +mkdir elastic-install-files +---- +. Change into the new directory: ++ +["source","shell"] +---- +cd elastic-install-files +---- + +. Download the {kib} RPM and checksum file from the Elastic website. ++ +["source","sh",subs="attributes"] +---- +wget https://artifacts.elastic.co/downloads/kibana/kibana-{version}-x86_64.rpm +wget https://artifacts.elastic.co/downloads/kibana/kibana-{version}-x86_64.rpm.sha512 +---- + +. Confirm the validity of the downloaded package by checking the SHA of the downloaded RPM against the published checksum: ++ +["source","sh",subs="attributes"] +---- +shasum -a 512 -c kibana-{version}-x86_64.rpm.sha512 +---- ++ +The command should return: `kibana-{version}-x86_64.rpm: OK`. + +. Run the {es} install command: ++ +["source","sh",subs="attributes"] +---- +sudo rpm --install elasticsearch-{version}-x86_64.rpm +---- + +. As with each addition {es} node that you added, to enable this {kib} to connect to the first {es} node, you need to configure an enrollment token. ++ +Return to your terminal shell into the first {es} node. + +. Run the `elasticsearch-create-enrollment-token` command with the `-s kibana` option to generate a {kibana} enrollment token: ++ +[source,shell] +---- +sudo /usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s kibana +---- + +. Copy the generated enrollment token from the command output. + +. Run the following two commands to enable {kib} to run as a service using `systemd`, enabling {kib} to start automatically when the host system reboots. ++ +["source","sh",subs="attributes"] +---- +sudo systemctl daemon-reload +sudo systemctl enable kibana.service +---- + +. Before starting the {kib} service there's one configuration change to make, to set {kib} to run on the {es} host IP address. This is done by updating the settings in the `kibana.yml` file. For details about all available settings refer to {kibana-ref}/settings.html[Configure {kib}]. + +. In a terminal, run `ifconfig` and copy the value for the host inet IP address. + +. Open the {kib} configuration file in a text editor, such as `vim`: ++ +["source","sh",subs="attributes"] +---- +sudo vim /etc/kibana/kibana.yml +---- + +. Uncomment the line `#server.host: localhost` and replace the default address with the value that you copied. For example: ++ +[source,shell] +---- +server.host: 10.128.0.84 +---- + +. Save your changes and close the editor. + +. Start the {kib} service: ++ +["source","sh",subs="attributes"] +---- +sudo systemctl start kibana.service +---- ++ +If you need to, you can stop the service by running `sudo systemctl stop kibana.service`. + +. Run the `status` command to get details about the {kib} service. ++ +["source","sh",subs="attributes"] +---- +sudo systemctl status kibana +---- + +. In the `status` command output a URL is shown with a host address to access {kib} and a six digit verification code. For example: ++ +["source","sh",subs="attributes"] +---- +Kibana has not been configured. +Go to http://10.128.8.28:5601/?code= to get started. +---- + +. Open a web browser to the address above. It can take a minute or two for {kib} to start up, so refresh the page if you don't see a prompt right away. In the event of any problems, you can instead open your browser to the external IP address of the {kibana} host machine, for example: `http://:5601`. + +. When {kib} starts, you're prompted to provide an enrollment token. Paste in the {kib} enrollment token that you generated earlier. + +. Click **Configure Elastic**. + +. If you're prompted to provide a verification code, copy and paste in the six digit code that was returned by the `status` command. Then, wait for the setup to complete. + +// Note to reviewers: Kibana says to run `/bin/kibana-verification-code` to retrieve the code, but I'm not sure if that command works when Kibana is running as a service. So, I documented to get the code from the status command output instead. + +. When you see the **Welcome to Elastic** page, provide the superuser `elastic` username and the password that you copied in Step 1 from the install command when you set up your first {es} node. + +. Click **Log in**. + +. On the **Start by adding integrations** prompt, select **Explore on my own**. + +{kib} is now fully set up and communicating with your {es} cluster! + +[discrete] +[[install-stack-self-fleet-server]] +== Step 5: Install {fleet-server} + +something... + +. Log in to the host where you'd like to set up your second {es} node. + +. Create a working directory for the installation package: ++ +["source","shell"] +---- +mkdir elastic-install-files +---- From d3fea0b64a09ac30877061bcc08c670bb5ff5a75 Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Wed, 22 Nov 2023 19:36:37 -0500 Subject: [PATCH 04/35] Add steps for Fleet Server --- .../installing-stack-demo-self.asciidoc | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index 14e0d3c77..e85bab56f 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -16,6 +16,7 @@ It should take an hour or so to complete these steps. . <> . <> . <> +. <> [discrete] [[install-stack-self-prereq]] @@ -48,7 +49,7 @@ mkdir elastic-install-files cd elastic-install-files ---- -. Download the {es} RPM and checksum file from the Elastic website. You can find details about these steps in the section {ref}/rpm.html#install-rpm[Download and install the RPM manually]. +. Download the {es} RPM and checksum file from the {artifact-registry}. You can find details about these steps in the section {ref}/rpm.html#install-rpm[Download and install the RPM manually]. + ["source","sh",subs="attributes"] ---- @@ -525,9 +526,9 @@ Go to http://10.128.8.28:5601/?code= to get started. [[install-stack-self-fleet-server]] == Step 5: Install {fleet-server} -something... +Now that {kib} is up and running, we'll install {fleet-server}, which will manage the {agent} that we'll set up in a later step. If you need more detail about these steps, refer to {fleet-guide}/add-fleet-server-on-prem.html[Deploy on-premises and self-managed] in the {fleet} and {agent} Guide. -. Log in to the host where you'd like to set up your second {es} node. +. Log in to the host where you'd like to set up {fleet-server}. . Create a working directory for the installation package: + @@ -536,3 +537,48 @@ something... mkdir elastic-install-files ---- +. Change into the new directory: ++ +["source","shell"] +---- +cd elastic-install-files +---- + +. Back to your web browser, open the {kib} menu and go to **Management -> Fleet**. {fleet} opens with a message that you need to add a {fleet-server}. + +. Click **Add Fleet Server**. The **Add a Fleet Server** flyout opens. + +. In the flyout, select the **Quick Start** tab. + +. Give your {fleet-server} instance a name. + +. Specify the host URL where {agents} will reach {fleet-server}, for example: `https://10.128.0.203`. To find this URL, open a terminal on your {fleet-server} node, run `ifconfig` and copy the value for the host inet IP address. You don't need to privide a port number. + +. Click **Generate Fleet Server policy**. A policy is created that contains all of the configuration settings for the {fleet-server} instance. + +. On the **Install Fleet Server to a centralized host** step, for this example we'll select the **Linux Tar** tab, but you can select the tab appropriate to the host operating system where you're setting up {fleet-server}. + +. Copy the generated commands and then run them one-by-one in the terminal on your {fleet-server} host. Make sure to run all of the commands as `sudo`, even if not specified in the UI. ++ +These commands will, respectively: + +.. Download the {fleet-server} package from the {artifact-registry}. +.. Unpack the package archive. +.. Change into the directory containing the install binaries. +.. Install {fleet-server}. ++ +If you'd like to learn about the install command options, refer to {fleet-guide}/elastic-agent-cmd-options.html#elastic-agent-install-command[`elastic-agent install`] in the {agent} command reference. + +. At the prompt, enter `Y` to install {agent} and run it as a service. Wait for the installation to complete. + +. In the {kib} **Add a Fleet Server** flyout, wait for confirmation that {fleet-server} has connected. + +. Close the flyout. + +{fleet-server} is now fully set up! + +[discrete] +[[install-stack-self-elastic-agent]] +== Step 6: Install {agent} + +tbd \ No newline at end of file From d6fa04536bfea252946a80ad41433d1a70c8f7e3 Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Thu, 23 Nov 2023 17:10:37 -0500 Subject: [PATCH 05/35] Add agent & view data steps --- .../install-stack-metrics-dashboard.png | Bin 0 -> 130778 bytes .../installing-stack-demo-self.asciidoc | 75 +++++++++++++++++- 2 files changed, 74 insertions(+), 1 deletion(-) create mode 100644 docs/en/install-upgrade/images/install-stack-metrics-dashboard.png diff --git a/docs/en/install-upgrade/images/install-stack-metrics-dashboard.png b/docs/en/install-upgrade/images/install-stack-metrics-dashboard.png new file mode 100644 index 0000000000000000000000000000000000000000..24c7faf663a18b6d9dc77f8e714b234d997cdbbd GIT binary patch literal 130778 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

iPd+G&1esMlA8w#bamyy)ehMN-ug!?Uz4mS zv)f_QO=4^Cq^u6py=PToX3lYm_6*8YN)j-g5V43q=34Y6EK8j{NtFEl{jn^CRc0Js zqv8zg(vh;5v^oEKes97+I6bN3YS9jNpHjr1&u+Edr{7frNQ-jk~t(e4{4y45(qwup2rI#CJY`5$w*k!?=Ot@rwLDj+5pxxtG66`TcP#k zEdc%|`c3xhExw^V41fOosR38@p*pSqR2I##u(I-_qJeJ$&-Ayzhg&PjjcUC{7Q5wU zuKmgUup1PM0>V1;?|4m?V`P$=n$<=*9*2uFDhtjLSd;?&pOtcK_1>$3YszK;5vitG zZQPYB9^=p$OpAn)7E8!lH~fyZ9z4J3zvC>+V^_rdZ=9>8@JL#e_&3w#26mb;!HysT zEmfHo%!$Tau7l|^(LxVo5Zw71?OY=6n6K2Xo^wnbvAuD=6(bu$kHODeOi&1c_ojK#RN%cZq_B{$V%1iSX&%m}Z0m?#otxKtUlpa9C7R83b6^6M;95f7Zopfs%HTVd-vO6ai4vtJsPeA^ zrdmDKFJC;^j61W10WocVzBT{Lc#LcN_;1wfE{0JLfbBE(yL|ws>AP&sghMO`WZ5t!esGCg!~rzoeTE ztCf-dBd>#Z#>9L-n(QwQMYPijj6%hK4da$- z*0-L$YQ!WWB61O#fgHYAd=9mje8Sh1FUOlIwc-dan+y%h`S2illobXG3*Q`0<^*?1 z2vF$-jvS%gT_V00)*}R$i&MQzH{Y2)5qN|huO@^Bb^sRB9&jNU@V!g3e|r_xBm@iR z+Y@utt}9Mb_);6lzuLTrUpPMp=m#|TT`p`H3X84hzLVKbuuEAM7 zYOLX6Fz638bqWuRzaItvnB*M0J2vB-Oga+NBb1ZFc?$D|xOmvS50l7V#vZO7+B;GQ zd`f{|13&27ljmR6*G}*I@s(@9?`wYC@@+YJULX=KC97Vj-SiNTRawAZs$3jaQ{mA`@#~x1vP5M_zJL;;BrNoSwd8|67#mzX*nn zXlDSU4#Z4WBVQgw+ECA{Hm(cEdh!oB>$1qf=3{{CAjN)}84;PxH3M)%GPuCn7p9UY znNlesmcU~_&)MX*twcB`ZNITIRd|qTm1_#Fq>0m+Er*=wMXmQbgzm&z6I{yeq0wWc zcC;FbDPFAl9WVSC1HKlL^7n9Oj2?4+TD4i~D5A7qA`huM>A`K-7xdu#)yEO56D<*D zHx=r8d=7qh&j5uNG-CAEA)iu{yxeV)^l$+j26m-vgmh31n&jTJaZAB(l-QdIX-fDk zoS$E1OPVZ)Qs>xZfBknPJy(0xxW~Wv%r+Zml1_z-HSJuj#MX;><;5C-wVZ&W1WZaI zFE1|`SrLV7w_PWxj}t+U!kbQz{kZ)+k=Dt&;&05KFNzs#wXKV#`(chIqaV2F#A_B5 zr~+?H9g8lMLie#n|EVzGyb>Ij+XR;~5|u^sfrH#laN+M`&@6F`!&{1v@FcvktEE%pRJ&YQ)#lE>2;AaW{__5IpOg3lFKJcO$ z(*_p>Dg8J#9TzsqO-|1Vf7@k*FamFdDF`^h&~K zZH7&p(+}FK=seqbU%dVYl|xTmem` z&N%RP;3ApIdkxX^>^sv(k%?V=qrh8>k=kc-UAVNJzVz?~?a1^?ilu@AB#evzraufy zJZfKToABSLe+&<%g{G#ZQWVR~cXcIu$732YvzViV=_X*;37c@JBmL`<%<-3NkNJTKM;@D z3a3#fWIo6dTNQMmTQ5`Hd|RqoTvQY;U~c^gvIYwvNr3sTv2gMkHJ{=-3e_bkPj)dD za#h|RMB#YdmeWCUT_9|a=5EEFMIU_-323zlK#ah_P)R8Q5+56Vn5&IU@AvVIBPP2# zw~Ka1=R$!Nu~LIFI>rCoEnUoc8ZcW|mT#%2c05>jnP+*NYu4SvcC7lxqJc!7?FKI#gO5R>%hNKLR^K)lWeq znUwQ#1%h#8q5`Uzki5=*fuNzP6%5rc<;eT~?RE^l!LoWUU!AT}weJ;P!n<|~;&i~B zQo4tWjmWb6dqDdn{>bn4S>+~cvoi=>DW(G$E>ay_jbV^1BqdZ99{dHQRIWhhMzeO{ zn6Q-lL5@j$CrcgB?|Xf8Nb>9N+2#l-+-FoFiAs2$@x8&@E8f0Mpw~<%TewU-B@s-h z>ykr|nytQ&^#RpR6p5XCw$;P#X;}xr`a9~V;*gw+1ZdYHiiuU3l1p9{iX&ua$lf9i z#h9x+!=`%s*QahF{-VLURcRY^i9r)xs#j1Ib53jQb-xg`B@tYP*ol)L$ZZ0~p4GEDisVBysNqfFR z=^`MWJo5THnuW>jbMpp^3daSE&9GGiK7aYQ@7{5?l9Zg^m7zkX_HEf)P6fczCm06a zZeqmRPsV+a&qXWV2QfWe5am;xvAa&P`T051w!o;vmyYX&P+?2riO4 zH-Lseh)~-wEkt*`TRjiSnzAXMou8c*4C^9D-zC#Z9_*;)DV=P~rh=gowOF`7>V%6G zcwQ|5l*GBNUU0kIOi+X6xD1lssqcP$3;msi@{Hm#Z{AsgMQhZ2EdtD!?crjUGOcFQ zFqLJMI$e$x_M?M+og>ZTa52@#DT_zf0vp>joMR0) zw>Zl|SKsMvtfF=XRWn&8fhdFmozuj08F6zE$@ZNRianh7DBM^YR!hYI|__~M1~VcxI#U4CdGr`2ghL3 z4i|PD5{I_}$mjBNb(dtL<9ZcbkdS(?lTjv+mX@XqK4xL9Cv2fV246Qvz~jH1q+asZ zj=TX%HTVE8Z=1A@900WJk{Qq-$qsS(QaPkZBcZN=PLO*8wnQVTyti7P>Dx2X?Pue> z;@a*okPiEebL3h4Wd9xs*=sn=SGG--ta=lM{Q1KW>GKPJ| z$Z|6*#N~==Sh0Y@%XX3siZc*vt;ZCO(V&!fwE9Y1*DSK4Q|pVK{mx|mXKOv+!5RW! z(}D!*9PkL9N94$m9?t4NOLK6@Wed#e^jb^3SoK_TU}I$+amLsG>iE)NHa0Z+%xAaw zJ%&r={*t7GZh(74XFPtF%ctIG6RoSGgq%c@>$DUX1c3w0K8d2f3ke;lo} zQBDnI4Xl=(xhRIYt#ylQ?TD%AG6@r9w|*}*45AIj>1C^GUTEP_zU{_AP3tA5={K&X z@HOVWxoAJ8ARS63qSW1P#iX?PNX7`Q6hj#PNH3dM6B}RsVI~

X!@1i*T>bNex(DP8jzPj1{3eU{yK|Zrd_RFKD|w%WsD})L z>fhSXvjFUPp_?F?g5M^oX=#17vz5%&fx%-7R-fK{ci>lXsi^eobu~_mN-;Z?lz@3t zh7eFa|2S~G3E~8-)MyW0^19U&o)fQcE|!lMDn^J{sGsr09Uu88o_UsuOLW^p*9@_3 z$^13Y7(Z&pGzBe^@hp)J*Y|La&(d#H1|1dMP@uvmIk&^Qj2caHl)qbQ79NdX0ehoO zvzf|Oj_0CH9!a*( znn_B}KWeVLXxw&y8V$c}Lip;N{`mP%sFtL{C4V?VK{@n&t?!+0k72dIdcGv5dOZ;h zr&ph?EPO&wvwBP>)nzu6RZg=R5fMIGJFCsky->O5Stfip#FG_sSy+jm*YG2q1X%dkND&Y+?{o4%m+KX!OF_U8|{i2qHsj zFcIp%JIkWd(r8+=-^P!3#N?uZ?aa~vrJkKPztKH^zIm;yWnAjH+%9?~v>z9jqM;Sg zTX%7xk^6yXZ0s6xnSjHYAQn@yY3gXI{qZj%%2$mCy!_sBCo%$o9uHW&3%u-LQY**I z*TtDKc{;yYHV>kl9N`mmyy{=9)BTb9yc0i`z8I-^kWJj=U+5>cvZ4PN*UBEj(zMtj zU{QoMQz1%CQT=x3b52)fmV1S6hA6^t8rKbS*O=IyU<-&GL1BfVVey;+Ew&cKcr*DK z%j@#Wxb`;fwR%_t&1G(LQ&W5K@bNdxn*5*SC2)xHGFT{-%A{xzQ~awXagdmC7z*SW zgf~!E)CG=Zy^Q2^SZQr!#xQMe-Olx6Qw**cx&zFa)eX(}6H=?}e9?pbUoIt;6WiHy z<%Dta@-c~wR_B*1U~8ZV>F+=Ly*j=`>DPa60jRgL=tN+igEQ^s0z!$eI!%D5FfYk~ zHx2+^K+J1&p}TL`H7*-6ecMv{;3kkGGdZ&OKVMJjTpG*6wZ+86^Uv(!q_No7-t{SA zvPjS*uqtOqll9Q8#xn)e@s*Okr{$bQtiB5wTdYknj4oNV_zLkDl7QA!h16;luOVZd zivUE06|zk7n+p|GIfi&V4|FV_Cxr=3RQz%&u9Sr}+9Gzb zGWKaC2sDvl@!t=&WcIZ~6SLD|Z1edF=%B5eoaB;pryS~5n{ z@WYd!Ap!0Z|DlY7d5VK%hriwGkH;^z7qvt+|AT=Sm~WG&PQEcYMC;}6BU@~FvxH%Q z1QUob^{^;*EzJQyw2Wrk?2CsB_z;q348yU!g8n(vZ^u{0;cJ9#dp0*S8Uh77@`gcBI=XL8V z=$L-#Jzuf4r1<8IDU2A9Q2!Ex<%GTovumP1R5S19*-m%-Ts`opNcXy$&B%%VEXlt& zore!A(pdZctR-KoIN7U1p`l}Lc0_TT<@h4%{YqZ@8{1?YXGjQ}W8NE$gAbCcmr4dU z*9|t2S4b3RwIt_Ve~$#!ktQazKei2NZ2w1)%Vmbb)0eXf&@Fx=IY+DdmB|KJp7X8+HCqHU_G;^>J!Kr1Fs1NNz1qsO^4VTL{KICB_K1KG|E9({_WAQUTJUfQ z@L5#?TXd!WE#6CaadAZbR(Ix)LO$Gp8vVHL0)X@TgK@!QUW3&N%G3c;Hv)p^^Q|(&JP`V{b?BO8WGf7YNj(_>!!nO zx9g&cDI$Ok?t8vW_R{vl-VMN*(m%9$6awMug{M0*L(YzBYN=%+t;L+_MNc-gAgk9$ zlfIx$L3cGk3jSm@8?8Jo1PK2iQSc}_b7&&2J-X|OG)iM04jNOYqc(NTR8QP2A zd)Nieq<%jbal(<)$<8q#CyA;ZTeL^M6U$Tz0s?M_Xc-kBDju#pSJLAX$bb+PDTbn5 zRjR~^HAInmBe|BYu4D>)UfeHFz&VpBj_V+mXCHJrK%AKgtyuI$M@MfI6|Oe~B)v=$ zmBTPkt85b0XyTu`JRaT7Wqex=cJdnC-!Z6M&AxZ7~Vge~Qyb zmf4Il_zZO5|EF3#0Bxy>#HJos628Lpb~T&n{Y zgo90MU-Oqh$*X;XulWOopkVrGsSH79j$41Ut&+o3Ilf3B7}e*Eani5VqYPaGTQ$`c zuS%NO`je$SlAZX-L^b6)UQT5i^vdyI@R1Ta$6X))`ep6HxH-B-qVl7RgnW0og$E3U zMVvGtuHRTQ@m*Z~|9;pl8@=84C;!1g%5@{<20-}q4$~|8OL{0{<$kkOE zW8LJUl&G9C#1_?+F+Vh%-EMv^ahXpN6G&oX{^LWZ!5Ad$zEi_Fy#AOJj`IPW(P}u3 z4hy{Zxx%I)E0-5Ui^Lk1DaH=JA)r-X#(v zR^Nlt8R!@D5~Un(sCofo0JrT2u3_yYCHZk5dP*qrgvEP9%N+_546zC5fWNJ+?OGTd ztxJ6s+V^8_*!Mp<6%rQw@!(|eD;-|@9Jw4Ph8NTvOhhaCONXR@kRDv*mVT*4vwJ9z zt976$3Y-E$W%k%kVKN;|P&P4e)H~H|sTH@UtX}pTI`s^kI}=W@=aw~GhkXn?8`Vc6 zD@IT?a|uIO_0b%=M$q(~!}khUUVi&FZ((5pBZj%~G&o9)in@(~zE7~lt;P}}ovbSz z07@#tiR%qX2Gx$6T{h;?Ioj9A1t=!D*2DZfe-z0d{7~eu0CU94qCZ#>^b|}942==4 z?ZCK~U(Q@lO?4!LtRc&Zx8i?3hMORg*B3G;B##Q|G;;V|d^$g6HeB_Rh@GXc`yFOH z86C7h48bS^6)lZzBSPHb?Gl_OU!8#FMD54``AfESf#SUkQ{W^KEzUNqbX-?r`SLWN zZ%nsKuS`2&#I|w%+lzELq0VCgvJNS+Nu$pt!=Ds7W3JRtN2~0h3Z0deY;%|Bxm`v$ z&gV&_JcA8Ag@C@m820^&#y7&GoO>{PG%(E}71a(JYeL(ovd^c6fuw}Ncs$S;S+HEH zQEjwht*VM8Qvha{+@5Z3yID3OV8?uUaN7HzHOu-Rn|>}UV~TTBI1rl^aJs{*^;`;h zQzKtA?BjS_<_4_t^q}|wZc1l6Ey0f#S`l`I3kj4!ph{w)&t7BxEWnZSsp|dQ(AjeD zr*te+9eo9s3Ib=_(M#Cc3Ngi1IaG;1uahB$1G?6O73kAu@hzD)@?$Vl9dSWrax{Je z-T78#Av-0(N5Nc;3E;cp0#pZ zv%?^|u|6rCIUvVb39dn>3A-O4C`sW787~ZnuZ}cji^~qvK7I{Q3{(Hc%#}#NUx4Aq zuqZEg(s(FInlYUmgagd^u>=ghTC~#s;%Wxjxa!RxVguF4uV|csD@T|xs`Q-@nODxpw>6dUmzDXn?P4);Cfj`?kG;fRong{==yM} zx>8YP9t5MAfm6Zt8RV(GqYW5+=Rt9fm10zP!mnC0*(XOYd3l$@JC?{{eqFez=qKTe zNl6S|2FoI)9D#$LXVe!M9pFY-5!TeY&&9==q@OJ;T#m!>E4A0wI~`YAod+bS!rtG5 zy>6USsa{?aOqPqqAer|yPHjalg4pj=e($hE8)!%Q{s2=Q;um3@nsF-keMI zR!Qr=tXh@U&6W7bUWbc}aE(_^tM=tSB(zWRSZCrn7PaW$9Y90q*zW3Kjio2ixbzq^ z(1#lkx4Z&TkIYvB4$I9c9cRO=p9f(>7WDp?&09b*;p9be$bXU}h0ngxFB)<=NrqI9 zy+lMJBe(_>D!#mxnPayZ;mr?1iscy={8be--K3SvX~SX|%`S~MyC!P;zWi_O5D+Y7 zro33m@ndmFBBKXP9RdZ(FmwE?B7a7sR>8N&tVZ5U4+5fBu^6+H0wq}c2Jhh$7`@U1 zzcCOe*Gl6ZS+-Quqf6;xl%eCIkN&TogfPAXr`Fx)`O}fwSF>OAF~jy`umTotpSE$} z<6h$RKud4RV-#02W@03>w;KJ>1GU=-rt?BoZ(q9-XN-H4ltMkA>x z!1eAn_Fj*e%C^0s@Ln1D(_ooKPwv=1fE-X($-%~=h619X%&Z;U&1JMnbO;=Znvmff zq-7IXJW*Jw)^c}6?$bsfL9fy&R3fv6=BEk55t?#sg*nvPvecfGV=zZ2Vv&B~EP-91 zyeq?sSUpGc`F|;UCEeEYIxMCOgR7?w3gTYGE-p2JJkkNk?pT6?2p1YPA`M0vWU2?p zbYR@C0okRTo~7mZ>2gg)=a}t3e?IV!oz;QNIiAs3z}*Fx;Wg;?87dT*QFYBc%G-j% z4}tpieQ&0sWP#iVAI-1uZF)78JI@p>9$W5Vxy|d?TIsb1me7%D5z-g@GtU0F8zo(1 z0Cdm@pJznOaXuMS!ewcSC6F^RvhX^SBV;#h@V?@_n$RlF!U}2M6ZWf686u=Zun@k9 z*M#j5%lQ;SY`hvyf28sc3qY#wl+xu4NLQzmy>L}XZ4z%EcBaf$k>h-+cpxVaRGcOV zPuQ4Tz`c~Vm`SKwMcrSzGW2f>)1ue07{{{ux~q~jyEK=UN;?PfFX zXi@_b2yMilQMp$8uWY(?Qj@%tTNm$7X>3;u2y#n%q zLv`)T#IVqCnh2AQ2v+%I0E`WIx^zoWULTiMvfD=EoNz-xvW?NhdZ4@GKN^JL5y04Jsh9+X{{;kbxCFPMDOCHPfxJ^f z1H=oqKU4Akh9-r{dmGgEF^jAnM5<96je;v9EX&IBbJ$#tLXijEjHUMz?1@|Rf@2~@ zDRK{hZdSv}xA%Db_@HdSWC9&Hru15-O~1C}1Sz_VHNNBJmio+}6s&R4k@e#OaZfa3 z{*4K6R8+`ku{ z=at&>K`Fz+5iV}PAoAq5GZ7wqj7I|q<%Ug@=Fp#9_O{UosA+YH@jKI!y86>Nv}+zv zoB*B9cCtd|E&tJbh6fo04X^Sd%|^XS#rw$etU^x!?CJAtbFlNUPNeFAW=Vv|XCuxP z1Uiq<226pbq65+~;ct0B+RCF+uW`6WRzRp5$fFewi&GA8-$K>tPk?N!l7Egq&@S?0 zJ)URWWNLCfnC|<3btbYLR8H;UNN)Tt$wjYHX@+~F8*FEW<+vm*lCRgnMridZ@Q&FJ z8Zqs{Epecc;$J3x0iL%x!(Wy4uM^`>vPxamXN3V{Rq4$?E#qi(_7)a@=%swlS zQbB1f#7y{j-BEY-aQL^5)hCfz-n?35Q$Z#D61`4L!Lng>nY_NL410mC2p_XWBH zF4n`boD7EU>bMi!V?yNbLEalF$ta}b^Y=!+%+>*p%Qjm14pO?0PYf$rIVCP#OiT>M z^<2X1)o(_AhcCqiJtl;&YgntALus|cHQo7vtksgw<=c{6ZS9;_DqA2<2$Ak!apEG} z$bSVxB!qQuJm(4$H8vn#TBXhwxclr@D1uSu_ zk#hfHx`A-E@N@=YAAzbJ-Z8ht;p?N7kteFN@333{7v>o_%xgf$+AnwQJkE~Chrh_L z+jrC0Me?b(N1|SP!ecV9tk!!Y4#3O~vw^~9a`FF;Jx4-$9mIgho{DR;++3UTmg`-a zY9UHriP;byi|&q{_+}UdF31xKeiRMr+ztP>ldKvh^$N68UeXuqCe49C`pwr0^J;6wV@sGh<06KPVN7!|P(77W2O7-WGC`w|YC z5Srz`8m7zR&Y%DCrM<^XpNMf$62=#YFne2GfWsU+yI|+wwcltr_i6^3UOxr17954O zN9GVn;nB%E^2Yj3<_43CWXkq5izh46s3o>o?>Z;j&sNecqy7izHJkE>u7n@Cz5&ID436P^Fg6n|QQ)N{rPKzE67 z>o;CnUJ?!Nd|<6+S9l;sQz1UKl9mCPY5q4LYV_wf&P+fUdh@fzFAyJnd-5-eE&#}6 zk>_GGi)Nr<>@(pNILn$Uj~y$&z2@cfR;f^6lQFn-Y=2j#{1hLbAQ(5S?j_%{K2@Dc zRFF>5t_q{RYq1{jW$Z(sgfM1kLSDZ7tqx7DHm3$5Z)=h^Wcg=2JbiwY3oFmcfB8bU z9CZrgAy$)_l<7Vw`bh*JI>46%uo*g9Y`Qztt+RZGoe`-(Mu8SV$pL;J4{I+49ZaY_ z1CIUQf${C-0dVW^s(Ix7_p37iX({Cuh*FZKc2ya5WI4>&gaAWaJ@9;SIj?@?lKAGC z2cs1B<>gUup_}M?y+{Gn*Akbj&vzVp0@=V<5D{>HIald*ysF1%P>Xq2T$1ZM>~2iQ zyl)!JO*bVI?SC;PYY)=7y__f;I^cq?d6_DN4ugQpnS=6*svpN#cjSXDpojB6lEP3T zSl!QxYq#Wl=*lMfgfCd#a#={y^iOBLR8p|Q=52nTtv64hY}j}_O2}LBkb3?s^*5h> zc4`U#+@3@QzEEcfq6%HCJ3;W;3q^Z z=rvg5l5?BGKJwbA0iPYCV5uEw;(LV>Q9}9*1ujkPf6`M*a0y~6R}BS5y%g+};~>p9 z3M`N;6)yjtijkg*ip-x5%FiWWWS|`i_8X4oVq#^Dn*n8v=ECb(c@xcDk2f3GrgDA9 zCb7QLTn>x8>M`Bet{WAkWg2CvnZI*c_uu@?!m^w+C`AiVFEgLUObf(=bc&04>$;9~ zqUCbw_5a;!Vt$$Iaz3rPw!G3}Ro1lo3_QaRvIw~uf3H8HE5H7w@SQZuyTRgZD@R82 zl*C%wxse{X?Dr2(q7t6)o=+*1#x@*>Ga6ybpU}=(WqmE6_n0aJ#q`>+7C_s2Ag)Ac zcJ4px0Jg|TWpF5xq~G)N^Di%OM;tEH%X+tjy6qNzJvruj z<5m*=$)a;%OwrNbMn=p8y^hSE{G2j2wxKf%U-ZA$@XAC>pceDZ%|<=4(qGqIQM9Zy z*r?-vp$Urmi^4b#T%Kb`K&FUxWgqykj&0#@ z^4&2Q^GFZ_F!{O*-+@jikwx{e+_@@4!J+iasUPeAfSK^1>+znW?dEq}SR!*qj!d-| zo5MFZ`YBG@y8h^3BNjdW!-k*#fzM|HIoRs#aj0#+-Qs!d>RsT`s?yrH)0%f3r5Fr+m!N>Id*$ zKYl)bH8bTS$GzIX)^$Xd`{OKwpvx{4G0 zz8EcEx*aWjrZFF^<2BMl|A~l_qjFWna0D~DDYm3?HQHz2+l-J$o4$s$YXCB{u7i@- z*=}T9VKH9@7UC_Apt=j3wN2Q>*_X13rE%T0Pk4+JDn{sb+;N?;;B<|}fY`AXijMKx zY*y0y=ku2nultZru_>EC#)wA|wI8k8rwoi-y_#k_B=GzK z&3STL8j1WT#X|x$h~lcf?xCjOnVW(_9i9^>lM^eO>q$4l+zcQ}=RuXGr027tWE#mw zRN_sVi3Q*-{pRa}VBl0rtUEy;L+K%7o0g~_h0xBXIT_!bS7KXLgGE`+OahT`DU5EL zfAf9VT&=*_t&*tv{_l0155al_Lk})OhW9KD0Z;bY0QzRHFn(W-@{j_3u#a&>a*7u6 z@YPo?s}02V8lBDe)!0V8pgMys(+R3rhphzMwQUYT24nmKKH%pe_uDbAAaFNAHwwPsK zW58_Js@j(g{=_l>3URP+5IdvQUv4?LatRP9@Wvo8AhK!HrGlBZKIq>D_3w2p@w8;^ z+^`^9p??yn+_q0z0|qKDoo?M>DUU{%b=M`hBNZ3*89G`o>qw>bElyIeyuyDC1uW%# z;z0D&E@>uR$3vqS9RcvTOY9ziEK6-8AB%a`VEzDrhU|fbt@25u$@M!z)fX|s4g{FN z9ssigz@Aw>mCK>_f!%l>_~qw8i!fmdE4MkLJ54YG-q`c!8QVt510eyP_F}r&0u+P| zf}R(j_JAee;qyy{JZsG_L|xi&4#Mt1om+YGloISZHiF3X~ zlwO>bEn^A**1gHWd(l!^7W=z_6P!!zdgd(32zjBsUjJ@Rt8z=~>*~T?(EgpsK;`uk z9lH(oIa|UhbF@}-MkLD2YiT*o5QvN_8;`985JHM2v z76nn|YqCyUFq$6pLgzTx^2 zpEqy|u3I2Ym-MFTg`jS>Yppf<0B?$o7uV!+cOf*}gcEAu`kk>j@h7%~SlrV-08^za z6E!4 z<8;QWZ0_4`e(UD|dF_Qf@i1;X|2g+mf#1wfle|X3tUZ#XB8XuQi&;&{i(qWQIEKt< zb3~qQU@RffOjQtOTU(Q9u&}kg*hk^>>1Cy!W=#3>WZ47QDJ6F56b6$MpxDV7g*ES+ zMvGidtB++{>g(>zw7T#1id}1fK!N%pUA>Rd?*KVDb=@~Le@`(aTfNYe|C3Ier;o7B zCA6PE|N8Cy7oFOI8X1tp&{cV6z3;x^85r0ZO(P~H=IPn=p@tPifEp^`Vb(}G9H#H2 zToZuLE{b=HhJfh1Nb+#FI@$kq0o;;lNN`4)(B1-OFh-svt)iGE^aVv3Xg0lv&Yc47;5uH;O)CjP)Fo4DbJ zwi;~oautq|9cs7*pq8F5LbXdeD?1IRJN$25Gjems#|8G;GCqD}bf7%&zVi8}Zq{w2So~TAkP!(tAer?WAF-?Pa!R9vd$`r-DQmA|vx`rWOnX)!99q ziF1pv!{kuF|Hj#pVX8zk;Kwy>#;?iu;rRD=yau`zi7Pmal;c*P0<>gwlWu=0g@m9? zXs?B19}#nE0L4jo&r-71WQVoCEzL00k5H-g=2JG0Riet`MvIeHFm`Fsi3sWnX*}X7 z%c|DwQsr{rn-F9Rh1jfqzH%ptTjhkHaA3!ZvZrc4)iM7luK_EDKx1jxtc$+}ev_dP z2sUqh>LJfm@gaGE0uYgktI0p7&fDkub>{M!xxEtnCf&i@X5pHrU@ft0QpG)hEhFYT zdb2I@l{bI4Bqax$UJpayM#Ag6ELKvZ3{Tem5N7XvP3D+}x#T9Wo_17U8eQgfyKH1L zzC%&tf*@BJRprQv{13EalUaLN5 zyr-B*%)K(S(J1wboK)T?{=jBok=1-qH!=@yFCd?Hy1GS_M04$>VT#kLF&Q{V;3zy9 z>}?`|4|jKzl>~%{lTIYbacI?1Y5vNSf=`GJygHu^tEZYEA_a_@nkUZS z90Z_qM6LR-kS7lA5=1g7&u)1e9%dwN{!_uiLvok|z)gW4k#FFBNJ`?+XRdkXb`C-S92Z9Mt z{}Uyok{A9bLDAT`EjN)oxT_W>6g>f0+g$Bmcib!%SBziJ9lKa`+*3@K6A>#dGn_bv z2V03`cb{*9jumw6qS0C~62=CoEHy14t;OO(LqDns1V%&=uhbCK~@?UWDD_>Ag=#Or5pH-HY%8^i+kVL)~K0$cp-D&y{Kz9|3yokD7 zhECjW!D7;JZ^5bFR?2xk_bu$GS*gWc@>L_lqpIoooNt}*1tdMhke^8 z%h&Rhe&-qo67DiP$&!>e9Er;xYK0WQfC)jXEL=p=1$jT00RF)wAZm`e6pKcu$See_ zmAXBCZ4(;$Ckf=zy0uF-#U)psy6^cu-y>~`>~%8;IIndFhad%n5fY&Kff`i1p28C0 z363RZLWMJlwZ}!JkROqt3Z`38E5g0faMsLFx=m&=xPWXJiR3g-XwDZZ-V*FXiRR6( zY_l(A9;#7;P5!DJFrMtC0{mnC$;^0ADbkcAw*fH+rAlWWJ6os9dxFW5fSdKG zVj*~b{~!elViMDqI*dT{gZBCq%xp6p6(8dE3EutK&Dsvi*v?9B1{F!t1v$~e-eRmO zsugXE^fDb1cq@qG__8OolAuexHszcgx3J8mhP{uZLzh8-&s)H&iY|K2WjMOYb1T<$ z0qtY8#(9GLi526V^GEZc1y`nDo7=~hLy6psCP{mJq@l!xw&!9)`Wj!prx~mLiMXQc zMSz7!P=?;Z{)+WPPCUVW-bMTgB=0FjGQ82BoFZ=ndwogl3}9Q&NrY;t&zs*3`_@m8 zS1xdMz5SAK`86KaCo;LSmKiEgTt~GLg-d!aoEz|iRz7lX#44Ete$N~M$g3sH2LIvi zY~v7Cdyt2HYS(xM6+^U;`ol9Xr^~W|1s!fFB;WE2sj(#dy^So?E=eQPXAriI$x4;J zdK0Wq+XiCRFi2ZA1?D--!EG_tokl(Q5h92ol~36Nr5K>DdF&n`bmjj?(^&^q*?wPNy1N?%B&3m$?v(D7kOq-HbazT4 z4U!^V(v8y6-QC^sUOeC5JL6w6!<@r?U$OUI>$5)oNn+CNuD^xH2!0P8MiT;Us12RQ#krI4HF%71TtSHU$0j}$^K@&fZ#niy#Gt2HQw%X`(l&9(*F zJ#I`noK0N4oO&Zw|*%Zh|H>!FaG!Y6DK-E!SGcW~fY z+bKl=%IjRmLbx=0sHcmu2dKDijI;Z`g}XoW@@i1*20c>KVk$|9xpkYl*Wys+GX006 zNS6}6XT~k#W=)6(NU4#=C@SS2$fu4w@A+w0>0vOwS>WghSH8-;G=v^W1F9-GzKw9N zP&(gh`rZ>jokO%!ql07{hM1QK(o^tkuCgKJBj6vk%eR*LItYiWg~OiPNDwJe?IhYL z)d|NY>MfUDj3!)$`wKq6n6@B~Tz7e59h+07W7tKt$EwkN(NX7H%_p;%F(oySP{crt8}rh(n!5{HuU^Vj<6+u=>8OXrU2%fjH5`FZE!Hk$_xtP%1+sj9$G801bBuTtAihqi1_UqLqK> z$D^PS)P;n1?!4Mecn@oRZ+&t5x?H3pl-tnHyksf>{=zDbg7_bj`#18c4pi2=suCaC zGmj$v!gL1aI&K2EHx4I}=*}#~^eSw6&ViqM%-=3w{jBpRID!CcdbtGo-PXcU52w(~r= zE57;cO!2Nmgxg8ZCkdiGcOGY9DOFshf;gyME@?krAc-`jUfipH1%s?>X%T47ozOjJ z@wP=p+~t#dQ`a9lw5YR`E8StEIj>3^xhInkS$q4UDzBv*1b0U|I3$fe))7KcGI0K`!BMq&IgP_%KgOtH@J>4gm+=QL8h8)HC74 z0`|CUDNlDTLgE(8c$u4rLQsj`xJKB~m133IiBms{u$I6a-j2brrnu(Tk=B{~!jWa7 z(^$y}ckzS6rZQfG8F`DnZ~Tu5?-FEy;P)a0_Cm9aQtTvNj!|Kg$8?Ch^Y)wUz`P+@ z`3qw=trX6sy;Q!eG`AwbnqbsZVn6<7iGg}@io-5|xJN#O_i_@Qv44uy&L|o*1M#hA zDsrT)qDrU*K2})epRIPHurS7pb7{H#yfRYgP7eF4G~PWi+2z*;r=i|=VS1H6rnP@y7g=A zGQmSGG=#ho`}M~f8Ri^}jcY>qE78`)jB+0P-A}0FtCn!;#k1qZJ@9=y)k(%;cQk@( zX1CF%9#g7wKKFT|HFuQ5p4(w7Z30*Xou=tq3m754fg|%M>se# zT*j04A@x~F9_$vYhaS6n8*pBZ}D^?@Z z9lk(2%T?UM2CJnGboW2WZvIZ6uXSF3Rz6C894E)9XL37VRmKPspiZw8{gmw4`$}y0 zUl~h4s}Xrfu7TXCuNV6?Vl$jbMzHuM=!muyK@*A%3JOtcus{12ZQM|Zcl^EE@Fqk( z(F1RdX6NnFI(ReJLYYyj}{mwnquGo(HG1PHK0dH7b)aMrWY@myf8}hni$;7|5 zSRlEMXhcyxiDAS_?`bQn_^?2;x^YB};y+x?KT6;0R~y`s7h&o#1oF!}=`&a-KdKB8 z%}bXB_C?0u2yEuWhDcE+Y^t2Z#dNDENek0c$BX=3|K~Y?nGU4;Y`<5MFWZ~2{#xdM z2o(4PUPDMK+EZaim2UJ^e(!v3h$E^YrHEZS^kHUt{2@sUE;?PWX2yV z2*I*+z4?^k@Q!r3Q7aP6#j_iy(#u+)Rf;CN$I^NuikmzVAicfDgG$1BV_cTWY9w0x zo1pLcy6rh^2hPSCCpvHWg(N(i!e$~Hg|JC&>i_hjB)m~(!Trd( zv385~F?Is$444-}EB~;wHuFDTj30oWIhqx9(q{TYQVpWZwa8@Sza#r@xkneN85z>~ zjfrn*7ha@LJb8aO=`)#hkbePk3BrystLAUzK|#9>y@Y0lTXw@6%<7FYMI2gV=_jrcvL!Fv^L3>Ff^X8P6QfJe|x&6XC9AdrD9iT%a- z_|oh91|bMWr<<#VHpQNsMCKQNLBnFLeg#C52-t6|vA+I@EU!`w!K}!~O7V2F4%t+| zx9bggP6PFlh_Hmi?9>NSdYy$x%!Es6c9afMtiRUKvV?=b6a{a8D1D*&$C>MHNSR>Z zA4*=uD?`3D3I;AH>&IX;!?5M0g!ktIt``NblZBcRl{s?5+G}a_FB+>p+ZnFm=2%-+ zgDtGMUDepV>bI!kojNOT;GFcqk1|;=jQRf%y^a76Jw`~KKbTv zVj*Yn?l;8<`~^Wy1tAQsZRj8WN~jUKhor}E+YP%U))8xKZ*-f)GcW5pt=%@yxiVLf z>YE+pgUGC=#~*U#!(Q=U#8!|vqHR&pZGEE<8@2<3otGYKRYR2>5B_T_&J@ZjB&;s8 zEN%#f{|eDbI}8SFFGF75g{@y9#W5-<(9NzFU9;#gx+(`h1iA5QCB(O8LLSkE-PM~f zxi(p&r{$#9-~Nx)rWEPRop`yxG4(~}Bjd=Fg6x@|60lLGSP+^ZaoN?)ve^W@uBy?rjsD5!`Ds#fK z0fH8ZBwfL1IL((@kzyTiB0gAeBX?k0g#V$V(DsY@!3cWN`DJT~^0}J|3?szU{HO(E zPdxQCZd?h7eJ6_VGTgKZo}B>w{-ZZ{D#a&YPdcZi=MfwGvYY0wq7M{SQiQ27tNIvl zoLe4)9ZEdH!t2n2Vkf2haL>u^NRt{xk0+9({E&+5gO2o2H;QwTOraBGq=L^FQ)R6b zV=%b)B1VQ9m`HFeZiGMou~@#B6kr{zv-szKxi|Sv*z4_nNR`3xw33Ak9Piexb$Lq? zkT_`Kn}SYiLzxos-)#ikqn!a@4`#X}D!RFW|Jt~jq#FnY{~i^fVhE&8BK<`WZh{+` z?;6u@(E2+%MLl%k%>}|-F_lD|k>2x8+U}4k;a=f7VxszlUWwzDUhwuc5=ArTyh*t@ zk9?|kK|D)&m?B51jrxrl{MRry>J{sGvtRDx^V9J&A!<2<`L8QBVO!3F4|vi8?*WEa z=yWMink@`%YaXbVkhf{+_QeG12h{LG_*PIu=rs9)Ap3{n$$S6*vHP{l@S`p{dSW)6 zxi}guu8RPg#|Zp3HI*ByTj z!Jw#geowS(`JiJyI~SahxV{vpdaV&nU}g_tp!sUbLFfGy^%g7JvrIehdxpNU3U_WX zamz!>p>50fwaymau=~6Ab}wi_$3eH%ErEA)V^e+}I9OsQlH7Sk|E6Bovnl#FB0$eo zYEiYHJOm)nC#cKF^yb=~=)H<2RBUh@ zvNQyx=!y5}r2O4kKi%rMwW$h;6;}+VPCk2dv2kT*94o88ZriRu{FWOj>co&g=`;mf^Gl9xIT52_h70?*=O7KP_H@n2BsVvACa7F zGba1DA6L%3Dp?^bPi3wSO!k96P4c}#D#{B_EbRvIUl6_N*QqZ9Io(&; zWo(+Z?43~cS*+3}rTfvODHt}j4;=S-#W=FVK>Z?N1D~0YZHGv!W%vkW6#i6%6Bv+= zZ~hW^aj!)`@BHE~c+~jCKVElu!BqxFTT)p|vSDxXt~p6l5X|NV_E9yA`04l9yys;$JM(UQ30?KvcBLp-Jj%D=p65=bLctqA~wLBL|e=jD%U-{}dV- zJcr+RKK!o#NwZ?vp!e+zMD5^RmSNkS-&sOYL)--Xe^-^442+rQnwp$z2A=&z*$_jR zbhZ2*#C8-UWW3Qu%9=X!k<3mp@&uvmdcWb@| zcq+D;Qm-apPb|9iP&V%*2=q5@*^FL+q)<$~^H6?Y2lBrrM$J7urVa+wO;Mb0I^+$B za`>up+l-eKD|6qLbbWyZw&s6FZ`YWu{<#PjLy5LiLNiR=?jWD3_WV50=#UfX`LC3u zgw>1m-A=eX(GhgHNI8rxad)fnqMYz`fL$R%e_8>T1x3iTVg_%m8bx~mQjClcy{;@8 zYcB-@{})3gs7vKA0-s2-f^l1^6+4APllq!c{0~*VM}jW{&R0Vb8*>QB_aNfcDy6Dj z3uQRb|1|;WU3tsZcWFq`=BQLTpsfsnzRA8Gf~^&ib=jJ+huh|1+45V9wJM#~iF*CH zjlh_=niiM|ke^eCNKN;(AF3wAtqdDjD0k&0yZ+lp+7S>T3fkrV&U&f=uJRLww92^{Ar@dlTEvD^Z)gF&K2I3Mfml_VEA8p(G>YSa! zolbif+hOH9fQ^LtCVof-A7T`#G!p|-18DV`KEKl}+wj~7fu#`4q+oDFDe7imW9x7+ z6_8LXZqBW&h3g}2%C{YAbm11c{9jg(nnZb5btW5fA+iG!z^eU6UGzo3Jjtxeq*bfb z?N8(jYtB4`|DdoJA|=K1<&MX%V}f+&@|2K<-{tew&j_wLAZ^-!%I<}LT7^hi zMMxq3dyf8db}f#6NgB{IgXiA<1(v^FML@@M;>$-_8mH~?WL&Kv=6)4OK zt0w->|0wQ7GyUJYb;1ChIj&G7%`7)TXwZ^TyzDJ3?7lD~kYs`k89gKyYo5qzGO0ck zv(=2C!?Hn01)o@yGFwzTroeIu!yZbn=6;8b6S*$hS;78aQSrM#Vb9muYx-%C)u+yi z|16MRT9GFt&`YXQ@#ZbdMcC<{q`6+Ck30dwxw(M> z?~nN$y@qPs4~kkQ2&-7WqW(vVHOEw{9Hw0_<(N*=q50oOuYiZbaG07uw$C$$G8)>< z(?Nvtd84#uAJDCIg~YUW*frJvecMjY+SK{={+?2y_a76dmp|ZvgfIX8Vb8Q&Ez3gH z($!I2k7dcps|QN$S40aEkB=c1-&X5afC!=B{&tAI!( z$;ud-;#O8A$9R{72QNttAW*og?DrP&6p&uG--y`)SDfEV-2B8U`#l0G zVLNlcXCOX{^Fz$L?0TCrDT|Yo#{ipy_>?)8n%&Ldd5=p`x&1BH5bwCc}xcg)I z5v|gr%Y@cIVG7d+1dfgcUKDLWLkH7$K>||lN`d3IR3ZZZV8L-@lHzK}?wEcbFR-tq z;_7}2J=YHtnu{`f%_kOnaPI4>O_55E^BWd95@u3$8N?KE%Kz;Zaf5LUB%pBSo?Ysg znzWu@g6DkM7ILtpmBhW^gS2s2V(=qZm7WtfSniEAtsdYF^y}e zqUz~IPOmQC{mA-uFqK2f6X;L-p0ZlbeUo!}pRa#kJM2>WqrrAZw{RaQ`y`3u>@Qn< zJg5{m2`eB}eNSxiG4ea1$ANxcuYqy$OyzYj;u~lNvZJ79e)A6lfXkzMbTqs;``GH4 zl;Nypg{opr>Cp;|ww=FV>?f0EBwtIQy0gioc zqI;;!PxjA175o?flF<`b_MER}xkOZi&{#krR<*}9m$lt_OAJ7o$= zspnKjOdocngsRAUyh)J0o!&1$FOl=^WCsiqTbHh8G1D(d4hJovOZEdd-ON{trPXfk zrjo}n?iyjgmppiRzdk264s7Jln$v~gM);)+aAuorJzwBOna6)db55g?Un=M*j)`MX zbS8Oa33}ORWxikp^uBh$Z2`0s$4iS8{CyRcAnRx(g66+BlOp7dV>rHk1y|v1`E`Xg zuVasqkqo}+kLf)Bl+5Ahp3bwL3AGMt#ubj@8gCU6D+THI*cYfJbT&hU-}_PHd+Ww3 zK@xZH_be)5@d?pNa0g^}#VLnizo(V7trXrpz889(_|qdkET%>0w@N}hVyG~wAN7T2 ze{Z#5j=f()!5-urEMhGd{<3oX`6X##W3H%BqP>{tZ?jf* zqaz8~I&B(OgTKk#@_8Io_8ola+;~Yco^`sIB9K_c3Z$kFb3?;WDwW1LV6J{1gRY=|lEm$UQrzJk2m zl6>%A+OTniDXMLsrkKWh-cUlniDiJUBKxuDlBloEzX4qLwq4Eu9N2|Q$}?KpeAaIU zbVrAnvO$FN5c}#-`WMMF@mep{&tG-lXD#xg4(je>;0%Gw$MPK5>Ar*RPAa*8dkR2w zq{(y5b`y*0HVe6agj={{d6#oq&m_XBa*Pdm{4FfiIk2zG{c3ixR*USni@ICUXxk;J_ChgDhLoyPDc}hf6yYp zJ~O{V7g_*4l~Vl%|8IX9D6+qLJGFbpPEAeyp@=-;oI56l4%c7cT##c@_rA=>{+V&X zs1|r8&M1QGbmeBhmJgNBnw6_rgx5@$L&ql~^R~|Tbq@MV?vdhC_mVznaSgQnSl1-fo?@Of}AtNQ5F-}oS5F7u{Ix{dG2yxaGRo2 zHaPmHX+me@4kUZxt{5oeM{L6h?|Pn=5_F@>Sh9p$35Pbf%Sf%lUImZ;ENf&al-;o= zbV924LpbtC(!8S9T=IFmb&k!Yy^Xc_2|Cdu4)N8m*=oFiV?c{BNE@Lgc{()q4i(DjI8iv1oFVTL+ zsz7??6;7FH02)_Cuq8KU`=$32VIR^ac9QW}gLQ5urxyS1Mtl;Mk#X+QyPL5(kW zRQ8MB_lMgQ%pPf1dLTQ8D+?fq*tXr!%@rC*@MDH(hf%y!O_RdBeCCZKm~2qpyyGp$ z(fJNAQ)yr%1ItC~mfWpLFof8Run-nk6lTs_L*-PzQLFd5lk>_P;s`4j0)3&YXowpK z32RzZ@TnHP#8Ko|KD#9RJPa!8nf;s7$00lK_;Z*IY?D`a;N{gD#T4(mi1_sIhA-b7 z2vSFSXC2*ko9Ym=y9xL(RdqS-vgeBC6&HuL>hJsz$Sdq|GqCX{5esy%0}?FLdyw7M zqh9irHuW5U#f2dK>5n1f5{GvNSo4Bu82th)4yy!F>7xE*1`pnM<5^}HI3`Y@e&|24 z&O3*VJ1xyxzD3@X#lrN{g61iCcs%wQ*yET1RKh`EjyokU5)E4 z2UPfrOQQ~$Gk^v`qF{D=4yB4_U4FW%mupoZpjH&F3)o0?l?Wpo%E%#CwCAs6OEMMYu34^E9aef}U|ySL?V*pS}m5B-OK zd;!E(i-zLNOMi5%f0@n)Z&#v_iR*)3eSGCStv`)!wU+&d5ys}V&+WjcL2wze zCM-onvG2g*@7o~112If?3ExVpiOrY5wzGt|*#Vk9;?^WaoAW*fna6M#kOssz!q7>HE)#Z_y zN}))ES9HEEJ&nZDrJ(%*9IHBF0x+mA#^exJWC)L#zzEhc8DnO|>UTdB8@)ta_>=`o zF2=Ryy$Jev-bSwTdtzF`GoU&*MX*C`!!a*4SAtt@O*AR(qxXfP>lS$DQW*Utmt5Hz z-9Bxi%IZ1h7aT>GX!G+}M!VQ^_s5IfQCdvE^u)yfHAR3xhEMuQz=kB*u4nXzt(1lz zyarUTh+(68RL;trYlwezD5MJTW5%;`4}^f26YggS0fsD-B;MVisOYoLlH2y|tYXku z@Q7k6dk@2KYtE8lfJ00Ul9*?@=s-l6(9Qtm33!)|%<~Q%08pq<;lVfzoJgifhOFil z)v<<{CWe>EZ4dcgIV=f+%WegSCj4}!3@xbjx1m$pAKa#H~oq6}52xfjTfZP1#JNP8`}+x?7cenwqR zM0}-HhF8DPgYCMNq0LA@Q}#d2U}fAnLX_NYa52;}kL~(vmS$@<%(ISaT_JUR9d-G@ zOi5T}Z$`cL%KsZN%sn_oEX3AXV>^BQO-8a`^))0PrL?f##N2l`!BowEY1%~nK4uo# zKFDau>g%$qOiuG)a0|oUQ((kqycabJFN*rxJnD=vc13&LE2y!dgJSG?o#J_Az`^|A zXP+bl(n^khN3w`*&aIjPmkbg&X=_hxz5&~9Bt@(GLv4M^ZbwxE%u`w;%XrnAovU6D z#pd;BzJvT9H0f%uJ7)W{@InF@Z#krUxdLE$6esh3^lMQJ8Ws0>C=u8)^o6P*zv3n< zNwAjQcMV;&PR;EJt-@*cJ_#>$%w7M1Ln%lGgJn;ipa=Lm*G-HEYPrUu?4MaiC6h5L zUSoy3?j6SQa=GWoT-@!m)Y{~klxf{78|R^3Ldr2w;!_e^JJOR847{ICLWG>O`2VPf zC)=X3LrR=9l$I6^8B}Rb%W@UExtz&WKOUPBbC8QEJ9MFO&n!c`9s$ENi=~Edlfv>p z*tnC@gh4bEQf=4Ydv zQ6j?o2@}s=Pdj-rRZ;vKv0_!ds;-#j2S9@}Nlco08AFb_ov>PV+Qvo)+--GJvEk+o zED&iE#GVMECJ{{(+bH%4RhD!_d%cbZ(rB9K5bi$KVQ?(4ovm{oqQFBU>rvC$oBFdV zqo+Ci^W-4#Oh*3*N$EIA3pi$sLA1i+#VsfoM-I~tL&(cM-bi%{DMoV8KD7T%ab)~1iptB)E>lQB z6IpdOwi3u+H)}>x|MQsmEvt{8=$na?!@p`wNY-9MV$xD@slB(OVi=ohNnfELt2ZzO zgy*S#o2Wd^E3AZ#fI_#WH=vLY@1NnXnEBws`bf~h5mMaIy&--A9mYQ8_%x+!S8I8L zVMiSK7>A54y<(?tkc8L#sb3Zr8v0_h^-FXfvOz*Ajzo$Gs>#J^^Nq=jtN&7Dp%J|# z2mX2&UH5Si3o7c3^U28VJYkv^Ww{#C2>!dzJM^4B`Q_wLzf@HO>T2US6etlTMIr;0 zMWyi~y=Jfxcm3>ZaC2f-*8@FS+p*^YpU{lhrpxfnkT-D5FnDt8%pPgxL`W=fu(ucG zQ?iPlh&{q^?kosg5Jn)Kld(b^nrz1FmB*bUNmfOLsAe*hg!@FWq1fIYtX$_$m^3{X z%l4KF)x93jjJbO&qE{G+KB;D`g-}c;$ z4DyKnm1v>;&D9aq!A6<`p`~6Z_IN8Du!y-T5P4l>9C`WUI>S&qq@zXb%-dzgC}g%H ztKq))(lQY|T^wyM#$T>g5qt6n)fG9JLj3&br=m`(WemzKClnk)HDC6WKiu+Bp}7UF z>)(=(>B754dz`PNCiTfi9I*AeC4;snOm6ajCms&n56Eq8YiWoVy!JsZ-%PkX>U3V?B zo?C&**Hyel6ErM##iV9-Qoksycso}6SHJ6QoJegTk2D+ZbZ>58X?r+xxx$Sg;5`Hl(=Mz4Hqw735sx(J%h;1k}CD``M~rl-h8%>!Upb?nuiu0focD6v<0M!0%3a;L>hSsZ|K*cw)fQe7Vm!O(fOD^@3aS3A{$obT z*P*l0&T9B*s!a1R3Q|%AMLy~|J<<|)Jd@H$Zo^> zhKvQR6+6bL*ys7l8-K3M2>OdtTky}K5~9?Tu@g-Gr<-+cD%4AXqlWc2XqRP7RM5v+ zFc|!!hjUPhLd->ctJh5zeGnew1p2qVMr!1w=l9N6r%zz0rmdAbMb)uGRm=$0>{r6H zcm7je>y{fEO6Y;=&@7xEkQLx8znokj-W3&DG(C!tOnu?0#3+WhlSGL zw(|-R#Ptwr0od=~FLg6An@boe-Dja#c)VQu%TxZzbSJ4C@aa#|}?I$3-m$U8h(5_l?)3`r! zY~);DbI)ryIhjw2Fh`}krE4W88rR(wDTJ0GpK&Z#steyJSj4<}@33dd=i!i*qv!b% zedNn|+`N1yO??An+qpuUD+=lQ0 zHjTHAK+fTWIvH0{xkN$3QuvV2yFKhtYT@L>p$X^DMMf64Td`ScQ7nZK*m;Y`#-+rW{s#u zVJmptJ!Ee4TqZ=1=G`kom%Iapoh{O(uvRhj!!9Zyq=g0f9+WRbTU(=OMPH+`y z!*;<-#kVw+k0|Nxdg$7EPBtHcM#N6N|2k@Q%#A%c&MwY!doVR#{~Aeb@4EF`U|&mS zdH>=KfAPBLlS^G0bAf>U;c4L8Ek0#}&{GUm)L(((DEqt0o2#fYi@%Thgr4lV(oNOo ztjMUk(JF7U< z9V@@@UwAVdR9n8ezsV1gHFkFZ02;TCd%u`$ocORH z#$%!j;JdOtau`j76QM>AJo?mPt2;KO#{XE3QjLppQPg66)W1FhJ!epy`gj0C5 zLF!qfX4X?kK==PP&omKcp9CCJufKTxim=n8@kBY@_R2Zzb}KK)K0kl`fX2&XokTff z7)}Pesqae!y`Xp|qeGa`OR2zp6#k`aKEB-ToBT1p+SmDa#QTav^<&@W*nZPK zQoz``b1Ce)ECRl>CmS*Zhsy9 z9d^a{zwuySo-Zy?*VcO<73hp5!gf~cv*i*{b*Eg@q{sL$H%B=tu?64BGEzse^*-Bb znM85o{uJ~SQ>i#^4pvoCSFenR)uR*RukXtF{U?qyu?(1T()cR(x(pVMyhdA|?gfq^|IInW=k~92|6{u()6E-eG#L~ZNy*s~?az6q*1ww6Ocd&Hx#rrq zM6I5AImG1tx1=7SBH^k*iBnIkP>NRG{1FsRbIN?Y6ww@b@TQqT^2j~#R4lxt+s-oN zAAgx{Bt*|p36JVIFa4OZDIHB+8B@cN!JBy6zk*dE?_Pr1z=pQo5hU z;O=rYIeE;H&NFC@fWT~Gl0I(d{L_tR`s|m)$)?8QVrCyOQkcENxhtJf;$ox=P0qPr zL>&1(WH#4BGTg9TQn~DX|6AUxFx1!S5qGgvK?9Ek1mkFH#X}Bw&au8kIJ2MZd2M`? zszUb>henJzXO}YXS^4|X9rf-)-Sd8_V+LWTZB!F+5d!Q-$z+YxdRbNn_tlcmpw%#s z$t*6_-Y{fb{ZctgL~N3`hd|**UP0ni5uCi6*B(U@CpB4~>LC+F${NXiemDU)7(O>* zFHHhn*Ch^cY@%DYtqSXD4LK0^KhmP}8+oP>z4S1am1yS%?B2lO4C0G~(c=88OEcKKey7Mej(u&b9Qcsa!mnG?mj$)W zH`Q2U`3ySLtu$II!eb4v50+*R_EmojwRRA13?p-J9)SqTprX3K(fA)Keu%_QLMPk2 zmR2y2DPz(7blVfBE~C(l%1SklN^QivnSz$x{So+5?Usy-m zg>rE@v11I|+}dU|3`MY_pwWjFUzm>xY%xSvgqv)7FaFOf_NkngPjtXFOhfp{hMwuR zl{#C)>_Z^6csRYrJsbhb>|d|_Um5)I)JxO%>bgIIn76G;k$P@`c~I1#S+c$hy`_=v zRGMhA5Qs`Xc%)qNO2|GZ*ncE*_F7&tep-xNR>694l{YOX?~x*&?D$aWb|ZU6 zKX)naxCU?Y^5c=~2Nc5|eJKQ)gZJKl^l3$R;0hKp9fv>6qQAsFjP%yivPjat!;7XZ z`w|7=4{PiAaThPy?2~BY7~iR(hHb8Xc2<~c90I=MS)tKBMH02hL}lJ$}K7sgB@0%Fhx~qf&C1OWNk7E6k*HLDkuwIQ;qTsR2=T8 z&FmBOiWBr#NcK++nIs^qt|}3km#u~5mxJaHUk^uJEn(w!j*GvMI?6V&SjtCjpM8@e zw`@u5vZYku?R{ua(r45QUk@Ee`Mnf#8coY-zm(xO7G&FjDMM#SaQ6+e+!}cO=$N>~ zT)=2U%*ZI$f;Ekvj<3kOOT8{S7--&%-_Mu6R2wCNc|hH&*~Z5WMvhI=HZ$2nw?(W1 zN4%}Y$4Ip4v9;4T+YM5sOkY8bz1^L_Vm4Zq@;+fRlas*S&m@{=9`z{Q^XxB|70kWD zLiQNfyv;hgX`35?5oTwtK(ytR|7b7@TUTi;Pq{nusOMNi=5>+E#ajqHN|OC@c!6#*qb1cYpCx#bP%Wdz;zVK z^Y7GU!M2jYWNkBBrRWg8&d_O4pe*d75}E#3M?)dQ7Gfq0O(E~HFil7X z14ZU$5uO<1>#)hq=HuV+UEUK;jmGDyjS%SZf+1GbHl2-2;;gE3bN6fX0$U87=5r#a z)kLTHvi(d}dzA`Xe+eU zIt|*P{21Nkfo{8-EFS~{HheeY{8;*!Zn2Hj&-T+5+(-oMaLMm`!i5s!t)m6+EUL#9 z`0za3Y#ISUiko&&o5q{Z7-c++6nb3{<)X>Z%9_*kFAY5Wo%EJO?e|SJcDuGV+GU~+ zcV3*f6jC1KnmNI&WRU!`HJ9oWad~W=q-U%|6QRgoUY+Gxv{zk>uIp%W{?k@2D?EcI zl9(Cuk)V(e)@0JYk4)3a77U_g9p`Q9O~=>Sw%aPq6%#5d!LDnjYLZ}LW^29y=6=<| zl&(zhubM4s5@}dnmzvuH992v?qW;+KR0XJ7R$Sjd{#9*dA1@fG@S*zkYtjFz2KLb_ z&C=Ss-hDE3bs*{S8pn^hHbe_IDVBOC9b(LpqE#Az??pU~1KmfY;Dre}=1>arqnH<~ zyuEXCy5t(c5BSktMC)<`W*EGLO7HZg`i;$?O-+i*6Y{9`QPx-|rl!mgR0&gL&N5FT zl?5+XQdhMj+`n}4vmNny;H`!-^ib(3ObC{a)}kctHb1xxFAA%xdGl(JL9h2J*6?~C zVH!I3gH+|f&f>btR)L#Sl&3KU9XnGEawuLT$-!H{4TRv~oB8FZy2F#M4;)OpV1swQ zqVYe6$Q!uKnqK8#6tb9Q4X5y@vpR&i7X09aor9*Snai!vnS864`Vg;!iQPjZ16R)O zWJN`gFhSR`?gypt$-bw{zZHjt+AxA$jCTA7#ifaAiz-t8o$xJ|$ zct573_)D8QAhG?CLRXUIllyMI0ypyJV$U>nJWvn`_MOCh^P_i!T%Ti8(Z>M%bASw3 zn#!Y-m@_srXJNh;C{uZ{PSLLdQjLsGwfLF5#9HLKj19UaE`ppz7nqru|33@h!Lsk^ zH+5Zvb_}fDyFKj)Ba%2nwITMnyL-7#Og(vps90C*YiV~KH%090Kl1ssv}@N%Z&ojM zZfYq9XN-f(a6m$qv0l^p-4Vav=ZlAeVNE5?a9_kw@K2ZkM>@mY3md+Uy4k(yrghru zv|Fl6De&LYU+@(&qXdql@y_LEf_3d$IMXh`u;fqgnX!Z;>TTe?y@4buc101A{Xxne z4SmL|;A*RgX4?|^2KHN8qlTPBJMR%`c{`Z#ONR5*U(0Kd^%htCX%HPABJ?l>_)*pZ55Mt` zWsNzTlJSx$rVX9mkYY^VElDv)wVvZhui3GN`L#X#nwZsjGitC|t7KLDE3r&&<{dVb z3mg2wSBk?CgAymQ^UXeYY7ipj%!Rc7t)VyzwY!SWR!fWY8ffina%MxLN}s4d7S%jb z-+5Y5ughCr=f6{-#k#W@OvXX2{?KUMv8u3ayf%ZqOm<2@#PU|`lik}a9ZWO%TaK?_ z&~#We-B=RjGHFEyZo``isy|&nU1CFFVM1Zi1q`C+=}L=4y=p2m`MG&_15Ng%s$lE0s3tXM z8kLAs82%>7tQ_Z5^-}_lH-eSOhI-b4zVw>@d`mgaJbU6>=ojSxC3NCzC9eTj)4kLo z8l>Y|YRUU*v@uC_q#G6}=8y7~aM<-{Pxr?oZ_WL53-;f1x6=x?#B+@BkF)A0jdDZg z`8wWlFl1Kql^;jL#(_!p*w|R*SF&OmXql8RnG`~GZ|5_EWrGOL_Lkdx{!Lz?J%Xf` zcXy4lG^piL4r^hwX43$p_#Fox@9AM%D9!6?wvW_#LfPf(RE7tb^e+^&^2tylwV+T{ zL~>^|iy#@)&5my3(A!=##Nf~u8lVvId^N1I+?gI85cFU*3lPyx*G}hYnLBjtxlXfd zwd{=~if1A&zXPpOfu{1PejMrCk>t!zxAz6462h?J!mx2vlqO!V`#<q5mD{XZ(+0`BNg@g+d`q*hbZpM#~A)&#d)n(Pw4tPoCx3->9VS3J-F_A)7qA;iKqf;JQn@X`2Vi5;xuwyAtkT zI0Tvusuc{4xGrGE&{31@M!d>T5S(i(YZ3S8JtN z)lO>2H4>w#8>k!unCLIG9`z`^{}yc#3-m7dez=Wq=#Q7~+|x^@zgKJzz3jmCtf+Q` zH(oEYmxsj}Tl|nq0iRIS<34rtPdmmF_kHn*(;LZ}it{qv%t`;=>MITg2ZX4%bh0QC z+kquUYIY~ZKa#Y!F7@prMNPe05$OGd!Rc4F+Vx3og&+-tDGec_cL`XNXCI5uF06gHCSBX^^~V9A zv**ent*RTeOpA#tXl!oUWjf&g_Z_7ph4&&aWr$|uPR?Wxn5Q8k z-QF*RwLuXCvd<~u;aIec*1u{shF@@HbC?){3e0T}4mej!vtTf~7H1xV6Y&K8x*jh7 zRTs*V-a@@^Ut@ZLi`77w*Dg!vX5qLCP*FWy;iA9(?)8gYo+0>@BgiU@xr2FVB#Cmhj5%+MBxHMc(9`-4TB8irCZo3P^F)Ps%rqMfd?ns*Q z1B+ac_>OcNR}3|qu*WUQ$h6tIs@hMmFa!(hUL1`bl%P-B_E4pN-6d2HMxu93vxmk@ zC{qApae&5chn?0qu{4g+CI=q?a}kYg6*Nsv5IxR;Vm=MvR~8q* zPd`}tT;x%tibjyDB%?4lv^NAGNM-^uxK+mNBIq1|IU7gW_7Ly@(JLE@~TWfXMq z!4~&ztoXqi^<8WylX|!@l9Qa3q0&a`ub_nvb0>p&DXrf`HcH#jn0jV zo@HR_3v!s!+0bq-iq7|VZIDt@+~3r}$le5Asm;%wq6?b(&WU8D8EhuOMu&9xXHPHk zlK3w`6T{jS?3~W2dEg^^VUZO>i4Dx=aJi!_F!PX6Qcm@I4EX^^J%y_DrGKV4;{`j^6!Rtn} zlj8tXv8!EVSI0nevQA?7qVSp7{SDE>{xsWD)<;(h4qR=M=r$!h4rq5kWyxVA3#A3> z#Z3PF_1o#SROPOCq7(P4YQ@2+cZ|fLKPB*M^=MI#An8rs-x|j#?!1iE9#8w1KgY}G zDyTnb z<6aMYnpMQ6Mv41}OTAYLOgzOmtF~WSE;YJn6;i^SfPPOhlX74#0gx#3AZURmN1Hy-{)JC6Hz78{ix*pGl3>h zA!17nbtV_U`4~S0G#cyZcn`gZfdu9`H=U4P(BrEDsFoCa!j~1v`!W3x$eVe_Wi8mljFE8!`*0_rlu?$l+IDZKMEl z$f;Lty~NhtG#t7%l|f!a?dydp5}Rc}P-J89abOV$7OL;B_bFzkkzz`${tTMJjJ|ne^dMQ#X!~uEd3;k=F;F{`sO%h{){i z=D7;BQzsB2anCOk5PxJUkPk9r#p*0bxs>iSwFT$K6wG_lGCz?mphcT{SR-ho+v9$l zUVcS@MH#7ID^XosBF~d?OS`(7rof&*`CTcoRKOVsAm_CUl{ND)@^rHRQ0d#M-2!KR zD?!8l!*K;ptWUJ9neT1R4B}taeo99kp+f>iLxU6DbnzXI51Y6?iU}$&7Y^}kE~NKx zl~4o|W|M2yJ#yDKNT0fCi$+s>5H7eM?=F8Sed&Ko0d+)Q8Mw}GyH=LL>s)dRqSgn2 z%J`Sm6=1ueqBQoRp?7bp9-RWZ$-HGdlZcJ&+AIM(X`-${i^22eMsY_=y87f6cnVfY z+Mo-aq&BuFd;U&emaw!DWpk!`RhWc4**{6@xb2&<# zWxs_=@!M&we?pl0$RLd@OO{>x)Z-k?n2Eg2lRkO7jW49j`hwf)!R@b*#UG=sex?q+#Q;yp0>f$-ovhk2PkfpKMa zh8#0n5sJ0$@7(LgTZi+tZu`Um);EQhNu(QSU-&Po0}=uP zg0z$(DAHX+qacETbfZ zd}F_RKl|BFem;zfr=5*>D_j_KaXvgElT%aP{drr*R-amTjeb=suR)nKP{#f0-T$2S zX9lAO27b*eAs`K`Y}-_>z)>_A~35g7nVjfyZ}w_ zZ*6lj}q=59>5k zG~&F;%VgI=Ml6H(Nw3fTkD8Didz@GLE*kgmN-siP%&M{e-H#D+)E>c{V|ptSueohH zF{NMqfGB5u)rN-gUD#d1+l1`K4s(P_zD&mM_am7#WL`;dsgR{a0R{G0k`_CQsx41( zSv!{)H7x{Q>-S$47sJYH3`v%gq;R*SDAFXPQrfW}^YH&{71Ie#S1>w~i-qbapy`~P z4}E4GD+daJfq>Rm^M0E60uSy+11by7-R68*I}nEy+*p>tAKW3xx(^-DsE_73_F z+fLc`RJJ>RK1knu88Okzf@0WY`mzBmLHF|LICz07HOlU0W)?Bw^=Iy8=5*#f{w9S*)%dbcacMDC z?&kdT#mX30)tPu}Ym(3*)^PMNIxZP%Us=7s72UmL1^f1rYOCLU;5QaGu~$Z&h0F2g zz#Gktf?`oM&jYDAyZK;62GnYK$vk0a_VUA+pJGQxgO8?+$WAz2m(-(e$ zV(Ir$d~kXexw)?*I7D1ujui@;Jh=Af=-=2wW^%P9qVDRdbIm`WoSYQYg7`b5r@KL& z7g`*9Mwx%du?6)8eZh(pr+sQgNxsolCCg(C3_l}G)5SP$&r9#B_kyet`ZshCSwASK zGEb!(y)$8lV|Vd5Bf&A~@p=}g6zvxJ4|Oz!3-`%n;t`!|#nwm&CN>FU*GJghWv?Bn zA9`>v?95|%DBLjLk^PVb@`0A!R+%#xw{t4S?nf{7 z3>k>B$K&f1=PohX5`I*IwC3r2YfK>vdnj9AGn|bmiQ9tem0HDuBRn%sdc5vIC2T$L zgP0Fd49|NP46@`IYTyMcgc%SBdrR!OS(1fs)2+P zd;MD&VRo<~zT$o;xW44RHGck0E&|5qG{L4xjaWBUsZH&2jWGx zDR&iW9*zF4ZPh(!`7oMy^Xw=w{R@vjIq7emv#Mui)N`+Ly^|V_Q+^GF$l8;7#W8$~ zd>>}~Ze;UO%2yysK#ACSiyiUIDJbPezKSVPmt}KN;r)6h(}l~WQBd@CZ7Qo$DBlVw zmb*l%pM$(c7mbl2u}u`jTwUtif;uC_g;1JAyF?Ao9HX9BI&R7Xat0})AItG@0mihp z-UmPVTqZ4}Cy;7%e|$>)<=%J`V{~_@`<3^dD4pSI03(=Lo%6I(ck5SJV^Dep&cdju z)}BlH3LhU&yaC^A=lW@!h=xsT=Nt6rULNjeWKgdD1E0PG0oyzYncyzvJ9(TpPQ)rb zB!_R*3O0RrIZZ`I1zo3IOjMY?zwkMlyL8|)B0{FHTQ+~r5F6&A^3iQLm@OA|jWO@B zP4AJAZ;rCWj#oxy7w-R2)QzBPVb;&@5cAw!r;K~sqRb9B;CMwKi%C-GQncg{U*=WV ziN5jPoTQGZdwYIk4A&#Fx`L2-m>2u5-V`<=J52Xr(IN zHqLb1(dO)TjLTpp_Ua^@Tbgj5FT3OKO6*LGtTu95VA6J9+E!%wS9bcDInFa|ZJL(l z;xg6zlOc!^)@>cQ9)9zJk!jEXfZw;PwHK9WzK^}?*jJ!IH> zuTS{$hZthptHXVlyhzoPl2wn_KS4M1LFwgV#vp!5`-ZgL zWnpxMh%%Zp=GbM}B^~nUH9q<3LDQfBVfI_dc_Lz~E6b69la75F6N4&im^8N}vz>%K z5_UlOTx7V8>^UnnBiSl`ix>@=xfAwq+#QbA4s|)doRDX#7FlqkZ;A4;f%ZEQC={Q?FRKhGEnrrCcKS_UYc)=$z?Wh5M;0O z(j~W#&G+TXjh=WXL)#D~#1MKqvHXxU`LoT_aCJ|dv$TK(R$wk<<3m8c1(&9Isp#c= zf>`W}obWh_SNSg5w;mr!fBA-iIcqCf@s`Y-z*t=`rGvjvJnlKQMWEO^_Aa8kgKyg4 zkKQitbI#F#pbXEeZ?tX`OIE_k7Fh1k;83pjKW`__dKD{RAg^!9#on##t`(x0TERps z_wCYqop*q)zOyn(#=Tev4;JMlh%5fHqG%hC)@LcTvENX*~|$YH3Otlda=f( z@A^1(Tp(j)mq;FgUs&N8j}5F?5v-oQC}^nGBA`M`#63K6EF7T+ zTX4>9s8Zv}<7Iu`$HwjA0nlXo*D=mhROhTOQRY3$!cW5DzQbI?mK}iMe$i8wzo3o3 z^_CL+Pv;|c%yjpZKSY&Pv-)a-7PY@!n_Fd@DzLSc)$<3u+iLhb8t-siq3m(tZ#-^C zWu{#DHrmBG<|j{b%;>)n+}5A0ZJHEE!+fk{b`-pK<|-G@VVfCy(q?!z<)0eYgyXUE z@k;;VERG?XOzA?-UL4!j8(wzY$Uc_tikPcZC|#77S3NX+WI)W;s^+A*Gu)xP&V3M^z$NY2AzByP^>EB0(u0#VDW?ZW=@S&Uh690 zI1}Bj&Kw?^QPTKt=5FTifBXBLtXMlzX_ohc`hRNT|NC+_pvHyqP zONQIz8}FT`luZARmt5PxF7zNaEHd-DT>Ag|TG}Xd!+gahi}%0&JAD7Q@!t%0J?Klw z(UBeB2+9BbwMr;BcD-2`6vciKcd{t z%=-)081EIBYybKqvnsHJ?u37`cVEBWu7#;*je_+9Ke9#S2`&cDH zPi14$BvK(2^5^T7wiEtmnHe^ypt} z^CaGvsu7$=+x5_bBCcU};=OMK0CcV>s?sXe$J`Q&- zpxQrem%H=AWpW>&Zl{I(Y@BvJ5IjB=_YB|VaXqH0Ex5W7mqA6{?dfXcCbtAD$PDzN z=Pl0lC+uO(NuTzVtz}mKYI9LqCcuhxlwjcIsf@9L#s0LF6S{fo8vUH>fMPrpwA-5C z9`$$yENu$dc7yY3aD;zE`FiG4&~76yV#PgsZ&|$15*^w}Us1%Fz4Q3y{v+|ZcvG$t zcNmaZ8^w{kz;MHO#O~fMZxG5Wp05x87SX0F!V-_>bBW94jttq6>gG{XNW0ocs=Cwp^nJs6J zXx)g*bbmAv5`)E~$vdS1AD4IQ06UbokD8L(dM~AKht2zDI8Pt3ALSMH45#$ryEqO_ zPR^8#U%~`duQVVRNw=pmQwptgvNtLx;QmP>uCZ-C&<2&lq^ITuxy-0#4t@Q_+C;}w zqzBcOdwe?X*nbcYJ=rCCF4Uyhf&mTBM}no!d1^}AjjAqt$~rBQHWM7>jn$>7L8BQ~30X!70erV|k>L;XMwAcE_sDpRz1@kXW^D z*1~f7_g*lJa9k@PCrI$&Cc)QfqTik!@^Gjq`v~SJiJ+yRbpuglqI>_q6n61;nl2lc z(dgus&u{nd3zngXCVX$?If2L4wc6pq`sc8vja|*CiFmku@b;gE23mM$%1+0v2yDlQ zwF9jN#cBQFy++Msp4GDQJN}oA-&*KDYz-cWY)_&RDqhd-|Jj zb}+ESl`Q{YUtU#Uent%%q$40es|1z z-Z1`ght)AIUdm5G9?9^*l78}1p4}>Jo>a8Q%mp+aolSi5fkRkd1X$fg zx+CuQk5a83HgO!Cs=b>;ohIPhnHu`~R!>)t$oo2Vfq;_N&yugllTvJ=y;9VzvNBsE zSv}oqa+SzS)MLO=7R%^ai zC`-Ay=uDLH=uw!%hW`)6s)UeAqayM^q#M(A`k!T=k8en?;|tc zjH;;Zb5b|{nRXZH5_0~U924w@H$PB{Nlb-^X?i8Sp%!1TZfZFm4r!iAL15lH0@WLC zNO$n(BGdTLWeut2p7r56gkXsEd>ygYvG_@-A{?{t)bzR4E<*`W3j z@n#Iu3SlRU{E(cSnsJ5N+bPW0#OntGZHfImL*b8p!%e2hO*#GJrPsJjxh`Nxx0kZl zCzLtrDy|hS`|hlb1IjP`J3=C&rEFSo?*Y&2PkMw-a_iAN!Pr+>vH|3tZOr#<|Z z#6ow46>uZ|saL%`Ma)u8%etc`2?VL+Xr~%J>-B~`WHKtQP29qLbJXG1wQ z_-rY5gFg(tz6Q@->?3+DO$MDs|JhXO0oUz~t(`B2Zox0FP%#ZLPV~<;rwNJUP#TeB zFXc0~)vkfXE!fr-so*U7gKC6^Qt#c(^J|GAVFmT(YwRRD$4|2KhL=nF_UVuz5O*Wx;YTYidZCih9qj~jyfhTW0wvv};6hG!>!4Yv)GM4p_5 z8Qs_%DS6l@?ofO2@T|hjzVN|=c*v6bcj>G=^TPcb%T^z|U#l;cYpgqV%y@E=Q%>-! z;6ss>ge;@Xp*}L}<@5~9WN;$OhmTrjz6jsOi8>qCw*%c|DAAF@D!YRbJ5jn4Hz5vJ z^t2KcpHYoyjlM(n&j;-g;WU9*oizh!*m^aU70AD3z;HwLEQmwe^O2CXMW9 zH6-t4^zpCvci1L)z}HT>b5#1a#o=&~Dpmv{)jvKj_j=VNi5e}r94-5IFliD#X(ore zzW@fU2lucO5QVb)F&wtax>d=fzO~qb`(k>Ia>CTS@~QUJJWjJ96KRG#+>RQ}%$>bn zn_cwPp@vIi7u^v2%yx_msJ9+9wg=<{?xNmnZq9{ zrKOq{jXRB`NV`*wrw3a90k(U!Y6A?%6K8Ntc|`SkJ{n`zxQxj$K53}e7;Or9-^ju@ zD1;2Ip~3Y&E1?NPQUrst_1UhMO%~5?W_0T8e~bT39fJGkcxQ}pH|?>E&2q#ZFm`I^ zRb6-2#wsguk8Kl1kk7nNW zjut~7e34?6tevSb_ia%^-7HKAxt(fuT_W;RtT0Ig&2J|BMKZ^5`tYNKjgiuTnbGSl zObc0i(io{KL6y?_h|H3Gl9sAPb*NUQulx1|+x5zQGlLwi;C80x6{Q~8gN2K39XC5j^Y)`g2gGJw-?fp(O$$}U1FK@KEP?1C^w(aNf?I|bC*Uv3ww zKL%S&41M>PxarDb>sD7^JK?~!_c@GtTbL>6ZOHhgr(S7(Wqlnp>0o~}YUYM9y)tPx z@!VmBD?^;e7InzEx@#v_D#Zh<>QWm}!&hgSp*r5t?#IwDZEQ7pdwWf8lW%c#@H5_g zAqbo(I6GcI_cpM7`e$cJoF<3hd3}Z9LIuhwSrPNUm0P!Qu(rsR%8DkE?4jcVqb9nx zBSazM@L7^^$C?qHu3`FXtB49R>O{mpVi>|tE*Uy9Q`$ih;HUl!HOWT`v}8Yf4iWQE z=<114We%dY@EFKHH^uEkSDi5v$OoAf{Fm87R%IRHTOhpo@fPH8Pd@HPG3>TwMH~~@ zU47^z=s2%*rG(+oTp3L7vh>rD%GfWPy4QffvE;u^mdH zm`~o{Osbn<@&eWJWsKJ!E_Umz*9`y(v=k_zqAC>8Vlv=*5%n6~ch=7`zjizd&}TIhk~o9Hd&^lOzwh}~aM%KP{HPR}TJ_-)L;ho?<7 z453)k7AU{lOYjN7$0Kog(%QjBRjgUuwPXl*`N;{lpDxo@k<$>Lh1}O!u~0dgFujhq>?VAK=2pLm7r z;4R+-M*_vnuyr#WAG)N#Ft_F+uziTmlP4W+9AjD#`sU=yS)Jc2)3ob-sADIkfznVw z3d9!@nRj-r#S2Kurqxak{`rVn!maFMG-`N9>eq6?HP#P(;Z1>-GEc z8;vdu@$lTaXM%Se%sc(`zXLZT;nsymg)9DKGjC~5jI^J5*#F2sHVCgYAe32vwUKQA z>9sa!u%Pl43tG`p%_}s(xS1qwh*yG#$j73oJ`YTHPl8(ogm1D#QDf~VK-avQ9gfVK z0$W;U5g!);>xC024ZpmWDo@DoD;2T?WW$(QDr#>L?jAYBT2idG=jDK#@m_uL(3xMS zJU-5w2miE}2iRR<&_jhWl~$x6Y!CHju@)i_b(p8QeH#eR%SX5Q7UX7Tj=dYFp48Th zJ#(Yj$y>kHYkH91I*9NgxX@oG^%{}?`Q*gLG!M~5mll{%#YYWG0n>)Q+y>MFNfD+b zM;AlChJ@WDIZ*o-wS`0P2XYSZODcpatBu?UGfHHye@xzA^hZf=%ib76%Gd;1&_H$5 zdJB^0AzH~tC3Xjf=H>gj*Qy2;BTINY>mJbr>B)Q+o6fo_2#GN1W?zIQnYFtgM3Dpi zIcD5^Xw~gYKGfYB>y{b)q1sEtB^HoJbNQSd^7)({^K~6-bU&Z+{BnV-@#zcsaBZQf z<AQak6@WwyY7Y?KFLJLRTBt|9pxW;>dyoEup?`GLGKu=k>-1A9oyU2ZRrdmFKM#5uI8WGq z9c0_Vwcd+HJ%bQ5@?Q-z?!*r)LV5cX$;{i`1n4MrYDus;RCfpX-fuB#HhjQ%t~aXr znY^_3T~{1WG`0Tdy^xcce||LW85hs)2d*QYvR3XC>fb>@ZK0Mn8YM?vR$kApH_j5F zwOsvCrsH3CQ! zmsO5PN5C)EU$v|pBeW~G)+Ppf@~c}pjsKY?x=q(Oty1YtcE*Zr=Zyf(Mer!ziK zON4WF^>{sv^JbBL(0xG}FNUgl*ID_Okzcr0AFF5IMOphm$V0xAj#OEhlqu#zo@MJ{ zRTc5Fx$%zHowu1RkH`{rmpR)~q+OKyhzF8--^PY2_#-HFE2v><6CQpadXyh2I|LlD zK!ONW`K97jou9qDo_|_35L9IB()e|4NztQ|kXzkvwwp|`(I z)ZcbS;2muGD(2gG>~F^6DHy&z=ukN8)I4YpJ}&)CzzY&&_n1StDe)ZJl3LheL_g3I6>AC z!6v^V+X$S_g8R_ekYhcPG!5pnv4S};rNc_=AFTrje^p%?wD`tdN5=%GOs;5Ey6!r zh#5%f`tHX16UP1+=Yy%9L@Stn{pyv_wvTSHzKCR0>!m)yRC1q=j#Kky*>vu5?V~YH zp@I?_hTu2acoMn;$(d)Ac%FP%SUm4RSmj3}sMYDIvRUjdGaW+FqxbZuO1=gZ*Yrc5 ztwF!0G2r~n%*pwSLNq!iidSX4&p3y41BeqZ3L)3NTM4>mfcAuD)Ks*NhiRsK?2kLe zgL2HV%gf7~9#1JFp1kIKpQX^F&8gptH3axCHetLd8BBQ&>2-Lo{G_Ie5UY;gBft7A zajd7si}a#uO@~h+qP8v+;kh3+UwYY<-ebvJsCTSpE;*D}Uf#9w>u!dhm^>zpEk8@a z`d1f)7=q_v56QT{gGR|gR6WgyymrvO`Vmwoe7XdLZ)v8cra9_rp^?Q`9;30YtD!l-Le(i3Ff{yEfw{a&GKaz zW52fO)pfI+^GJf-Gq>F577d4#2mpCzY<~v&p{71HTpa&0dH3%DskW1zgYH~{Z7&BX z3}fDxW9WLJ3!D^G8Eb{?@rb~OeK^ISfd%pn@YrH{k@ zswSfwMbTYv%Wp0aK$|3$6>{Xnc;b&7_IZPLqnqA|>nhBRIRC{_j5XKxY?6=TdGx^E z(pQc%eLmSBi9@CCIN|j8ZeFa2vQEb*s9T%N$C}A;YzX;_1O?4(R19MM=Pm7hSSmGR z5emA?4b*fSqrlEg`SiA@Zv_YyH(^l5F#J?)_V2POt=Ev`f(Z(xPe-Nh?4y!A)S_C~ zXF~Z4vERHOsu=-YV-2cGPA+UC;JePXJ2gU=a<4&9b0~SE+#rcdrT)0i`6`cX2p%J7 z(Ufq^YkTHeIMKJ<6~9z+V>57XZv2pdQX)#>VlvLrcXdRX0f9r=ggas;m{k|FD)^iK7k;Pz zhVJD$>pr6?u&j2_+-f6BoW=P}YHqC$%Io&q(oaLeUNX98e^@pjfX?YBLUpB3Iqi)-=6A z!OQbk(*GGZV!7BUtpE$TaFrKT;Vzx^LE=B7X7#z(K(fcjd$k8H2N9T-5vj0J0`s{V z6~@*|k=jh3*_M46}@9H)q8#rP zI%{di?!RPV=aL!Y`RAEt9-zD%fZw>0Xnf)*oixjf1x&sICdJGcbb$p|V4J8H{s5GP z7GtoC9_MsG zJ|7bWI4-=}kEe$DsII;*V!5G+Pkc;plTo0W;yxI$0AO&y<(!y^5yi2wjKaL>!$Ks) zM4(~dvYY1@`(F@8VA`Jof|MQ{Hgt{xACoOm!p{lVBKQCdV{QTFlzj3MjQ-#2hl?2r zCVZ@l55b8V$hg}ZP1Iw=1~ssBM~s|E2}TG)5blQ+&L~ywX08;Iu>h@? z52Ze+qRTy=+i+D-k!o-OIAI0%UJF~3OjGfGioyH-L$NUQ8AbhNdN`Cb--HKf-i`T? zF!`z|es_*%H0wUpA*?}RuT)77E%wFP!iZ)WQAn)gL$90e9@TEwm}|ZRT{Kh&0B$Pw z^k8MmF`%GwR*=!6Ty_3VSTA{2#IjOau;bhn;E*3z*F|S+z30LmTm}Og>i9Ar(7%08 zaQ><7acVTB(47C-s()T>Gs-P(_DI`#>A~5yn3v`bicq_BtfbGj^$fF*6oEhQ-if{A z44@mMr+7fe!%sDj)1@sKoVsokP+AOqs>u#Tu{fSlHw)3?#(ZxSqUuY}5Qgko^(-yr z<=yx}QYn^LAyfi`&$PL*(A+rMT_WiKV5(oRv>W?xlKUjMHOTe6g8i+mCH_G`$xsRa zv(){lq=lY49i%^|kGH6Ztp@!c-6(|H1Vh%a%WJ^8LZ(&}s-0luU+GG?NA2lAxQC%k zC`D96K!cBWP?{6KT|x%fR^%WM4Oi|OI|)QMj_i$a&<^5&f9E?7r1{hxsF!2myScA$ zG$JS6*aVnbSVh>lPqh`&)|a`Yb3%jd|CaCSzrmaUu)u=DILctp6jdLMYFNZ&UpWov zQeZtzp_6Et@{5!7m7kyWPyO&%d6XzDXOl*ip=H z;9lKlsVQO)V%sT?ykxnu;$J0sc4{J)Ul}WF>;WCTobjk!PIva)!FG-LiVNT4Buv0* z=5;r|PdIQAQ(Vy9-0|xXpkIs+AN1xcc&%n(x$J;`lt`7n&!qahFmPUV18ur`Z^;dA z-Gax1v8X@*>g=$?ikkTNJ*>^C`cOJFnVy zB@Wcz{%#S%IkFR6LqSqHn9F1;B*rbtPM^Ts&*B=+m)Hc37BBip6T+Q-FC_VaR>VO~ z6cz#Xk1RG}*X@VBqP>klY-AhGqaI|AMlHlx1B+gPjGib!YTg!adiLH+w?U$ z-_75pQvw^c^*+_xHXCuhu^Ck}X`@)za&fvkD)j8RM^?SKO=+31a)(LbkB@kQeiA}X zwARLc(1!4%9mGOh^z*!}V$6(XU90BtdMW2HUnAPy-?E(LO2t{L*&N-jPRvb%I!Ub9&V`0L=Q(`AEmE1l1g-#oYI{D}0Sgg62Z=DP+ANUcv; zi4_&RLNn3P#1fmdP9*b9;$%tuHrlUzHzoikVSa#svj7`i-72=b%!6H5&>5}(1hh)nLa+*PAL)A& zY$GXtI^hT>*~Lq3z`L*v3|U7t!-lp7Kh&~O!3nWbQ+gpN0}JwOEINZ&ba-7N2%Tn-GaU}wIk6yxRZK|6esdtaC2 zv3HW+_Md#Yx*r^Kz@L~*l6=w3R1KzU>Z0mOGn=?>w&AG2YQmas)o%4u_n*f)=qoW% z%IbgD^*ywGxtn4Xov~!5K#S|pI?Ty7z49%_4hEJ2&A+3eRl$4j~F!`6jmih(#?2*$8TT@n0 zDCuMHV0PyZILj^TM<$@a3NPsc4NV8}_k!CwiH^N-Sc~TEb=wcV%&{~8V44Yw%SVQ$ z#mxsDx<0P=sx6b1{y|!X3-1T^{6GlI##TrF7{vZl3bQk=`7c3n8~YRJ z3YkzgNI8BGwHf3`sSspB`bePDm<}9C<|VT1G0E1=*bbdf?^4N_g-lVkWUr&Qu)bG6 z_zSjz$?oP0XFH#JnAA?Xy$p3<2<``PzQKCCTeS=h!JbUpuLj3rMPAW-a=(a#XTd05 zasf9hFXf$;enPU-LXd#mV+$4~t4!;6j{Cke9A_Lah4vPQxm3TXC`8Wb{qsGxH^P+; z*;9Dai!R8r4LK5K4xsuR_-as(7p;`ijm@!{h@&m?EZ~P?w~Hgb<`Z8j{mufm z)@;YG+#SwO^*g!QNN{}{DM6LaQQ?9Axs9{(#)SRp28g;e#@HsG7784~;tjLMT6D)4 z$2UfqyB{>E-vPxMUh9O7gcI$EVaMzB^5{;q1DHc{&%Jg2>&l z|nxKR-+c)HiT=F21sdbU1==`RhYX6Vh?57BZ=F9=XGGSxX{1u#$%5w&pK z)ll8N^|^UY%IQlppYMA{T-aMWWBve%b@XtWF>S~0t0&4r+D}h?@5G$*f9s_bbqf`> z_ST<{TF~EqkBOm>=6hy8D9acNuwy#zeLgXLa~_M`G>0j?IN7qG;8EwArCM8eZd#sU zAR`^QyB|QR2+bKSjW3i>B=VA>-yInKyIdqx$hXpPV)%$h!-7R@E>EDeXRS}z(Brsq z%Xo5nwP_uqwps>4UDS|##d2WTyvW=&s82WGDCJ1jb(2n(2*<~%`C0fVUE?g(-l@=< z%c%Ni$$(e7@0)Ob3;sQOUB`S1_)^h6oS}c?g8Y|<7Ka^K1RWb@M7OB+l8@>dNr(9Gzw$TwyP$Eg^%m~o7uBXtV)+tjJgG1 z;qsc}YEI_Yocu6uYr}|JLgKM^9j{sa+@2ZxW?Z~2@;Z66(YEMUys4>K_t@mrtb32! z)u?A|mZ%!>c0npN36C;*t`u$OMB4*D*v5v8UKUn#ulwQ$8k1HAJi)|5tFzf*-_Lfv zocs;!2iyw%p%>qT>mq#Z8>`H_1hnrl!>6cL=vKZFf1sK5blZMwTC+|j2<6hk!A?4! z`c(Q_JKVujCci<8X~!&yQ8@F;W23>xuWN}K1&!p-4s~bL@n2Ud0GrR zK-n{G(`(?yqIgqinD=mLzD{@WZ<3_>k+VH!{VhUz;)7j> zb-F^&mA@~(ux^m?;*Ar^(3o0-QN8$n)N)R&@j!bH%bd$}@NtXnZI$LNem}uyG=oA< z4@1~>TezqZ@<>GSkG|h|$uQ}Zx7Z1LlPd$RZ~Rf$ zm!@WX!MOT%aQr+PMl7{>!w`8akJax}r%uCzzhm#a#|yLKY}_*4jiB+Dq2!{Alw2bG zI^p~6|ALlNYOUBAEz8PJ_u4f^4Twgb5WY+hqifj!U3w)oB<3PZ5&9uftAAJ>>P5{- zE_$&|_t%y(Z~|PV`0^_*HSRG>2n*6B$U(&!jS{l}v;~h&39A6;e4wtJer7B$bEIAbE1VMXwy!h>!Puf;}t$!~wR zFP)4iV3wsO*fFf{-1F*8hgX2kt42MWIcf8`!m_VmjmyG^wp-{)lBe3LPQ8IceT@Ny z!nMK&?g#pF!euX4;1N|D`}JRxHYP&zg2RHv>WQ2#4)&JA6-7QKVUrLQV5%84-Zvip zMrhnM&m5!Y)PafNEG(b5cQ(wtTcTsJ)^tqNX4%=jw!E10zME0!HAgar|G8pA)3>WA zXQM%Mu2L3Hvf%7&fB8Bj!GiI zHtjY5|1-pEC>ZDcYQSqlcP7Tmd{xKi=dbH!&{Ku9s$@kAttaKS9DhF8xerrN@2*An zd2C8T6>R;4UW%~v$sqluZOl$REz6cH09MaeY|(o6@Wxj(^S`x6n^;VpF39mu>wFI| z$O>vGhWrj@sZezgg|`DzoBhOI*WU@|2gaInhU3A3ekFHb`-1ZlRtgi$TkMBnSi@*u8y&(Xm;2|7#+{q7ITpPoUX|xA zuUO4_X)5X_98N!U4_*YHJ(N#tLi5=ba2wTe7(jAG2Cpm}EJ8VeF9jpNnCMt;V}rg* z6a4UWu@`@q-AeJa`CNba*f{<{n&kY4U%Eyh^-S<8g^bM*KDV_oZoB+kJtA$KfZan? z?g}}6*I^*YI{(Uz%U$b1@PLNar21KV(=y5fU>&6RAWC}gZ%;{}+|YxL^OfwFv*8E! z`IVeT`Gu82xyLtABc-TY+B9Syz>c%fxTihfTPr^A21pD_jjT|%*_H$)?A=A;j$2m7 zxW{F=UuVw0)1oy0cYhZYPtnmzA|&1$Yt=}=TT@YZ8=p!5pG?b~I69Fi`n^&*IY6MN zWDGlai?MHwv>#RL*!99h!vlP?Fz1be%FmGqO3SLIiZ&g29JU;Q%q;yS$R_*+$*hbo z!NRXynyZr+|G4KtoM%M|v+qPgTkcew?0kidrO)!-t*t;YJc1Y=$0UJ^J=Y#QtMDAJ z$w+0tHrGSW4OX7kPetAArEQ;?W9%{TnOS@&UWP_rwYSKOsjwwYZz90zp}0_jR9`r4oc+%B#Vv+xYrP zh2jVCSr%75$T0^Gn7sPS_RL~@H%wdeV|$ipI@hy4b&>X4-2f{lcJZap!M#*@n-X!- zm6o#+6wd~5eU{_QzFtuw=T*&ff7mONlW%Nn`sWJVWMf7czjTyxjiNYkdEm&=%1`oE zS>q*t2^o)((Bfcw#tqzM)QkCrAQnU^) zZe&$IC)EMzKcfb!J&{+o1*jA4yT!QIO1?;q-(QmJ?>btb~gFY?-ZUz z6So3sx#-df;akjPyZh>G-c}OL;f$yAyv>0!LEq)(Lm1$(nNsZk0V%;L{ZXF{r=cv#{ z`49V-^lWyfI((ua(2~EXpfqth%ab<9Xw&T(Ht2%?V@~NW=lZMC+{ffg*CiBS0XWb{ z)y-KJg>l~ma!jK@sV9cXc3uT_y!s@|2ooQDh~r7*SVv+Q^?~GdF>nsY4wQp-nJ>NH zc;sKzk&@U9hQCmxa%}G6Z=N`!&N^#qzpNO6d%syk9CzkpSPL@_`B;>2_JP^Xix6n25^hrcXq^)j52U?!&f4gFjxy(&RVf2wY8_ z#dLT$g;Z|~oyEH=t4$r^#SGU>pAAeczi`wfYF)o78O_T@28qqwXDTCkP%3fJAGrEk z!A%6mz#Wt0Mi9WObNYn{(6DGQOXY`{E-z+4 zTnU6B%C-QmMo#sUlA=PQq++)n$&AHQ=gZTTt&aML>Ww2UD$r>VyqKYMBklCx7{p=- z>oyXn?S@`YRIO1lk3__OV^UyuA&M4O2t2yn(7BpK!FM=(HH1nFv4+b%gzNg?m8gmA zwGxeT3A@skiH97c5=G(nVVUnrKqz_wkpCDIXQDv&;(4?;mcCx4NoJ=XA0OXS<7}It zDZ*xK%v;~@V&h{>wEI!-`JDX$1Axe<^FOcJ_UL}^d5bO~TqEVV+w|5MA~c%162nJm z2d0L80+9IaYrn%y-5nlLru)!;qxE`~>^gY9{`agqpF(Hc&gWM^oQ_3BqVvbA^d9Hh zO$!HY=TP*gBie8C=Q+$yqq>tFre~(h5vj|6?0LB)&qftAFPZdP=R{X~H+l||J*e!} zJ3x>nSN>K<0DmEH=zhbH>!0x0Gtab7R#RY2mtUEGv(Fy|Ot-D3jcMA3PVs>7r<#L9 zrqHVE?~b(sCohAKuO+ZnR(&0V+Lor87ydUztfh9a3NU1Luntv#_kP7|hdx@!S) zToc5w=mx8p-X}~pEr{+FZ5`*OsCK@J1Be4EbOsB2OVx*->f-c$!S-yc(lPrEn+~qo zNfILe`y6_oDy0Pl+v^C8>b}7Z~x((nosvPIFNrqh_%_S+ZA047F{Zdxs)swZx z9NdG&R0#MHYcINE`z|Y)zq00bH@PEY(Ujqh(?w_aJq2e}`uC=+ak#2;*2p-4a<&PrQ9TND}n3lOTbtm`qNmEj;XS_=JNLZeI&rk_qe1dnE-K~`iC&f?+< zyuKpmR6~ROdJtZ-n06(>Z|mUfma;wdGOV;q}RN8M@zAF7H42)6kGE6Uyl!@1!%(QRD%@ z$S5Qx=hh&u5^!Q6krTjx2cv5Zi*FZnIsDkdC`Y!tOS*}dCA(NkY3Xw;P5Ts*b%oHj zZKM3_^!(>!rWKyf-_5cGGvl%E=CMgL>aXhS^o9^?14C4G^Gs*e8wD!eTUHHb)HDda zp1l}et1yA}CXJr8QsWq!{92oy5yc1hy<8X?h0rioQ6NMq?^A2Jg74Skvl%k3en+Jd zr+Pd4l~h0i@!4{znxF(*VbOImvaqIQ79r zO^ODROJ55q=ecNe=|gkgh@#u$HJ{uC{8G(=^Nl_gsRuPR{6C|9zbHRQXQ_+mheA<7 z^d7+arw3=i@;e1UA4`cJ-fSTsM2Pm$?MQ9cZ|`-`R3iM#N3EL|pnH3M{Y5`|2|>|} z?X(@}`@61?Qk5R$8|8XEl1#69mp-JLDGN9h@KOvNVm|0wZyT4LdPJCD)G9~FKJcg$ zP=Gfj{>%J*q?vCn0elOK^RhSxUULjJ?@z9a%KP3cmw=#atZAw(Tr>#c0l<0U;2<)q zc5lAK*+zfwdDb6Jp=R=(7Sq_LMSuwDAJy_NbCA*E1N$IRBuo$9=5t8Y?0q}Q&1PdS zaK#ygt7U+$K~Qlrft|X8e2-P!ZM`R}MXP`Ko29UOIRa~`G4HQP=_@*2Z2^QtjC8k16j|S9 z?G9|Yozkj1NhbLa?nWOEg@Wj;)3CEQgM-VffHs0j>N=ALu`omDpLUorKu+~9s=)BL7CsXrv`&;SL zHDnu+K^=0x3_)_GY{=WWdXKb|!Bd;s0q&0Q9uhVk8+buuL2l#OGUWC*_%;o{MakbM zn+^oc40{Q>MUH)m$$@?*j#CzVc`s`hZ4l9}O*oI`czqNsFVN~v$$jUI3KWx}4<|SF zj~bZwHj$^M8tCgmw^HvMSFLd#bVd`I<*HF)?5*N!JH9VHcowz6Y@X|-r3zrCRM_3Z z5=wqmpO!~=v+UIA!{WH|aLgk$4xQPcrkUu}$5|GY=G)j?L1GVyc8^k-9!`iZTfLy$ zJNPOXez|$*M6x2)z$hGeK;Sr*Qh5J2#tc;9#S<36e;^@eY_A~kM5gDT6b+-H0v+1Z zrTK9$1xnr%TfmQ}N0=y8k8|R7Zs8bur4{(VG&Z(d{=I&xP!>rvW{9=^=_~>keUS7v zThr0K82)Q{C5vr&#?LY6y`sp7e^SWj_J#U8SqU5l?S^@q(ceYLK1t0GUDY)_j1EZl zw-D9RbmjMGC44b%9V;B5Cnd7{PJo_N}PQ7P7f~*$Pd}9}$$GvEpU-eI?j#LO9NO^yu6$rwXlD>WCEytI;&+aaN z5nx__z@fFs^W`hKG~wG2-Fv#|Z^fmg#FaRIls;xaZV4eaY*#j86W1nYChT&POeSX5 zw%51e-Dhllst#vE)T4b_T_j(^Nzbx0vHFo_g=t%|1yVPcTf$J=x+&XLPN1>EY zzf$&*VWkxp0O5%1j&}Y(Ouc1Xlu@@ntOzo6Dj+>HNJ}>iB~k+_NDGM4-6`D-A|(yd z-7VdSq;!XL=YP+0p7Wmf6JOBZaL>KhUh7&{7$2Wravr-5eoj}IsF&b&S*fF_ugZqE zKEF7)KYmtdG&JiFf%&$^JV~Q`)WWd!BH7R-vldd}dDqZr3~OON8Sd}nMZ&Z^rHpejy>boN1mKw-v_~5W>M{h>(Wa5s4efs)9qR=s`ATn1) zqA&dCiIJUf!~E^l3Au>(jf|21qJbjs)c4Pp7k0g#=x4fgvtH^`o2(kQdL&{`%U8Lw%bR6(3IrV1M++U%BgFO=9JRs5qOYLy-D38^0-Y ze7$`UA5xZya;%BhrA+r=`oDQ2(mTaZR`pOgR=%?{K*U%5yclEWUi!f)b)YDYV zkmlTn`oCTv*}GMT|NXGn4V}xrA2&BgvQh?w5h=tQ`UCusfaI5pLZ~ew34K_#YI-AM z>173FnFlo&?{I|iL%P1Agi4-G4gdF-`>4Hr(pGYvgAg%q(r+R}&Zjd+t}|$n)^dAP zaH7qQf$O{z{3(y+-@4v`G<6xhZc_$#K$nrmWPBv^lbjCx$%nE_wK<`--6~$Nd3xJ+ zPm3If)a(1u$;mLNwQJ~;oL!2WezjGZzECy#-tUT}T!LP=M(GcnQkM6pI`w&miI?yPWQeHYZx4Kjk(OiZ`g+ziDj}h)=-x` z%Hbt*;+%vl`Lx9F-;1`QQfZ zN)?FvP0+zK_zxM_Lq$l`kA|qkPk(;FR%J0a+4o-T^C(qbT|DJLC$`X=2EZPYKl;$> zQVrS#6EeaeT=x@|_ZQ2)Y0N_gRtfR17_+V6)WB$O{ikt8Ln6szVl?7h^qXHQTu! z|NVn1ydN=Xf|PFPOx2gzSaeh?n~)sl8Je=2{l)>nD`bgfP)-1Qk%3I4$X2VDLXY5qC>Qbg4+N4l;zML^Gq_JBxApR z=A$fnC%Ip@>!UscjlIs@z1_@7^=VnSwqSHuY7ZoJ@z4x`qqEb{xj+s&!xyEvySs{_l zE~F}g_)1gPxez3yTPF!QrEPkiX8xxh{NKOR$GyDRr0hkl^yJawzHZr#5bCQ&rC^@F z7-P%|LrTx+d-1NA&B|U(k1dq^sfX}QE#}Y%_wNI;n6aA?LW&>$l)P_}X#KyxM%)Nd zX}CTsP_C{IyqA0EdD{D($82px?EOGUJd5%Dt-lM(uS{u$wXq)5wLjk-%Kz_^AnH_- z>{4)fmeFC{0k@cqd3S_EvfP1hWSmT+`au7!;FnLhRII~lJ?YF3_j?{Bw*!8IZ+5;L z59MNw@5a`yZ4ZkWmA?4U`U@r8Q~iGrBUB31j%W$3YvS0IjjTwqzTI%KzYl#)x~*)w z|NE8w&vA4`UbuAmdP@Fad`jRlXzeoKyM8St=vuXvBPqSKC`-nm=u|+>7kSUIs+CfE zu3Wz!da+)u=GyNFjGK?H93=m9_6dFVpokFD{{C;=me5%+IfFg4lKe!`RIE7oAoAY1 zQs@LeRz02!>0X=-9DI3=h|b>%&P*~FG; zoD4f4(+p63Y4Hn0KBJ%mIRTcBD@lU*E=hMFL;iOy* z-zXE=q8epAXq_lLwPiN{^bz_{Ap@X_a)z)_AdgE67d{(djuX$6^=Xttxl_;Ujt&et zMF&v;-qKV8%)*o@0}sAv!|?04jcKg0bt6T0& zMYbKU53GZkB*+swg~|G%Dr)CXVPgsH176NYka5rDdF!0SZ4yzIo}-Z1Utv5D@(mGF z3a>VOTL8}qnJCfG`cQ33r&&y+zag%RWVOGZ}&W%P3~MP>Rr< zXYo%EkwrE0u{*Vn|2|xSD@-bU9`IvxEaw~244nf2aU5f$#)vIb-{wb`2cmq%vAky^ z;T4p@lSA{lX}MQVxN8=rqv*qIshsDuoopGqe@a`)Mjk7G{QXzcu2(}{t-bq^P14ck z@t`7E@|WH?v~k-hLEDuyRxZI(rCf;jqo-F)YPr1^i(c#)L~Qm=?ujoo@fBKcOz^~I zJ{4-$SI|U4#b{*nVvi+o5Ki8J#wwILhrQ;ol@Yix=!4e14p2aJ{vUcrDL)3R$!EbR zKt^5&p4(TabQf^s63N_oeFM5j7aQQ9-Vxxo^!mYuahT>Cp7eaTp^a>cT0~! zaOx-fF+f^1>+ik>)XM=>N_VO(*+{lr4QC7F_Hm0QFTg`0qb>%9WQcHR1wi|63ds5Q zg5n-A-Oa%}*`0mu91iaZoi$-3z`xBxxD-eH zeO{$OQ#ob@OgD}JomR+}>G-6)ha&m;6%*xY)QH%F_5$dhsOrXNBRZ9Mvq-JmuC6vg zQ_bFLZ%^DhWKbo`zS?zi22d`6c^siVjvgW5=qDkR%1(12O%DGwM^AFr{p!)ur^7jfFuAuvbC-(g-dn{pr*kK;B@JD%gG!?p0`Im z!>+MiB+}d99dXnJYL0rlx+s>k^W7;BN}uLJuM&hKiQRbz9_kZ%5MtD3m5>(qy1WD-DrJP{T$bE@8{dX4(z_&dtnwF(M$d46P1c& zYW%n<>OiuUElnP?jZdooz*i{cyln4hs1CeavVk-uT3Vj~ivk8?V9X)%`5dV~-uP}k z7Xte#-Wo`8vF4B1w; z1muODLP4F7UXYkUjc~mu@O;r4_{Qr2EI<4@p9uH-mWC1jbw3%3KnltbB7pfYGzDf- zjX%zq*xvGBYIK3zJJAv;j- zR@=WdEIWL!lSY>3(87i8%9I=?Hx$a&z-TPxA#CpZ6wB7Ay-YRSQuOLaVARjNDqN+P z!YuUteB?Lu%&R+vrO!|6v>Bk~!4uMftE15QUzNYwy(#h5U-zpZUahpV?XF67yFz$Q zg}u=B(8%u#z5y3hrZ^R) zpV4`^_XTi(7ea@GIE$W+N-0sR3;$E24m%Mzwpq38 zQd+4@@1WTGX&gDJk&8w>Mz=rt@lTcdGo$e8?#hNMI30t8>`gazu7r>8K7Y}yjHoJ@ z`w^A#r`h=NW9+#rF=6HorpKKdfB{0u5UxAz0xGX&y{+-I#k$Tzu~w~MgS6l-v|gfZ z`H4sbWHwewkZJRzTn#n!Nr30wwE$1*UpM)6?gIa>TL4(b+{yeWPX$gTt@v;11;}2N z8p`%vsaZ3rNJ)#pUTV>c-G}SlgSO0yDIK@^GIqq2)Ju;1uBf-DoHi-dq(jAOQd-n{ zd@zbelmtl`^GrgQpzn~^aM0ip^-rOHRk8Ic(N4CiGGFrflG`v)yD~r~PBg|TnP~Q$ zMx@Cw-=e!=jT-I&OzkhYC2au%T;}-;ZCvqfdL%sOjmFZoyCk(IH#wD^`IRMc4e_to zodr2rjdU;Ug>`u?=Al-%yi7E6MkS~%SL(WR#d+qn|7u8*)EJoDkpr;FUle34Pz6yx z_q_ubCQ-wrqUaX&6$Raw{n$kzR6$jeo%xfN!w!sy->5t|wyA@5sY<9!r}@X>SZ|u37@o*7%B-VDx3j)<4|eaHA_d z+~38bd%*G=kGe@|cqT}xdRY+!DOf^B*WjwBtR{j(I-dx=3oB24#iRNgu+yU^?#{J{ z41W2`!5mcrCFJqsp8MF?ne@>Rw7hn7hOc_oEj{I#VDQ)8rZ{a=W#~lxf&q`~kTJT8ufvt&LiY#!s1U20Iro$~M23^x%=xKmBUG6MxQ z%AJZV8xXx_s$Rwuro&F2jsaMlWI}rG|7-J(DSZU&?xTE0aE|7C9hys`@>$Go*u+Tz zB+y3SqmA>=9ehbK!|}~vz;oW8+4#tXK76>`$^AWxOyUBF%xY(p`aM)y4)bM5257O! z_*Ed%;ooH<$dYQ9+L#y72Lfh<{Y|EdGzmThoxepUL+0(i=iQHV!Fi~5QR~J{a=c=N zy9APR^QJ4QYe0m_SOn+l4JyMdOncc0j4tE!M+U-Jn1@n@-hWNYYd)V+wMPs!1{N{fvrZ7^*A$*#HN7{?#zH`x97q z$@&eoY2%fMrRZ##D(b?8<9A&lBQiB>0;IR&M|<=H?X#d+Lu5Z@1IY$F_YH|=gMEQo zlk@548_AiaYtU^0AW1ta!U8t@WRvkc6@6x{a1p$NYDtnk*Py<*Qd(CPaNu2@R;qIC z3qABNyw`R#FtF5h%7Ls2Ani^TSI#~bm`1EX3tM_#ztIfB+{23!p+6a4`XLz-%5qld(A;r& zA~?zc4zveg!J^C9f(U|$y-2@(ur!@-s7?U|JmM&|>690ip=&E#V?HyU>jwAW5GQy# z*e?6iZ&{2e=xbm23!Y=`{_C?{!-Cxe{%9)Dhv32=`)7dF(}(aggGawxj=RDZ*K#nQ z?=|g48D?u%>pXLjrecK%&t4G0oAi{O4vs-a%`tx< z;dVc?%%aFrdP0eR59_uQ_BGS&Ncfe-Y}~T+uVxuf5UfzS4n_qcxWg>&*l!WnQ#q}> zVsJS18tk`M1kSp{NmHdzjPz1WJN8HeoTorm+Oy$hzfI)lL>5N>)NznsCa9V==9jlj zEL@M*AA#9rz}MsE#_~QU)U8`dr|{;#O$9bm&2pf_&P4Rx^_q7P^ZTp}$s|jm(@srJ0q~=lW$3WI6u%`8LOHb682M)$?u*^!aBW z-UXZK0hv>F_caLD>y2Yldp(%Eg%se5ErXBOaS!f?O_+!^)ki5Spi#)~cAfNIO8Z$( zfzp-h95sTtTEyx*x`;ii1;aj;4mA>pYWX5oS4VU3dG9J zMoy;qw6;hFtY0~Ue!efIH%W1P-Qj2f zumCW^>(h8wbeIEkxv5Ewh*4uRqb|c`u+{VNpqgP8LL40`_TN5?{y$Eso&U48j*yKd z*}RBAjV*SHp-hKakUgCq2YTccvwS{xNOBHwX)!7q^>htVbrQ{{N8 zXC-gKjkm3_!mXqEOhs2s<2lPZr0KF# z40kN~ZaJBD8*qEuTr^+TUa82=jN}PH2oOu_^Zx;YLM)gHpLtx|SobsK@iWoiU4P@% z8rjjFlA6Y067bD;J-fAkLt8PP(93yX0zM%SOAz(sTaikKb7M0pa4QO5cwC>N#ZxY9 zXv$ULkTMXRYGyLSa}XWT*zBM@>=BbYy;927)*skp!aMlL^|kxs7ki7fR3Bby>4x8*YOuEgm0!w zbj(sq0=2I}z|iJD`I3I%bSOx%MfZHe=CRMqpRYJ;0-syVR@uOBoL`Qd;0NLZA$bB~ znO!Mz4>c%M{QfGqHD&UEkqwdV3l~=9?U<03GmU|uR-68LT^Cq`M-I95>tkU8kEuwz zRY~{qN~o3Xi&b;=KZJkleh;B3dX&5E2 zi7q;mh-ojaija6-9v&k_Q9~CN1QT(>o0`{W|KwbI{=-@-R}f9(=N}e z!&y-8SrK!ynlk!)yyS?dAF5d3GuRZq!6=w#TlZ0Z=cb*Z*s(a!ctQ?W@7sLux2-^6 zhJQXINm5{7!bI*Mq(4*eTJ;YoCTc0ZO#{~>agjF3?ZbP~7rPc}xIT|jd^_>6VKsH2 zDzF>OQS2S44aZl5`r{iQ}`tS;iD7lD&b`@ZlU ztC?AmR&7aqBD=q4=P1CkiW}yfUrZBXe5?Qhc#Z=11cbup&xfo%qvQz2u)qYjX29b~ zr{QQQb@AxdP#*5#2+1c(|6#UvSfv=hwh_Q7$n;MW?W@N^Jpp zxOyvQ1bQ&8ihHeD`?ya$F#~kT(I`8#DE@6c7C4E03Pk-Tc6qW5rSYWqF+Pi4tWFNX zqT?=cF3VKj_u)jZ7WyUpgvq)e)q{dTm7pYa+=#W_K+!>A9(Gm}NWlBe=x1ax8w_T~ zr5d*uDSJ^K%rD&{b~d5LU48cPWV*i@vqGeZnO9;DgW^h}Kv-b9%z>T;i;hV{o;nWu zJBPv7!xg7hKn24(OOA@T;_i|X+2!`H8jj^be%Iq^zVFtySO@~p8-Br`z3QKR;qVcR zF=bM1^tZ2)yIr+PJ(GpKEn()JqP}rhnPKK?0n@ILjZ;Y&>GCIr3WQd#0~m|U6lyMp z6Vl(e8innz1y-wuHE#^$nALzNjGaFNImWvmYzck9X70oNLWRKbADu=$q3yBEw`(U` z$RXaOKFM>GG}Zm@?e#*|PDb?@`hTH#!8){(p3@^q92d@1TUfgNewfnp;-U0d1mOF> zIm;J_%RZGCTf$&Xqw>PMbq>5_&8yAlhJ{iw&`-Z}6?I=iTR$c5#7=Pbk$ouh0T3PX zzOQ;5uU|%s*Tel6?uo`tSY-X(`P_-<>*;2O3zM@Vr>u;0416Dxbn?AqsCU_AD4Sp{ z)kR4%92p(U#|T-asi-G{oCUH6adnE`R2;vKMj4qI`1s|lJ%KtN%d84Xs&WP8zf}yVhu&iPr^D|{~0?xRwasu zw92KjIU`)SU@Zejfl#u74*OF_wrTnL?tYI)&b0YAmkz>h+mU#M^gb5>0J|2_N$Uu; znc~ed<>5Iy?I<5F@9B>WtMl1h@89&tTi__fhey0emZTZ|Vf(he;!QK6tTzwR*>oB-cZM6A30bOW5QEvJ(Ahij^zNvQJF*%M^ ziDT7PjnByvwuNFULE(ogTF=S2;v->#yV8{|BC4dx~TrDFh5WWL@^_ zH<1ncL+kb}X*@7c-U>PF(AH2KAGwpr3gRb!ECcZ6GhNT+rnN0Mkjb=~cXS&O_{6{J zwwJeO1%OEKH%ruHG3qSN)^pk443u>m?4v<$8GZcg9xEIPi)SpeZdjS4Dn*PhXP)B+ zSTVnr`sQHZUduCCs#QD8JjgeAo3tN_kB&H^rUqXk>pbXhs0$c$myVZ5w-QL;Qd+Q+ zL!u0CLB1p8)vHyi<6i{Iy@&>Hm+-6m1;UiWXR6XfxxDyGEU2?ejJ$s36f`2JwAl>u zYrVdk6+-9)F6dYHAT2hEC^!w<6zELXD|$+*pNC9=t6!tqdbcT9Yalu z{fdol=h=6#CRn3Fa&|+;Ti``-H)A`8Ey8eK$ld_@A5EgRZEzEyPeuGN;ihjH0dw1P zuf7u@nQov_7{!ajV_x0fEp2t2^|gKa-3H9fX;ypbA(rs9v(V+x-~FnI=VG zB2~wwJD{08bzm_CeeSOs2upw~W->890m)7%@4stt`(rR%uoG!p`#2b7nK{3vv(AvF^kdx?o0(jJX;aLx6NZW#iYdJ*h`h}6J?`8nR`&}RpXxl?q zDdwj*TvhA~<=8>NQf5!q@ALBWUNG`tOQHO0Z94k4m zos;xw!LHDZ?hQ5NM$Tt~*S|opB}E-3VKA`JP)F$6dODL2MKI?EEwYThp$+q|Viu?| zXdKl%>%|K~<0BV#F0=DC*pT120|I0`_~t1n>CEN=NdhZ9*3g7Nd1#YZJ4#8iVL<5QO{jlAV@wyo0b9`ul@Oc?)IyR^6s+nv}A5f{YU@;Fqr z-FIUjNGE+zVwn5b)S}Cwh1l|?R75&`X#SXbrcfa34N(=|vmk>WrnCa9g_NxcFx3g^ zuJjIBvRjjimp1G$&#?V^YzjKO8ryp?t*blzPg$BY?rPJx4p}0YQf?1f-}8Viffgx!u>=4WtbTRnVpN zf)`@#@$Vm4?&1B5vf=k1K6D*RbpN&+5v3oxm|?jG@z`Jks(?IMs%JIBEi&Ib?+oOU za$rQ1+^k?&e<}l<6j~QeIU&uwUG7camYY4n?!}EKzV6emW~6vnEtW3&Hq~*6-Qi;j zvQIF@wdw3jHQWq)n{WCA@sHS%Hx`=RP|H~-)36OiE>;0M6yp^dfXQZcju|A}`u9sD8&9ms_(N2wedb8GXw zs{pbs=b4-%6a40J(`+c$B|uNGEo)syJD;zp=VCTN-aRS2QLmbLT`dm4Qf?_2`9u@ibWqKRk$}l&w${oj7t5Ve)V)s4kZQ}DsMHek%m7O9O_;pf z^>WDqAEy6iK}M{iAg_%(Ilrxp@<98`?%(=Kf*Hxz%&oqm+M1;$G;WY6^rhzQd)05- z8uJ2fwK4tcz8KJ4LpCsoPeZNGJ&V`la@%Eyv^;h1=-KsNj)c`JXm0T6md3Lo%NfgI zyNpl6q$e(@bv_YGiJ0}FiqMjp!Svcrz*d6wrB-H1v|=$^O67m-S1MR{60r?E@G1$# za3x-6Kan|5$2{wW@doOFchhYt!~!nUj_fhRj`Un0txACx6`AbS+PDWAGSd%V*Gbez z*+c)`@z?u!TTpb{mnOuK0uqwFaB}A{BBM4{oy*w;h`Dbhoppcum3{STkq&+S6;2S4 zz^-TcM-vz?1(AtJ^M;oH@!dRmDUNTG#M)9T2r+=+PZ(FE{g}G>HIfx(ox?0!N-cN zs$xy$;n{;9MuEHh(o}Hdl5puKk!gHt&r6l(6<&==2EMu1Raz*_QJ*Py&t!Ae0mAjj6*qZ2m| zR1EmC{lS8c^+HghS)b~N#1o$Sn2fSvp}s-9S5JG2K|to9fb;7>JM;ok-*f*Wi&(+_ zbImGwzR(th@5-lN$U+z`--I_HybN59k|qS)mDkIlkb^h1h2^5ZgLd8j`=I5iqe7z0 zo8~M~0xwZkeC*mDqw-6NyC*L?VKx(Q9et`nV>w+lp2bz~wNQRdYU>94C2De+4n=ef zN__~f?43c2M}`x^i1iavlnu>^{ zt;}ZV&o2tIA!|@19>ajh-{;fH6iFO{73)J{&Z znRGr!-np|t?CdAtr515N&V=^AUI2M+#Ec}qd6BHD>Zp) zf>L``fQtX_>K8~s2H#m7g_H+J;m`wluer=$;Rq5@o5}_piu(IY{EZ^n}j?n25-3=;!A73;hTt!+oal`=lEsrHB09ckK#!95@?< z-?5-@Hj9O(dX3s(0tP{fi!L@-cL^I7LP-~Dugx-pPIP01hR9dY!*i>4>3p@Mk`>3f zo{)Zu6m$&oLWmKv4|y#MgUMdCSGHZW<&LkOSA;#baoQq;s#X|C@rDiD8nDiedT|xy zb=@-=EC7`N*R~<{9Hj??;O$;@D_9r^RC|=vt)MgXw-N7bYXSaD584)>8zm^PH&2*3 zcbILLIIZ*GEgbPPOG|qS=DH2r_g`4H6nN7AyhOCOfWYJTQTmm_=rX1tZ?`>ZMc3Hj zigl2E_SQA5YE}Q0%dru|Z09MH#leoI-t2ze{(A&R%12oG(JCWSKD8fu*dJ%Fr9O!? zktPWaX1>p(ZT1S6N|2Y-$q;wm*N^Sqq>GAhyumRrJX~r=+YHY{09Hyz8cj_2(OS65 z6Fs|v3)p0?mt#Qs!3vz>@@XdKvR@!s2_MhZSnT%juGi!$Cif%u`b)7&nPvD)@61DR zdN$jX9mrvr$T^kE6y8?JycQw3oocK>DtmGlajcSPhXcM}PRw13$w894vTZ6e6B5eu??vAsno%Ie;?qsl%u9%!mm5)0C{HD?yA&=dL(fVuNpnxkJ-dCmlF$SIq-siCse$CE}LVAP0aI?bn#^ z2EGeGM<#@dmx$Yjp1e-D97*dC1`D&wk3LkZiE22Jeq{l!<7Z@m>7>NS_EfsV{HRwJ za<`FeRWvEhfL{AC<(#`{^^StxN@Q9;u7=w0-Sw)ml@zF`q4Bmxodcyf^#iI%ftVyK zQ$r0{#{YnAP@+2+uHG4r|8tSDe3E@wu(j#&4%C*hkq;~C9RVz4 zMhk^riV@+HFaYoWb`1K>PIMM^iS=Xiu%m!pv*S{Ef-c~as)NL2p~*$b^72PZL6u#U z_~}cf_XhTKtpa0RN@92R2uSCy;aN4JLw}vlrqe)p6!swgfst%1>MGi0?94p)#(!9! zAR0qCnUP@5{p@g+;%sZI^C)K1jrrHT3&|7F8`G(h)Y##l0BkQP8{RHAEgIRL%L-LM z@p+21)90N>@!WH5T;jlsL(&;VHFU#mASW^I)Y4+~hv%q@1!&KGUQ&sB3WsQ*_}`bm zLe7Q3MBO{EEzo>fn2d0-=K(!Mr-vl~D&hBlMa_}ryZc!8N_{2TfqNFmrEAZZ&xVbQal-vtxrUUH zdmZipf~&>u383s~z)g|cnJU#Y$6Sn-;PhNk@p-&JZ~L4c@N|Bh^apfGHk?L%)X%;e z00Hm26E_v@1UkX$JgNk`+W_i!gp&t2#D(b10S*;A;6piJ4w79@s|bdjNt{rfWc@x` zY4evXf}KHE=SD%v-z2WK$SkxV)4!a34{rd9J=0+UFBnvy`**oke%l9k{E zq|{=3NaczNss8JutE3CF8OifStHr7&N2}RsQ?q#He|rLY@%`~d-DV63w#G{&h-6KH z*ex;)lj~Po&&P>L1*NiS{D!5AbLF)D7qm(w%VI1k@TYtN4=A4bGOe+ zJiJL}#7>-h_=2PfDvwGV_XW5A6eb$xn=~!9hbMaxb~ITC5}7hAg-0ZM;I11QXm%J_ zNL9{=^-E48*+|rVal5BJ?2e-}>I!IuYF$z{@*(?D!N!!;gM|uLpWiCzR{JL ziek^USK?i0AwW1mI_VyrTp-}Doe)&^II6K3fSJJ!adn~=v#-jTN;E&}zhKK&z>)8S z<5#rJ^h^pZz7tjA*9>}EM&p1r46nHkOctrI0(QWm&y27_w0Tyuq7JYQU0b0K6I~Oaq-H@q#qx`BtM2nRB4bK{8U*&@^f5=gK)1sG$g+Fz-`UZqziY8c7Nl%Dzr3g(5@1flZt5B;JixWQSQQkV4<^{#I{x zb?718{qtVW0l5*J*pW&N&ILinuc<;#j@WM*oi})+tmYfu9wGz$&}TLvaa&4`J556Z zmUayWb1ib{a&c_rFAsFJM+l?K{vL~+@4x-p5?Hm?nl%>o7z^eoSTl`Eo1Xc|;qm|M zOS4sP&W#@8WJ)0LIvrf3SuG7a!FU|z$NS}a`dL5+_#b8kO?bapbo7oOc2|>a3U6`x zesx%2gnk;=usT;1Jpob`NZMLnn(NP43N%fDv^tr2rtuM#ptG7eOS_h2&uq;q>Qle| zc$PVPMK?;}UiqFc3b062yy(9YM!VC`M^H;WO=(p|N&aS1k+prJQB$2$-D?lc>o#%C z$ej8w8~^n)Bw`zj&j2n@o97UYwfz+!$Mf|EaexXxt|%uLD&E4G*u!n*l01cSP5-0S zm}im};1P}Vrgor*%OYA4qAJ|#0c`Z6&wiM z-WF3c0P6Q!Vh8sGJpNi^GZFy?LEr1Z-=5LuSXn~2yM7`5LKKhQOjZCIt~kl)q0(k!@m`7?j{N2a{3EDG9+r*3*$4GhmX(Y{pjm|x<&Kh?n`w#VZ9?cGY2X4WkqM;=kgUs8>j9$+gtTBJ34dNk--xQq4*1VR<(zU7M7d59^`}mF{6{;Z(gs<|X_ptK81?kad;D~~%xKp_3y`jrC%er$ zD>?U}S5IT9krlOGXPdvWFg@t2(QikRt*cJ`eOjq#75ftV6Gf}j{w7$x{G00fA~lM& zt2$hH*+ry>e4P8_i(@7f`|%;1dX4X`Ab6|PjHAzvc)Kb!vR~|0dKOmHcsr2ZCvcva zNb`CP9Y5oF?_spXy!wX5dK}1v4!?{MivaGm?!wI(gMdjZZ_+}-aH1i^&&E-nw^;w1 zP49^F%N{iV&lM4|nsci9u6Z+^Nc} zyYZ<-ebHiFcVqcS7Yi${#nu~%n{JiX)d-<+5eq-vPzpoS?4w$QHF%PMUG6PF%OnZy zxKyXXRhHz(>X%%jn3EL!V)r*@e#L(@V&ZsmVn~4W9Frjx_>`*z&`ROm*FY14dYmhj z$?=DSI(=>PO@Q3*j|#!U_J=QI(aO=1X}ex)Nb&AgqVeSFW%}aG!s$Zp5EK?4^TRhi zl{8@&jYHJlN&Kb;X~Ne9FLqDL%Zl2knocfE3J+HWa?}O!h&e5OzPw@)v|3;bzlcfg zx6l)8|D!`hhJ-q0#)vwR&$`GSk=ruZo77rR-m;YT{g4!$pi5qN#|Vnv**hN`<_q{< z-nYHcH0xlig3*MAV7h%a6j_+6ss3(GL;i$lXUw2Ciki!?8#6LtC9!T3xT$I$g+5+1 zw{7f1(&6qGdHS+4f99Q&v3I&jb2x)*+_3B?DYD~3uCC8EqpP~H-+MRedEGaLQ_Vy- z?izF3`);)IN&lybJ;Wbe7Y5lGZ}9*1&j|8`mm>LLd2Dz zqxDB=(Z##T{&q$kO*7F)@4K&j#EDmhxIS?inHdE*K?N4yIrb({bj)%>=WtOx?!szy zg=NBs4gL}0QF_G>7iw#z@<l1Sgu}9cVt5|@jX{I~Z<$EPK6-j$kt?(|{E+v~?n)>8tlr(p9l61t*6g5ne3!y_kW-9{V}}_EBn79b3@y=zU4ZJ|rKfZ`&whH+ zOB4BqpRHv%H`%g6mqp|JU{Nehy5nF?`+}w^2hI4`$sKsH6M>0rUthuJEPcNM3~_2` za!LV=bEn*B*93UhNU`JtvCGl+$-z;~Qa}$qB?EF1m zZks@j0rwYmx`xq*6jTi&jVOr9%le)3ZAFizr#o318Jaoc;oikQByqrIfd>f5)EL`1 zOg{!y=fId=boOG;j7m+X7qflMdQF^)#O|OafKkuYOTzH%YGINDRT!-8DDv7~rr$x7 z%}+74GUZHpgX4Jih7vAG6$m8;7u8f+T#x(sEdNeB3g%Iwm;tnx3bC>O3n&`4!0dQ{ zXG)s}xZYBEnnNtG3wAW?epD|1Jb_VTNn?RocBNWrc zvmY-xfScGOJ7BTSs#Iq_kg$+e?rdC6F{jS5M7g1Y{3eF(m}@2JQzP$%@Rhbk!W}lH z=wCtR?meL}qI44A!y4HZ^i9?Jth<$FPOetN(~3^|$0%-oQ)h&&z3;s7)6P`y(!Cxqen?YA+T zx#h4CRzkR;N5}+$4(rLCusrk&jLhg+oLX`&~zgHu9U-1eY#vgbTBt`##kmKZ4Q8G_gtJC&4T}C46mtafa@p4Hmz1V&U zA|Ijv`}>N*5#ic1iNqhU2)2QWhtt%`Vqg6Dw=$;j1a>TN><6Lsr3NTk+`M~23tXUG z1rxsQ$w+lag;n!eLY`#TcY&&o#!#g4zwF7rLKnJ2o7xaPUbC@_L26uM^pwusS22?g zq@OIg1!JL6637u&4a!D<&u8|okI(MY>ze>Yt~#1j=0sd7V=BR#V$N@W|M1VH0Q)gC zwaGFuGN=4)0-0ePF73?NUIp8>}N&`(V;tn|9^e@Ph~?CxAaH_@h5tNe*c_+50g!7X>&MD&wLd;*XFR zoOYR;j{O@Pw_i5Jfrge!2tt+83|It{U-=%&4ZV4m-JA!aJn2ac0&hblx*Rw@0m6m^ z?vul_DZK+o)EW})ujdk^?O_i14Q4E14F?cZLWzKn@KOD5HLOoVZ3r_cUXs-QRuV#6 z;O*1z`*0^I7Yv0!_gQuSfTrBEqXd%Y_a=~Y=W8G&=CpJ3%mKmuF@3T&=4_TF& z4oU52%cFo-9)Q+q&NG>ZHsEfg*5d9W08Fdb!IrsNSCl8-*#Xd8+^i^1>}uB~WAhb2)@*t+cpvcxmx5vN6EX{|^PmRd0gMA)O%6G^@8O)D!ByPw6(y&%NrMsKm zCE;X8`tN9TQ)L~1RHq^n)}@h8+9avZirC|X3U2=AHg3aXd|#3RQ0q>49fD7V&M&8( zu`iEcK@cwQSY;eTDs&j}>%d1}HaesB8RC*Wo9tAqf#HS*hFI9+0S?{!u;4s|%N^%+ zkKU#b^*{~kBiPeRlHGbevL8__oUt%|lUy`qnx=pbMyTI$0xwiH7rrf}zgAUHVKA^E z$J=tiR=qa;>Hdrlnxv7$j6?$aVYey*<(^d5c*X83G*)1X_ZWSiK-0u<+OBkQ^7o_& z{g}yG-;a)b(7=?{0#v_W0+oD?c!}WOpIyP}z^=t1)T~4B?Ekf>@7W2iyVo>_{C!aE4^ifvhk^FVN z*{at+3rk*q>+Z5j-Tu64)tP|%iTlpUsIeyhIwOcErdCm%{~2^~!~}KINYQao=lkBe z7Ac)(i=Yx-FC8-DD=ovGUrgw5&E0Hc4CA*&kE-C?(%$Ze{9Q(&0D3uaKARm(2Q(13 zy0sVucagsq=Oi^a+bqG@O0eyOgW#`JKcNKRwenF<7Bo!Ki2O&kRpNRLEGzg>!H~PEP$; zl*INim`c9=17QRQtp9mOB)7!cDML>_W&O$W%^A0a1S&yQtXLXZn(A-BT}dp@tk89n zV664nKdvt;np*HJA@?{P!zWyz_$4)WLg3T2I|)lbGMSq`7>Eu}UT5HFFqNi4MtWAe zC=v0q)h!6`T<2l7NnU0o%~DLga z`BGg#D5L`tfLhLK_0uh{(r(Uxc4_XzzM^BOOe@q?Fg?f@6Pwssmmpek=iPV}y#n!& z6)@~G3JjzOB!E-9{CNWO{!(I31rg$ZL`_SEs0_wypQ^g4M{zw-J}WcwTLagjANhB6 zucmAS;bAnum7Ao%AGa!t7G9;I!p9h|@-0)`?Vs`HSbqxfxJ4FCOuJ8WG@oeluXaBR z!pDIsIsR>HfR$1m!Oz567nk6nqvL?Ao(t>dfn-+Db~X)sIk zEDyp25q4Ngcujt(!Y_zrsm~;-;pi$OIk?-GxnntQ*Os2k!cY9254fut)?Se*b4d>p zsZWoau_DgYCwL;F14R3+8c;8C4KcAT zKn#W3(&ISA7FW}h9LcR6z#o?P_y41jQo)}B8Rstkwywg!Gr2iBGzthO|LJL`sl|_y zfQpo3RBbLo>qr-3;%ugEKPD|7D2$ID@;KGHi7{B)52V=G!>^F%cO^&n!A6f3$qFdP zQtX8YAJCz~8s@(%tIVd@f^<}c7RVu|+rtbat^)jmmrK5(8~q!oAVeOJH&uWpFk#5} zlaVFi+opAXYnE5bA~cVl_tJ{7ey5yK!p_$e;#!z73Nt{^{kn9CtN2e{0Yyi67a(=} zfOM3AMnLcPLGa@jAzFDg#ND>&ZFKY)Tdtw~}Y^!9DI9*fUeb)S&~Gq!>NmxfT*?TKu!JF z1B?#jB0(#y+q7gQquku<&hZh|zDHoiy$yS-GSD9>$4#IPBbE{pwE5{rEy7G5`~S## z>$oVp?t2&k1q2B}>6TJtDCzD7K?MZ{X%PYG?(PO@k&;FlX^`%g8k(WI^F8D3{XF02 z{eAp{58w=Qo$FkC@3Zz=Yga62Nxz$LkykVDHYH9{nv(u!0|Kn_1uFXXCak{peRH=k6wHnl_6CY^F+fYV?;DP z5hkZhThaHeeagT+SH{h3#r2}U_oh+H*Fk*JDKe>s?RP5BgoxcpVkxO*E3hf1&p8S? zoFGUnvTuek1#{bwumipB_xW|1S+E)Q+b)#k00N{EV}Z_@MgMaxLIMnAVTd*nhR&DD zqFE|-SWVLx8eg&$1*&%7-2N-{^Y}|EV2JLkWQHH>GSG}MfEmUS4o(MhzE*51_?Er5?$e*5 zDc$;x^_f(Le1~+sLylHqV8+kDs(#BU3N{awuIBH1Hoaiz1{A20X+cuY_Q}@9HQVk&} z_OZeDVy6gPHoXOCwNHt-&m&=dn=29xLMdEShLFg09)*B3?_HwQTD$G1L^jgl6wjAB z!s9_@H=dslf8nEr^&7pnt0_&*=40a>4p;jSIG@Tb1FPRC)a@nP(Za3g*)68R&(yO`<`@Fua1ps8 zlwts6(C_FwiC)UssMtAhl`8qtg&mYudtws{Rn8Yj>tR~A0Fv@y|43=~TQ_X07Wf^U z-LPEFCVgLV4ygh)ak4@R-`J4u?~KAN*^hmQUO^V5cdU0$`|^biI@XyM0DV+z9=4IIk%S#Qoaqc zvuS@0n7%$p!qclc&I^lKKL!YPCdctoE6uMhrU3yUOF?0%;B}c3wb`r_q$eJN=%sao z_+UK8$)-731A@p+ii7t-C8*Mz0`WzuH-AgIajH$AD z=q|rZ1O+*KsI2ACEB&4~D+E;+b=ih!ZKTF-<@FgbM%ta+{&~D<2rR9B82>0Z4EgrT z{CCOAGyd5cy}P-U@?$M%ZC3vHgg4X-_2+elyPs$I#?5F3>;wg8z6z}O>2jlGJ1A2C zAr{>mLF-iohTc^4$I%<1;sXFVob6K7EQSgiV>RZA`(Z@_LyEEU{$0j)f-@3*^t(-L zUl%M*0yx>hUawR$_F;TBGEtsn->#=XmExP!=@@DmE=Z*JK-?cYwk?>DKc3afCSZ(M zbisZEDB0JEO3&QU^0aF!=L36g1mFBXSsbQui{sMMdr{#xz(tbO0*DKH7bR|}7k`b4Dnq>dcn){FC7W>d+ zQ9!n{uPW&BpKN+eoWMue*$21_cCbkKNZFKIG<_)r17ic{Wz}Tnhu3}*H8&s}IkfMU za+elI?phWhLEJ_LqX$JJyuGnmTHhxyou{_GN_~`pcF=F#TBc{<40BYv!uD(3dQN$9 zU~e^Ll5>~B0E?81*{a^(_)bc2BVno}6qvr)VmF`jbGi3i2`=HjAsKc!!0OX1`RzzQ zRwhJw^UWsoZxl+$Wo=(l@n-)`94;KvUuTtq`+h%_lOiVJ9mF4>NN;$160gxM=Apog z115;!6~$34*t#(i^Bum2a!`elSgwlAoItgkAI*b(x7tvsH_;s`f;}*yt7qSU!Hm?; zNnl+DP5Mawo0ku*beIj+G0|QwDZYUL2lQy4Q7@D2moD=Q1D>O8Kx&Klskim}hmwrY zrXB?MrDJA6t9%?f-HC@Wz0|FyMg17t%m|M60GJo{6zF6u>qyQUy5k#jDDq0>g`k`1RlZYdZCBxDILZ`C{z)YBXD^^}7cAu1?)+ zS=vgW$LkBRs`qxCRr^)Sd`FRS({~-JoU?M$$#-1@&Sj)OgTZe+Qnp1oasU&y(ufEu z0-Uyf<8R2{`@~|1d>ANAThV29^woB~M)3&pvUd?DwIjMY7NF6?SAe-$-32Z7Yq9hZ zp|OurdIdTq<`q{z9nv}T@rwEt)0YY_|6tBkDd-VVF9KRJd$AU?w!3H}C|~18&83C? z$NT0#rxR7breAGC4jbdljnP{#T_;rijP|zyy$)6*B6kPEp1uL-cg`kBD1=|h z$$)7QloAzmSN~Mb|M|j5gt}UMqqa91>h*3SkMizx-J-19+fJgEB|_!YCF~!`dqfKe z0&d5=qHYVK$Wu^q<}d>C?G{WLX}6!^yZhNWJD6?5j*+KvocsX$V0wyW8gh)t?QHsj zrY*q~i|>&$1m^au!*g6@`tTZ84H~NQDYf4PTEGY5FjpcB;}esWxpc23n9maq~!L-i;y5&=pG$J(8Qe8>GIJ^h6nk& z5vUNB2rzGtMwERgKyGJQ{$Y>bZjE(W{ypk&SCbq${w+r5SGg=|>ddnI1apv7xCATe z*i)IyU)?Hy$UCYY9*TLDVB{&3DoM2 zcK2+R?POlMG|2E$%;TxzcJoN0&52J_RPy6RaU}fPTJOG&y8hvOMX;d)7!iV)m*oOC z9m|WgsO2)kM%)o>(-hhN-yZs7yLT`w8QD8ne!!wixB6C#1S9+yaOAsy$I2q(B>=Zy zi4nDjQ$oNbAWxOiNBROjqIF`v_e()wM_8Q!2cZ5MrA|Rq;gI>|5m%u2TFH!7vMOS@ z@Fx%elG|9&;K7u#`v7ngx}VlatcKkLh`xS=X_`2a)si?6AlbtDJdx4xwx_Egd@^5= zwt+9mLgo-JkYlAZ^a2*SFwZ8Z<0dasNf*i%E2D?|)TlWlL^*}1OX)_VLKPTSQROQD z!+@{lv?ArCkgO|&ht#=cnoaEA8}{EX?>(DJ8*fZ~D%MEyCz{QReq%#(@hSEY?vVMf9Hofq7%Ocdi7K#^n6tCR{^z zz);5+d?lV{-Y3<7)9cHLw0uGi>fEw$;1T`1BpTFzye6)xj;q8APAPo0$@SpSlmA^g z-TlMFS4#uUZ9>T+_SazkPC`i&!ZOz zs~d#1u@~D6K~Csy$0@imGqN3rfNjFxZWYuSr342*i2=Sxgb%2%6@gfl9OW7u4R^GR zDFjvky;o(l7`lbS+E=!rEGd-gz+Utc$AvYjZ_f3DF>glAs`UdD7K#mrW&I|cZgEP#;&pjTjk*>4 z88#llAy9)R>x%k6D2Q)-K74XEbn$zR_TUY!urS5>l-+)9ac3uQV~*>&@z#*)&dzVT zZI{Eq^hH``Y=7=ShLXjGixA8sB$E)LJ;vGGx1H2pX4QEek!^R^?N zivRnQ|760>d&t4Gav3knTqGI79l1_2t)C*-_=&uFN#An|g^+StbXRO|IQ^T9JVOw^ zP$4aa(f|33|GDm0=*({^75g`*@K)Bs?xU^bqe}#e)OQb!S)A#Qbu-2n)&0E>1fI## z;JSF-gKa$jef2+WNbucz@204L;SZzZ1Uy`OrfI5PO<{&r(J58aLQ%8*I`vNQ;LP_Pxkze%e5_F})bAJdu)QZieiFk$% z6t0qheVC^8Hmpb-uTvJadwDs}=H-f| z4{|IR2g-LEWc(d4``Y*&U8X@UK&a~-rNDbL1F?A|fbt!VuIA`sk`Z=NZr8`^h#`%c zZ_A8Sfn`_u@(8TjGNTN~C?8t?v-Q-SBbZsUvS7^-F_78ta@$+*8Mg(D8K5SXzkeMj z3p!U`fvenMN*(~XK*ngk`oN@4pj7==^fRiGtzuiD!Y=NyeBkD=JTwyN8z546|Ix}s zto%qr#a&amo3w}%*%)0V+7g4Vhi`xA`5u#)tr(d4G1*AKMNU8bE=e!OiXOO-E!_(t z{f&^HUB=MEDYqp1p|y%})Z` zB@6w97GKG^CE=^N+v_xhvtAg>hbd4`FpT6VbL$Asy|o6-9)al@LPvA=^A$o-!d!69 zdR6#NfNpBJD>{Ws*lkU4Ee&C>zp^%Ce%&HS=>T3m@zHF@(sz&dGA=+&c;f7nidIfAPXyKwGs#^;YrLOTl}O%S9CumHQBR01%y@0KRM-z@#7%vmKP~%mDwe zznBG0Q?Gr&0HL#a6vVjhWOKv_34r5Kh>Dlb0tLYuVhA+4xO#LlXuE*MUCtAMvjiY_ zz5-_ab~u(oz}({IpxFIdo>ij*zeVtr3)%#S&H*Yi@F}eQg@bW?4K$V!>cE7GxOEC- z$Su7kMA7UBy#13+5nOXJFzKLes=mPmbiWSLZm&8__&}Op3E}8x+-P?}c;z9IO=~cM zsm=QPU7yZ{u?@=aJRP50#AJVX1=2f7WT2ki%7`?4LUx~0C00x8a-V0-ML|i@q*t+xqSnI^%)Lls3o){Y~ zU%w#q!q1u2NgAL`Gx2gR?KSxT9F_t@iWV>>oU+7<>ed0lP1HPP_5P()6l6tePf^f&z;5+ z6*+^?PZfRFo80bqx`uOU3m@_=nCrZ;N5cAEge^7U<^WW_yzP38jxXs$(qYAEm5#Jc z*2`R@OXObCg0N=}Q8?s$ui{v=p8{8!*BJM}jHg0G-@o4$YgoXaXpy+1%n^w4Ay>$RDv)!3p|8$N6-Dy{`;8+H$8?PTO$TgUe zhLTPthHmdnQ~0i;`=y?W0Wd|P17nCiD4yK){Jvefl2%x1vKc26G04di*_5YnNaQ(d zmq*aGL0G7!@A{-^6;CasdcTxEGMGrh9!zj&_%>KiE?^N&XOIA@QC`0$gowC@{-|1E zgCU)euo-Dd!AJal7%4z~tf6=cv4kLce0odcG*-VS8%@s}nFH3f@UnFNElxT=?(0oS ziP@hR+Ng_E%{?CGQ^`scxAT&>fXCj2pu!G)bjJ{EC)zl_Y?lpbMBz@4uDv~ByBbJ* z(G$4g3QX9Ny;*I-hebdm=Yjp()9;9zBf=zwVey7u&=K#z9JTwnHviMS80B@5({Xsj@Z?dlX-vpHa z!ldW_6v3JIQOANiWKvpnQcDUTW^us}feRdyLmBSIeQkty4mF;i+4yLMsXE*V0BK1M zz>}~Q%Muj;tT%5HK}q_VEWKa&`be$CZsaov67r`zvwiCDloD-hPNHzaNM7`3n^i!taONRps zF%_62oE$!X1D+W$5PP5~hU@xQ=FF$*%EE}Ltnv{cevZXOR!xkeL2tR7QKY|%eIb4| z7f_paS;n?!zcwh^&kHBBj~+9&d3+>?PVU`laTLq?OLrPL|LtHk*I?v4DUK;46PtHg zrniX!hajGxNO%|>WY!_SDD|o@3A^Eo9YnsR&u0DqEqfxQQ1?WnSrY)UAsQbR{Nns{ z#;XTlU-Wh0;12!9f8J+u37*>I&mz&aKO{N`AViQjiBCcRot99fE21SUh1SsoQ0>vw zrB4#3D&y94^5RleEr4EW&;x31+|5fs_V%@OlfZkr+JU4bB;&&c(ZgQtKtXBw-E&1W z$`--FunjC&_egfMmMDf9J}BC7Nqs<7uS!qlQYB0QPMt0>2*}Qn`?dr}K$6ue`e}zE z(Xlem0xEnM)YETAebg}rC?!aU0Vcq2dv8zG3qgE>3vLO6=ECQbzUJ73IYDU}H=m^o zyc*ePx)Vdz<#}W*zzGmWqskT0&Zg z)5?=7Z4UiO{#^1|cJ80bGzoKCI9E+52{3uP_H$I&JxE>MdH?l3jYAXWz=6amiww-a z*jafEX$`W5La&|cY@WnBd+pdTNccHoL2&kfX^3JCBeVL`NOq|6#y6K+F54fyBHsF? zx$MnY*B*@OWb+EBKSNWSNUGtWA7**tlj?o=Ao5YA&*`-+L&~dB!J#s>(R2}^@5Zj4 zGcvP&|J-?z3%sw@V_?ps9KmuYioF6W?)dKhT8WSV5o>#u#T+bw|ArEk+*(G2C~JQ-VD}UN4t$Q{iqupiZs3{f z0llkj0#)`2-0`j-;qjbakMw7KxOv1#a`hMQJ{J(&s|;ii7-4%-3(xt^L;)wVn)RYN z#hhUp?4Cl{#nIS-`8Z!`zn2N!uZa?$6^sjGBt!p(>-FSr&lS2PGEK}_aCMlp!xdDK zVqD@Jwoep%O0wj*kbp9Arl-_vcCy&sWvU3B;86jbErt~O9lTSvfa-9mmo)%^1y$Qq zI=`<93H6CLbbNQUK2K-1 zQd2`Gp6uL}(2feiyI*T`5}fQfqR5Sr+Ovw(y47l$#`7z}o5H&xNk-SFE(nTJf6)ER zs~Hv{TNS_@zGHx{&&OUiq}Xe#D)jK~c3hYDvTIOOq9FCe!6YtwIomt`gy?-TgA%Eb zBXhy9db^F$E``Wpe&}(lKaRbFM{VS8O;a+_J~c$U$z<=$7#QF7kFnl!<4)>N;pg}D zXeIjH=Wz7U<|$b<>)9Oek`9ZGG^uiBxPG)W8BFRty?_2&8Q=j96E^=!Y$ItsPWhz_ zX;Gu~@u=?(7-B8>psMb5pbMd!pg(CB31uT~kugEfI0VAoO_#Q>3NOh~l^pa2+unb) zib`VZs>|SsfTUFDtJoGd@6qN6`moJy4V5R@3#>CC-ET&rLuzG_^yt(MXbM0gR}K-6 z&~rzhV0`4_4w62(C}ujj8@jeb!w8qd-g}1IZ_W6r=&k5&xDI$+7)l{%##j@8^k6+T zdpkdAfpxs>g($94RC*AkeqIF;3{PbNmiA}llC%m#`4Xu&4hJIWapvM>OpJGh90b!@ zzk#9XYEMEp8QIKRdVqV~gHu%YphV|SgKz*@wy%4A^RH?Q{gKN0TEKMe5>P)Jh0qx5 z1!!lC?;Gqh`_U~W4Ach=G!w_gpFmttE3fbsk9fb_$N{n>;zsL19s7z{0wUJQ z)M?eJ(dpWm(5c$_7B}p9=LQdyYGM~ul9KE(mRKT19bZ3@Q4^UOsMm!i;7o@8NTC15 z6`97Sw@9X!Ose{}Om@iOx2`{L9)0+HkhfLuM-ZL;``X zUfBoq8Swq9&vQfR0p(dGpZPl1)OmdHvNq}MUm>Bf3v5cfLr{lm&_>G+qGD^5aV10h z7BEgd;KYKtVs~#j-2=%Q>u6MFHrq_lmIQuc|0K$N?x^f{#?R%Cy;a2th+6Wk+T((M z1(rTiNa0SXtUgj=ry=`CK)PuYvO%Pd$Gi*bOlgNF?i9K)QUSrIiBck2-x(!X94|;| zd>-Aor%x}&Kn+GsSUNd`&__I=5@@-{&qMr!*~Uk3R*+hpJ5!AA>2v$O zVq2zRc3$};VM(2qp~<*h;ww&wjqcD!x*6(ayh-P~Pl?0O@~wXS{SLSDd_)GQ*OUT& z><2Xung#U^qtQ@43z`Sz-R^qf%^bAtmd+r_Rz!lphg$5H<737(8&C=O5memPZC>j3gGmVs8Bsc%OP5}TV@MMuai0S>J8Q+(Ru&)9J_{Wz$K(jDqCW;nI|~% zF)t%&yOY7kkB=8R7rFFuN{tMf0b*JsgL8*JWaqsHil1yvK;#UOM;9cl2zB9A3n*F{ za}*L5J7?MlgB5xc&#`y>Sl39z17h8eV9=7+BcKsr1&IADuQTg;+ z;6lHSUT-cgxWsCgfiB`8m+3uKVG1u1wG=(Gj(%x`KFyiRvtuWeR5G3s#+UacJryAy zmGj3YKU-VQuotSnStw~H+NkM;h5kr!{iZ>*_`cZz3?NcDm=Q-`Fe)JSu8P6nesS6b z;u|(*h^k@HzWJ)y`e)}~wU2PHF1UPhaD51|zEVZCMBv5Do(r&z(l%MW7mc~+ z#cSGb?St~|t3dkRDy|3ozF2Ocu*YYThgaf90sA~+3z*I_zeFEw(v^=%(0$3}abWke z!w&O8mqhq`LY&f%SSeh7Q^LgL5Dqe$l~PM@bxv+y8QyP!PX7U6I_Z%eU}8KUiNx#Q z;)G#I3AHpg$FVXmnZau9cOSCTt-qyGW9W)A{&_*IN$n3r!+T1GeLVOzhN1#RfgwI2 z>KtjZV|ty>O`}Wiw(>ABnHid3?XNNM%u(UgVx%+!3Rm}~9}Zsi{(v~UH30JPzqRh%Mf_`+K+ zFm57^(bQy$)uP4mYrzA<`o%==CD_U9WEArzUM=Im9WtkjC`pmAczyS@pBlOP;Z(4m zSU1)1;Jjg5Gs-|XuLo-l*X;eUeNHw6VrA0NXBn$>IoFag2h&OPbLYb(C&FFM% zlH;ZNz~=I@67(zmwCMec0->;EQdRmkeO4FbukUqP+s%fSP)-MCFk$ zBLV|w%0s{U;3?77$r#I|D(X*m8I;u%OQ(|#YaHCC^mvXH=Utb6;X}2(_OR##eC-Ef%6l}a5VfA} ze8DvmtKu%WGJ$_yrAB7!enW*+iGxf$t! z#c38kU(kDRV{|cMWb-=X0B7@zBhV7>b*=ej4AHOW$1%J@f-G<};LP=1(U)^Igx6q) zIV48-k4DU05q-h?Sc9|N%-QY~T?zsRm!IN1zjHG!`9i#kDykZ7vXzRLeH{~lDK?G* z>fK)O*g;=;^eD79--WTDXA;V%V;nFR36wh^uhT&*+@syi_zuG;JZ7OixalvDX!havdp}LD8D8u|t`X(7N@c@s#@O1$?5$d;tf{Engd%7T% zAlithxKw-(#VTL)m50nFJtM7u`)tizv|4*(pYoIkO}4Iq3FHMfMs z2$b9Nv7-8}5V(y$iwPyK%|`x7UH) z5zkLc9O_kVa_A)O(WVjZSp&#XVc$GU@4TU}2%X?5HYM|jsC{TbfK9|BFpq?U!Ut2w zO$%k43619`k4UNtRG=zuAoRr0okSmJeC|_6ud0L}%8mwWSwCM7UgmnRE_pit+r{@Qz<12@8*`J_b>0u5x191F)oTKqFCHkZ zJ9yc|Bf!mYbSj8QXCcu^Nbd?PIFdn8$6oW>KxZHd8n#VhBwnE2uUuqW2G~`0rRul+ z$?DYH7tu?%AgS6d3k%c)+DP7$N~3;v4D9>u1h&0dS=j{+$a6nmF>1p`yLwHI9wr;s zbr!}uR9tGe=BKV{F-EG_&pC|vK|Ptnw#?<*O)$tgVVAHte|2H9a2^2sk!PVMLr$>b`G;@Jy!4DQH)k^ zLSY!f{`15d;N1Zl0tZ>==e`j_odcIJ!LSlR{qG(6O_@S$t_oAQhl1q0=y8a7m1-^o zw1W5j*pO(C&hVt(_?Th+$R;Y#xwWa%Eio!|Fm=}bgw;)E^Hs!``fOqS4o;nNNc?H^7eGEWJaS+3BT}?3dA>hSb z=zv}?cGNUR2XzQc@3Ga*xSoZa-iOez?f`FlH9cpQ<( zqW*)@^;dKU>JqwAPM(hir!AVrf4V3UnCSCBtRL`$0*=zq5iM&;ygE3S87d)^`8aC2 zXJ(l-JdI&`j-$p1TSz9OGq@Eq+LPtWXjczz#JJ-8@`l#fQ^LT;0q0oNNngPmr3&H z8%yCiBbU-$hYQkgJ4lgCJhQluLWW@Ec-Oa6{P<0ILDu2Qk6S2kF_CpKA60#}EYAW1GYUZd2 zAMRV;grw*sXAAQvXYg-st&jJ#H-VR<(fVx19*7f3-J#Z+yDBRaFHCo?s^J-q?bp~+ zqc^3c)JDB=8Tgd0r|aAHFpduQTZ3BkHo_ZRO?068ND1-?w_wDA1h zf*r!*qrYW7!SOQ?uZOazwn0w~r%R86%jBAmq+Sunsxdh(Y{taL*A}aORik6lV*lz# z$S-FLH4Q)CeCDIeJuleVqc1`qedn`rHR`KkuQR z{F#$#Z^cMtQ8$74+G_4-_VoGdnK6J5PdsQ?^Flzz`4`3U&*~krFVEt&6p1Hz-x*V> zsk++~-DBa5`0B~bbe(FMT{^jZ-b^4I5T{7ozn+Lnb68;PIazcrGGvM_LiHGR8GXU{ z;G8&f!LLXEH$Q!*71B`6@N`r(nORKcz!Oq-*Xs6VcJk|b!71j}avp!;&P{DFukW5} zWts1_bIdr>psSpc6Wj?@;oYi_*WNWd7IFdTMh!9R^TPgO(ugaH*X}?Sb2y~vXYb6R|MbH&X^M*s z$Nh7LK1ssVln-5fRj}0G#%Rd69wNpxRK9Bauvj-RU7Nlx;#iy7(7aJF!kxX&zn-uK z)5J-?p_|dMO=aOjoqBcH=E{7WrumTh6Inm?-9Rb`A)RlN35%n5>EcgeAi)bIP-B8O zUW^r!I682v>&PG4x;o0PXNglV+|bE+Q?buijW_K~FH8`txF|4nFD|2@U-9;tU1J8; zNpiZrhOx-yDF>Aks5*9in6lyNYL#gJq^*g`a&9&Cl&d!FdVYGX=i_IQb|<>$G_idl zXo}K8;BVqXke@!Yc-%IkeEO0M{K_uhnltu=+HfP`bI$x_;{Y;;c~2(&k4AY6$vNx4 z7VUxEWFlyC^cxzE%zY-`vKK_IsIZN+`B@!t*NFCxd={<;5~`JiNdH~AVe!mbC-1yu zx$@6BHWt3N3U(rUPIWdl%eV|~?U^B8**hFz|2AiSsF>6$J-Vaq({IIn z;`^AG!v}OI$hZNi9$0zzrD-y1_1HfyP&tk{h}YKbKFSwJUjD&6fJzLA7{_mnKgHpx zVLmt6NXKenKj|6F+dbgy96x;Gk`lM0{DqbJ2WuSkRo%Xjn&5r>!|1fDU(flTWW9pU zlYEZw500UyW9w|+OIzn#KUh8&w%vGT?^^G$p0Rn^=KfkKnCAR!XMID~Uh7otenHDT zW7i%`HT)sdm>XLTf*ZL;i(@SuEOtq#^;tBUUdCj+rR;!tNF+e$W^#`~If<)q2s5j0 z>{#L42576!X6ZE_u&z(Zz5D)#Vwc?sAscyq|8OL85etpLybDKfos)P|Gm7B!h1%8x zu)OBR;24d%;H@&n{awv;OhRb3Er{7$8B4W7jdTZHLSE$JG*dP@+1vk!iq}P^>VTTj z_83vU_)K6Avk_Mreu~9YgLOR3d6AttV%nay=-$Kgd=`pLq${Yga`?PLI%%bsx`UWF z&~We(A@7I-xi(f=N@3n!^r8?DhZDM~QS)R?_sBA6&4FfLB*$oBjnUh;3B2o>(aFtc zxjCuq7oDw|yFrUzn*-zeqvC#O52Qvd{^UNT_$KNHPVe1_PGWy2i@5Vyz4&qG+s*;p z3H!;`U+TN1PJYL-Ztw`TFxVs4;ZL6)K$%SFJ&O{8GeuGRD5}A8Ir9$p=RlXYabish zQ%Lqb=A+%ZXPHNFT}6Y=7r&n((@JC6uRLZckYS#;Y7MPQ^rv*}RS-P(&z3&jS%r^y zM<8)SgeAE+ec?XQWJvPjY{ktnz~bUxER1yfFvtp=6u88AuRFQ$w~ z%02@FSh3RnY3c*j4_VbRj>EP#smgs1crFgFxKg5Wd=1CUi6;TI@U|Q!VZk(C$r$q$%U0$k`{C#-it}{<)^ygBH{-JNW{W!b&!q9t`$@ynQ0n*K+LnGOjGvvb_UNN@B8-@h&=}_q5!NuVFFacRrI^wbyXH?2gf|w+~UaGn{ zI956ryXtW97DNfBek47)85W7Wr^%`IWZL2ChIemz@5M0Ncu#R^A($3O;z*eloROww zd~mu~k=gXDH&UbW=`w&0VAGb5LDgH$+;k(|3d;LBlC#b{g zlnW#Tb}CM}HlKN0J5`Ez6B8J6yk7kb3T-y(-1gBly>urvu$5uasPw4?|7K&h~1dNGFF=?AhU>e6h{FBRpEa z1pl4Jo)lr%_6n(c8)lUh`me&3VH(8(DH%^_FDj=$84@0q1#cE=t%Pk?ZnCVpTU7J0 zB{B}2?WQ@%wd@If7!;vh0v)T(+4G+#vyF{oV_DK?rO%AMFr>PSuRQq8yjOQ>yXnL| z>rgSNd%3OEP&XUSyCcnIq+a5YCcI;Of9+kk&{c;|B2om`}5~!J!qAwOu{^4v14hL`i;7rhfSnAIEfA(HH)R$(1bwbEgM;6r~bON zB8|Gy9n#CX$2F8SKYvmwbBJ>48>~f$YDc{!NQq0=+(%jojZloTe9bP;&R8&?SD?o( zR}*E$4n_)UFp?+weZParB%|6Ct#5DCn)w{g$Q-0+uyHrNmYkqpa+t~^dtdH+L|#lY z>PB&cIMOSRFvtdlA-5=^c<=d0|7_W_jaZd%?$`|JvOJe@~NMCZ}Y9|rpR(v=1IK-IU&VM@F{%!q0R|4Zm zttYHDhA+=zfy=()`fl*!+RI5c<=5&Nvlti8bcK!kwKz80;vc5&IBye&aQfFWh}Va# zz*DWWHIv_9jy$acMp~3EgLhV=(o*3RLSyG^I;pJcN{#JTOJnYd9cd0zWKNwD>e|1> zZ&s6vETy(Snx27bd2;m%6H*0>#q8~EtbgBNy(V!ua|ofwI?mJVh>2s-H18MKY)o0u zY`;R=tsNm&hL*sNU@EuE`ZyY`ntOVe=U%?%3tB7n`>WGN6PC5rk~a0}H$P3YN#~3o zkR@Bg+N7ZS?kVRkEgEyfl>&Q%8AXL8tY>|N6AV7-0ynR3qm>0s`vos;@>!28;rpOG zUgJUTqM+%kkhteWNy~b!MVxdkCfVh9exVKFTQG^;o>gKB)-6t~gzBKY6N2ioJQj-` z;!GiQwKj`Am5Uh=r#Gytsf@(&$3_3=1g;Ey6tIfWL1_Qv~WH8scc6yHJ?(h;B>Mn*Ce0R z%7Gh*MNV&q1tB$`)U$tP&OH-QmX8X#n5H^a*P*4wM}+@UMd%bh%I+cYvukTX#oCelw|`j=bw8o*uVF%x-Tg<+MVAg zU3zfLN3~m;UsN}$AmkLpvD0{Z)0k|3JyVlbdpPDFwL@pF<4)l3HuW~=9ZstKC!I!{ zjz`bta)yWf@J@tWos!g)&pjQ_2HZ`S+eU^f0Xre5=mJ{r1a<=7S0M`LUIVyc<4iky ztH$mw@}Co_8SPhxs0+q|uyD3qo}4G(5O;%mVYjP$F+K3Kwn3$6o#v)Kw|MOsFHZ_^$Y}aH} zIET#C>8-Ma@6Uasz-y zn)>ZtPKcWCiJ+hh0e{ez-9+oc9Kh}%Hygb@ICv?wJ>HQsUTz4+pxNnqbC%6}1+#Gb zlev5iJ-&RQ_Av*h$ZwrjocJ7E${qCO0FTGNoUV^2w9O6x+1OBSd?dqq6gAHi36llF@Nb!q)CA-IxTz_P)4lKJWPJ#L>SliTTQM?>6x&IxsjW~?|Z+AJZ&xgR%x z_)f?%TdnT)*i4$vz8XKBu!hXIPMLK0PIhnm!t1&^8xxmnz0!p%WwSG~tb>;i{4DIh z-h_vr78T3KF_%3n;AR#f1tXH!lPrXq+L^JlsT&V>E^kWC7i4o7PSmzL^>s`dT~F=O z8U;_iUiO~#2v<*$Pl$L6oHDpMyVq*WGunUJn-^W}pqsBP*P^D7Ma6FrZ`HZ$&w_ADUvvihpvRoxroNX<73)Qoaf%(uR1qGBW1) zz1=r8=Cj{#e3H6fsBL)v*)|S%G8VR>V9dK&7zWUQ3Tz{nC9u5Kc=h|qbcg@$B(26v zzH=YIrKiUR^0d}hZ@640kVLaHfA0&KSZc;9$NR!r~rE4Xj@yyzBr6@skyK0SYS$20?@3kJy)EpL~Ez6{B zSEjjLB%H4;DbH-o1AU*;vLYzpjlv01uLJSL_z!%*OhDt)n!T$uqUS7^-Oq{>lFS?W zhzZl!N0`fd6T_L9fI?kmx=4@ z&?uhD&&}T+S7nu2h30FTY1TOe=F8_>KMSiDIA)-zZsg~Jm(>JrmZ1D|sffT9k=hgx zAok%^K`{NY^hIg}isu#G-elfNBxg~9vdNQURi=MdhDr&Qb-ZKUysf;@-xdCT!s_|n z1zeiKbTk;Ac3V5Nm?w9jq^_ELA!tVlKSAUSxONfboy!SG6LyxX$AA#so)Bd|+iOrO zQV?|yWtnq#MU#S`foh zv48CPl$5Ky&5Y^!wyBd1#L~4W`mKT~zx;uwyswL*IH%$|q>0t_cC-zo`biHJk%s}q) z#P$-D#xc8;rpp!X)8zKGM92JFB`I%BF26TiYTWvh9hj+eyZ^hR!F96Z6PXKcK9ZxI z*e~ZEA4?4C9y9uF#O#)EjvX=m2)(zAZ8JlrRqm|{&;6oNj6b_$ACRqtpr_A<$ER3# z3YC0)6EKx;C+Swl=Vo*f*}k8#uuaXCZ&kR#xWA;`u`Tjc)^caJ7LIMba~@Ch{EBbW zH{KQ*#wW+<$gEk?>%_4Dim^#JU+jg(`!rRZ(-ac-Xrl zTst-9I&g*N8aJ&3G8XUISCknyfZ6v|Oek=}Q`~boQcXoCKVR%*iub)ePPewH%QEA= z_`aJc8T_=@73XRaak!r8n9zB{^()yO#;GQhXW8qPHtcq4osk8 zQ-oSipP1cjJR;hh_KO%!@$q>4C6p$V3hGLrk&FLlljuo(ZE8oFBPinKghXv+r_ik~-y=pqxzK}?>%4w#SovEo z;^i7?o2POtVpKp=9#_sDE6WCP#8V-nfbO$WpIFzw!GbuST!@16$;z6_>(|>YWk=7p_3ydSCE~KO zHOGEf{eg1>tJ7kG>MLPtUky<>nQ3IbPnLdeHW!Pj5vW zIxW4@)!2dP{OB(DVOp}TU7=Z}w^{JUV8t~wH#gT7xL1TST02^9P@4H7qNe8&>SN}2 zTQ)8Nnv7je6C+IT-+=Kac8J{I1w4&u&(~pQwY9Z9pU{1W>S_06 zuVp5jw)Wk*$0~U_O)bx(KMRV4df8XLKu zyd-$7#(=6P{{FrI7vBXUJrpx~OCyBg&q~`oL?jb(G8YgNunoAqj&KP&p zO090hp_{h!qfNCsEYiD&)awM2ZXuYwpMvw9j&;x9jp zu`iBGi^a(;iOjdvq)CkT)=Qfczny)B_4oDoAjez&)GUAWzpD_}WNt{CB$!jdAaJ~o zR`^_w7yVaaQ?KLDa~6Kxqc=Z{#FzeDKN4~cBG#xs$wf3C{z@nl@PT z77UeThbAeY+ejfpdV^U|`%_!H`DxiNQ2)7(4~SZ&utkdce_x)4A@Qintt)=BcWNWg zWrxqqTcjUD;JT~P3Yt^=x#c^XTl_y&waC{V{3eaL70NqEf40)!EBShe_uKT>S|^Z+ zbnHsM;eI4eMG4-rxFNHobBpIm;@$MaNLsVM6$qy^lD@08Pv_t2;_v(DNzZ!}n@1mV zg;NR)YY8u~TL1n+ZUyCjBu1r!@qxaJoj>DAP&py>=Wk7NDSws_S0A~J&75EHf8U2H zBC5#)=BhPw0U0lrO-So&rjTqif{Plib{5)mqFL0}Gcm2lDYEr@isaA?=4947u2$!+ z-r&GEaefbMFsE;SMf zPhH(i!eR3dpQJ!>Wmjpie~YYt4~vs<``GOCtx8R|zE8fZSqf(X9@q`t>NK8TT-lD%}%O+y(e_tJAsDHh88l@P3D6psEmWk{*dU+ z)ZCQ=e1C_w_4*kmJP{4%K2rCNO<2EXxwmht>B|O<=-&rsPy}273g*fGNtPf$DM`#v zYnq$(_DZXsd`RlMmq=dd=>~Y9f|k7#=$6q@57DS25y09C@cPXC+cicH{k%SZI=->^K9kab9zb^vU|H>TVG*}^ zxiF#1ZP|9YUFV@2{fF7IQ%he9g)f`^G~tEpa1Sn|MeY3L)QdLtHCS7E5*%v`P5t(wpseV(-PB@k%Q*5Tm} z8NtQ+?6T&`^DgxxcBXwYA!F_WrSU@T{!^lyFli8BC)&kXuRf=5B}AU$k(tN6SAW_Z zYYk{pM;k$|*XQXR;D%PW58n?4i*3Kid>3iolnd@9JAVvCze4_fP5gUk;SIJURwiT{ zIk!x{&D8J4%PhnSeCH{y^?ys*!y{+SMp%%xN8_6&^mPyM-$7!H?p??K`R_La=rAC_ zcLc7)ehbDw)FQ<__)dYAH0aqf4=X=T1uYEa!!Sc9&j$e_!hvFH8=YQj%(lneO2Pgw z;U7NfE#30x$b?$&ivbAnY3U1Ad)x?Q>waj~WT{ zVw|*;;<&*A>xnmeks)RKT;DC{v-mgg#VA@7sOKu6Z9z)np=6suhOn@3+0yvzwY%fJ zq8uQ^_TGvvJ9SzZ5bSFWW53UNIDiUSCTQ}fJPC6u_(I|`I{m$<(FT3hjb=0OJ0#Lg zp3Cd?MNyI3G)v^MZDE^G^$6m|`_MQZwkeG=a9WdlS0AVCKH+LlVCB5a;RP6}|BRaAKG z9W=d5LhD*+dlv{z5jGKc;r@Yll_uP(TrXL&e`td9 zKN^?4+8<(v9hKAV5*>5+${V#RkhRO2<$^`>YO!wN0#R?~K`{k!&+iWB39*#d5zI%jg*JnwLnzuKccIUH~qvMA~ zgRDvZl`jiNN+*Y2_qem5bRzSMiD7Bo>=4`-vVH_~y~$QmB%5AmfG&$+N1<~fFi zL6COuL0bsLjhnpeCr1lfjzpz;nzTV?w8_#VnrU`N-%^Fc)gkVInYzvg`yV4fAt6U= z-sumQyqQ8&8KzR~jJr6q9mLJmN0$a1e^qKn9NR2d98!ZEUDp0!zT6I*bni>i4r4waVO~F2>@JpB}JJD-Z5xoT-LX=X+ znnpcvE2&}WxDguP+^0c{*3bJ37tSLxpUDGQ?ny-?5x&CuLjCNJ|IzyEY*4 zkGw4LeT-&lcwC`FSQ?MTE`qy@apu8kuz#IzctfT6ZENSOVs^u!}>5!H;yicUY+& zystG)GFY)!!WS7hahW-WEUfEX7rgPUJP`NhLQ3y8Rff#l><(`z)0Bx+JuRp#eJ5hD z$NECYlN?p#Fsvfq#g-Ho$x@j(#i??NJXwT1$4SK8`Yk(r!U_WcAG`C(t-6*eVPF~D zaVko0tJpwEGk)o02O)tLu*#+2iYl<_IvbQdd~;}ij-Ma(d#yoOgR=rXiZE3x7id!i zO(@N8toOq&zJP5T?aA7`=l?Q#cC7kQ1nQIBLD*LrO5OJ<*u7`Ow@Bd2;H;q`<=Lf* zM5!s;aZi3CsV!zU6n-<9fkRQ?g(Qw~8NdX$u{XRK{@1I^D`?4$&1ZHFbX%9&xON&C z(mJcF&E(wVU(@bH=LG{v9H<~hMw(i7S2g~5#K;Oh)Sd)_nSps~uvO%jpuPX?Lw++@su7(0(fZmrJdJ1(L zj$wFtZ&%ac1?jf1Jz4N#Y38+m4S}|KO>8IISGn}(55)u z(n9u+IgXIZ)=h8B%LBJhLQ46cVRjjT!$6~F(+c$T8?Yof?&$pTy__-IplBLTGv2@9 z^f6X=taHQF&^r_LA1|R#pdQKRt*mnV4!tQEXggySW^nIza1cJEjwl>8SV|IkE1*3- zGl%<8L3EP^?TVfb36Ern5Ib}@^(`q8`!S*PcJc%73Y^u0W3;)grd!vfAlRfsJSh%B zBgmw(7TU!9?zvkBuW|90;w#EjbzD`(Gii|+ff4td&U6y!LjWeo zz8^2%`Y!U`p_oy@0Hk4qnzqs2hjIXBJ(7Vb6zrO5_2}HvHQlo-h9H@F7a#mH5=$Tu zsweZ3K~!$iql2}Ln4T0VU_~XNm&P+z$p)FRE*}C2*&A65RJrDBuP+^;`1fw&SZRq* zWTeAkpuPvH@_?oY=W6Pf%+mz*36b%hWC#-+sIE~S-CIRVkKg(!T#(m=NZ>^kloZ4@ z2XO3BP)1=Y>wL%BRwtk+zBmQiMXlKjl8%%p``I|S)%9hS7y1F&`?tu5n@OA<%=%3z zI8QTA{RrMlUsdUgBzn7*N6XvDT-NzFik-bLkUG%MV&+FS2A~xio(x)XCEZS9y9u6T zSXyNw(vSenAOaz_o(z@DgIhC5;HNcKUE3n3z=;D%AM`wovr<&;m}if3bORg&P&N*0 z_~x>164=l|185> . <> . <> +. <> +. <> [discrete] [[install-stack-self-prereq]] @@ -581,4 +583,75 @@ If you'd like to learn about the install command options, refer to {fleet-guide} [[install-stack-self-elastic-agent]] == Step 6: Install {agent} -tbd \ No newline at end of file +Next, we'll install {agent} on another host and use the System integration to monitor system logs and metrics. + +. Log in to the host where you'd like to set up {agent}. + +. Create a working directory for the installation package: ++ +["source","shell"] +---- +mkdir elastic-install-files +---- + +. Change into the new directory: ++ +["source","shell"] +---- +cd elastic-install-files +---- + +. Open {kib} and go to **Management -> Fleet**. + +. On the **Agents** tab, select **Add agent**. The **Add agent** flyout opens. + +. In the flyout, create a new agent policy and give it a name, for example `System01 Monitoring`. + +. Leave **Collect system logs and metrics** enabled. This will add the link:https://docs.elastic.co/integrations/system[System integration] to the {agent} policy. + +. Leave **Enroll in Fleet** selected. + +. On the **Install Elastic Agent on your host** step, for this example we'll select the **Linux Tar** tab, but you can select the tab appropriate to the host operating system where you're setting up {fleet-server}. Note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {agent}. + +. Copy the generated commands and then run them one-by-one in the terminal on your {agent} host. Make sure to run all of the commands as `sudo`, even if not specified in the UI. ++ +These commands will, respectively: + +.. Download the {agent} package from the {artifact-registry}. +.. Unpack the package archive. +.. Change into the directory containing the install binaries. +.. Install {agent}. + +. At the prompt, enter `Y` to install {agent} and run it as a service. Wait for the installation to complete. + +. In the {kib} **Add agent** flyout, wait for confirmation that {agent} has connected. + +. Close the flyout. + +Your new {agent} is now installed an enrolled with {fleet-server}. + +[discrete] +[[install-stack-self-view-data]] +== Step 7: View your system data + +Now that all of the components have been installed, it's time to confirm that data is flowing as expected. + +View your system logs: + +. Open the {kib} menu and go to **Management -> Integrations -> Installed integrations**. +. Select the **System** card and open the **Assets** tab. This is a quick way to access all of the dashboards, saved searches, and visualizations that come with each integration. +. Select `[Logs System] Syslog dashboard`. The {kib} Dashboard opens with visualizations of Syslog events, hostnames and processes, and more. + +View your system metrics: + +. Return to **Management -> Integrations -> Installed integrations**. +. Select the **System** card and open the **Assets** tab. +. Select `[Metrics System] Host overview`. The {kib} Dashboard opens with visualizations of host metrics including CPU usage, memory usage, running processes, and others. ++ +image::images/install-stack-metrics-dashboard.png["The System metrics host overview showing CPU usage, memory usage, and other visualizations"] + +[discrete] +[[install-stack-self-security-certificates]] +== Step 8: Configure security certificates + +Helpful reference: https://www.elastic.co/guide/en/elasticsearch/reference/8.9/update-node-certs.html \ No newline at end of file From ca0eda7156e18eee37df7ad7aa33b497f7a53efe Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Thu, 23 Nov 2023 17:15:21 -0500 Subject: [PATCH 06/35] I can't count, apparently. --- docs/en/install-upgrade/installing-stack-demo-self.asciidoc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index 88dee4dcc..e3f6aff05 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -526,7 +526,7 @@ Go to http://10.128.8.28:5601/?code= to get started. [discrete] [[install-stack-self-fleet-server]] -== Step 5: Install {fleet-server} +== Step 6: Install {fleet-server} Now that {kib} is up and running, we'll install {fleet-server}, which will manage the {agent} that we'll set up in a later step. If you need more detail about these steps, refer to {fleet-guide}/add-fleet-server-on-prem.html[Deploy on-premises and self-managed] in the {fleet} and {agent} Guide. @@ -581,7 +581,7 @@ If you'd like to learn about the install command options, refer to {fleet-guide} [discrete] [[install-stack-self-elastic-agent]] -== Step 6: Install {agent} +== Step 7: Install {agent} Next, we'll install {agent} on another host and use the System integration to monitor system logs and metrics. @@ -632,7 +632,7 @@ Your new {agent} is now installed an enrolled with {fleet-server}. [discrete] [[install-stack-self-view-data]] -== Step 7: View your system data +== Step 8: View your system data Now that all of the components have been installed, it's time to confirm that data is flowing as expected. From ea8d3d3b7a8492bc77e163c099b957969e61b026 Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Wed, 29 Nov 2023 10:04:46 -0500 Subject: [PATCH 07/35] fixup --- .../installing-stack-demo-self.asciidoc | 48 ++++++++----------- 1 file changed, 19 insertions(+), 29 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index e3f6aff05..7da531134 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -137,6 +137,8 @@ If all is well, the command returns a response like this: Before moving ahead to configure {es} instances, we'll need to update the {es} configuration on this first node so that other hosts are able to connect to it. This is done by updating the settings in the `elasticsearch.yml` file. For details about all available settings refer to {ref}/settings.html[Configuring {es}]. +. In a terminal, run `ifconfig` and copy the value for the host inet IP address (for example, `10.128.0.84`). You'll need this value later. + . Open the {es} configuration file in a text editor, such as `vim`: + ["source","sh",subs="attributes"] @@ -153,22 +155,16 @@ In the configuration file, uncomment the line `#cluster.name: my-application` an cluster.name: elasticsearch-demo ---- -. Save your changes and close the editor. - . By default, {es} runs on `localhost`. In order for {es} instances on other nodes to be able to join the cluster, we'll need to set up {es} to run on a routable, external IP address. + -In a terminal, run `ifconfig` and copy the value for the host inet IP address. - -. Reopen the configuration file for editing. - -. Uncomment the line `#network.host: 92.168.0.1` and replace the default address with the value that you copied. For example: +Uncomment the line `#network.host: 192.168.0.1` and replace the default address with the value that you copied from the `ifconfig` command output. For example: + [source,shell] ---- network.host: 10.128.0.84 ---- -. Next, {es} needs to be enabled to listen for connections from other, external hosts. +. {es} needs to be enabled to listen for connections from other, external hosts. + Uncomment the line `#transport.host: 0.0.0.0`. The `0.0.0.0` setting enables {es} to listen for connections on all available network interfaces. Note that in a production environment you might want to restrict this by setting this value to match the value set for `network.host`. + @@ -195,9 +191,9 @@ sudo systemctl restart elasticsearch sudo systemctl status elasticsearch ---- + -The output should confirm that {es} started successfully. +The output should confirm that {es} started successfully. Type `q` to exit from the `status` command results. + -In case you'd like more detailed information, you can log into the {es} node through a separate terminal instance and tail the {es} instance log file: +In case you'd like more detailed information, you can log into the {es} node through a separate terminal instance and `tail` the {es} instance log file: + [source,shell] ---- @@ -274,6 +270,14 @@ sudo /usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s node ---- . Copy the generated enrollment token from the command output. ++ +[TIP] +==== +Note the following tips about enrollment tokens: + +. An enrollment token has a lifespan of 30 minutes. In case the `elasticsearch-reconfigure-node` command returns an `Invalid enrollment token` error, try generating a new token. +. Be sure not to confuse an {ref}/starting-elasticsearch.html#_enroll_nodes_in_an_existing_cluster_3[{es} enrollment token] (for enrolling {es} nodes in an existing cluster) with a {kibana-ref}/start-stop.html#_run_kibana_from_the_command_line[{kib} enrollment token] (to enroll your {kib} instance with {es}, as described in the next section). These two tokens are not interchangeable. +==== . In the terminal shell for your second {es} node, pass the enrollment token as a parameter to the `elasticsearch-reconfigure-node` tool: + @@ -285,14 +289,8 @@ sudo /usr/share/elasticsearch/bin/elasticsearch-reconfigure-node --enrollment-to In the command, replace ` Date: Wed, 29 Nov 2023 14:50:57 -0500 Subject: [PATCH 08/35] fixup --- .../installing-stack-demo-self.asciidoc | 59 +++++++++++-------- 1 file changed, 34 insertions(+), 25 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index 7da531134..e03a815f3 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -11,14 +11,15 @@ These examples use hosts running Red Hat Enterprise Linux 8. The steps for other It should take an hour or so to complete these steps. -. <> -. <> -. <> -. <> -. <> -. <> -. <> -. <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> [discrete] [[install-stack-self-prereq]] @@ -424,14 +425,14 @@ shasum -a 512 -c kibana-{version}-x86_64.rpm.sha512 + The command should return: `kibana-{version}-x86_64.rpm: OK`. -. Run the {es} install command: +. Run the {kib} install command: + ["source","sh",subs="attributes"] ---- -sudo rpm --install elasticsearch-{version}-x86_64.rpm +sudo rpm --install kibana-{version}-x86_64.rpm ---- -. As with each addition {es} node that you added, to enable this {kib} to connect to the first {es} node, you need to configure an enrollment token. +. As with each additional {es} node that you added, to enable this {kib} instance to connect to the first {es} node, you need to configure an enrollment token. + Return to your terminal shell into the first {es} node. @@ -463,7 +464,7 @@ sudo systemctl enable kibana.service sudo vim /etc/kibana/kibana.yml ---- -. Uncomment the line `#server.host: localhost` and replace the default address with the value that you copied. For example: +. Uncomment the line `#server.host: localhost` and replace the default address with the inet value that you copied from the ìfconfig` command. For example: + [source,shell] ---- @@ -493,10 +494,12 @@ sudo systemctl status kibana ["source","sh",subs="attributes"] ---- Kibana has not been configured. -Go to http://10.128.8.28:5601/?code= to get started. +Go to http://10.128.0.28:5601/?code= to get started. ---- ++ +Make a note of the verification code. -. Open a web browser to the address above. It can take a minute or two for {kib} to start up, so refresh the page if you don't see a prompt right away. In the event of any problems, you can instead open your browser to the external IP address of the {kibana} host machine, for example: `http://:5601`. +. Open a web browser to the external IP address of the {kib} host machine, for example: `http://:5601`. It can take a minute or two for {kib} to start up, so refresh the page if you don't see a prompt right away. . When {kib} starts, you're prompted to provide an enrollment token. Paste in the {kib} enrollment token that you generated earlier. @@ -506,7 +509,7 @@ Go to http://10.128.8.28:5601/?code= to get started. // Note to reviewers: Kibana says to run `/bin/kibana-verification-code` to retrieve the code, but I'm not sure if that command works when Kibana is running as a service. So, I documented to get the code from the status command output instead. -. When you see the **Welcome to Elastic** page, provide the superuser `elastic` username and the password that you copied in Step 1 from the install command when you set up your first {es} node. +. When you see the **Welcome to Elastic** page, provide the `elastic` as the username and provide the password that you copied in Step 1, from the `install` command output when you set up your first {es} node. . Click **Log in**. @@ -536,6 +539,8 @@ mkdir elastic-install-files cd elastic-install-files ---- +. In the terminal, run `ifconfig` and copy the value for the host inet IP address (for example, `10.128.0.84`). You'll need this value later. + . Back to your web browser, open the {kib} menu and go to **Management -> Fleet**. {fleet} opens with a message that you need to add a {fleet-server}. . Click **Add Fleet Server**. The **Add a Fleet Server** flyout opens. @@ -544,13 +549,13 @@ cd elastic-install-files . Give your {fleet-server} instance a name. -. Specify the host URL where {agents} will reach {fleet-server}, for example: `https://10.128.0.203`. To find this URL, open a terminal on your {fleet-server} node, run `ifconfig` and copy the value for the host inet IP address. You don't need to privide a port number. +. Specify the host URL where {agents} will reach {fleet-server}, for example: `https://10.128.0.203`. This is the inet value that you copied from the `ifconfig` output. You don't need to privide a port number. . Click **Generate Fleet Server policy**. A policy is created that contains all of the configuration settings for the {fleet-server} instance. -. On the **Install Fleet Server to a centralized host** step, for this example we'll select the **Linux Tar** tab, but you can select the tab appropriate to the host operating system where you're setting up {fleet-server}. +. On the **Install Fleet Server to a centralized host** step, for this example we'll select the **Linux Tar** tab, but you can select the tab appropriate to the host operating system where you're setting up {fleet-server}. Note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {fleet-server}. -. Copy the generated commands and then run them one-by-one in the terminal on your {fleet-server} host. Make sure to run all of the commands as `sudo`, even if not specified in the UI. +. Copy the generated commands and then run them one-by-one in the terminal on your {fleet-server} host. + These commands will, respectively: @@ -565,7 +570,7 @@ If you'd like to learn about the install command options, refer to {fleet-guide} . In the {kib} **Add a Fleet Server** flyout, wait for confirmation that {fleet-server} has connected. -. Close the flyout. +. For now, ignore the *Continue enrolling Elastic Agent* option and close the flyout. {fleet-server} is now fully set up! @@ -593,17 +598,21 @@ cd elastic-install-files . Open {kib} and go to **Management -> Fleet**. -. On the **Agents** tab, select **Add agent**. The **Add agent** flyout opens. +. On the **Agents** tab, you should see your new {fleet-server} policy with a healthy status. + +. Select **Add agent**. The **Add agent** flyout opens. -. In the flyout, create a new agent policy and give it a name, for example `System01 Monitoring`. +. In the flyout, select a policy name, for example `Demo Agent Policy`. . Leave **Collect system logs and metrics** enabled. This will add the link:https://docs.elastic.co/integrations/system[System integration] to the {agent} policy. -. Leave **Enroll in Fleet** selected. +. Click **Create policy**. + +. For the **Enroll in Fleet?** step, leave **Enroll in Fleet** selected. -. On the **Install Elastic Agent on your host** step, for this example we'll select the **Linux Tar** tab, but you can select the tab appropriate to the host operating system where you're setting up {fleet-server}. Note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {agent}. +. On the **Install Elastic Agent on your host** step, for this example we'll select the **Linux Tar** tab, but you can select the tab appropriate to the host operating system where you're setting up {fleet-server}. As with {fleet-server}, note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {agent}. -. Copy the generated commands and then run them one-by-one in the terminal on your {agent} host. Make sure to run all of the commands as `sudo`, even if not specified in the UI. +. Copy the generated commands and then run them one-by-one in the terminal on your {agent} host. + These commands will, respectively: @@ -642,6 +651,6 @@ image::images/install-stack-metrics-dashboard.png["The System metrics host overv [discrete] [[install-stack-self-security-certificates]] -== Step 8: Configure security certificates +== Step 9: Configure security certificates Helpful reference: https://www.elastic.co/guide/en/elasticsearch/reference/8.9/update-node-certs.html \ No newline at end of file From 8df84efbfbc3ed794aaf37f9a7116121765a6ded Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Fri, 1 Dec 2023 02:20:52 -0500 Subject: [PATCH 09/35] Fix agent and kibana steps, including port 8220 fixes --- .../install-stack-metrics-dashboard.png | Bin 130778 -> 181457 bytes .../installing-stack-demo-self.asciidoc | 46 ++++++++++++------ 2 files changed, 32 insertions(+), 14 deletions(-) diff --git a/docs/en/install-upgrade/images/install-stack-metrics-dashboard.png b/docs/en/install-upgrade/images/install-stack-metrics-dashboard.png index 24c7faf663a18b6d9dc77f8e714b234d997cdbbd..890b4d46505fadebbce18344b4f00895c43e66fc 100644 GIT binary patch literal 181457 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�wvTb`>IZ~{F>5s;XxwC_VfQZrs1h$ZJ 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

iPd+G&1esMlA8w#bamyy)ehMN-ug!?Uz4mS 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 Fleet**. -. On the **Agents** tab, you should see your new {fleet-server} policy with a healthy status. +. On the **Agents** tab, you should see your new {fleet-server} policy running with a healthy status. -. Select **Add agent**. The **Add agent** flyout opens. +. Open the **Settings** tab. -. In the flyout, select a policy name, for example `Demo Agent Policy`. +. Notice that a {Fleet-server} host URL is configured. Before adding an {agent}, the host setting needs to be updated. By default, the host URL port is set to `443` which is used in an {ecloud} environment. When {fleet-server} is installed on-premises, the port needs to be updated to `8220`. Refer to {fleet-guide}/add-fleet-server-on-prem.html#default-port-assignments-on-prem[Default port assignments] in the on-premise {fleet-server} install documentation for a list of port assignments. ++ +.. Under *Actions*, click the edit icon and update the {fleet-server} host URL to use port 8220. For example: `https://10.128.0.203:8220`. +.. Select **Save and apply settings**. It takes a minute or so for the configuration change to complete. + +. Reopen the **Agents** tab and select **Add agent**. The **Add agent** flyout opens. + +. In the flyout, choose a policy name, for example `Demo Agent Policy`. . Leave **Collect system logs and metrics** enabled. This will add the link:https://docs.elastic.co/integrations/system[System integration] to the {agent} policy. @@ -612,9 +619,20 @@ cd elastic-install-files . On the **Install Elastic Agent on your host** step, for this example we'll select the **Linux Tar** tab, but you can select the tab appropriate to the host operating system where you're setting up {fleet-server}. As with {fleet-server}, note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {agent}. -. Copy the generated commands and then run them one-by-one in the terminal on your {agent} host. +. Copy the generated commands. + +. In the `sudo ./elastic-agent install` command, make two changes: +.. For the `--url` parameter, change the port number from the default `443` to `8220` (used for on-premise {fleet-server}). +.. Append an `--insecure` flag at the end. We'll configure secure communications in a later step. + -These commands will, respectively: +The result should be similar to the following example: ++ +["source","shell"] +---- +sudo ./elastic-agent install --url=https://10.128.0.203:8220 --enrollment-token=VWCobFhKd0JuUnppVYQxX0VKV5E6UmU3BGk0ck9RM2HzbWEmcS4Bc1YUUM== +---- + +. Run the commands one-by-one in the terminal on your {agent} host. The commands will, respectively: .. Download the {agent} package from the {artifact-registry}. .. Unpack the package archive. @@ -635,17 +653,17 @@ Your new {agent} is now installed an enrolled with {fleet-server}. Now that all of the components have been installed, it's time to confirm that data is flowing as expected. -View your system logs: +View your system log data: -. Open the {kib} menu and go to **Management -> Integrations -> Installed integrations**. -. Select the **System** card and open the **Assets** tab. This is a quick way to access all of the dashboards, saved searches, and visualizations that come with each integration. -. Select `[Logs System] Syslog dashboard`. The {kib} Dashboard opens with visualizations of Syslog events, hostnames and processes, and more. +. Open the {kib} menu and go to **Analytics -> Dashboard**. +. In the query field, search for `Logs System`. +. Select the `[Logs System] Syslog dashboard` link. The {kib} Dashboard opens with visualizations of Syslog events, hostnames and processes, and more. -View your system metrics: +View your system metrics data: -. Return to **Management -> Integrations -> Installed integrations**. -. Select the **System** card and open the **Assets** tab. -. Select `[Metrics System] Host overview`. The {kib} Dashboard opens with visualizations of host metrics including CPU usage, memory usage, running processes, and others. +. Open the {kib} menu and return to **Analytics -> Dashboard**. +. In the query field, search for `Metrics System`. +. Select the `[Metrics System] Host overview` link. The {kib} Dashboard opens with visualizations of host metrics including CPU usage, memory usage, running processes, and others. + image::images/install-stack-metrics-dashboard.png["The System metrics host overview showing CPU usage, memory usage, and other visualizations"] From dfd0ba0125990b7908541a321e9d70a614b34aec Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Mon, 18 Dec 2023 00:45:38 -0500 Subject: [PATCH 10/35] Add certificates section --- .../installing-stack-demo-self.asciidoc | 702 ++++++++++++++++-- 1 file changed, 623 insertions(+), 79 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index 35a12ee1a..4f37ee758 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -7,22 +7,24 @@ This tutorial demonstrates how to install and configure the {stack} in a secure, self-managed environment. Following these steps, you'll set up a three node {es} cluster, with {kib}, {fleet-server}, and {agent}, each on separate hosts. The {agent} will be configured with the System integration, enabling it to gather local system logs and metrics and deliver them into the {es} cluster. Finally, you'll view the system data in {kib}. -These examples use hosts running Red Hat Enterprise Linux 8. The steps for other operating systems are similar, and can be found in the documentation linked from each section. +It should take between one and two hours to complete these steps. -It should take an hour or so to complete these steps. +* <> +* <> * <> * <> +* <> * <> * <> * <> * <> * <> * <> -* <> +* <> [discrete] -[[install-stack-self-prereq]] +[[install-stack-self-prereqs]] == Prerequisites To get started, you'll need the following: @@ -30,6 +32,14 @@ To get started, you'll need the following: * A set of virtual or physical hosts on which to install each stack component. * On each host, a super user account with `sudo` privileges. +[discrete] +[[install-stack-self-assumptions]] +== Assumptions + +The examples in this guide use RPM packages to install the {stack} components on hosts running Red Hat Enterprise Linux 8. The steps for other install methods and operating systems are similar, and can be found in the documentation linked from each section. + +Special considerations such as firewalls and proxy servers are not covered here. + [discrete] [[install-stack-self-elasticsearch-first]] == Step 1: Set up the first {es} node @@ -91,47 +101,6 @@ sudo systemctl daemon-reload sudo systemctl enable elasticsearch.service ---- -. Start the {es} service: -+ -["source","sh",subs="attributes"] ----- -sudo systemctl start elasticsearch.service ----- -+ -If you need to, you can stop the service by running `sudo systemctl stop elasticsearch.service`. - -. Make sure that {es} is running properly. -+ -["source","sh",subs="attributes"] ----- -sudo curl --cacert /etc/elasticsearch/certs/http_ca.crt -u elastic:$ELASTIC_PASSWORD https://localhost:9200 ----- -+ -In the command, replace `$ELASTIC_PASSWORD` with the `elastic` superuser password that you copied from the install command output. -+ -If all is well, the command returns a response like this: -+ -["source","js",subs="attributes,callouts"] ----- -{ - "name" : "Cp9oae6", - "cluster_name" : "elasticsearch", - "cluster_uuid" : "AT69_C_DTp-1qgIJlatQqA", - "version" : { - "number" : "{version_qualified}", - "build_type" : "{build_type}", - "build_hash" : "f27399d", - "build_flavor" : "default", - "build_date" : "2016-03-30T09:51:41.449Z", - "build_snapshot" : false, - "lucene_version" : "{lucene_version}", - "minimum_wire_compatibility_version" : "1.2.3", - "minimum_index_compatibility_version" : "1.2.3" - }, - "tagline" : "You Know, for Search" -} ----- - [discrete] [[install-stack-self-elasticsearch-config]] == Step 2: Configure the first {es} node for connectivity @@ -151,7 +120,7 @@ sudo vim /etc/elasticsearch/elasticsearch.yml + In the configuration file, uncomment the line `#cluster.name: my-application` and give the {es} instance any name that you'd like: + -[source,shell] +[source,"shell"] ---- cluster.name: elasticsearch-demo ---- @@ -160,7 +129,7 @@ cluster.name: elasticsearch-demo + Uncomment the line `#network.host: 192.168.0.1` and replace the default address with the value that you copied from the `ifconfig` command output. For example: + -[source,shell] +[source,"shell"] ---- network.host: 10.128.0.84 ---- @@ -169,7 +138,7 @@ network.host: 10.128.0.84 + Uncomment the line `#transport.host: 0.0.0.0`. The `0.0.0.0` setting enables {es} to listen for connections on all available network interfaces. Note that in a production environment you might want to restrict this by setting this value to match the value set for `network.host`. + -[source,shell] +[source,"shell"] ---- transport.host: 0.0.0.0 ---- @@ -178,34 +147,63 @@ TIP: You can find details about the `network.host` and `transport.host` settings . Save your changes and close the editor. -. Restart {es}: +[discrete] +[[install-stack-self-elasticsearch-start]] +== Step 3: Start {es} + +. Now, it's time to start the {es} service: + -[source,shell] +["source","sh",subs="attributes"] ---- -sudo systemctl restart elasticsearch +sudo systemctl start elasticsearch.service ---- ++ +If you need to, you can stop the service by running `sudo systemctl stop elasticsearch.service`. -. Finally, check the status of your {es} instance: +. Make sure that {es} is running properly. + -[source,shell] +["source","sh",subs="attributes"] ---- -sudo systemctl status elasticsearch +sudo curl --cacert /etc/elasticsearch/certs/http_ca.crt -u elastic:$ELASTIC_PASSWORD https://localhost:9200 ---- + -The output should confirm that {es} started successfully. Type `q` to exit from the `status` command results. +In the command, replace `$ELASTIC_PASSWORD` with the `elastic` superuser password that you copied from the install command output. + -In case you'd like more detailed information, you can log into the {es} node through a separate terminal instance and `tail` the {es} instance log file: +If all is well, the command returns a response like this: + -[source,shell] +["source","js",subs="attributes,callouts"] ---- -sudo tail -f /var/log/elasticsearch/elasticsearch-demo.log +{ + "name" : "Cp9oae6", + "cluster_name" : "elasticsearch", + "cluster_uuid" : "AT69_C_DTp-1qgIJlatQqA", + "version" : { + "number" : "{version_qualified}", + "build_type" : "{build_type}", + "build_hash" : "f27399d", + "build_flavor" : "default", + "build_date" : "2016-03-30T09:51:41.449Z", + "build_snapshot" : false, + "lucene_version" : "{lucene_version}", + "minimum_wire_compatibility_version" : "1.2.3", + "minimum_index_compatibility_version" : "1.2.3" + }, + "tagline" : "You Know, for Search" +} ---- -. In the log file, look for an entry like `current.health="GREEN"` to confirm that {es} is running as expected. In the event of any issues, the log will contain helpful diagnostic information. You can also refer to the {es} {ref}/troubleshooting.html[Troubleshooting] documentation for many other problem solving tips. +. Finally, check the status of your {es} instance: ++ +[source,"shell"] +---- +sudo systemctl status elasticsearch +---- ++ +As with the previous `curl` command, the output should confirm that {es} started successfully. Type `q` to exit from the `status` command results. [discrete] [[install-stack-self-elasticsearch-second]] -== Step 3: Set up a second {es} node +== Step 4: Set up a second {es} node To set up a second {es} node, the initial steps are similar to those that you followed for <>. @@ -265,7 +263,7 @@ Return to your terminal shell into the first {es} node. . Generate a node enrollment token: + -[source,shell] +[source,"shell"] ---- sudo /usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s node ---- @@ -282,7 +280,7 @@ Note the following tips about enrollment tokens: . In the terminal shell for your second {es} node, pass the enrollment token as a parameter to the `elasticsearch-reconfigure-node` tool: + -[source,shell] +[source,"shell"] ---- sudo /usr/share/elasticsearch/bin/elasticsearch-reconfigure-node --enrollment-token ---- @@ -307,14 +305,14 @@ Notice that, as a result of having run the `elasticsearch-reconfigure-node` tool . In the configuration file, uncomment the line `#cluster.name: my-application` and set it to match the name you specified for the first {es} node: + -[source,shell] +[source,"shell"] ---- cluster.name: elasticsearch-demo ---- . As with the first {es} node, we'll need to set up {es} to run on a routable, external IP address. Uncomment the line `#network.host: 92.168.0.1` and replace the default address with the value that you copied. For example: + -[source,shell] +[source,"shell"] ---- network.host: 10.128.0.132 ---- @@ -323,14 +321,14 @@ network.host: 10.128.0.132 . Start {es} on the second node: + -[source,shell] +[source,"shell"] ---- sudo systemctl start elasticsearch.service ---- . **Optionally**, to view the progress as the second {es} node starts up and connects to the first {es} node, open a new terminal into the second node and `tail` the {es} log file: + -[source,shell] +[source,"shell"] ---- sudo tail -f /var/log/elasticsearch/elasticsearch-demo.log ---- @@ -345,7 +343,7 @@ Notice in the log file some helpful diagnostics, such as: + After a minute or so, the log should show a message like: + -[source,shell] +[source,"shell"] ---- [] master node changed {previous [], current [...]} ---- @@ -384,13 +382,13 @@ sudo curl --cacert /etc/elasticsearch/certs/http_ca.crt -u elastic:$ELASTIC_PASS [discrete] [[install-stack-self-elasticsearch-third]] -== Step 4: Set up a third {es} node +== Step 5: Set up a third {es} node To set up your third {es} node, follow exactly the same steps as you did previously in <>. The process is identical for each additional {es} node that you would like to add to the cluster. As a recommended best practice, create a new enrollment token for each new node that you add. [discrete] [[install-stack-self-kibana]] -== Step 5: Install {kib} +== Step 6: Install {kib} As with {es}, we'll use RPM to install {kib} on another host. You can find details about all of the following steps in the section {kibana-ref}/rpm.html#install-rpm[Install {kib} with RPM]. @@ -438,7 +436,7 @@ Return to your terminal shell into the first {es} node. . Run the `elasticsearch-create-enrollment-token` command with the `-s kibana` option to generate a {kibana} enrollment token: + -[source,shell] +[source,"shell"] ---- sudo /usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s kibana ---- @@ -466,7 +464,7 @@ sudo vim /etc/kibana/kibana.yml . Uncomment the line `#server.host: localhost` and replace the default address with the inet value that you copied from the ìfconfig` command. For example: + -[source,shell] +[source,"shell"] ---- server.host: 10.128.0.28 ---- @@ -499,7 +497,7 @@ Go to http://10.128.0.28:5601/?code= to get started. + Make a note of the verification code. -. Open a web browser to the external IP address of the {kib} host machine, for example: `http://:5601`. It can take a minute or two for {kib} to start up, so refresh the page if you don't see a prompt right away. +. Open a web browser to the external IP address of the {kib} host machine, for example: `http://:5601`. It can take a minute or two for {kib} to start up, so refresh the page if you don't see a prompt right away. . When {kib} starts, you're prompted to provide an enrollment token. Paste in the {kib} enrollment token that you generated earlier. @@ -519,7 +517,9 @@ Make a note of the verification code. [discrete] [[install-stack-self-fleet-server]] -== Step 6: Install {fleet-server} +== Step 7: Install {fleet-server} + +IMPORTANT: For simplicity, in this guide we're setting up all of the {stack} components first before, optionally, configuring security certificates. However, in a production environment it's recommended to update your security settings as described in <> before installing {fleet-server} and {agent}. After any new security certificates are configured any {agent}s would need to be reinstalled. Now that {kib} is up and running, we'll install {fleet-server}, which will manage the {agent} that we'll set up in a later step. If you need more detail about these steps, refer to {fleet-guide}/add-fleet-server-on-prem.html[Deploy on-premises and self-managed] in the {fleet} and {agent} Guide. @@ -529,7 +529,7 @@ Now that {kib} is up and running, we'll install {fleet-server}, which will manag + ["source","shell"] ---- -mkdir elastic-install-files +mkdir elastic-install-files ---- . Change into the new directory: @@ -576,7 +576,7 @@ If you'd like to learn about the install command options, refer to {fleet-guide} [discrete] [[install-stack-self-elastic-agent]] -== Step 7: Install {agent} +== Step 8: Install {agent} Next, we'll install {agent} on another host and use the System integration to monitor system logs and metrics. @@ -649,7 +649,7 @@ Your new {agent} is now installed an enrolled with {fleet-server}. [discrete] [[install-stack-self-view-data]] -== Step 8: View your system data +== Step 9: View your system data Now that all of the components have been installed, it's time to confirm that data is flowing as expected. @@ -668,7 +668,551 @@ View your system metrics data: image::images/install-stack-metrics-dashboard.png["The System metrics host overview showing CPU usage, memory usage, and other visualizations"] [discrete] -[[install-stack-self-security-certificates]] -== Step 9: Configure security certificates +[[install-stack-self-certificates]] +== Step 10: [Optional] Configure security certificates + +This step is recommended for production environments. + +Beginning with Elastic 8.0, security is enabled in the {stack} by default, meaning that traffic between {es} nodes and between {kib} and {es} is SSL-encrypted. +While this is suitable for testing non-production viability of the Elastic platform, most production networks have requirements for the use of trusted CA-signed certificates. +These steps demonstrate how to update the out-of-the-box self-signed certificates with your own trusted CA-signed certificates. + +For traffic to be encrypted between {es} cluster nodes and between {kib} and {es}, SSL certificates must be created for the transport ({es} inter-node communication) and HTTP (for the {es} REST API) layers. This general process is as follows: + +. Generate a new self-signed CA certificate or use one provided by your organization (for demonstration purposes we'll do the former). +. Generate or configure a new certificate for the transport layer. +. Generate or configure a new certificate(s) for the HTTP layer. +. Configure additional {es} nodes. +. Generate a certificate for {kib} to access {es}. +. Configure {fleet} to use the new certificates. + +[discrete] +[[install-stack-self-certificates-ca]] +=== Generate a new self-signed CA certificate + +In a production environment you would typically use the CA certificate from your own organization, along with the certificate files generated for the hosts where the {stack} is being installed. For demonstration purposes, we'll use the Elastic certificate utility to configure a self-signed CA certificate. + +. On the first node in your {es} cluster, generate a CA certificate using the provided certificate utility, `elasticsearch-certutil`. Note that the location of the utility depends on the installation method you used to install {es}. Refer to {ref}/certutil.html[elasticsearch-certutil] for the command details and to {ref}/update-node-certs-different.html[Update security certificates with a different CA] for details about the procedure as a whole. ++ +Run the following command. When prompted, specify a unique name for the output file, such as `elastic-stack-ca-new.zip`: ++ +["source","shell"] +---- +sudo /usr/share/elasticsearch/bin/elasticsearch-certutil ca -pem +---- + +. Move the output file to the `/etc/elasticsearch/certs` directory. This directory is created automatically when you install {es}. ++ +["source","shell"] +---- +sudo mv /usr/share/elasticsearch/elastic-stack-ca-new.zip +---- + +. Change to the certificates directory and unzip the file: ++ +["source","shell"] +---- +sudo cd /etc/elasticsearch/certs +sudo unzip elastic-stack-ca-new.zip +---- + +. View the files that were unpacked into a new `ca` directory: ++ +["source","shell"] +---- +sudo ls ca/ +---- ++ +* `ca.crt` - The generated certificate (or you can substitute this with your own certificate, signed by your organizations's certificate authority) +* `ca.key` - The certificate authority's private key ++ +NOTE: These steps to generate new self-signed CA certificates need to be done only on the first {es} node. The other {es} nodes will use the same `ca.crt` and `ca.key` files. + +. From the `/ca` directory, import the newly created CA certificate into the {es} truststore. This step ensures that your cluster trusts the new CA certificate. ++ +NOTE: On a new installation a new keystore and truststore will be created automatically. If you're running these steps on an existing {es} installation and you know the password to the keystore and the truststore, follow the instructions in {ref}/update-node-certs-different.html[Update security certificates with a different CA]. ++ +Run the following command, replacing `` with a unique password for the truststore, and store the password securely: ++ +["source","shell"] +---- +sudo /usr/share/elasticsearch/jdk/bin/keytool -importcert -trustcacerts -noprompt -keystore elastic-stack-ca.p12 -storepass -alias new-ca -file ca.crt +---- + +. Ensure that the new key was added to the keystore. Enter your password when prompted. ++ +["source","shell"] +---- +keytool -keystore elastic-stack-ca.p12 -list +---- ++ +The result should show the details for your newly added key. ++ +["source","shell"] +---- +Keystore type: jks +Keystore provider: SUN +Your keystore contains 1 entry +new-ca, Jul 12, 2023, trustedCertEntry, +Certificate fingerprint (SHA-256): F0:86:6B:57:FC... +---- + +[discrete] +[[install-stack-self-certificates-transport]] +=== Generate a new certificate for the transport layer + +This guide assumes the use of self-signed certificates, but the process to import CA-signed certificates is the same. If you're using a CA provided by your organization, you will need to generate Certificate Signing Requests (CSRs) and then use the signed certificates in this step. Once the certificates are generated, whether self-signed or CA-signed, the steps is the same. + +. From the {es} installation directory, using the newly-created CA certificate and private key, create a new certificate for your elasticsearch node: ++ +["source","shell"] +---- +sudo usr/share/elasticsearch/bin/elasticsearch-certutil cert --ca-cert /etc/elasticsearch/certs/ca/ca.crt --ca-key /etc/elasticsearch/certs/ca/ca.key +---- ++ +When prompted, choose an output file name (you can use the default `elastic-certificates.p12`) and a password for the certificate. + +. Move the generated file to the `/etc/elasticsearch/certs` directory: ++ +["source","shell"] +---- +sudo mv usr/share/elasticsearch/elastic-certificates.p12 . +---- + ++ +[IMPORTANT] +==== +If you're running these steps on a production cluster: + +* In a cluster with multiple {es} nodes, before proceeding you first need to perform a {ref}/restart-cluster.html#restart-cluster-rolling[Rolling restart] beginning with the node where you're updating the keystore. Stop at the `Perform any needed changes` step, and then proceed to the next step in this guide. +* In a single node cluster, stop {es} before proceeding. + +If this is the initial installation of this cluster, proceed to the next step. +==== + ++ +. Because we've created a new truststore and keystore, we need to update the `/etc/elasticsearch/elasticsearch.yml` settings file with the new truststore and keystore filenames. ++ +Open the {es} configuration file in a text editor and adjust the following values to reflect the newly created keystore and truststore files: ++ +["source","shell"] +---- +xpack.security.transport.ssl: + ... + keystore.path: /etc/elasticsearch/certs/elastic-certificates.p12 + truststore.path: /etc/elasticsearch/certs/elastic-stack-ca.p12 +---- + +[discrete] +[[install-stack-self-certificates-es-keystore01]] +==== Update the {es} keystore + +{es} uses a separate keystore to hold the passwords of the keystores and truststores holding the CA and node certificates created in the previous steps. Access to this keystore is through the use of a utility called `elasticsearch-keystore`. + +. From the {es} installation directory, list the contents of the existing keystore: ++ +["source","shell"] +---- +/usr/share/elasticsearch/bin/elasticsearch-keystore list +---- ++ +The results should be like the following: ++ +["source","yaml"] +---- +keystore.seed +xpack.security.http.ssl.keystore.secure_password +xpack.security.transport.ssl.keystore.secure_password +xpack.security.transport.ssl.truststore.secure_password +---- ++ +Notice that there are entries for the `transport truststore` that holds the CA certificate, the `transport keystore` that holds the CA-signed certificates, and the `http keystore`. These entries were created at installation and need to be replaced with the passwords to the newly-created truststore and keystores. + +. Remove the existing keystore values for the default transport keystore and truststore: ++ +["source","shell"] +---- +sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.keystore.secure_password + +sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.truststore.secure_password +---- + +. Update the `elasticsearch-keystore` with the passwords for the new keystore and truststore created in the previous steps. This ensures that {es} can read the new stores: ++ +["source","shell"] +---- +sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password + +sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password +---- + +[discrete] +[[install-stack-self-certificates-http]] +=== Generate new certificate(s) for the HTTP layer + +Now that communication between {es} nodes (the transport layer) has been secured with SSL certificates, the same must be done for the communications that use the REST API, including {kib}, clients, and any other components on the HTTP layer. + +. Similar to the process for the transport layer, on the first node in your {es} cluster use the certificate utility to generate a CA certificate for HTTP: ++ +["source","shell"] +---- +sudo / usr/share/elasticsearch/bin/elasticsearch-certutil http +---- ++ +Respond to the command prompts as follows: + +* When asked if you want to generate a CSR, enter `n`. +* When asked if you want to use an existing CA, enter `y`. +* Provide the absolute path to your newly created CA certificate: `/etc/elasticsearch/certs/ca/ca.crt`. +* Provide the absolute path to your newly created CA key: `/etc/elasticsearch/certs/ca/ca.key`. +* Enter an expiration value for your certificate. You can enter the validity period in years, months, or days. For example, enter `1y` for one year. +* When asked if you want to generate one certificate per node, enter `y`. You'll be guided through the creation of certificates for each node. Each certificate will have its own private key, and will be issued for a specific hostname or IP address. +.. On separate lines, enter the hostname for your first {es} node, for example `mynode-es1`, and the IP address that clients can use to connect to your node. This is the value you captured previously in Step 2, for example `10.128.0.84`: ++ +["source","shell"] +---- +mynode-es1 +10.128.0.84 +---- +.. When prompted, confirm that the settings are correct. +.. Add the network IP address for the first {es} node (the same address you specified in the previous step): ++ +["source","shell"] +---- +10.128.0.84 +---- +.. When prompted, confirm that the settings are correct. +.. When prompted, generate additional certificates and repeat the previous steps to add hostname and IP settings for each node in your {es} cluster. +.. Provide a password for the generated `http.p12` keystore file. +.. The generated files will be included in a zip archive. At the prompt, provide a path and filename for where the archive should be created ++ +For this example we'll use: `/etc/elasticsearch/certs/elasticsearch-ssl-http.zip`. ++ +["source","shell"] +---- +What filename should be used for the output zip file? [/usr/share/elasticsearch/elasticsearch-ssl-http.zip] /etc/elasticsearch/certs/elasticsearch-ssl-http.zip +---- + +. Earlier, when we generated the certificate for the transport layer, the default filename was `elastic-certificates.p12`. Now, when generating a certificate for the HTTP layer, the default filename is `http.p12`. This matches the name of the existing HTTP layer certificate file from when the initial {es} cluster was first installed. Just to avoid any possible name collisions, rename the existing http.p12 file to distinguish it from the newly-created keystore: ++ +["source","shell"] +---- +mv http.p12 http-old.p12 +---- + +. Unzip the generated `elasticsearch-ssl-http.zip` archive. ++ +["source","shell"] +---- +unzip elasticsearch-ssl-http.zip +---- + +. When the archive is unpacked, the certificate files are located in separate directories for each {es} node and for the {kib} node. You can run a recursive `ls` command to view the file structure: ++ +["source","shell"] +---- +ls -lR elasticsearch kibana +---- ++ +["source","shell"] +---- +elasticsearch: +total 0 +drwxr-xr-x. 2 root root 56 Dec 12 19:13 mynode-es1 +drwxr-xr-x. 2 root root 72 Dec 12 19:04 mynode-es2 +drwxr-xr-x. 2 root root 72 Dec 12 19:04 mynode-es3 + +elasticsearch/mynode-es1: +total 8 +-rw-r--r--. 1 root root 1365 Dec 12 19:04 README.txt +-rw-r--r--. 1 root root 845 Dec 12 19:04 sample-elasticsearch.yml + +elasticsearch/mynode-es2: +total 12 +-rw-r--r--. 1 root root 3652 Dec 12 19:04 http.p12 +-rw-r--r--. 1 root root 1365 Dec 12 19:04 README.txt +-rw-r--r--. 1 root root 845 Dec 12 19:04 sample-elasticsearch.yml + +elasticsearch/mynode-es3: +total 12 +-rw-r--r--. 1 root root 3652 Dec 12 19:04 http.p12 +-rw-r--r--. 1 root root 1365 Dec 12 19:04 README.txt +-rw-r--r--. 1 root root 845 Dec 12 19:04 sample-elasticsearch.yml + +kibana: +total 12 +-rw-r--r--. 1 root root 1200 Dec 12 19:04 elasticsearch-ca.pem +-rw-r--r--. 1 root root 1306 Dec 12 19:04 README.txt +-rw-r--r--. 1 root root 1052 Dec 12 19:04 sample-kibana.yml +---- + +. In the directory where you unzipped the archive, replace your existing keystore with the new keystore. The location of your certificate directory may be different than what is shown here, depending on the installation method you chose. ++ +["source","shell"] +---- +mv elasticsearch//http.p12 /etc/elasticsearch/certs/ +---- ++ +Replace `` with the hostname of your initial {es} node. + +. Since this is a new keystore, the {es} configuration file needs to be updated with the path to its location. Open `/etc/elasticsearch/elasticsearch.yml` and update the HTTP SSL settings: ++ +["source","yaml"] +---- +xpack.security.http.ssl: + enabled: true + #keystore.path: certs/http.p12 + keystore.path: /etc/elasticsearch/certs/http.p12 +---- + +. Since we also generated a new keystore password, the {es} keystore needs to be updated as well. From the {es} installation directory, first remove the existing HTTP keystore entry: ++ +["source","shell"] +---- +./bin/elasticsearch-keystore remove xpack.security.http.ssl.keystore.secure_password +---- + +. From the {es} installation directory, add the updated HTTP keystore password, using the password you generated for this keystore: ++ +["source","shell"] +---- +./bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password +---- + +. Before restarting {es}, you need to update the permissions and ownership of all of the certificate files. ++ +From the `etc/elasticsearch/certs/` directory, change the files to be owned by the `root.elasticsearch` group: ++ +["source","shell"] +---- +chown root.elasticsearch * +---- ++ +Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/ca` directories to be executable by the owner: ++ +["source","shell"] +---- +chmod 750 /etc/elasticsearch/certs +chmod 750 /etc/elasticsearch/ca +---- + +. Stop and restart {es}. ++ +["source","shell"] +---- +sudo systemctl stop elasticsearch.service +sudo systemctl start elasticsearch.service +---- + +. Run the status command to confirm that {es} is running. ++ +["source","shell"] +---- +sudo systemctl status elasticsearch.service +---- ++ +In the event of any problems, you can also monitor the {es} logs for any issues by tailing the {es} log file: ++ +[source,"shell"] +---- +sudo tail -f /var/log/elasticsearch/elasticsearch-demo.log +---- ++ +A line in the log file similar to below indicates that SSL was properly configured: ++ +["source","shell"] +---- +[2023-07-12T13:11:29,154][INFO ][o.e.x.s.Security ] [es-ssl-test] Security is enabled +---- + +[discrete] +[[install-stack-self-certificates-second-node]] +=== Configure additional {es} nodes + +Now that the security is configured for the first {es} node, some steps need to be repeated on each additional {es} node. + +. To avoid filename collisions, on each additional {es} rename the existing `http.p12` file: ++ +["source","shell"] +---- +mv http.p12 http-old.p12 +---- + +. Copy the CA and truststore files that you generated on the first {es} node so that they can be reused on all other nodes: + +* Copy the `/ca` directory (that contains `ca.crt` and `ca.key`) from `/etc/elasticsearch/certs/` on the first {es} node to the same path on all other {es} nodes. + +* Copy `elastic-stack-ca.p12` from `/etc/elasticsearch/certs/` to the /etc/elasticsearch/certs/ directory on all other {es} nodes. + +* Copy the `http.p12` file from each node directory in `/etc/elasticsearch/certs/elasticsearch/` (that is, `elasticsearch/mynode-es1`, `elasticsearch/mynode-es2` and `elasticsearch/mynode-es3`) to the `/etc/elasticsearch/certs/` directory on each corresponding cluster node. + +. On each {es} node, repeat the steps to generate a new certificate for the transport layer: + +.. From the `/etc/elasticsearch/certs` directory, create a new certificate for the {es} node: ++ +["source","shell"] +---- +sudo usr/share/elasticsearch/bin/elasticsearch-certutil cert --ca-cert /etc/elasticsearch/certs/ca/ca.crt --ca-key /etc/elasticsearch/certs/ca/ca.key +---- ++ +When prompted, choose an output file name or use the default, and specify a password for the certificate. + +.. Update the `/etc/elasticsearch/elasticsearch.yml` settings file with the new truststore and keystore filenames: ++ +["source","shell"] +---- +xpack.security.transport.ssl: + ... + keystore.path: /etc/elasticsearch/certs/elastic-certificates.p12 + truststore.path: /etc/elasticsearch/certs/elastic-stack-ca.p12 +---- + +.. List the content of the {es} keystore: ++ +["source","shell"] +---- +/usr/share/elasticsearch/bin/elasticsearch-keystore list +---- ++ +The results should be like the following: ++ +["source","yaml"] +---- +keystore.seed +xpack.security.http.ssl.keystore.secure_password +xpack.security.transport.ssl.keystore.secure_password +xpack.security.transport.ssl.truststore.secure_password +---- + +.. Remove the existing keystore values for the default transport keystore and truststore: ++ +["source","shell"] +---- +sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.keystore.secure_password + +sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.truststore.secure_password +---- + +.. Update the `elasticsearch-keystore` with the passwords for the new keystore and truststore: ++ +["source","shell"] +---- +sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password + +sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password +---- + +. For the HTTP layer, the certificates have been generated already on the first {es} node. Each additional {es} node just needs to be configured to use the new certificates. + +.. Update the `/etc/elasticsearch/elasticsearch.yml` settings file with the new truststore and keystore filenames: ++ +["source","shell"] +---- +xpack.security.http.ssl: + enabled: true + #keystore.path: certs/http.p12 + keystore.path: /etc/elasticsearch/certs/http.p12 +---- + +.. Remove the existing HTTP keystore entry: ++ +["source","shell"] +---- +./bin/elasticsearch-keystore remove xpack.security.http.ssl.keystore.secure_password +---- + +.. Add the updated HTTP keystore password: ++ +["source","shell"] +---- +./bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password +---- + +.. Change the certificate files to be owned by the `root.elasticsearch` group: ++ +["source","shell"] +---- +chown root.elasticsearch * +---- + +..Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/ca` directories to be executable by the owner: ++ +["source","shell"] +---- +chmod 750 /etc/elasticsearch/certs +chmod 750 /etc/elasticsearch/ca +---- + +. Stop and restart {es}. ++ +["source","shell"] +---- +sudo systemctl stop elasticsearch.service +sudo systemctl start elasticsearch.service +---- + +. Run the status command to confirm that {es} is running. ++ +["source","shell"] +---- +sudo systemctl status elasticsearch.service +---- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +[discrete] +[[install-stack-self-certificates-kib-es]] +=== Generate a certificate for {kib} to access {es} +tbd -Helpful reference: https://www.elastic.co/guide/en/elasticsearch/reference/8.9/update-node-certs.html \ No newline at end of file From dc7478b08888c00a7655671a0da1e21b85843281 Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Mon, 18 Dec 2023 00:49:14 -0500 Subject: [PATCH 11/35] typo --- docs/en/install-upgrade/installing-stack-demo-self.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index 4f37ee758..c741495d4 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -1135,7 +1135,7 @@ xpack.security.http.ssl: chown root.elasticsearch * ---- -..Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/ca` directories to be executable by the owner: +.. Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/ca` directories to be executable by the owner: + ["source","shell"] ---- From ec36e821c585787a00e0f5dd0cf298a5391af06a Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Tue, 2 Jan 2024 16:59:06 -0500 Subject: [PATCH 12/35] Split security steps into a 'part 2' guide --- docs/en/install-upgrade/index.asciidoc | 2 + .../installing-stack-demo-secure.asciidoc | 510 ++++++++++++++++ .../installing-stack-demo-self.asciidoc | 560 +----------------- .../install-upgrade/installing-stack.asciidoc | 2 +- 4 files changed, 520 insertions(+), 554 deletions(-) create mode 100644 docs/en/install-upgrade/installing-stack-demo-secure.asciidoc diff --git a/docs/en/install-upgrade/index.asciidoc b/docs/en/install-upgrade/index.asciidoc index 83da58882..962c0f702 100644 --- a/docs/en/install-upgrade/index.asciidoc +++ b/docs/en/install-upgrade/index.asciidoc @@ -19,6 +19,8 @@ include::installing-stack.asciidoc[] include::installing-stack-demo-self.asciidoc[] +include::installing-stack-demo-secure.asciidoc[] + include::air-gapped-install.asciidoc[] include::upgrading-stack.asciidoc[] diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc new file mode 100644 index 000000000..0bbe722e5 --- /dev/null +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -0,0 +1,510 @@ +// for testing: +:version: 8.11.1 + +[[install-stack-demo-secure]] +=== Tutorial 2: Securing a self-managed {stack} + +This tutorial is a follow-on to <>. These steps guide you through the process of configuring secure communications throughout your on-premise {stack} install. + +Beginning with Elastic 8.0, security is enabled in the {stack} by default, meaning that traffic between {es} nodes and between {kib} and {es} is SSL-encrypted. +While this is suitable for testing non-production viability of the Elastic platform, most production networks have requirements for the use of trusted CA-signed certificates. +These steps demonstrate how to update the out-of-the-box self-signed certificates with your own trusted CA-signed certificates. + +For traffic to be encrypted between {es} cluster nodes and between {kib} and {es}, SSL certificates must be created for the transport ({es} inter-node communication) and HTTP (for the {es} REST API) layers. This general process is as follows: + +* <> +* <> +* <> +* <> +* <> +* <> + +It should take between one and two hours to complete these steps. + +[discrete] +[[install-stack-demo-secure-ca]] +== Step 1: Generate a new self-signed CA certificate + +In a production environment you would typically use the CA certificate from your own organization, along with the certificate files generated for the hosts where the {stack} is being installed. For demonstration purposes, we'll use the Elastic certificate utility to configure a self-signed CA certificate. + +or use one provided by your organization (for demonstration purposes we'll do the former) + +. On the first node in your {es} cluster, generate a CA certificate using the provided certificate utility, `elasticsearch-certutil`. Note that the location of the utility depends on the installation method you used to install {es}. Refer to {ref}/certutil.html[elasticsearch-certutil] for the command details and to {ref}/update-node-certs-different.html[Update security certificates with a different CA] for details about the procedure as a whole. ++ +Run the following command. When prompted, specify a unique name for the output file, such as `elastic-stack-ca-new.zip`: ++ +["source","shell"] +---- +sudo /usr/share/elasticsearch/bin/elasticsearch-certutil ca -pem +---- + +. Move the output file to the `/etc/elasticsearch/certs` directory. This directory is created automatically when you install {es}. ++ +["source","shell"] +---- +sudo mv /usr/share/elasticsearch/elastic-stack-ca-new.zip +---- + +. Change to the certificates directory and unzip the file: ++ +["source","shell"] +---- +sudo cd /etc/elasticsearch/certs +sudo unzip elastic-stack-ca-new.zip +---- + +. View the files that were unpacked into a new `ca` directory: ++ +["source","shell"] +---- +sudo ls ca/ +---- ++ +* `ca.crt` - The generated certificate (or you can substitute this with your own certificate, signed by your organizations's certificate authority) +* `ca.key` - The certificate authority's private key ++ +NOTE: These steps to generate new self-signed CA certificates need to be done only on the first {es} node. The other {es} nodes will use the same `ca.crt` and `ca.key` files. + +. From the `/ca` directory, import the newly created CA certificate into the {es} truststore. This step ensures that your cluster trusts the new CA certificate. ++ +NOTE: On a new installation a new keystore and truststore will be created automatically. If you're running these steps on an existing {es} installation and you know the password to the keystore and the truststore, follow the instructions in {ref}/update-node-certs-different.html[Update security certificates with a different CA]. ++ +Run the following command, replacing `` with a unique password for the truststore, and store the password securely: ++ +["source","shell"] +---- +sudo /usr/share/elasticsearch/jdk/bin/keytool -importcert -trustcacerts -noprompt -keystore elastic-stack-ca.p12 -storepass -alias new-ca -file ca.crt +---- + +. Ensure that the new key was added to the keystore. Enter your password when prompted. ++ +["source","shell"] +---- +keytool -keystore elastic-stack-ca.p12 -list +---- ++ +The result should show the details for your newly added key. ++ +["source","shell"] +---- +Keystore type: jks +Keystore provider: SUN +Your keystore contains 1 entry +new-ca, Jul 12, 2023, trustedCertEntry, +Certificate fingerprint (SHA-256): F0:86:6B:57:FC... +---- + +[discrete] +[[install-stack-demo-secure-transport]] +== Step 2: Generate a new certificate for the transport layer + +This guide assumes the use of self-signed certificates, but the process to import CA-signed certificates is the same. If you're using a CA provided by your organization, you will need to generate Certificate Signing Requests (CSRs) and then use the signed certificates in this step. Once the certificates are generated, whether self-signed or CA-signed, the steps is the same. + +. From the {es} installation directory, using the newly-created CA certificate and private key, create a new certificate for your elasticsearch node: ++ +["source","shell"] +---- +sudo usr/share/elasticsearch/bin/elasticsearch-certutil cert --ca-cert /etc/elasticsearch/certs/ca/ca.crt --ca-key /etc/elasticsearch/certs/ca/ca.key +---- ++ +When prompted, choose an output file name (you can use the default `elastic-certificates.p12`) and a password for the certificate. + +. Move the generated file to the `/etc/elasticsearch/certs` directory: ++ +["source","shell"] +---- +sudo mv usr/share/elasticsearch/elastic-certificates.p12 . +---- + ++ +[IMPORTANT] +==== +If you're running these steps on a production cluster: + +* In a cluster with multiple {es} nodes, before proceeding you first need to perform a {ref}/restart-cluster.html#restart-cluster-rolling[Rolling restart] beginning with the node where you're updating the keystore. Stop at the `Perform any needed changes` step, and then proceed to the next step in this guide. +* In a single node cluster, stop {es} before proceeding. + +If this is the initial installation of this cluster, proceed to the next step. +==== + ++ +. Because we've created a new truststore and keystore, we need to update the `/etc/elasticsearch/elasticsearch.yml` settings file with the new truststore and keystore filenames. ++ +Open the {es} configuration file in a text editor and adjust the following values to reflect the newly created keystore and truststore files: ++ +["source","shell"] +---- +xpack.security.transport.ssl: + ... + keystore.path: /etc/elasticsearch/certs/elastic-certificates.p12 + truststore.path: /etc/elasticsearch/certs/elastic-stack-ca.p12 +---- + +[discrete] +[[install-stack-demo-secure-transport-es-keystore]] +=== Update the {es} keystore + +{es} uses a separate keystore to hold the passwords of the keystores and truststores holding the CA and node certificates created in the previous steps. Access to this keystore is through the use of a utility called `elasticsearch-keystore`. + +. From the {es} installation directory, list the contents of the existing keystore: ++ +["source","shell"] +---- +/usr/share/elasticsearch/bin/elasticsearch-keystore list +---- ++ +The results should be like the following: ++ +["source","yaml"] +---- +keystore.seed +xpack.security.http.ssl.keystore.secure_password +xpack.security.transport.ssl.keystore.secure_password +xpack.security.transport.ssl.truststore.secure_password +---- ++ +Notice that there are entries for the `transport truststore` that holds the CA certificate, the `transport keystore` that holds the CA-signed certificates, and the `http keystore`. These entries were created at installation and need to be replaced with the passwords to the newly-created truststore and keystores. + +. Remove the existing keystore values for the default transport keystore and truststore: ++ +["source","shell"] +---- +sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.keystore.secure_password + +sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.truststore.secure_password +---- + +. Update the `elasticsearch-keystore` with the passwords for the new keystore and truststore created in the previous steps. This ensures that {es} can read the new stores: ++ +["source","shell"] +---- +sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password + +sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password +---- + +[discrete] +[[install-stack-demo-secure-http]] +== Step 3: Generate new certificate(s) for the HTTP layer + +Now that communication between {es} nodes (the transport layer) has been secured with SSL certificates, the same must be done for the communications that use the REST API, including {kib}, clients, and any other components on the HTTP layer. + +. Similar to the process for the transport layer, on the first node in your {es} cluster use the certificate utility to generate a CA certificate for HTTP: ++ +["source","shell"] +---- +sudo / usr/share/elasticsearch/bin/elasticsearch-certutil http +---- ++ +Respond to the command prompts as follows: + +* When asked if you want to generate a CSR, enter `n`. +* When asked if you want to use an existing CA, enter `y`. +* Provide the absolute path to your newly created CA certificate: `/etc/elasticsearch/certs/ca/ca.crt`. +* Provide the absolute path to your newly created CA key: `/etc/elasticsearch/certs/ca/ca.key`. +* Enter an expiration value for your certificate. You can enter the validity period in years, months, or days. For example, enter `1y` for one year. +* When asked if you want to generate one certificate per node, enter `y`. You'll be guided through the creation of certificates for each node. Each certificate will have its own private key, and will be issued for a specific hostname or IP address. +.. On separate lines, enter the hostname for your first {es} node, for example `mynode-es1`, and the IP address that clients can use to connect to your node. This is the value you captured previously in Step 2, for example `10.128.0.84`: ++ +["source","shell"] +---- +mynode-es1 +10.128.0.84 +---- +.. When prompted, confirm that the settings are correct. +.. Add the network IP address for the first {es} node (the same address you specified in the previous step): ++ +["source","shell"] +---- +10.128.0.84 +---- +.. When prompted, confirm that the settings are correct. +.. When prompted, generate additional certificates and repeat the previous steps to add hostname and IP settings for each node in your {es} cluster. +.. Provide a password for the generated `http.p12` keystore file. +.. The generated files will be included in a zip archive. At the prompt, provide a path and filename for where the archive should be created ++ +For this example we'll use: `/etc/elasticsearch/certs/elasticsearch-ssl-http.zip`. ++ +["source","shell"] +---- +What filename should be used for the output zip file? [/usr/share/elasticsearch/elasticsearch-ssl-http.zip] /etc/elasticsearch/certs/elasticsearch-ssl-http.zip +---- + +. Earlier, when we generated the certificate for the transport layer, the default filename was `elastic-certificates.p12`. Now, when generating a certificate for the HTTP layer, the default filename is `http.p12`. This matches the name of the existing HTTP layer certificate file from when the initial {es} cluster was first installed. Just to avoid any possible name collisions, rename the existing http.p12 file to distinguish it from the newly-created keystore: ++ +["source","shell"] +---- +mv http.p12 http-old.p12 +---- + +. Unzip the generated `elasticsearch-ssl-http.zip` archive. ++ +["source","shell"] +---- +unzip elasticsearch-ssl-http.zip +---- + +. When the archive is unpacked, the certificate files are located in separate directories for each {es} node and for the {kib} node. You can run a recursive `ls` command to view the file structure: ++ +["source","shell"] +---- +ls -lR elasticsearch kibana +---- ++ +["source","shell"] +---- +elasticsearch: +total 0 +drwxr-xr-x. 2 root root 56 Dec 12 19:13 mynode-es1 +drwxr-xr-x. 2 root root 72 Dec 12 19:04 mynode-es2 +drwxr-xr-x. 2 root root 72 Dec 12 19:04 mynode-es3 + +elasticsearch/mynode-es1: +total 8 +-rw-r--r--. 1 root root 1365 Dec 12 19:04 README.txt +-rw-r--r--. 1 root root 845 Dec 12 19:04 sample-elasticsearch.yml + +elasticsearch/mynode-es2: +total 12 +-rw-r--r--. 1 root root 3652 Dec 12 19:04 http.p12 +-rw-r--r--. 1 root root 1365 Dec 12 19:04 README.txt +-rw-r--r--. 1 root root 845 Dec 12 19:04 sample-elasticsearch.yml + +elasticsearch/mynode-es3: +total 12 +-rw-r--r--. 1 root root 3652 Dec 12 19:04 http.p12 +-rw-r--r--. 1 root root 1365 Dec 12 19:04 README.txt +-rw-r--r--. 1 root root 845 Dec 12 19:04 sample-elasticsearch.yml + +kibana: +total 12 +-rw-r--r--. 1 root root 1200 Dec 12 19:04 elasticsearch-ca.pem +-rw-r--r--. 1 root root 1306 Dec 12 19:04 README.txt +-rw-r--r--. 1 root root 1052 Dec 12 19:04 sample-kibana.yml +---- + +. In the directory where you unzipped the archive, replace your existing keystore with the new keystore. The location of your certificate directory may be different than what is shown here, depending on the installation method you chose. ++ +["source","shell"] +---- +mv elasticsearch//http.p12 /etc/elasticsearch/certs/ +---- ++ +Replace `` with the hostname of your initial {es} node. + +. Since this is a new keystore, the {es} configuration file needs to be updated with the path to its location. Open `/etc/elasticsearch/elasticsearch.yml` and update the HTTP SSL settings: ++ +["source","yaml"] +---- +xpack.security.http.ssl: + enabled: true + #keystore.path: certs/http.p12 + keystore.path: /etc/elasticsearch/certs/http.p12 +---- + +. Since we also generated a new keystore password, the {es} keystore needs to be updated as well. From the {es} installation directory, first remove the existing HTTP keystore entry: ++ +["source","shell"] +---- +./bin/elasticsearch-keystore remove xpack.security.http.ssl.keystore.secure_password +---- + +. From the {es} installation directory, add the updated HTTP keystore password, using the password you generated for this keystore: ++ +["source","shell"] +---- +./bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password +---- + +. Before restarting {es}, you need to update the permissions and ownership of all of the certificate files. ++ +From the `etc/elasticsearch/certs/` directory, change the files to be owned by the `root.elasticsearch` group: ++ +["source","shell"] +---- +chown root.elasticsearch * +---- ++ +Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/ca` directories to be executable by the owner: ++ +["source","shell"] +---- +chmod 750 /etc/elasticsearch/certs +chmod 750 /etc/elasticsearch/ca +---- + +. Stop and restart {es}. ++ +["source","shell"] +---- +sudo systemctl stop elasticsearch.service +sudo systemctl start elasticsearch.service +---- + +. Run the status command to confirm that {es} is running. ++ +["source","shell"] +---- +sudo systemctl status elasticsearch.service +---- ++ +In the event of any problems, you can also monitor the {es} logs for any issues by tailing the {es} log file: ++ +["source","shell"] +---- +sudo tail -f /var/log/elasticsearch/elasticsearch-demo.log +---- ++ +A line in the log file similar to below indicates that SSL was properly configured: ++ +["source","shell"] +---- +[2023-07-12T13:11:29,154][INFO ][o.e.x.s.Security ] [es-ssl-test] Security is enabled +---- + +[discrete] +[[install-stack-demo-secure-second-node]] +== Step 4: Configure additional {es} nodes + +Now that the security is configured for the first {es} node, some steps need to be repeated on each additional {es} node. + +. To avoid filename collisions, on each additional {es} rename the existing `http.p12` file: ++ +["source","shell"] +---- +mv http.p12 http-old.p12 +---- + +. Copy the CA and truststore files that you generated on the first {es} node so that they can be reused on all other nodes: + +* Copy the `/ca` directory (that contains `ca.crt` and `ca.key`) from `/etc/elasticsearch/certs/` on the first {es} node to the same path on all other {es} nodes. + +* Copy `elastic-stack-ca.p12` from `/etc/elasticsearch/certs/` to the /etc/elasticsearch/certs/ directory on all other {es} nodes. + +* Copy the `http.p12` file from each node directory in `/etc/elasticsearch/certs/elasticsearch/` (that is, `elasticsearch/mynode-es1`, `elasticsearch/mynode-es2` and `elasticsearch/mynode-es3`) to the `/etc/elasticsearch/certs/` directory on each corresponding cluster node. + +. On each {es} node, repeat the steps to generate a new certificate for the transport layer: + +.. From the `/etc/elasticsearch/certs` directory, create a new certificate for the {es} node: ++ +["source","shell"] +---- +sudo usr/share/elasticsearch/bin/elasticsearch-certutil cert --ca-cert /etc/elasticsearch/certs/ca/ca.crt --ca-key /etc/elasticsearch/certs/ca/ca.key +---- ++ +When prompted, choose an output file name or use the default, and specify a password for the certificate. + +.. Update the `/etc/elasticsearch/elasticsearch.yml` settings file with the new truststore and keystore filenames: ++ +["source","shell"] +---- +xpack.security.transport.ssl: + ... + keystore.path: /etc/elasticsearch/certs/elastic-certificates.p12 + truststore.path: /etc/elasticsearch/certs/elastic-stack-ca.p12 +---- + +.. List the content of the {es} keystore: ++ +["source","shell"] +---- +/usr/share/elasticsearch/bin/elasticsearch-keystore list +---- ++ +The results should be like the following: ++ +["source","yaml"] +---- +keystore.seed +xpack.security.http.ssl.keystore.secure_password +xpack.security.transport.ssl.keystore.secure_password +xpack.security.transport.ssl.truststore.secure_password +---- + +.. Remove the existing keystore values for the default transport keystore and truststore: ++ +["source","shell"] +---- +sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.keystore.secure_password + +sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.truststore.secure_password +---- + +.. Update the `elasticsearch-keystore` with the passwords for the new keystore and truststore: ++ +["source","shell"] +---- +sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password + +sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password +---- + +. For the HTTP layer, the certificates have been generated already on the first {es} node. Each additional {es} node just needs to be configured to use the new certificates. + +.. Update the `/etc/elasticsearch/elasticsearch.yml` settings file with the new truststore and keystore filenames: ++ +["source","shell"] +---- +xpack.security.http.ssl: + enabled: true + #keystore.path: certs/http.p12 + keystore.path: /etc/elasticsearch/certs/http.p12 +---- + +.. Remove the existing HTTP keystore entry: ++ +["source","shell"] +---- +./bin/elasticsearch-keystore remove xpack.security.http.ssl.keystore.secure_password +---- + +.. Add the updated HTTP keystore password: ++ +["source","shell"] +---- +./bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password +---- + +.. Change the certificate files to be owned by the `root.elasticsearch` group: ++ +["source","shell"] +---- +chown root.elasticsearch * +---- + +.. Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/ca` directories to be executable by the owner: ++ +["source","shell"] +---- +chmod 750 /etc/elasticsearch/certs +chmod 750 /etc/elasticsearch/ca +---- + +. Stop and restart {es}. ++ +["source","shell"] +---- +sudo systemctl stop elasticsearch.service +sudo systemctl start elasticsearch.service +---- + +. Run the status command to confirm that {es} is running. ++ +["source","shell"] +---- +sudo systemctl status elasticsearch.service +---- + + + + +[discrete] +[[install-stack-demo-secure-kib-es]] +== Step 5: Generate a certificate for {kib} to access {es} +tbd + + +[discrete] +[[install-stack-demo-secure-fleet]] +== Step 6: Configure {fleet} to use the new certificates +tbd \ No newline at end of file diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index c741495d4..e95a9a231 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -1,15 +1,13 @@ // for testing: :version: 8.11.1 - [[installing-stack-demo-self]] -=== Tutorial: Installing a self-managed {stack} +=== Tutorial 1: Installing a self-managed {stack} -This tutorial demonstrates how to install and configure the {stack} in a secure, self-managed environment. Following these steps, you'll set up a three node {es} cluster, with {kib}, {fleet-server}, and {agent}, each on separate hosts. The {agent} will be configured with the System integration, enabling it to gather local system logs and metrics and deliver them into the {es} cluster. Finally, you'll view the system data in {kib}. +This tutorial demonstrates how to install and configure the {stack} in a self-managed environment. Following these steps, you'll set up a three node {es} cluster, with {kib}, {fleet-server}, and {agent}, each on separate hosts. The {agent} will be configured with the System integration, enabling it to gather local system logs and metrics and deliver them into the {es} cluster. Finally, you'll view the system data in {kib}. It should take between one and two hours to complete these steps. - * <> * <> * <> @@ -21,7 +19,7 @@ It should take between one and two hours to complete these steps. * <> * <> * <> -* <> +* <> [discrete] [[install-stack-self-prereqs]] @@ -519,7 +517,7 @@ Make a note of the verification code. [[install-stack-self-fleet-server]] == Step 7: Install {fleet-server} -IMPORTANT: For simplicity, in this guide we're setting up all of the {stack} components first before, optionally, configuring security certificates. However, in a production environment it's recommended to update your security settings as described in <> before installing {fleet-server} and {agent}. After any new security certificates are configured any {agent}s would need to be reinstalled. +IMPORTANT: For simplicity, in this guide we're setting up all of the {stack} components first before, optionally, configuring security certificates. However, in a production environment it's recommended to update your security settings as described in <> before installing {fleet-server} and {agent}. After any new security certificates are configured any {agent}s would need to be reinstalled. Now that {kib} is up and running, we'll install {fleet-server}, which will manage the {agent} that we'll set up in a later step. If you need more detail about these steps, refer to {fleet-guide}/add-fleet-server-on-prem.html[Deploy on-premises and self-managed] in the {fleet} and {agent} Guide. @@ -668,551 +666,7 @@ View your system metrics data: image::images/install-stack-metrics-dashboard.png["The System metrics host overview showing CPU usage, memory usage, and other visualizations"] [discrete] -[[install-stack-self-certificates]] -== Step 10: [Optional] Configure security certificates - -This step is recommended for production environments. - -Beginning with Elastic 8.0, security is enabled in the {stack} by default, meaning that traffic between {es} nodes and between {kib} and {es} is SSL-encrypted. -While this is suitable for testing non-production viability of the Elastic platform, most production networks have requirements for the use of trusted CA-signed certificates. -These steps demonstrate how to update the out-of-the-box self-signed certificates with your own trusted CA-signed certificates. - -For traffic to be encrypted between {es} cluster nodes and between {kib} and {es}, SSL certificates must be created for the transport ({es} inter-node communication) and HTTP (for the {es} REST API) layers. This general process is as follows: - -. Generate a new self-signed CA certificate or use one provided by your organization (for demonstration purposes we'll do the former). -. Generate or configure a new certificate for the transport layer. -. Generate or configure a new certificate(s) for the HTTP layer. -. Configure additional {es} nodes. -. Generate a certificate for {kib} to access {es}. -. Configure {fleet} to use the new certificates. - -[discrete] -[[install-stack-self-certificates-ca]] -=== Generate a new self-signed CA certificate - -In a production environment you would typically use the CA certificate from your own organization, along with the certificate files generated for the hosts where the {stack} is being installed. For demonstration purposes, we'll use the Elastic certificate utility to configure a self-signed CA certificate. - -. On the first node in your {es} cluster, generate a CA certificate using the provided certificate utility, `elasticsearch-certutil`. Note that the location of the utility depends on the installation method you used to install {es}. Refer to {ref}/certutil.html[elasticsearch-certutil] for the command details and to {ref}/update-node-certs-different.html[Update security certificates with a different CA] for details about the procedure as a whole. -+ -Run the following command. When prompted, specify a unique name for the output file, such as `elastic-stack-ca-new.zip`: -+ -["source","shell"] ----- -sudo /usr/share/elasticsearch/bin/elasticsearch-certutil ca -pem ----- - -. Move the output file to the `/etc/elasticsearch/certs` directory. This directory is created automatically when you install {es}. -+ -["source","shell"] ----- -sudo mv /usr/share/elasticsearch/elastic-stack-ca-new.zip ----- - -. Change to the certificates directory and unzip the file: -+ -["source","shell"] ----- -sudo cd /etc/elasticsearch/certs -sudo unzip elastic-stack-ca-new.zip ----- - -. View the files that were unpacked into a new `ca` directory: -+ -["source","shell"] ----- -sudo ls ca/ ----- -+ -* `ca.crt` - The generated certificate (or you can substitute this with your own certificate, signed by your organizations's certificate authority) -* `ca.key` - The certificate authority's private key -+ -NOTE: These steps to generate new self-signed CA certificates need to be done only on the first {es} node. The other {es} nodes will use the same `ca.crt` and `ca.key` files. - -. From the `/ca` directory, import the newly created CA certificate into the {es} truststore. This step ensures that your cluster trusts the new CA certificate. -+ -NOTE: On a new installation a new keystore and truststore will be created automatically. If you're running these steps on an existing {es} installation and you know the password to the keystore and the truststore, follow the instructions in {ref}/update-node-certs-different.html[Update security certificates with a different CA]. -+ -Run the following command, replacing `` with a unique password for the truststore, and store the password securely: -+ -["source","shell"] ----- -sudo /usr/share/elasticsearch/jdk/bin/keytool -importcert -trustcacerts -noprompt -keystore elastic-stack-ca.p12 -storepass -alias new-ca -file ca.crt ----- - -. Ensure that the new key was added to the keystore. Enter your password when prompted. -+ -["source","shell"] ----- -keytool -keystore elastic-stack-ca.p12 -list ----- -+ -The result should show the details for your newly added key. -+ -["source","shell"] ----- -Keystore type: jks -Keystore provider: SUN -Your keystore contains 1 entry -new-ca, Jul 12, 2023, trustedCertEntry, -Certificate fingerprint (SHA-256): F0:86:6B:57:FC... ----- - -[discrete] -[[install-stack-self-certificates-transport]] -=== Generate a new certificate for the transport layer - -This guide assumes the use of self-signed certificates, but the process to import CA-signed certificates is the same. If you're using a CA provided by your organization, you will need to generate Certificate Signing Requests (CSRs) and then use the signed certificates in this step. Once the certificates are generated, whether self-signed or CA-signed, the steps is the same. - -. From the {es} installation directory, using the newly-created CA certificate and private key, create a new certificate for your elasticsearch node: -+ -["source","shell"] ----- -sudo usr/share/elasticsearch/bin/elasticsearch-certutil cert --ca-cert /etc/elasticsearch/certs/ca/ca.crt --ca-key /etc/elasticsearch/certs/ca/ca.key ----- -+ -When prompted, choose an output file name (you can use the default `elastic-certificates.p12`) and a password for the certificate. - -. Move the generated file to the `/etc/elasticsearch/certs` directory: -+ -["source","shell"] ----- -sudo mv usr/share/elasticsearch/elastic-certificates.p12 . ----- - -+ -[IMPORTANT] -==== -If you're running these steps on a production cluster: - -* In a cluster with multiple {es} nodes, before proceeding you first need to perform a {ref}/restart-cluster.html#restart-cluster-rolling[Rolling restart] beginning with the node where you're updating the keystore. Stop at the `Perform any needed changes` step, and then proceed to the next step in this guide. -* In a single node cluster, stop {es} before proceeding. - -If this is the initial installation of this cluster, proceed to the next step. -==== - -+ -. Because we've created a new truststore and keystore, we need to update the `/etc/elasticsearch/elasticsearch.yml` settings file with the new truststore and keystore filenames. -+ -Open the {es} configuration file in a text editor and adjust the following values to reflect the newly created keystore and truststore files: -+ -["source","shell"] ----- -xpack.security.transport.ssl: - ... - keystore.path: /etc/elasticsearch/certs/elastic-certificates.p12 - truststore.path: /etc/elasticsearch/certs/elastic-stack-ca.p12 ----- - -[discrete] -[[install-stack-self-certificates-es-keystore01]] -==== Update the {es} keystore - -{es} uses a separate keystore to hold the passwords of the keystores and truststores holding the CA and node certificates created in the previous steps. Access to this keystore is through the use of a utility called `elasticsearch-keystore`. - -. From the {es} installation directory, list the contents of the existing keystore: -+ -["source","shell"] ----- -/usr/share/elasticsearch/bin/elasticsearch-keystore list ----- -+ -The results should be like the following: -+ -["source","yaml"] ----- -keystore.seed -xpack.security.http.ssl.keystore.secure_password -xpack.security.transport.ssl.keystore.secure_password -xpack.security.transport.ssl.truststore.secure_password ----- -+ -Notice that there are entries for the `transport truststore` that holds the CA certificate, the `transport keystore` that holds the CA-signed certificates, and the `http keystore`. These entries were created at installation and need to be replaced with the passwords to the newly-created truststore and keystores. - -. Remove the existing keystore values for the default transport keystore and truststore: -+ -["source","shell"] ----- -sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.keystore.secure_password - -sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.truststore.secure_password ----- - -. Update the `elasticsearch-keystore` with the passwords for the new keystore and truststore created in the previous steps. This ensures that {es} can read the new stores: -+ -["source","shell"] ----- -sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password - -sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password ----- - -[discrete] -[[install-stack-self-certificates-http]] -=== Generate new certificate(s) for the HTTP layer - -Now that communication between {es} nodes (the transport layer) has been secured with SSL certificates, the same must be done for the communications that use the REST API, including {kib}, clients, and any other components on the HTTP layer. - -. Similar to the process for the transport layer, on the first node in your {es} cluster use the certificate utility to generate a CA certificate for HTTP: -+ -["source","shell"] ----- -sudo / usr/share/elasticsearch/bin/elasticsearch-certutil http ----- -+ -Respond to the command prompts as follows: - -* When asked if you want to generate a CSR, enter `n`. -* When asked if you want to use an existing CA, enter `y`. -* Provide the absolute path to your newly created CA certificate: `/etc/elasticsearch/certs/ca/ca.crt`. -* Provide the absolute path to your newly created CA key: `/etc/elasticsearch/certs/ca/ca.key`. -* Enter an expiration value for your certificate. You can enter the validity period in years, months, or days. For example, enter `1y` for one year. -* When asked if you want to generate one certificate per node, enter `y`. You'll be guided through the creation of certificates for each node. Each certificate will have its own private key, and will be issued for a specific hostname or IP address. -.. On separate lines, enter the hostname for your first {es} node, for example `mynode-es1`, and the IP address that clients can use to connect to your node. This is the value you captured previously in Step 2, for example `10.128.0.84`: -+ -["source","shell"] ----- -mynode-es1 -10.128.0.84 ----- -.. When prompted, confirm that the settings are correct. -.. Add the network IP address for the first {es} node (the same address you specified in the previous step): -+ -["source","shell"] ----- -10.128.0.84 ----- -.. When prompted, confirm that the settings are correct. -.. When prompted, generate additional certificates and repeat the previous steps to add hostname and IP settings for each node in your {es} cluster. -.. Provide a password for the generated `http.p12` keystore file. -.. The generated files will be included in a zip archive. At the prompt, provide a path and filename for where the archive should be created -+ -For this example we'll use: `/etc/elasticsearch/certs/elasticsearch-ssl-http.zip`. -+ -["source","shell"] ----- -What filename should be used for the output zip file? [/usr/share/elasticsearch/elasticsearch-ssl-http.zip] /etc/elasticsearch/certs/elasticsearch-ssl-http.zip ----- - -. Earlier, when we generated the certificate for the transport layer, the default filename was `elastic-certificates.p12`. Now, when generating a certificate for the HTTP layer, the default filename is `http.p12`. This matches the name of the existing HTTP layer certificate file from when the initial {es} cluster was first installed. Just to avoid any possible name collisions, rename the existing http.p12 file to distinguish it from the newly-created keystore: -+ -["source","shell"] ----- -mv http.p12 http-old.p12 ----- - -. Unzip the generated `elasticsearch-ssl-http.zip` archive. -+ -["source","shell"] ----- -unzip elasticsearch-ssl-http.zip ----- - -. When the archive is unpacked, the certificate files are located in separate directories for each {es} node and for the {kib} node. You can run a recursive `ls` command to view the file structure: -+ -["source","shell"] ----- -ls -lR elasticsearch kibana ----- -+ -["source","shell"] ----- -elasticsearch: -total 0 -drwxr-xr-x. 2 root root 56 Dec 12 19:13 mynode-es1 -drwxr-xr-x. 2 root root 72 Dec 12 19:04 mynode-es2 -drwxr-xr-x. 2 root root 72 Dec 12 19:04 mynode-es3 - -elasticsearch/mynode-es1: -total 8 --rw-r--r--. 1 root root 1365 Dec 12 19:04 README.txt --rw-r--r--. 1 root root 845 Dec 12 19:04 sample-elasticsearch.yml - -elasticsearch/mynode-es2: -total 12 --rw-r--r--. 1 root root 3652 Dec 12 19:04 http.p12 --rw-r--r--. 1 root root 1365 Dec 12 19:04 README.txt --rw-r--r--. 1 root root 845 Dec 12 19:04 sample-elasticsearch.yml - -elasticsearch/mynode-es3: -total 12 --rw-r--r--. 1 root root 3652 Dec 12 19:04 http.p12 --rw-r--r--. 1 root root 1365 Dec 12 19:04 README.txt --rw-r--r--. 1 root root 845 Dec 12 19:04 sample-elasticsearch.yml - -kibana: -total 12 --rw-r--r--. 1 root root 1200 Dec 12 19:04 elasticsearch-ca.pem --rw-r--r--. 1 root root 1306 Dec 12 19:04 README.txt --rw-r--r--. 1 root root 1052 Dec 12 19:04 sample-kibana.yml ----- - -. In the directory where you unzipped the archive, replace your existing keystore with the new keystore. The location of your certificate directory may be different than what is shown here, depending on the installation method you chose. -+ -["source","shell"] ----- -mv elasticsearch//http.p12 /etc/elasticsearch/certs/ ----- -+ -Replace `` with the hostname of your initial {es} node. - -. Since this is a new keystore, the {es} configuration file needs to be updated with the path to its location. Open `/etc/elasticsearch/elasticsearch.yml` and update the HTTP SSL settings: -+ -["source","yaml"] ----- -xpack.security.http.ssl: - enabled: true - #keystore.path: certs/http.p12 - keystore.path: /etc/elasticsearch/certs/http.p12 ----- - -. Since we also generated a new keystore password, the {es} keystore needs to be updated as well. From the {es} installation directory, first remove the existing HTTP keystore entry: -+ -["source","shell"] ----- -./bin/elasticsearch-keystore remove xpack.security.http.ssl.keystore.secure_password ----- - -. From the {es} installation directory, add the updated HTTP keystore password, using the password you generated for this keystore: -+ -["source","shell"] ----- -./bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password ----- - -. Before restarting {es}, you need to update the permissions and ownership of all of the certificate files. -+ -From the `etc/elasticsearch/certs/` directory, change the files to be owned by the `root.elasticsearch` group: -+ -["source","shell"] ----- -chown root.elasticsearch * ----- -+ -Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/ca` directories to be executable by the owner: -+ -["source","shell"] ----- -chmod 750 /etc/elasticsearch/certs -chmod 750 /etc/elasticsearch/ca ----- - -. Stop and restart {es}. -+ -["source","shell"] ----- -sudo systemctl stop elasticsearch.service -sudo systemctl start elasticsearch.service ----- - -. Run the status command to confirm that {es} is running. -+ -["source","shell"] ----- -sudo systemctl status elasticsearch.service ----- -+ -In the event of any problems, you can also monitor the {es} logs for any issues by tailing the {es} log file: -+ -[source,"shell"] ----- -sudo tail -f /var/log/elasticsearch/elasticsearch-demo.log ----- -+ -A line in the log file similar to below indicates that SSL was properly configured: -+ -["source","shell"] ----- -[2023-07-12T13:11:29,154][INFO ][o.e.x.s.Security ] [es-ssl-test] Security is enabled ----- - -[discrete] -[[install-stack-self-certificates-second-node]] -=== Configure additional {es} nodes - -Now that the security is configured for the first {es} node, some steps need to be repeated on each additional {es} node. - -. To avoid filename collisions, on each additional {es} rename the existing `http.p12` file: -+ -["source","shell"] ----- -mv http.p12 http-old.p12 ----- - -. Copy the CA and truststore files that you generated on the first {es} node so that they can be reused on all other nodes: - -* Copy the `/ca` directory (that contains `ca.crt` and `ca.key`) from `/etc/elasticsearch/certs/` on the first {es} node to the same path on all other {es} nodes. - -* Copy `elastic-stack-ca.p12` from `/etc/elasticsearch/certs/` to the /etc/elasticsearch/certs/ directory on all other {es} nodes. - -* Copy the `http.p12` file from each node directory in `/etc/elasticsearch/certs/elasticsearch/` (that is, `elasticsearch/mynode-es1`, `elasticsearch/mynode-es2` and `elasticsearch/mynode-es3`) to the `/etc/elasticsearch/certs/` directory on each corresponding cluster node. - -. On each {es} node, repeat the steps to generate a new certificate for the transport layer: - -.. From the `/etc/elasticsearch/certs` directory, create a new certificate for the {es} node: -+ -["source","shell"] ----- -sudo usr/share/elasticsearch/bin/elasticsearch-certutil cert --ca-cert /etc/elasticsearch/certs/ca/ca.crt --ca-key /etc/elasticsearch/certs/ca/ca.key ----- -+ -When prompted, choose an output file name or use the default, and specify a password for the certificate. - -.. Update the `/etc/elasticsearch/elasticsearch.yml` settings file with the new truststore and keystore filenames: -+ -["source","shell"] ----- -xpack.security.transport.ssl: - ... - keystore.path: /etc/elasticsearch/certs/elastic-certificates.p12 - truststore.path: /etc/elasticsearch/certs/elastic-stack-ca.p12 ----- - -.. List the content of the {es} keystore: -+ -["source","shell"] ----- -/usr/share/elasticsearch/bin/elasticsearch-keystore list ----- -+ -The results should be like the following: -+ -["source","yaml"] ----- -keystore.seed -xpack.security.http.ssl.keystore.secure_password -xpack.security.transport.ssl.keystore.secure_password -xpack.security.transport.ssl.truststore.secure_password ----- - -.. Remove the existing keystore values for the default transport keystore and truststore: -+ -["source","shell"] ----- -sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.keystore.secure_password - -sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.truststore.secure_password ----- - -.. Update the `elasticsearch-keystore` with the passwords for the new keystore and truststore: -+ -["source","shell"] ----- -sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password - -sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password ----- - -. For the HTTP layer, the certificates have been generated already on the first {es} node. Each additional {es} node just needs to be configured to use the new certificates. - -.. Update the `/etc/elasticsearch/elasticsearch.yml` settings file with the new truststore and keystore filenames: -+ -["source","shell"] ----- -xpack.security.http.ssl: - enabled: true - #keystore.path: certs/http.p12 - keystore.path: /etc/elasticsearch/certs/http.p12 ----- - -.. Remove the existing HTTP keystore entry: -+ -["source","shell"] ----- -./bin/elasticsearch-keystore remove xpack.security.http.ssl.keystore.secure_password ----- - -.. Add the updated HTTP keystore password: -+ -["source","shell"] ----- -./bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password ----- - -.. Change the certificate files to be owned by the `root.elasticsearch` group: -+ -["source","shell"] ----- -chown root.elasticsearch * ----- - -.. Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/ca` directories to be executable by the owner: -+ -["source","shell"] ----- -chmod 750 /etc/elasticsearch/certs -chmod 750 /etc/elasticsearch/ca ----- - -. Stop and restart {es}. -+ -["source","shell"] ----- -sudo systemctl stop elasticsearch.service -sudo systemctl start elasticsearch.service ----- - -. Run the status command to confirm that {es} is running. -+ -["source","shell"] ----- -sudo systemctl status elasticsearch.service ----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -[discrete] -[[install-stack-self-certificates-kib-es]] -=== Generate a certificate for {kib} to access {es} -tbd +[[install-stack-self-next-steps]] +== Next steps +Now that you've successfully configured an on-premise {stack}, you can prepare your environment for production by configuring secure communications between all {stack} components. Proceed to <> to learn more. \ No newline at end of file diff --git a/docs/en/install-upgrade/installing-stack.asciidoc b/docs/en/install-upgrade/installing-stack.asciidoc index f3c632e89..254cbc2b1 100644 --- a/docs/en/install-upgrade/installing-stack.asciidoc +++ b/docs/en/install-upgrade/installing-stack.asciidoc @@ -8,7 +8,7 @@ Kibana {version}, and Logstash {version}. If you're upgrading an existing installation, see <> for information about how to ensure compatibility with {version}. -For an example of installing and configuring the {stack}, you can try out our <>. +For an example of installing and configuring the {stack}, you can try out our <>. After that, you can also learn how to secure your installation for production following the steps in <>. [discrete] [[network-requirements]] From 03a67e34824c4e96279dcf8b6c182748ecca6258 Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Wed, 3 Jan 2024 16:01:41 -0500 Subject: [PATCH 13/35] Cleanup --- .../installing-stack-demo-secure.asciidoc | 77 +++++++++---------- 1 file changed, 38 insertions(+), 39 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index 0bbe722e5..fffe9b343 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -27,8 +27,6 @@ It should take between one and two hours to complete these steps. In a production environment you would typically use the CA certificate from your own organization, along with the certificate files generated for the hosts where the {stack} is being installed. For demonstration purposes, we'll use the Elastic certificate utility to configure a self-signed CA certificate. -or use one provided by your organization (for demonstration purposes we'll do the former) - . On the first node in your {es} cluster, generate a CA certificate using the provided certificate utility, `elasticsearch-certutil`. Note that the location of the utility depends on the installation method you used to install {es}. Refer to {ref}/certutil.html[elasticsearch-certutil] for the command details and to {ref}/update-node-certs-different.html[Update security certificates with a different CA] for details about the procedure as a whole. + Run the following command. When prompted, specify a unique name for the output file, such as `elastic-stack-ca-new.zip`: @@ -42,7 +40,7 @@ sudo /usr/share/elasticsearch/bin/elasticsearch-certutil ca -pem + ["source","shell"] ---- -sudo mv /usr/share/elasticsearch/elastic-stack-ca-new.zip +sudo mv /usr/share/elasticsearch/elastic-stack-ca-new.zip /etc/elasticsearch/certs/ ---- . Change to the certificates directory and unzip the file: @@ -60,30 +58,31 @@ sudo unzip elastic-stack-ca-new.zip sudo ls ca/ ---- + -* `ca.crt` - The generated certificate (or you can substitute this with your own certificate, signed by your organizations's certificate authority) -* `ca.key` - The certificate authority's private key +`ca.crt`:: The generated certificate (or you can substitute this with your own certificate, signed by your organizations's certificate authority) +`ca.key`:: The certificate authority's private key + + NOTE: These steps to generate new self-signed CA certificates need to be done only on the first {es} node. The other {es} nodes will use the same `ca.crt` and `ca.key` files. . From the `/ca` directory, import the newly created CA certificate into the {es} truststore. This step ensures that your cluster trusts the new CA certificate. + -NOTE: On a new installation a new keystore and truststore will be created automatically. If you're running these steps on an existing {es} installation and you know the password to the keystore and the truststore, follow the instructions in {ref}/update-node-certs-different.html[Update security certificates with a different CA]. +NOTE: On a new installation a new keystore and truststore are created automatically. If you're running these steps on an existing {es} installation and you know the password to the keystore and the truststore, follow the instructions in {ref}/update-node-certs-different.html[Update security certificates with a different CA] to import the CA certificate. + -Run the following command, replacing `` with a unique password for the truststore, and store the password securely: +Run the `keytool` command as shown, replacing `` with a unique password for the truststore, and store the password securely: + ["source","shell"] ---- sudo /usr/share/elasticsearch/jdk/bin/keytool -importcert -trustcacerts -noprompt -keystore elastic-stack-ca.p12 -storepass -alias new-ca -file ca.crt ---- -. Ensure that the new key was added to the keystore. Enter your password when prompted. +. Ensure that the new key was added to the keystore: + ["source","shell"] ---- keytool -keystore elastic-stack-ca.p12 -list ---- + -The result should show the details for your newly added key. +Enter your password when prompted. The result should show the details for your newly added key: + ["source","shell"] ---- @@ -98,7 +97,7 @@ Certificate fingerprint (SHA-256): F0:86:6B:57:FC... [[install-stack-demo-secure-transport]] == Step 2: Generate a new certificate for the transport layer -This guide assumes the use of self-signed certificates, but the process to import CA-signed certificates is the same. If you're using a CA provided by your organization, you will need to generate Certificate Signing Requests (CSRs) and then use the signed certificates in this step. Once the certificates are generated, whether self-signed or CA-signed, the steps is the same. +This guide assumes the use of self-signed certificates, but the process to import CA-signed certificates is the same. If you're using a CA provided by your organization, you need to generate Certificate Signing Requests (CSRs) and then use the signed certificates in this step. Once the certificates are generated, whether self-signed or CA-signed, the steps are the same. . From the {es} installation directory, using the newly-created CA certificate and private key, create a new certificate for your elasticsearch node: + @@ -113,24 +112,24 @@ When prompted, choose an output file name (you can use the default `elastic-cert + ["source","shell"] ---- -sudo mv usr/share/elasticsearch/elastic-certificates.p12 . +sudo mv usr/share/elasticsearch/elastic-certificates.p12 /etc/elasticsearch/certs/ ---- + [IMPORTANT] ==== -If you're running these steps on a production cluster: +If you're running these steps on a production cluster that already contains data: * In a cluster with multiple {es} nodes, before proceeding you first need to perform a {ref}/restart-cluster.html#restart-cluster-rolling[Rolling restart] beginning with the node where you're updating the keystore. Stop at the `Perform any needed changes` step, and then proceed to the next step in this guide. * In a single node cluster, stop {es} before proceeding. -If this is the initial installation of this cluster, proceed to the next step. +If this is the initial installation of this cluster, you can safely proceed to the next step. ==== + -. Because we've created a new truststore and keystore, we need to update the `/etc/elasticsearch/elasticsearch.yml` settings file with the new truststore and keystore filenames. +. Because you've created a new truststore and keystore, you need to update the `/etc/elasticsearch/elasticsearch.yml` settings file with the new truststore and keystore filenames. + -Open the {es} configuration file in a text editor and adjust the following values to reflect the newly created keystore and truststore files: +Open the {es} configuration file in a text editor and adjust the following values to reflect the newly created keystore and truststore filenames and paths: + ["source","shell"] ---- @@ -163,7 +162,7 @@ xpack.security.transport.ssl.keystore.secure_password xpack.security.transport.ssl.truststore.secure_password ---- + -Notice that there are entries for the `transport truststore` that holds the CA certificate, the `transport keystore` that holds the CA-signed certificates, and the `http keystore`. These entries were created at installation and need to be replaced with the passwords to the newly-created truststore and keystores. +Notice that there are entries for the `transport.ssl.truststore` that holds the CA certificate, the `transport.ssl.keystore` that holds the CA-signed certificates, and the `http.ssl.keystore` for the HTTP layer. These entries were created at installation and need to be replaced with the passwords to the newly-created truststore and keystores. . Remove the existing keystore values for the default transport keystore and truststore: + @@ -189,7 +188,7 @@ sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.trans Now that communication between {es} nodes (the transport layer) has been secured with SSL certificates, the same must be done for the communications that use the REST API, including {kib}, clients, and any other components on the HTTP layer. -. Similar to the process for the transport layer, on the first node in your {es} cluster use the certificate utility to generate a CA certificate for HTTP: +. Similar to the process for the transport layer, on the first node in your {es} cluster use the certificate utility to generate a CA certificate for HTTP communications: + ["source","shell"] ---- @@ -204,7 +203,7 @@ Respond to the command prompts as follows: * Provide the absolute path to your newly created CA key: `/etc/elasticsearch/certs/ca/ca.key`. * Enter an expiration value for your certificate. You can enter the validity period in years, months, or days. For example, enter `1y` for one year. * When asked if you want to generate one certificate per node, enter `y`. You'll be guided through the creation of certificates for each node. Each certificate will have its own private key, and will be issued for a specific hostname or IP address. -.. On separate lines, enter the hostname for your first {es} node, for example `mynode-es1`, and the IP address that clients can use to connect to your node. This is the value you captured previously in Step 2, for example `10.128.0.84`: +.. On separate lines, enter the hostname for your first {es} node, for example `mynode-es1`, and the IP address that clients can use to connect to your node. Note that this is the same value that's described in Step 2 of <>, for example `10.128.0.84`: + ["source","shell"] ---- @@ -219,25 +218,27 @@ mynode-es1 10.128.0.84 ---- .. When prompted, confirm that the settings are correct. -.. When prompted, generate additional certificates and repeat the previous steps to add hostname and IP settings for each node in your {es} cluster. +.. When prompted, choose to generate additional certificates, and then repeat the previous steps to add hostname and IP settings for each node in your {es} cluster. .. Provide a password for the generated `http.p12` keystore file. -.. The generated files will be included in a zip archive. At the prompt, provide a path and filename for where the archive should be created +.. The generated files will be included in a zip archive. At the prompt, provide a path and filename for where the archive should be created. + -For this example we'll use: `/etc/elasticsearch/certs/elasticsearch-ssl-http.zip`. +For this example we'll use: `/etc/elasticsearch/certs/elasticsearch-ssl-http.zip`: + ["source","shell"] ---- What filename should be used for the output zip file? [/usr/share/elasticsearch/elasticsearch-ssl-http.zip] /etc/elasticsearch/certs/elasticsearch-ssl-http.zip ---- -. Earlier, when we generated the certificate for the transport layer, the default filename was `elastic-certificates.p12`. Now, when generating a certificate for the HTTP layer, the default filename is `http.p12`. This matches the name of the existing HTTP layer certificate file from when the initial {es} cluster was first installed. Just to avoid any possible name collisions, rename the existing http.p12 file to distinguish it from the newly-created keystore: +. Earlier, when you generated the certificate for the transport layer, the default filename was `elastic-certificates.p12`. Now, when generating a certificate for the HTTP layer, the default filename is `http.p12`. This matches the name of the existing HTTP layer certificate file from when the initial {es} cluster was first installed. ++ +Just to avoid any possible name collisions, rename the existing `http.p12` file to distinguish it from the newly-created keystore: + ["source","shell"] ---- mv http.p12 http-old.p12 ---- -. Unzip the generated `elasticsearch-ssl-http.zip` archive. +. Unzip the generated `elasticsearch-ssl-http.zip` archive: + ["source","shell"] ---- @@ -283,16 +284,14 @@ total 12 -rw-r--r--. 1 root root 1052 Dec 12 19:04 sample-kibana.yml ---- -. In the directory where you unzipped the archive, replace your existing keystore with the new keystore. The location of your certificate directory may be different than what is shown here, depending on the installation method you chose. +. In the directory where you unzipped the archive, replace your existing keystore with the new keystore. The location of your certificate directory may be different than what is shown here, depending on the installation method you chose. Run the `mv` command, replacing `` with the hostname of your initial {es} node: + ["source","shell"] ---- mv elasticsearch//http.p12 /etc/elasticsearch/certs/ ---- -+ -Replace `` with the hostname of your initial {es} node. -. Since this is a new keystore, the {es} configuration file needs to be updated with the path to its location. Open `/etc/elasticsearch/elasticsearch.yml` and update the HTTP SSL settings: +. Because this is a new keystore, the {es} configuration file needs to be updated with the path to its location. Open `/etc/elasticsearch/elasticsearch.yml` and update the HTTP SSL settings with the new path: + ["source","yaml"] ---- @@ -302,7 +301,7 @@ xpack.security.http.ssl: keystore.path: /etc/elasticsearch/certs/http.p12 ---- -. Since we also generated a new keystore password, the {es} keystore needs to be updated as well. From the {es} installation directory, first remove the existing HTTP keystore entry: +. Since you also generated a new keystore password, the {es} keystore needs to be updated as well. From the {es} installation directory, first remove the existing HTTP keystore entry: + ["source","shell"] ---- @@ -317,15 +316,15 @@ xpack.security.http.ssl: ---- . Before restarting {es}, you need to update the permissions and ownership of all of the certificate files. -+ -From the `etc/elasticsearch/certs/` directory, change the files to be owned by the `root.elasticsearch` group: + +.. From the `etc/elasticsearch/certs/` directory, change the files to be owned by the `root.elasticsearch` group: + ["source","shell"] ---- chown root.elasticsearch * ---- -+ -Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/ca` directories to be executable by the owner: + +.. Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/ca` directories to be executable by the owner: + ["source","shell"] ---- @@ -333,7 +332,7 @@ chmod 750 /etc/elasticsearch/certs chmod 750 /etc/elasticsearch/ca ---- -. Stop and restart {es}. +. Stop and restart {es}: + ["source","shell"] ---- @@ -341,7 +340,7 @@ sudo systemctl stop elasticsearch.service sudo systemctl start elasticsearch.service ---- -. Run the status command to confirm that {es} is running. +. Run the status command to confirm that {es} is running: + ["source","shell"] ---- @@ -355,7 +354,7 @@ In the event of any problems, you can also monitor the {es} logs for any issues sudo tail -f /var/log/elasticsearch/elasticsearch-demo.log ---- + -A line in the log file similar to below indicates that SSL was properly configured: +A line in the log file like the following indicates that SSL has been properly configured: + ["source","shell"] ---- @@ -364,11 +363,11 @@ A line in the log file similar to below indicates that SSL was properly configur [discrete] [[install-stack-demo-secure-second-node]] -== Step 4: Configure additional {es} nodes +== Step 4: Configure security on additional {es} nodes Now that the security is configured for the first {es} node, some steps need to be repeated on each additional {es} node. -. To avoid filename collisions, on each additional {es} rename the existing `http.p12` file: +. To avoid filename collisions, on each additional {es} node rename the existing `http.p12` file: + ["source","shell"] ---- @@ -379,7 +378,7 @@ mv http.p12 http-old.p12 * Copy the `/ca` directory (that contains `ca.crt` and `ca.key`) from `/etc/elasticsearch/certs/` on the first {es} node to the same path on all other {es} nodes. -* Copy `elastic-stack-ca.p12` from `/etc/elasticsearch/certs/` to the /etc/elasticsearch/certs/ directory on all other {es} nodes. +* Copy the `elastic-stack-ca.p12` file from `/etc/elasticsearch/certs/` to the /etc/elasticsearch/certs/ directory on all other {es} nodes. * Copy the `http.p12` file from each node directory in `/etc/elasticsearch/certs/elasticsearch/` (that is, `elasticsearch/mynode-es1`, `elasticsearch/mynode-es2` and `elasticsearch/mynode-es3`) to the `/etc/elasticsearch/certs/` directory on each corresponding cluster node. @@ -394,7 +393,7 @@ sudo usr/share/elasticsearch/bin/elasticsearch-certutil cert --ca-cert /etc/elas + When prompted, choose an output file name or use the default, and specify a password for the certificate. -.. Update the `/etc/elasticsearch/elasticsearch.yml` settings file with the new truststore and keystore filenames: +.. Update the `/etc/elasticsearch/elasticsearch.yml` settings file with the new truststore and keystore filename and path: + ["source","shell"] ---- From a409c5e1b6130f13301ec379d46bcb22147a9f0a Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Thu, 4 Jan 2024 12:30:42 -0500 Subject: [PATCH 14/35] Improve note about jumping to second guide --- docs/en/install-upgrade/installing-stack-demo-self.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index e95a9a231..a761bffa6 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -517,7 +517,7 @@ Make a note of the verification code. [[install-stack-self-fleet-server]] == Step 7: Install {fleet-server} -IMPORTANT: For simplicity, in this guide we're setting up all of the {stack} components first before, optionally, configuring security certificates. However, in a production environment it's recommended to update your security settings as described in <> before installing {fleet-server} and {agent}. After any new security certificates are configured any {agent}s would need to be reinstalled. +IMPORTANT: For simplicity, in this guide we're setting up all of the {stack} components first, before configuring security certificates. However, in a production environment it's recommended to update your security settings as described in <> before installing {fleet-server} and {agent}. After any new security certificates are configured any {agent}s would need to be reinstalled. If you're currently setting up a production environment, you may want to jump directly to Tutorial 2, which includes steps to set up {fleet} and {agent} with security configured. Now that {kib} is up and running, we'll install {fleet-server}, which will manage the {agent} that we'll set up in a later step. If you need more detail about these steps, refer to {fleet-guide}/add-fleet-server-on-prem.html[Deploy on-premises and self-managed] in the {fleet} and {agent} Guide. From 1d62053fafc0222d9a34cb081c93ad2e0c459fed Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Fri, 5 Jan 2024 17:06:12 -0500 Subject: [PATCH 15/35] Fix start and stop; fix chown --- .../installing-stack-demo-secure.asciidoc | 28 +++++++++++++------ 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index fffe9b343..c11c6141a 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -27,7 +27,14 @@ It should take between one and two hours to complete these steps. In a production environment you would typically use the CA certificate from your own organization, along with the certificate files generated for the hosts where the {stack} is being installed. For demonstration purposes, we'll use the Elastic certificate utility to configure a self-signed CA certificate. -. On the first node in your {es} cluster, generate a CA certificate using the provided certificate utility, `elasticsearch-certutil`. Note that the location of the utility depends on the installation method you used to install {es}. Refer to {ref}/certutil.html[elasticsearch-certutil] for the command details and to {ref}/update-node-certs-different.html[Update security certificates with a different CA] for details about the procedure as a whole. +. On the first node in your {es} cluster, stop the {es} service: ++ +["source","shell"] +---- +sudo systemctl stop elasticsearch.service +---- + +. Still on the first node, generate a CA certificate using the provided certificate utility, `elasticsearch-certutil`. Note that the location of the utility depends on the installation method you used to install {es}. Refer to {ref}/certutil.html[elasticsearch-certutil] for the command details and to {ref}/update-node-certs-different.html[Update security certificates with a different CA] for details about the procedure as a whole. + Run the following command. When prompted, specify a unique name for the output file, such as `elastic-stack-ca-new.zip`: + @@ -121,7 +128,7 @@ sudo mv usr/share/elasticsearch/elastic-certificates.p12 /etc/elasticsearch/cert If you're running these steps on a production cluster that already contains data: * In a cluster with multiple {es} nodes, before proceeding you first need to perform a {ref}/restart-cluster.html#restart-cluster-rolling[Rolling restart] beginning with the node where you're updating the keystore. Stop at the `Perform any needed changes` step, and then proceed to the next step in this guide. -* In a single node cluster, stop {es} before proceeding. +* In a single node cluster, always stop {es} before proceeding. If this is the initial installation of this cluster, you can safely proceed to the next step. ==== @@ -321,7 +328,7 @@ xpack.security.http.ssl: + ["source","shell"] ---- -chown root.elasticsearch * +chown root:elasticsearch * ---- .. Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/ca` directories to be executable by the owner: @@ -332,11 +339,10 @@ chmod 750 /etc/elasticsearch/certs chmod 750 /etc/elasticsearch/ca ---- -. Stop and restart {es}: +. Restart the {es} service: + ["source","shell"] ---- -sudo systemctl stop elasticsearch.service sudo systemctl start elasticsearch.service ---- @@ -384,6 +390,13 @@ mv http.p12 http-old.p12 . On each {es} node, repeat the steps to generate a new certificate for the transport layer: +.. Stop the {es} service: ++ +["source","shell"] +---- +sudo systemctl stop elasticsearch.service +---- + .. From the `/etc/elasticsearch/certs` directory, create a new certificate for the {es} node: + ["source","shell"] @@ -468,7 +481,7 @@ xpack.security.http.ssl: + ["source","shell"] ---- -chown root.elasticsearch * +chown root:elasticsearch * ---- .. Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/ca` directories to be executable by the owner: @@ -479,11 +492,10 @@ chmod 750 /etc/elasticsearch/certs chmod 750 /etc/elasticsearch/ca ---- -. Stop and restart {es}. +. Restart the {es} service. + ["source","shell"] ---- -sudo systemctl stop elasticsearch.service sudo systemctl start elasticsearch.service ---- From d3dce2a824072422ced7419e1fd7e0bbc8333ed2 Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Mon, 8 Jan 2024 18:31:09 -0500 Subject: [PATCH 16/35] Add Kibana SSL steps --- .../installing-stack-demo-secure.asciidoc | 100 +++++++++++++++--- .../installing-stack-demo-self.asciidoc | 25 +++-- 2 files changed, 100 insertions(+), 25 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index c11c6141a..1cd79efd1 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -4,7 +4,7 @@ [[install-stack-demo-secure]] === Tutorial 2: Securing a self-managed {stack} -This tutorial is a follow-on to <>. These steps guide you through the process of configuring secure communications throughout your on-premise {stack} install. +This tutorial is a follow-on to <>. These steps guide you through the process of configuring secure communications throughout your on-premise {stack} install. Beginning with Elastic 8.0, security is enabled in the {stack} by default, meaning that traffic between {es} nodes and between {kib} and {es} is SSL-encrypted. While this is suitable for testing non-production viability of the Elastic platform, most production networks have requirements for the use of trusted CA-signed certificates. @@ -12,7 +12,7 @@ These steps demonstrate how to update the out-of-the-box self-signed certificate For traffic to be encrypted between {es} cluster nodes and between {kib} and {es}, SSL certificates must be created for the transport ({es} inter-node communication) and HTTP (for the {es} REST API) layers. This general process is as follows: -* <> +* <> * <> * <> * <> @@ -312,31 +312,38 @@ xpack.security.http.ssl: + ["source","shell"] ---- -./bin/elasticsearch-keystore remove xpack.security.http.ssl.keystore.secure_password +sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.http.ssl.keystore.secure_password ---- . From the {es} installation directory, add the updated HTTP keystore password, using the password you generated for this keystore: + ["source","shell"] ---- -./bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password +sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password ---- . Before restarting {es}, you need to update the permissions and ownership of all of the certificate files. -.. From the `etc/elasticsearch/certs/` directory, change the files to be owned by the `root.elasticsearch` group: +.. From the `etc/elasticsearch/certs/` directory, change the files to be owned by the `root:elasticsearch` group: + ["source","shell"] ---- chown root:elasticsearch * ---- +.. Set the files in `/etc/elasticsearch/certs` to have read and write permissions by the owner (`root`) and read permission by the `elastic` user: ++ +["source","shell"] +---- +chmod 640 * +---- + .. Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/ca` directories to be executable by the owner: + ["source","shell"] ---- chmod 750 /etc/elasticsearch/certs -chmod 750 /etc/elasticsearch/ca +chmod 750 /etc/elasticsearch/certs/ca ---- . Restart the {es} service: @@ -373,7 +380,7 @@ A line in the log file like the following indicates that SSL has been properly c Now that the security is configured for the first {es} node, some steps need to be repeated on each additional {es} node. -. To avoid filename collisions, on each additional {es} node rename the existing `http.p12` file: +. To avoid filename collisions, on each additional {es} node rename the existing `http.p12` file in the `/etc/elasticsearch/certs/` directory: + ["source","shell"] ---- @@ -467,29 +474,36 @@ xpack.security.http.ssl: + ["source","shell"] ---- -./bin/elasticsearch-keystore remove xpack.security.http.ssl.keystore.secure_password +sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.http.ssl.keystore.secure_password ---- .. Add the updated HTTP keystore password: + ["source","shell"] ---- -./bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password +sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password ---- -.. Change the certificate files to be owned by the `root.elasticsearch` group: +.. Change the certificate files to be owned by the `root:elasticsearch` group: + ["source","shell"] ---- chown root:elasticsearch * ---- +.. Set the files in `/etc/elasticsearch/certs` to have read and write permissions by the owner (`root`) and read permission by the `elastic` user: ++ +["source","shell"] +---- +chmod 640 * +---- + .. Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/ca` directories to be executable by the owner: + ["source","shell"] ---- chmod 750 /etc/elasticsearch/certs -chmod 750 /etc/elasticsearch/ca +chmod 750 /etc/elasticsearch/certs/ca ---- . Restart the {es} service. @@ -505,17 +519,69 @@ sudo systemctl start elasticsearch.service ---- sudo systemctl status elasticsearch.service ---- + +[discrete] +[[install-stack-demo-secure-kib-es]] +== Step 5: Generate a certificate for {kib} to access {es} +Now that the transport and HTTP layers are configured with encryption using the new certificates, we'll set up certificates for encryption between {kib} and {es}. +. In Step 3, when you generated a new certificate for the HTTP layer, the process created an archive `elasticsearch-ssl-http.zip`. From the `kibana` directory in the expanded archive, copy the `elasticsearch-ca.pem` private key file to the {kib} host machine. +. On the {kib} host machine, copy `elasticsearch-ca.pem` to the {kib} configuration directory (depending on the installation method that you used, the location of the configuration directory may be different from what's shown): ++ +["source","shell"] +---- +mv elasticsearch-ca.pem /etc/kibana +---- -[discrete] -[[install-stack-demo-secure-kib-es]] -== Step 5: Generate a certificate for {kib} to access {es} -tbd +. Stop the {kib} service: ++ +["source","shell"] +---- +sudo systemctl stop kibana.service +---- +. Update the `kibana.yml` settings file to reflect the location of the `elasticsearch-ca.pem`: ++ +["source","sh",subs="attributes"] +---- +elasticsearch.ssl.certificateAuthorities: [/etc/kibana/elasticsearch-ca.pem] +---- + +. Restart the {kib} service: ++ +["source","shell"] +---- +sudo systemctl start kibana.service +---- + +. Confirm that {kib} is running: ++ +["source","shell"] +---- +sudo systemctl status kibana.service +---- ++ +If everything is configured correctly, connection to {es} will be established and {kib} will start normally. + +. You can also view the {kib} log file to gather more detail: ++ +["source","shell"] +---- +tail -f /var/log/kibana/kibana.log +---- ++ +In the log file you should find a `Kibana is now available` message. + +. Open a web browser to the external IP address of the Kibana host machine: `http://:5601``. + +. Log in using the `elastic` user and password that you configured in Step 1 of <>. + +Congratulations! You've successfully updated the SSL certificates between {es} and {kib}. [discrete] [[install-stack-demo-secure-fleet]] -== Step 6: Configure {fleet} to use the new certificates -tbd \ No newline at end of file +== Step 6: Install {fleet} with SSL certificates configured + + diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index a761bffa6..9a009f706 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -21,6 +21,8 @@ It should take between one and two hours to complete these steps. * <> * <> +IMPORTANT: If you're using these steps to configure a production cluster that uses trusted CA-signed certificates for secure communications, after completing Step 6 to install {kib} we recommend jumping directly to <>. The second tutorial includes steps to configure {fleet} and {agent} with SSL certificates enabled. + [discrete] [[install-stack-self-prereqs]] == Prerequisites @@ -118,7 +120,7 @@ sudo vim /etc/elasticsearch/elasticsearch.yml + In the configuration file, uncomment the line `#cluster.name: my-application` and give the {es} instance any name that you'd like: + -[source,"shell"] +[source,"yaml"] ---- cluster.name: elasticsearch-demo ---- @@ -127,7 +129,7 @@ cluster.name: elasticsearch-demo + Uncomment the line `#network.host: 192.168.0.1` and replace the default address with the value that you copied from the `ifconfig` command output. For example: + -[source,"shell"] +[source,"yaml"] ---- network.host: 10.128.0.84 ---- @@ -136,7 +138,7 @@ network.host: 10.128.0.84 + Uncomment the line `#transport.host: 0.0.0.0`. The `0.0.0.0` setting enables {es} to listen for connections on all available network interfaces. Note that in a production environment you might want to restrict this by setting this value to match the value set for `network.host`. + -[source,"shell"] +[source,"yaml"] ---- transport.host: 0.0.0.0 ---- @@ -303,14 +305,14 @@ Notice that, as a result of having run the `elasticsearch-reconfigure-node` tool . In the configuration file, uncomment the line `#cluster.name: my-application` and set it to match the name you specified for the first {es} node: + -[source,"shell"] +[source,"yaml"] ---- cluster.name: elasticsearch-demo ---- . As with the first {es} node, we'll need to set up {es} to run on a routable, external IP address. Uncomment the line `#network.host: 92.168.0.1` and replace the default address with the value that you copied. For example: + -[source,"shell"] +[source,"yaml"] ---- network.host: 10.128.0.132 ---- @@ -462,7 +464,7 @@ sudo vim /etc/kibana/kibana.yml . Uncomment the line `#server.host: localhost` and replace the default address with the inet value that you copied from the ìfconfig` command. For example: + -[source,"shell"] +[source,"yaml"] ---- server.host: 10.128.0.28 ---- @@ -513,12 +515,19 @@ Make a note of the verification code. {kib} is now fully set up and communicating with your {es} cluster! + +[IMPORTANT] +.Configuring security settings +==== +For simplicity, in this tutorial we're setting up all of the {stack} components without configuring security certificates. You can proceed to configure {fleet}, {agent}, and then confirm that your system data appears in {kib}. + +However, in a production environment, before going further to install {fleet-server} and {agent} it's recommended to update your security settings to use trusted CA-signed certificates as described in <>. After new security certificates are configured any {agent}s would need to be reinstalled. If you're currently setting up a production environment, we recommend that you jump directly to Tutorial 2, which includes steps to set up {fleet} and {agent} with security configured. +==== + [discrete] [[install-stack-self-fleet-server]] == Step 7: Install {fleet-server} -IMPORTANT: For simplicity, in this guide we're setting up all of the {stack} components first, before configuring security certificates. However, in a production environment it's recommended to update your security settings as described in <> before installing {fleet-server} and {agent}. After any new security certificates are configured any {agent}s would need to be reinstalled. If you're currently setting up a production environment, you may want to jump directly to Tutorial 2, which includes steps to set up {fleet} and {agent} with security configured. - Now that {kib} is up and running, we'll install {fleet-server}, which will manage the {agent} that we'll set up in a later step. If you need more detail about these steps, refer to {fleet-guide}/add-fleet-server-on-prem.html[Deploy on-premises and self-managed] in the {fleet} and {agent} Guide. . Log in to the host where you'd like to set up {fleet-server}. From e03d9b877ec13554052f43f1bb068b7ae9e3894a Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Mon, 8 Jan 2024 21:53:58 -0500 Subject: [PATCH 17/35] Fleet steps --- .../installing-stack-demo-secure.asciidoc | 231 +++++++++++++++++- .../installing-stack-demo-self.asciidoc | 2 +- 2 files changed, 230 insertions(+), 3 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index 1cd79efd1..b2daee3f9 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -18,6 +18,8 @@ For traffic to be encrypted between {es} cluster nodes and between {kib} and {es * <> * <> * <> +* <> +* <> It should take between one and two hours to complete these steps. @@ -365,7 +367,7 @@ In the event of any problems, you can also monitor the {es} logs for any issues ["source","shell"] ---- sudo tail -f /var/log/elasticsearch/elasticsearch-demo.log ----- +---- + A line in the log file like the following indicates that SSL has been properly configured: + @@ -524,7 +526,7 @@ sudo systemctl status elasticsearch.service [[install-stack-demo-secure-kib-es]] == Step 5: Generate a certificate for {kib} to access {es} -Now that the transport and HTTP layers are configured with encryption using the new certificates, we'll set up certificates for encryption between {kib} and {es}. +Now that the transport and HTTP layers are configured with encryption using the new certificates, we'll set up certificates for encryption between {kib} and {es}. For additional details about any of these steps, refer to {kibana-ref}/elasticsearch-mutual-tls.html[Mutual TLS authentication between {kib} and {es}]. . In Step 3, when you generated a new certificate for the HTTP layer, the process created an archive `elasticsearch-ssl-http.zip`. From the `kibana` directory in the expanded archive, copy the `elasticsearch-ca.pem` private key file to the {kib} host machine. @@ -584,4 +586,229 @@ Congratulations! You've successfully updated the SSL certificates between {es} a [[install-stack-demo-secure-fleet]] == Step 6: Install {fleet} with SSL certificates configured +Now that {kib} is up and running, we'll install {fleet-server}, which will manage the {agent} that we'll set up in a later step. If you need more detail about these steps, refer to {fleet-guide}/add-fleet-server-on-prem.html[Deploy on-premises and self-managed] in the {fleet} and {agent} Guide. You can find detailed steps to generate and configure certificates in {fleet-guide}/secure-connections.html[Configure SSL/TLS for self-managed Fleet Servers]. + +. Log in to the first {es} node and use the certificate utility to generate a certificate bundle for {fleet-server}. In the command, replace `` and `IP address` with the name and IP address of your {fleet-server} host: ++ +["source","shell"] +---- +sudo usr/share/elasticsearch/bin/elasticsearch-certutil cert --name fleet-server --ca-cert /etc/elasticsearch/certs/ca/ca.crt --ca-key /etc/elasticsearch/certs/ca/ca.key --dns --ip --pem +---- ++ +When prompted, specify a unique name for the output file, such as `fleet-cert-bundle.zip`. + +. On your {fleet-server} host, create a directory for the certificate files: ++ +["source","shell"] +---- +sudo mkdir /etc/fleet +---- + +. Copy the generated archive over to your {fleet-server} host and unpack it into `/etc/fleet/`. to find the {fleet-server} certificate and the private key: +** `/etc/fleet/fleet-server.crt` +** `/etc/fleet/fleet-server.key`` + +. From the first {es} node, copy the `ca.crt` file into the `/etc/fleet/` directory on the {fleet-server} host. Just to help identify the file we'll also rename it to `es-ca.crt`: +** `/etc/fleet/es-ca.crt` + +. Update the permissions on the certificate files to ensure that they're readable. From inside the `/etc/fleet` directory, run: ++ +["source","shell"] +---- +sudo chmod 640 *.crt +sudo chmod 640 *.key +---- + +. Now that the certificate files are in place, on the {fleet-server} host create a working directory for the installation package: ++ +["source","shell"] +---- +mkdir elastic-install-files +---- + +. Change into the new directory: ++ +["source","shell"] +---- +cd elastic-install-files +---- + +. In the terminal, run `ifconfig` and copy the value for the host inet IP address (for example, `10.128.0.84`). You'll need this value later. + +. Back to your web browser, open the {kib} menu and go to **Management -> Fleet**. {fleet} opens with a message that you need to add a {fleet-server}. + +. Click **Add Fleet Server**. The **Add a Fleet Server** flyout opens. + +. In the flyout, select the **Advanced** tab. + +. On the **Create a policy for Fleet Server** step, keep the default {fleet-server} policy name and all advanced options at their defaults. Leave the option to collect system logs and metrics selected. Click *Create policy*. The policy takes a minute or so to create. + +. On the **Choose a deployment mode for security** step, select the **Production** option. This enables you to provide your own certificates. + +. On the **Add your Fleet Server host** step: + +.. Specify a name for your {fleet-server} host, for example `Fleet Server`. +.. Specify the host URL and where {agents} will reach {fleet-server}, including the default port `8220`. For example, `https://10.128.0.203:8220`. The URL is the inet value that you copied from the `ifconfig` output. +.. Click **Add host**. + +. On the **Generate a service token** step, generate the token and save the output. The token will also be propagated automatically to the command to install {fleet-server}. + +. On the **Install Fleet Server to a centralized host** step, for this example we'll select the **Linux Tar** tab, but you can select the tab appropriate to the host operating system where you're setting up {fleet-server}. Note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {fleet-server}. + +. Run the first three commands one-by-one in the terminal on y our {fleet-server} host. ++ +These commands will, respectively: + +.. Download the {fleet-server} package from the {artifact-registry}. +.. Unpack the package archive. +.. Change into the directory containing the install binaries. + +. Before running the provided `elastic-agent install` command, you'll need to make a few changes: + +.. Update the paths to the correct file locations: +** The {es} CA file (`es-ca.crt`) +** The {fleet-server} certificate (`fleet-server.crt`) +** The {fleet-server} key (`fleet-server.key`) +.. The `fleet-server-es-ca-trusted-fingerprint` also needs to be updated. On any of your {es} hosts, run the following command to get the correct fingerprint to use: ++ +["source","shell"] +---- +grep -v ^- /etc/elasticsearch/certs/ca/ca.crt | base64 -d | sha256sum +---- ++ +Replace the `fleet-server-es-ca-trusted-fingerprint` setting with the returned value. ++ +Your updated command should be similar to the following: ++ +["source","shell"] +---- +sudo ./elastic-agent install -url=https://10.128.0.208:8220 \ + --fleet-server-es=https://10.128.0.84:9200 \ + --fleet-server-service-token=AAEAAWVsYXN0aWMvZmxlZXQtc2VydmPyL6Rva2VuLTE5OTg4NzAxOTM4NDU6X1I0Q1RrRHZTSWlyNHhkSXQwNEJoQQ \ + --fleet-server-policy=fleet-server-policy \ + --fleet-server-es-ca-trusted-fingerprint=92b51cf91e7fa311f8c84849224d448ca44824eb \ + --certificate-authorities=/etc/fleet/es-ca.crt \ + --fleet-server-cert=/etc/fleet/fleet-server.crt \ + --fleet-server-cert-key=/etc/fleet/fleet-server.key \ + --fleet-server-port=8220 +---- ++ +For details about all of the install command options, refer to {fleet-guide}/elastic-agent-cmd-options.html#elastic-agent-install-command[`elastic-agent install`] in the {agent} command reference. + +. After you've made the required updates, run the `elastic-agent install` command to install {fleet-server}. ++ +When prompted, confirm that {agent} should run as a service. If everything goes well, the install will complete successfully: ++ +["source","shell"] +---- +Elastic Agent has been successfully installed. +---- ++ +NOTE: Wondering why the command refers to {agent} rather than {fleet-server}? {fleet-server} is actually a subprocess that runs inside {agent} with a special {fleet-server} policy. Refer to {fleet-guide}/fleet-server.html[What is {fleet-server}] to learn more. + +. Return to the {kib} **Add a Fleet Server** flyout and wait for confirmation that {fleet-server} has connected. + +. Once the connection is confirmed, ignore the *Continue enrolling Elastic Agent* option and close the flyout. + +{fleet-server} is now fully set up! + + + + +// ########################## +// The following agent steps are copied from tutorial 1 and need to be updated to include the security config. +// ########################## + +[discrete] +[[install-stack-demo-secure-agent]] +== Step 7: Install {agent} + +Next, we'll install {agent} on another host and use the System integration to monitor system logs and metrics. + +. Log in to the host where you'd like to set up {agent}. + +. Create a working directory for the installation package: ++ +["source","shell"] +---- +mkdir elastic-install-files +---- + +. Change into the new directory: ++ +["source","shell"] +---- +cd elastic-install-files +---- + +. Open {kib} and go to **Management -> Fleet**. + +. On the **Agents** tab, you should see your new {fleet-server} policy running with a healthy status. + +. Open the **Settings** tab. + +. Notice that a {Fleet-server} host URL is configured. Before adding an {agent}, the host setting needs to be updated. By default, the host URL port is set to `443` which is used in an {ecloud} environment. When {fleet-server} is installed on-premises, the port needs to be updated to `8220`. Refer to {fleet-guide}/add-fleet-server-on-prem.html#default-port-assignments-on-prem[Default port assignments] in the on-premise {fleet-server} install documentation for a list of port assignments. ++ +.. Under *Actions*, click the edit icon and update the {fleet-server} host URL to use port 8220. For example: `https://10.128.0.203:8220`. +.. Select **Save and apply settings**. It takes a minute or so for the configuration change to complete. + +. Reopen the **Agents** tab and select **Add agent**. The **Add agent** flyout opens. + +. In the flyout, choose a policy name, for example `Demo Agent Policy`. + +. Leave **Collect system logs and metrics** enabled. This will add the link:https://docs.elastic.co/integrations/system[System integration] to the {agent} policy. + +. Click **Create policy**. + +. For the **Enroll in Fleet?** step, leave **Enroll in Fleet** selected. + +. On the **Install Elastic Agent on your host** step, for this example we'll select the **Linux Tar** tab, but you can select the tab appropriate to the host operating system where you're setting up {fleet-server}. As with {fleet-server}, note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {agent}. + +. Copy the generated commands. + +. In the `sudo ./elastic-agent install` command, make two changes: +.. For the `--url` parameter, change the port number from the default `443` to `8220` (used for on-premise {fleet-server}). +.. Append an `--insecure` flag at the end. We'll configure secure communications in a later step. ++ +The result should be similar to the following example: ++ +["source","shell"] +---- +sudo ./elastic-agent install --url=https://10.128.0.203:8220 --enrollment-token=VWCobFhKd0JuUnppVYQxX0VKV5E6UmU3BGk0ck9RM2HzbWEmcS4Bc1YUUM== +---- + +. Run the commands one-by-one in the terminal on your {agent} host. The commands will, respectively: + +.. Download the {agent} package from the {artifact-registry}. +.. Unpack the package archive. +.. Change into the directory containing the install binaries. +.. Install {agent}. + +. At the prompt, enter `Y` to install {agent} and run it as a service. Wait for the installation to complete. + +. In the {kib} **Add agent** flyout, wait for confirmation that {agent} has connected. + +. Close the flyout. + +Your new {agent} is now installed an enrolled with {fleet-server}. + +[discrete] +[[install-stack-demo-secure-view-data]] +== Step 8: View your system data + +Now that all of the components have been installed, it's time to confirm that data is flowing as expected. + +View your system log data: + +. Open the {kib} menu and go to **Analytics -> Dashboard**. +. In the query field, search for `Logs System`. +. Select the `[Logs System] Syslog dashboard` link. The {kib} Dashboard opens with visualizations of Syslog events, hostnames and processes, and more. + +View your system metrics data: + +. Open the {kib} menu and return to **Analytics -> Dashboard**. +. In the query field, search for `Metrics System`. +. Select the `[Metrics System] Host overview` link. The {kib} Dashboard opens with visualizations of host metrics including CPU usage, memory usage, running processes, and others. ++ +image::images/install-stack-metrics-dashboard.png["The System metrics host overview showing CPU usage, memory usage, and other visualizations"] diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index 9a009f706..300459c3e 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -554,7 +554,7 @@ cd elastic-install-files . In the flyout, select the **Quick Start** tab. -. Give your {fleet-server} instance a name. +. Specify a name for your {fleet-server} host, for example `Fleet Server`. . Specify the host URL where {agents} will reach {fleet-server}, for example: `https://10.128.0.203`. This is the inet value that you copied from the `ifconfig` output. You don't need to privide a port number. From 8f85dd88f1535b6c27522685ebf4e3d52db8a2cc Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Tue, 9 Jan 2024 13:05:08 -0500 Subject: [PATCH 18/35] Finish Fleet & Agent steps --- .../installing-stack-demo-secure.asciidoc | 121 ++++++++++++------ .../installing-stack-demo-self.asciidoc | 2 +- 2 files changed, 83 insertions(+), 40 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index b2daee3f9..f0925a3bb 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -544,7 +544,7 @@ mv elasticsearch-ca.pem /etc/kibana sudo systemctl stop kibana.service ---- -. Update the `kibana.yml` settings file to reflect the location of the `elasticsearch-ca.pem`: +. Update the `/etc/kibana/kibana.yml` settings file to reflect the location of the `elasticsearch-ca.pem`: + ["source","sh",subs="attributes"] ---- @@ -608,7 +608,7 @@ sudo mkdir /etc/fleet ** `/etc/fleet/fleet-server.crt` ** `/etc/fleet/fleet-server.key`` -. From the first {es} node, copy the `ca.crt` file into the `/etc/fleet/` directory on the {fleet-server} host. Just to help identify the file we'll also rename it to `es-ca.crt`: +. From the first {es} node, copy the `ca.crt` file, and paste it into the `/etc/fleet/` directory on the {fleet-server} host. Just to help identify the file we'll also rename it to `es-ca.crt`: ** `/etc/fleet/es-ca.crt` . Update the permissions on the certificate files to ensure that they're readable. From inside the `/etc/fleet` directory, run: @@ -648,14 +648,15 @@ cd elastic-install-files . On the **Add your Fleet Server host** step: .. Specify a name for your {fleet-server} host, for example `Fleet Server`. -.. Specify the host URL and where {agents} will reach {fleet-server}, including the default port `8220`. For example, `https://10.128.0.203:8220`. The URL is the inet value that you copied from the `ifconfig` output. +.. Specify the host URL and where {agents} will reach {fleet-server}, including the default port `8220`. For example, `https://10.128.0.203:8220`. The URL is the inet value that you copied from the `ifconfig` output. For details about default port assignments, refer to {fleet-guide}/add-fleet-server-on-prem.html#default-port-assignments-on-prem[Default port assignments] in the on-premise {fleet-server} install documentation. + .. Click **Add host**. . On the **Generate a service token** step, generate the token and save the output. The token will also be propagated automatically to the command to install {fleet-server}. . On the **Install Fleet Server to a centralized host** step, for this example we'll select the **Linux Tar** tab, but you can select the tab appropriate to the host operating system where you're setting up {fleet-server}. Note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {fleet-server}. -. Run the first three commands one-by-one in the terminal on y our {fleet-server} host. +. Run the first three commands one-by-one in the terminal on your {fleet-server} host. + These commands will, respectively: @@ -677,9 +678,9 @@ These commands will, respectively: grep -v ^- /etc/elasticsearch/certs/ca/ca.crt | base64 -d | sha256sum ---- + -Replace the `fleet-server-es-ca-trusted-fingerprint` setting with the returned value. +Save the fingerprint value. You'll need it in a later step. + -Your updated command should be similar to the following: +Replace the `fleet-server-es-ca-trusted-fingerprint` setting with the returned value. Your updated command should be similar to the following: + ["source","shell"] ---- @@ -702,7 +703,7 @@ When prompted, confirm that {agent} should run as a service. If everything goes + ["source","shell"] ---- -Elastic Agent has been successfully installed. +{agent} has been successfully installed. ---- + NOTE: Wondering why the command refers to {agent} rather than {fleet-server}? {fleet-server} is actually a subprocess that runs inside {agent} with a special {fleet-server} policy. Refer to {fleet-guide}/fleet-server.html[What is {fleet-server}] to learn more. @@ -710,24 +711,61 @@ NOTE: Wondering why the command refers to {agent} rather than {fleet-server}? {f . Return to the {kib} **Add a Fleet Server** flyout and wait for confirmation that {fleet-server} has connected. . Once the connection is confirmed, ignore the *Continue enrolling Elastic Agent* option and close the flyout. - ++ {fleet-server} is now fully set up! +. Before proceeding to install {agent}, there's one last step to update the `kibana.yml` settings file with the {es} CA fingerprint: - - -// ########################## -// The following agent steps are copied from tutorial 1 and need to be updated to include the security config. -// ########################## +.. On your {kib} host, stop the {kib} service: ++ +["source","shell"] +---- +sudo systemctl stop kibana.service +---- +.. Open `/etc/kibana/kibana.yml` for editing. +.. Find the `xpack.fleet.outputs` setting. +.. Update `ca_trusted_fingerprint` to the value you captured earlier by running the `grep` command on the {es} `ca.crt` file. The entry in `kibana.yml` should be like the following: ++ +["source","yaml"] +---- +xpack.fleet.outputs: [{id: fleet-default-output, name: default, is_default: true, is_default_monitoring: true, type: elasticsearch, hosts: [`https://10.128.0.84:9200`], ca_trusted_fingerprint: 92b51cf91e7fa311f8c84849224d448ca44824eb}] +---- +.. Save your changes. +.. Restart {kib}: ++ +["source","shell"] +---- +sudo systemctl start kibana.service +---- ++ +{kib} is now configured with the correct fingerprint for {agent} to access {es}. You're now ready to set up {agent}! [discrete] [[install-stack-demo-secure-agent]] == Step 7: Install {agent} -Next, we'll install {agent} on another host and use the System integration to monitor system logs and metrics. +Next, we'll install {agent} on another host and use the System integration to monitor system logs and metrics. You can find additional details about these steps in {fleet-guide}/secure-connections.html[Configure SSL/TLS for self-managed Fleet Servers]. . Log in to the host where you'd like to set up {agent}. +. Create a directory for the {es} certificate file: ++ +["source","shell"] +---- +sudo mkdir /etc/fleet +---- +. From the first {es} node, copy the `ca.crt` file, and paste it into the `/etc/agent/` directory on the {fleet-server} host. Just to help identify the file we'll also rename it to `es-ca.crt`: +** `/etc/fleet/es-ca.crt` + +//// +. Update the permissions on the certificate file to ensure that it's readable. From inside the `/etc/agent` directory, run: ++ +["source","shell"] +---- +sudo chmod 640 es-ca.crt +---- +//// + . Create a working directory for the installation package: + ["source","shell"] @@ -746,16 +784,9 @@ cd elastic-install-files . On the **Agents** tab, you should see your new {fleet-server} policy running with a healthy status. -. Open the **Settings** tab. - -. Notice that a {Fleet-server} host URL is configured. Before adding an {agent}, the host setting needs to be updated. By default, the host URL port is set to `443` which is used in an {ecloud} environment. When {fleet-server} is installed on-premises, the port needs to be updated to `8220`. Refer to {fleet-guide}/add-fleet-server-on-prem.html#default-port-assignments-on-prem[Default port assignments] in the on-premise {fleet-server} install documentation for a list of port assignments. -+ -.. Under *Actions*, click the edit icon and update the {fleet-server} host URL to use port 8220. For example: `https://10.128.0.203:8220`. -.. Select **Save and apply settings**. It takes a minute or so for the configuration change to complete. +. Click **Add agent**. The **Add agent** flyout opens. -. Reopen the **Agents** tab and select **Add agent**. The **Add agent** flyout opens. - -. In the flyout, choose a policy name, for example `Demo Agent Policy`. +. In the flyout, choose an agent policy name, for example `Demo Agent Policy`. . Leave **Collect system logs and metrics** enabled. This will add the link:https://docs.elastic.co/integrations/system[System integration] to the {agent} policy. @@ -765,31 +796,43 @@ cd elastic-install-files . On the **Install Elastic Agent on your host** step, for this example we'll select the **Linux Tar** tab, but you can select the tab appropriate to the host operating system where you're setting up {fleet-server}. As with {fleet-server}, note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {agent}. -. Copy the generated commands. +. Run the first three commands one-by-one in the terminal on your {agent} host. ++ +These commands will, respectively: + +.. Download the {agent} package from the {artifact-registry}. +.. Unpack the package archive. +.. Change into the directory containing the install binaries. + +. Before running the provided `elastic-agent install` command, you'll need to make a few changes: -. In the `sudo ./elastic-agent install` command, make two changes: -.. For the `--url` parameter, change the port number from the default `443` to `8220` (used for on-premise {fleet-server}). -.. Append an `--insecure` flag at the end. We'll configure secure communications in a later step. +.. For the `--url` parameter, confirm that the port number is `8220` (this is the default port for on-premise {fleet-server}). + -The result should be similar to the following example: +.. Add a `--certificate-authorities` parameter with the full path of your CA certificate file. For example, `--certificate-authorities=/etc/agent/es-ca.crt`. ++ +The result should be similar to the following: + ["source","shell"] ---- -sudo ./elastic-agent install --url=https://10.128.0.203:8220 --enrollment-token=VWCobFhKd0JuUnppVYQxX0VKV5E6UmU3BGk0ck9RM2HzbWEmcS4Bc1YUUM== +sudo ./elastic-agent install \ +--url=https://10.128.0.203:8220 \ --enrollment-token=VWCobFhKd0JuUnppVYQxX0VKV5E6UmU3BGk0ck9RM2HzbWEmcS4Bc1YUUM== +--certificate-authorities=/etc/agent/es-ca.crt ---- -. Run the commands one-by-one in the terminal on your {agent} host. The commands will, respectively: - -.. Download the {agent} package from the {artifact-registry}. -.. Unpack the package archive. -.. Change into the directory containing the install binaries. -.. Install {agent}. - -. At the prompt, enter `Y` to install {agent} and run it as a service. Wait for the installation to complete. +. Run the `elastic-agent install` command. ++ +At the prompt, enter `Y` to install {agent} and run it as a service. Wait for the installation to complete. If everything goes well, the install will complete successfully: ++ +["source","shell"] +---- +{agent} has been successfully installed. +---- . In the {kib} **Add agent** flyout, wait for confirmation that {agent} has connected. -. Close the flyout. +. Wait for the **Confirm incoming data** step to complete. This may take a couple of minutes. + +. Once data is confirmed to be flowing, close the flyout. Your new {agent} is now installed an enrolled with {fleet-server}. @@ -797,7 +840,7 @@ Your new {agent} is now installed an enrolled with {fleet-server}. [[install-stack-demo-secure-view-data]] == Step 8: View your system data -Now that all of the components have been installed, it's time to confirm that data is flowing as expected. +Now that all of the components have been installed, it's time to view your system data. View your system log data: diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index 300459c3e..25fad5413 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -658,7 +658,7 @@ Your new {agent} is now installed an enrolled with {fleet-server}. [[install-stack-self-view-data]] == Step 9: View your system data -Now that all of the components have been installed, it's time to confirm that data is flowing as expected. +Now that all of the components have been installed, it's time to view your system data. View your system log data: From 73f68ae984ad08ecf30766d4d2dd493fdbfdfdd3 Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Tue, 9 Jan 2024 16:56:35 -0500 Subject: [PATCH 19/35] Fix intro --- .../installing-stack-demo-secure.asciidoc | 12 ++++++------ .../installing-stack-demo-self.asciidoc | 2 ++ 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index f0925a3bb..3c4707fc6 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -4,13 +4,11 @@ [[install-stack-demo-secure]] === Tutorial 2: Securing a self-managed {stack} -This tutorial is a follow-on to <>. These steps guide you through the process of configuring secure communications throughout your on-premise {stack} install. +Beginning with Elastic 8.0, security is enabled in the {stack} by default, meaning that traffic between {es} nodes and between {kib} and {es} is SSL-encrypted. While this is suitable for testing non-production viability of the Elastic platform, most production networks have requirements for the use of trusted CA-signed certificates. These steps demonstrate how to update the out-of-the-box self-signed certificates with your own trusted CA-signed certificates. -Beginning with Elastic 8.0, security is enabled in the {stack} by default, meaning that traffic between {es} nodes and between {kib} and {es} is SSL-encrypted. -While this is suitable for testing non-production viability of the Elastic platform, most production networks have requirements for the use of trusted CA-signed certificates. -These steps demonstrate how to update the out-of-the-box self-signed certificates with your own trusted CA-signed certificates. +This tutorial is a follow-on to <>. In the first tutorial, you would have configured a multi-node {es} cluster and then set up {kib}. In a production-ready environment, it's recommended, after completing the {kib} setup, to proceed with configuring your SSL certificates. These steps guide you through that process, and then describe how to configure {fleet-server} and {agent}. Finally, you'll use {kib} to view the system data gathered from the host on which {agent} is running. -For traffic to be encrypted between {es} cluster nodes and between {kib} and {es}, SSL certificates must be created for the transport ({es} inter-node communication) and HTTP (for the {es} REST API) layers. This general process is as follows: +For traffic to be encrypted between {es} cluster nodes and between {kib} and {es}, SSL certificates must be created for the transport ({es} inter-node communication) and HTTP (for the {es} REST API) layers. Similarly, when setting up {fleet-server} you'll generate and configure a new certificate bundle, and then {elastic-agent} uses the generated certificates to communicate with both {fleet-server} and {es}. The process to set things up is as follows: * <> * <> @@ -852,6 +850,8 @@ View your system metrics data: . Open the {kib} menu and return to **Analytics -> Dashboard**. . In the query field, search for `Metrics System`. -. Select the `[Metrics System] Host overview` link. The {kib} Dashboard opens with visualizations of host metrics including CPU usage, memory usage, running processes, and others. +. Select the `[Metrics System] Host overview` link. The {kib} Dashboard opens with visualizations of host metrics including CPU usage, memory usage, running processes, and more. + image::images/install-stack-metrics-dashboard.png["The System metrics host overview showing CPU usage, memory usage, and other visualizations"] + +Congratulations! You've successfully configured security for {es}, {kib}, {fleet}, and {agent} using your own trusted CA-signed certificates. \ No newline at end of file diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index 25fad5413..7cc0a162b 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -674,6 +674,8 @@ View your system metrics data: + image::images/install-stack-metrics-dashboard.png["The System metrics host overview showing CPU usage, memory usage, and other visualizations"] +Congratulations! You've successfully set up a three node {es} cluster, with {kib}, {fleet-server}, and {agent}. + [discrete] [[install-stack-self-next-steps]] == Next steps From 2561bfef357c4ce4538368c03b140b0f5d1eeaa0 Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Wed, 10 Jan 2024 15:58:05 -0500 Subject: [PATCH 20/35] Cleanup --- .../installing-stack-demo-secure.asciidoc | 121 +++++++++++------- .../installing-stack-demo-self.asciidoc | 115 ++++++++++------- 2 files changed, 145 insertions(+), 91 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index 3c4707fc6..26d2bdaf8 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -1,15 +1,18 @@ // for testing: -:version: 8.11.1 +:version: 8.11. [[install-stack-demo-secure]] === Tutorial 2: Securing a self-managed {stack} -Beginning with Elastic 8.0, security is enabled in the {stack} by default, meaning that traffic between {es} nodes and between {kib} and {es} is SSL-encrypted. While this is suitable for testing non-production viability of the Elastic platform, most production networks have requirements for the use of trusted CA-signed certificates. These steps demonstrate how to update the out-of-the-box self-signed certificates with your own trusted CA-signed certificates. +This tutorial is a follow-on to <>. The first tutorial describes how to configure a multi-node {es} cluster and then set up {kib}, followed by {fleet-server} and {agent}. In a production environment, it's recommended after completing the {kib} setup to proceed directly to this tutorial to configure your SSL certificates. These steps guide you through that process, and then describe how to configure {fleet-server} and {agent} with the certificates in place. + +**Securing the {stack}** -This tutorial is a follow-on to <>. In the first tutorial, you would have configured a multi-node {es} cluster and then set up {kib}. In a production-ready environment, it's recommended, after completing the {kib} setup, to proceed with configuring your SSL certificates. These steps guide you through that process, and then describe how to configure {fleet-server} and {agent}. Finally, you'll use {kib} to view the system data gathered from the host on which {agent} is running. +Beginning with Elastic 8.0, security is enabled in the {stack} by default, meaning that traffic between {es} nodes and between {kib} and {es} is SSL-encrypted. While this is suitable for testing non-production viability of the Elastic platform, most production networks have requirements for the use of trusted CA-signed certificates. These steps demonstrate how to update the out-of-the-box self-signed certificates with your own trusted CA-signed certificates. For traffic to be encrypted between {es} cluster nodes and between {kib} and {es}, SSL certificates must be created for the transport ({es} inter-node communication) and HTTP (for the {es} REST API) layers. Similarly, when setting up {fleet-server} you'll generate and configure a new certificate bundle, and then {elastic-agent} uses the generated certificates to communicate with both {fleet-server} and {es}. The process to set things up is as follows: +* <> * <> * <> * <> @@ -21,6 +24,16 @@ For traffic to be encrypted between {es} cluster nodes and between {kib} and {es It should take between one and two hours to complete these steps. +[discrete] +[[install-stack-demo-secure-prereqs]] +== Prerequisites and assumptions + +Before starting, you'll need to have set up an on-premises {es} cluster with {kib}, following the steps in <>. + +The examples in this guide use RPM packages to install the {stack} components on hosts running Red Hat Enterprise Linux 8. The steps for other install methods and operating systems are similar, and can be found in the documentation linked from each section. + +Special considerations such as firewalls and proxy servers are not covered here. + [discrete] [[install-stack-demo-secure-ca]] == Step 1: Generate a new self-signed CA certificate @@ -34,7 +47,7 @@ In a production environment you would typically use the CA certificate from your sudo systemctl stop elasticsearch.service ---- -. Still on the first node, generate a CA certificate using the provided certificate utility, `elasticsearch-certutil`. Note that the location of the utility depends on the installation method you used to install {es}. Refer to {ref}/certutil.html[elasticsearch-certutil] for the command details and to {ref}/update-node-certs-different.html[Update security certificates with a different CA] for details about the procedure as a whole. +. Generate a CA certificate using the provided certificate utility, `elasticsearch-certutil`. Note that the location of the utility depends on the installation method you used to install {es}. Refer to {ref}/certutil.html[elasticsearch-certutil] for the command details and to {ref}/update-node-certs-different.html[Update security certificates with a different CA] for details about the procedure as a whole. + Run the following command. When prompted, specify a unique name for the output file, such as `elastic-stack-ca-new.zip`: + @@ -69,7 +82,7 @@ sudo ls ca/ `ca.key`:: The certificate authority's private key + -NOTE: These steps to generate new self-signed CA certificates need to be done only on the first {es} node. The other {es} nodes will use the same `ca.crt` and `ca.key` files. +These steps to generate new self-signed CA certificates need to be done only on the first {es} node. The other {es} nodes will use the same `ca.crt` and `ca.key` files. . From the `/ca` directory, import the newly created CA certificate into the {es} truststore. This step ensures that your cluster trusts the new CA certificate. + @@ -129,8 +142,6 @@ If you're running these steps on a production cluster that already contains data * In a cluster with multiple {es} nodes, before proceeding you first need to perform a {ref}/restart-cluster.html#restart-cluster-rolling[Rolling restart] beginning with the node where you're updating the keystore. Stop at the `Perform any needed changes` step, and then proceed to the next step in this guide. * In a single node cluster, always stop {es} before proceeding. - -If this is the initial installation of this cluster, you can safely proceed to the next step. ==== + @@ -169,7 +180,13 @@ xpack.security.transport.ssl.keystore.secure_password xpack.security.transport.ssl.truststore.secure_password ---- + -Notice that there are entries for the `transport.ssl.truststore` that holds the CA certificate, the `transport.ssl.keystore` that holds the CA-signed certificates, and the `http.ssl.keystore` for the HTTP layer. These entries were created at installation and need to be replaced with the passwords to the newly-created truststore and keystores. +Notice that there are entries for: ++ +* The `transport.ssl.truststore` that holds the CA certificate +* The `transport.ssl.keystore` that holds the CA-signed certificates +* The `http.ssl.keystore` for the HTTP layer ++ +These entries were created at installation and need to be replaced with the passwords to the newly-created truststore and keystores. . Remove the existing keystore values for the default transport keystore and truststore: + @@ -209,8 +226,13 @@ Respond to the command prompts as follows: * Provide the absolute path to your newly created CA certificate: `/etc/elasticsearch/certs/ca/ca.crt`. * Provide the absolute path to your newly created CA key: `/etc/elasticsearch/certs/ca/ca.key`. * Enter an expiration value for your certificate. You can enter the validity period in years, months, or days. For example, enter `1y` for one year. -* When asked if you want to generate one certificate per node, enter `y`. You'll be guided through the creation of certificates for each node. Each certificate will have its own private key, and will be issued for a specific hostname or IP address. -.. On separate lines, enter the hostname for your first {es} node, for example `mynode-es1`, and the IP address that clients can use to connect to your node. Note that this is the same value that's described in Step 2 of <>, for example `10.128.0.84`: +* When asked if you want to generate one certificate per node, enter `y`. ++ +You'll be guided through the creation of certificates for each node. Each certificate will have its own private key, and will be issued for a specific hostname or IP address. + +.. On separate lines, enter the hostname for your first {es} node, for example `mynode-es1`, and the IP address that clients can use to connect to your node. ++ +Note that this is the same value that's described in Step 2 of <>, for example `10.128.0.84`: + ["source","shell"] ---- @@ -229,7 +251,7 @@ mynode-es1 .. Provide a password for the generated `http.p12` keystore file. .. The generated files will be included in a zip archive. At the prompt, provide a path and filename for where the archive should be created. + -For this example we'll use: `/etc/elasticsearch/certs/elasticsearch-ssl-http.zip`: +For this example we use: `/etc/elasticsearch/certs/elasticsearch-ssl-http.zip`: + ["source","shell"] ---- @@ -252,7 +274,9 @@ mv http.p12 http-old.p12 unzip elasticsearch-ssl-http.zip ---- -. When the archive is unpacked, the certificate files are located in separate directories for each {es} node and for the {kib} node. You can run a recursive `ls` command to view the file structure: +. When the archive is unpacked, the certificate files are located in separate directories for each {es} node and for the {kib} node. ++ +You can run a recursive `ls` command to view the file structure: + ["source","shell"] ---- @@ -291,7 +315,9 @@ total 12 -rw-r--r--. 1 root root 1052 Dec 12 19:04 sample-kibana.yml ---- -. In the directory where you unzipped the archive, replace your existing keystore with the new keystore. The location of your certificate directory may be different than what is shown here, depending on the installation method you chose. Run the `mv` command, replacing `` with the hostname of your initial {es} node: +. In the directory where you unzipped the archive, replace your existing keystore with the new keystore. The location of your certificate directory may be different than what is shown here, depending on the installation method you chose. ++ +Run the `mv` command, replacing `` with the hostname of your initial {es} node: + ["source","shell"] ---- @@ -338,7 +364,7 @@ chown root:elasticsearch * chmod 640 * ---- -.. Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/ca` directories to be executable by the owner: +.. Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/certs/ca` directories to be executable by the owner: + ["source","shell"] ---- @@ -391,7 +417,7 @@ mv http.p12 http-old.p12 * Copy the `/ca` directory (that contains `ca.crt` and `ca.key`) from `/etc/elasticsearch/certs/` on the first {es} node to the same path on all other {es} nodes. -* Copy the `elastic-stack-ca.p12` file from `/etc/elasticsearch/certs/` to the /etc/elasticsearch/certs/ directory on all other {es} nodes. +* Copy the `elastic-stack-ca.p12` file from `/etc/elasticsearch/certs/` to the `/etc/elasticsearch/certs/` directory on all other {es} nodes. * Copy the `http.p12` file from each node directory in `/etc/elasticsearch/certs/elasticsearch/` (that is, `elasticsearch/mynode-es1`, `elasticsearch/mynode-es2` and `elasticsearch/mynode-es3`) to the `/etc/elasticsearch/certs/` directory on each corresponding cluster node. @@ -498,7 +524,7 @@ chown root:elasticsearch * chmod 640 * ---- -.. Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/ca` directories to be executable by the owner: +.. Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/certs/ca` directories to be executable by the owner: + ["source","shell"] ---- @@ -526,7 +552,9 @@ sudo systemctl status elasticsearch.service Now that the transport and HTTP layers are configured with encryption using the new certificates, we'll set up certificates for encryption between {kib} and {es}. For additional details about any of these steps, refer to {kibana-ref}/elasticsearch-mutual-tls.html[Mutual TLS authentication between {kib} and {es}]. -. In Step 3, when you generated a new certificate for the HTTP layer, the process created an archive `elasticsearch-ssl-http.zip`. From the `kibana` directory in the expanded archive, copy the `elasticsearch-ca.pem` private key file to the {kib} host machine. +. In Step 3, when you generated a new certificate for the HTTP layer, the process created an archive `elasticsearch-ssl-http.zip`. ++ +From the `kibana` directory in the expanded archive, copy the `elasticsearch-ca.pem` private key file to the {kib} host machine. . On the {kib} host machine, copy `elasticsearch-ca.pem` to the {kib} configuration directory (depending on the installation method that you used, the location of the configuration directory may be different from what's shown): + @@ -584,7 +612,9 @@ Congratulations! You've successfully updated the SSL certificates between {es} a [[install-stack-demo-secure-fleet]] == Step 6: Install {fleet} with SSL certificates configured -Now that {kib} is up and running, we'll install {fleet-server}, which will manage the {agent} that we'll set up in a later step. If you need more detail about these steps, refer to {fleet-guide}/add-fleet-server-on-prem.html[Deploy on-premises and self-managed] in the {fleet} and {agent} Guide. You can find detailed steps to generate and configure certificates in {fleet-guide}/secure-connections.html[Configure SSL/TLS for self-managed Fleet Servers]. +Now that {kib} is up and running, you can proceed to install {fleet-server}, which will manage the {agent} that we'll set up in a later step. + +If you'd like to learn more about these steps, refer to {fleet-guide}/add-fleet-server-on-prem.html[Deploy on-premises and self-managed] in the {fleet} and {agent} Guide. You can find detailed steps to generate and configure certificates in {fleet-guide}/secure-connections.html[Configure SSL/TLS for self-managed Fleet Servers]. . Log in to the first {es} node and use the certificate utility to generate a certificate bundle for {fleet-server}. In the command, replace `` and `IP address` with the name and IP address of your {fleet-server} host: + @@ -602,7 +632,7 @@ When prompted, specify a unique name for the output file, such as `fleet-cert-bu sudo mkdir /etc/fleet ---- -. Copy the generated archive over to your {fleet-server} host and unpack it into `/etc/fleet/`. to find the {fleet-server} certificate and the private key: +. Copy the generated archive over to your {fleet-server} host and unpack it into `/etc/fleet/`: ** `/etc/fleet/fleet-server.crt` ** `/etc/fleet/fleet-server.key`` @@ -631,28 +661,36 @@ mkdir elastic-install-files cd elastic-install-files ---- -. In the terminal, run `ifconfig` and copy the value for the host inet IP address (for example, `10.128.0.84`). You'll need this value later. +. In the terminal, run the `ifconfig` command and copy the value for the host inet IP address (for example, `10.128.0.84`). You'll need this value later. -. Back to your web browser, open the {kib} menu and go to **Management -> Fleet**. {fleet} opens with a message that you need to add a {fleet-server}. +. Back in your web browser, open the {kib} menu and go to **Management -> Fleet**. {fleet} opens with a message that you need to add a {fleet-server}. . Click **Add Fleet Server**. The **Add a Fleet Server** flyout opens. . In the flyout, select the **Advanced** tab. -. On the **Create a policy for Fleet Server** step, keep the default {fleet-server} policy name and all advanced options at their defaults. Leave the option to collect system logs and metrics selected. Click *Create policy*. The policy takes a minute or so to create. +. On the **Create a policy for Fleet Server** step, keep the default {fleet-server} policy name and all advanced options at their defaults. ++ +Leave the option to collect system logs and metrics selected. Click *Create policy*. The policy takes a minute or so to create. . On the **Choose a deployment mode for security** step, select the **Production** option. This enables you to provide your own certificates. . On the **Add your Fleet Server host** step: .. Specify a name for your {fleet-server} host, for example `Fleet Server`. -.. Specify the host URL and where {agents} will reach {fleet-server}, including the default port `8220`. For example, `https://10.128.0.203:8220`. The URL is the inet value that you copied from the `ifconfig` output. For details about default port assignments, refer to {fleet-guide}/add-fleet-server-on-prem.html#default-port-assignments-on-prem[Default port assignments] in the on-premise {fleet-server} install documentation. +.. Specify the host URL and where {agents} will reach {fleet-server}, including the default port `8220`. For example, `https://10.128.0.203:8220`. ++ +The URL is the inet value that you copied from the `ifconfig` output. ++ +For details about default port assignments, refer to {fleet-guide}/add-fleet-server-on-prem.html#default-port-assignments-on-prem[Default port assignments] in the on-premises {fleet-server} install documentation. .. Click **Add host**. . On the **Generate a service token** step, generate the token and save the output. The token will also be propagated automatically to the command to install {fleet-server}. -. On the **Install Fleet Server to a centralized host** step, for this example we'll select the **Linux Tar** tab, but you can select the tab appropriate to the host operating system where you're setting up {fleet-server}. Note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {fleet-server}. +. On the **Install Fleet Server to a centralized host** step, for this example we select the **Linux Tar** tab, but you can instead select the tab appropriate to the host operating system where you're setting up {fleet-server}. ++ +Note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {fleet-server}. . Run the first three commands one-by-one in the terminal on your {fleet-server} host. + @@ -701,18 +739,18 @@ When prompted, confirm that {agent} should run as a service. If everything goes + ["source","shell"] ---- -{agent} has been successfully installed. +Elastic Agent has been successfully installed. ---- + -NOTE: Wondering why the command refers to {agent} rather than {fleet-server}? {fleet-server} is actually a subprocess that runs inside {agent} with a special {fleet-server} policy. Refer to {fleet-guide}/fleet-server.html[What is {fleet-server}] to learn more. +TIP: Wondering why the command refers to {agent} rather than {fleet-server}? {fleet-server} is actually a subprocess that runs inside {agent} with a special {fleet-server} policy. Refer to {fleet-guide}/fleet-server.html[What is {fleet-server}] to learn more. . Return to the {kib} **Add a Fleet Server** flyout and wait for confirmation that {fleet-server} has connected. . Once the connection is confirmed, ignore the *Continue enrolling Elastic Agent* option and close the flyout. -+ + {fleet-server} is now fully set up! -. Before proceeding to install {agent}, there's one last step to update the `kibana.yml` settings file with the {es} CA fingerprint: +Before proceeding to install {agent}, there are a few steps needed to update the `kibana.yml` settings file with the {es} CA fingerprint: .. On your {kib} host, stop the {kib} service: + @@ -722,7 +760,9 @@ sudo systemctl stop kibana.service ---- .. Open `/etc/kibana/kibana.yml` for editing. .. Find the `xpack.fleet.outputs` setting. -.. Update `ca_trusted_fingerprint` to the value you captured earlier by running the `grep` command on the {es} `ca.crt` file. The entry in `kibana.yml` should be like the following: +.. Update `ca_trusted_fingerprint` to the value you captured earlier, when you ran the `grep` command on the {es} `ca.crt` file. ++ +The updated entry in `kibana.yml` should be like the following: + ["source","yaml"] ---- @@ -755,15 +795,6 @@ sudo mkdir /etc/fleet . From the first {es} node, copy the `ca.crt` file, and paste it into the `/etc/agent/` directory on the {fleet-server} host. Just to help identify the file we'll also rename it to `es-ca.crt`: ** `/etc/fleet/es-ca.crt` -//// -. Update the permissions on the certificate file to ensure that it's readable. From inside the `/etc/agent` directory, run: -+ -["source","shell"] ----- -sudo chmod 640 es-ca.crt ----- -//// - . Create a working directory for the installation package: + ["source","shell"] @@ -792,7 +823,9 @@ cd elastic-install-files . For the **Enroll in Fleet?** step, leave **Enroll in Fleet** selected. -. On the **Install Elastic Agent on your host** step, for this example we'll select the **Linux Tar** tab, but you can select the tab appropriate to the host operating system where you're setting up {fleet-server}. As with {fleet-server}, note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {agent}. +. On the **Install Elastic Agent on your host** step, for this example we select the **Linux Tar** tab, but you can instead select the tab appropriate to the host operating system where you're setting up {fleet-server}. ++ +As with {fleet-server}, note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {agent}. . Run the first three commands one-by-one in the terminal on your {agent} host. + @@ -804,11 +837,11 @@ These commands will, respectively: . Before running the provided `elastic-agent install` command, you'll need to make a few changes: -.. For the `--url` parameter, confirm that the port number is `8220` (this is the default port for on-premise {fleet-server}). +.. For the `--url` parameter, confirm that the port number is `8220` (this is the default port for on-premises {fleet-server}). + .. Add a `--certificate-authorities` parameter with the full path of your CA certificate file. For example, `--certificate-authorities=/etc/agent/es-ca.crt`. + -The result should be similar to the following: +The result should be like the following: + ["source","shell"] ---- @@ -819,11 +852,13 @@ sudo ./elastic-agent install \ . Run the `elastic-agent install` command. + -At the prompt, enter `Y` to install {agent} and run it as a service. Wait for the installation to complete. If everything goes well, the install will complete successfully: +At the prompt, enter `Y` to install {agent} and run it as a service. wait for the installation to complete. ++ +If everything goes well, the install will complete successfully: + ["source","shell"] ---- -{agent} has been successfully installed. +Elastic Agent has been successfully installed. ---- . In the {kib} **Add agent** flyout, wait for confirmation that {agent} has connected. diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index 7cc0a162b..3a33eac85 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -4,12 +4,11 @@ [[installing-stack-demo-self]] === Tutorial 1: Installing a self-managed {stack} -This tutorial demonstrates how to install and configure the {stack} in a self-managed environment. Following these steps, you'll set up a three node {es} cluster, with {kib}, {fleet-server}, and {agent}, each on separate hosts. The {agent} will be configured with the System integration, enabling it to gather local system logs and metrics and deliver them into the {es} cluster. Finally, you'll view the system data in {kib}. +This tutorial demonstrates how to install and configure the {stack} in a self-managed environment. Following these steps, you'll set up a three node {es} cluster, with {kib}, {fleet-server}, and {agent}, each on separate hosts. The {agent} will be configured with the System integration, enabling it to gather local system logs and metrics and deliver them into the {es} cluster. Finally, you'll learn how to view the system data in {kib}. It should take between one and two hours to complete these steps. * <> -* <> * <> * <> * <> @@ -21,21 +20,22 @@ It should take between one and two hours to complete these steps. * <> * <> -IMPORTANT: If you're using these steps to configure a production cluster that uses trusted CA-signed certificates for secure communications, after completing Step 6 to install {kib} we recommend jumping directly to <>. The second tutorial includes steps to configure {fleet} and {agent} with SSL certificates enabled. +[IMPORTANT] +==== +If you're using these steps to configure a production cluster that uses trusted CA-signed certificates for secure communications, after completing Step 6 to install {kib} we recommend jumping directly to <>. + +The second tutorial includes steps to configure security across the {stack}, and then to set up {fleet-server} and {agent} with SSL certificates enabled. +==== [discrete] [[install-stack-self-prereqs]] -== Prerequisites +== Prerequisites and assumptions To get started, you'll need the following: * A set of virtual or physical hosts on which to install each stack component. * On each host, a super user account with `sudo` privileges. -[discrete] -[[install-stack-self-assumptions]] -== Assumptions - The examples in this guide use RPM packages to install the {stack} components on hosts running Red Hat Enterprise Linux 8. The steps for other install methods and operating systems are similar, and can be found in the documentation linked from each section. Special considerations such as firewalls and proxy servers are not covered here. @@ -44,7 +44,7 @@ Special considerations such as firewalls and proxy servers are not covered here. [[install-stack-self-elasticsearch-first]] == Step 1: Set up the first {es} node -To begin, we'll use RPM to install {es} on the first host. This initial {es} instance will serve as the master node. +To begin, use RPM to install {es} on the first host. This initial {es} instance will serve as the master node. . Log in to the host where you'd like to set up your first {es} node. @@ -91,7 +91,7 @@ The {es} install process enables certain security features by default, including * Authentication and authorization are enabled, including a built-in `elastic` superuser account. * Certificates and keys for TLS are generated for the transport and HTTP layer, and TLS is enabled and configured with these keys and certificates. -. Copy the terminal output from the install command to a local file. In particular, you'll need the password for the built-in `elastic` superuser account. The output also contains the commands to enable {es} to run as a service, which we'll use in the next step. +. Copy the terminal output from the install command to a local file. In particular, you'll need the password for the built-in `elastic` superuser account. The output also contains the commands to enable {es} to run as a service, which you'll use in the next step. . Run the following two commands to enable {es} to run as a service using `systemd`. This enables {es} to start automatically when the host system reboots. You can find details about this and the following steps in {ref}/starting-elasticsearch.html#start-es-deb-systemd[Running {es} with `systemd`]. + @@ -105,9 +105,9 @@ sudo systemctl enable elasticsearch.service [[install-stack-self-elasticsearch-config]] == Step 2: Configure the first {es} node for connectivity -Before moving ahead to configure {es} instances, we'll need to update the {es} configuration on this first node so that other hosts are able to connect to it. This is done by updating the settings in the `elasticsearch.yml` file. For details about all available settings refer to {ref}/settings.html[Configuring {es}]. +Before moving ahead to configure additional {es} nodes, you'll need to update the {es} configuration on this first node so that other hosts are able to connect to it. This is done by updating the settings in the `elasticsearch.yml` file. For details about all available settings refer to {ref}/settings.html[Configuring {es}]. -. In a terminal, run `ifconfig` and copy the value for the host inet IP address (for example, `10.128.0.84`). You'll need this value later. +. In a terminal, run the `ifconfig` command and copy the value for the host inet IP address (for example, `10.128.0.84`). You'll need this value later. . Open the {es} configuration file in a text editor, such as `vim`: + @@ -125,7 +125,7 @@ In the configuration file, uncomment the line `#cluster.name: my-application` an cluster.name: elasticsearch-demo ---- -. By default, {es} runs on `localhost`. In order for {es} instances on other nodes to be able to join the cluster, we'll need to set up {es} to run on a routable, external IP address. +. By default, {es} runs on `localhost`. In order for {es} instances on other nodes to be able to join the cluster, you'll need to set up {es} to run on a routable, external IP address. + Uncomment the line `#network.host: 192.168.0.1` and replace the default address with the value that you copied from the `ifconfig` command output. For example: + @@ -192,7 +192,7 @@ If all is well, the command returns a response like this: } ---- -. Finally, check the status of your {es} instance: +. Finally, check the status of {es}: + [source,"shell"] ---- @@ -207,7 +207,7 @@ As with the previous `curl` command, the output should confirm that {es} started To set up a second {es} node, the initial steps are similar to those that you followed for <>. -. Log in to the host where you'd like to set up your second {es} node. +. Log in to the host where you'd like to set up your second {es} instance. . Create a working directory for the installation package: + @@ -255,13 +255,16 @@ sudo systemctl daemon-reload sudo systemctl enable elasticsearch.service ---- -. To enable this second {es} node to connect to the first, you need to configure an enrollment token. You can find details about these steps in {ref}/rpm.html#_reconfigure_a_node_to_join_an_existing_cluster_2[Reconfigure a node to join an existing cluster] and also in {ref}/add-elasticsearch-nodes.html#_enroll_nodes_in_an_existing_cluster_5[Enroll nodes in an existing cluster]. +. To enable this second {es} node to connect to the first, you need to configure an enrollment token. + -IMPORTANT: Be sure to run all of these configuration steps before starting the {es} service. -+ -Return to your terminal shell into the first {es} node. +[IMPORTANT] +==== +Be sure to run all of these configuration steps before starting the {es} service. -. Generate a node enrollment token: +You can find additional details about these steps in {ref}/rpm.html#_reconfigure_a_node_to_join_an_existing_cluster_2[Reconfigure a node to join an existing cluster] and also in {ref}/add-elasticsearch-nodes.html#_enroll_nodes_in_an_existing_cluster_5[Enroll nodes in an existing cluster]. +==== ++ +Return to your terminal shell on the first {es} node and generate a node enrollment token: + [source,"shell"] ---- @@ -310,7 +313,7 @@ Notice that, as a result of having run the `elasticsearch-reconfigure-node` tool cluster.name: elasticsearch-demo ---- -. As with the first {es} node, we'll need to set up {es} to run on a routable, external IP address. Uncomment the line `#network.host: 92.168.0.1` and replace the default address with the value that you copied. For example: +. As with the first {es} node, you'll need to set up {es} to run on a routable, external IP address. Uncomment the line `#network.host: 92.168.0.1` and replace the default address with the value that you copied. For example: + [source,"yaml"] ---- @@ -390,7 +393,7 @@ To set up your third {es} node, follow exactly the same steps as you did previou [[install-stack-self-kibana]] == Step 6: Install {kib} -As with {es}, we'll use RPM to install {kib} on another host. You can find details about all of the following steps in the section {kibana-ref}/rpm.html#install-rpm[Install {kib} with RPM]. +As with {es}, you can use RPM to install {kib} on another host. You can find details about all of the following steps in the section {kibana-ref}/rpm.html#install-rpm[Install {kib} with RPM]. . Log in to the host where you'd like to install {kib} and create a working directory for the installation package: + @@ -453,16 +456,16 @@ sudo systemctl enable kibana.service . Before starting the {kib} service there's one configuration change to make, to set {kib} to run on the {es} host IP address. This is done by updating the settings in the `kibana.yml` file. For details about all available settings refer to {kibana-ref}/settings.html[Configure {kib}]. -. In a terminal, run `ifconfig` and copy the value for the host inet IP address. +. In a terminal, run the `ifconfig` command and copy the value for the host inet IP address. -. Open the {kib} configuration file in a text editor, such as `vim`: +. Open the {kib} configuration file for editing: + ["source","sh",subs="attributes"] ---- sudo vim /etc/kibana/kibana.yml ---- -. Uncomment the line `#server.host: localhost` and replace the default address with the inet value that you copied from the ìfconfig` command. For example: +. Uncomment the line `#server.host: localhost` and replace the default address with the inet value that you copied from the `ifconfig` command. For example: + [source,"yaml"] ---- @@ -487,7 +490,11 @@ If you need to, you can stop the service by running `sudo systemctl stop kibana. sudo systemctl status kibana ---- -. In the `status` command output a URL is shown with a host address to access {kib} and a six digit verification code. For example: +. In the `status` command output, a URL is shown with: +** A host address to access {kib} +** A six digit verification code ++ +For example: + ["source","sh",subs="attributes"] ---- @@ -497,16 +504,16 @@ Go to http://10.128.0.28:5601/?code= to get started. + Make a note of the verification code. -. Open a web browser to the external IP address of the {kib} host machine, for example: `http://:5601`. It can take a minute or two for {kib} to start up, so refresh the page if you don't see a prompt right away. +. Open a web browser to the external IP address of the {kib} host machine, for example: `http://:5601`. ++ +It can take a minute or two for {kib} to start up, so refresh the page if you don't see a prompt right away. -. When {kib} starts, you're prompted to provide an enrollment token. Paste in the {kib} enrollment token that you generated earlier. +. When {kib} starts you're prompted to provide an enrollment token. Paste in the {kib} enrollment token that you generated earlier. . Click **Configure Elastic**. . If you're prompted to provide a verification code, copy and paste in the six digit code that was returned by the `status` command. Then, wait for the setup to complete. -// Note to reviewers: Kibana says to run `/bin/kibana-verification-code` to retrieve the code, but I'm not sure if that command works when Kibana is running as a service. So, I documented to get the code from the status command output instead. - . When you see the **Welcome to Elastic** page, provide the `elastic` as the username and provide the password that you copied in Step 1, from the `install` command output when you set up your first {es} node. . Click **Log in**. @@ -515,20 +522,22 @@ Make a note of the verification code. {kib} is now fully set up and communicating with your {es} cluster! +**IMPORTANT: Stop here if you intend to configure SSL certificates.** -[IMPORTANT] -.Configuring security settings -==== +[IMPORTANT] +==== For simplicity, in this tutorial we're setting up all of the {stack} components without configuring security certificates. You can proceed to configure {fleet}, {agent}, and then confirm that your system data appears in {kib}. -However, in a production environment, before going further to install {fleet-server} and {agent} it's recommended to update your security settings to use trusted CA-signed certificates as described in <>. After new security certificates are configured any {agent}s would need to be reinstalled. If you're currently setting up a production environment, we recommend that you jump directly to Tutorial 2, which includes steps to set up {fleet} and {agent} with security configured. +However, in a production environment, before going further to install {fleet-server} and {agent} it's recommended to update your security settings to use trusted CA-signed certificates as described in <>. + +After new security certificates are configured any {agent}s would need to be reinstalled. If you're currently setting up a production environment, we recommend that you jump directly to Tutorial 2, which includes steps to secure the {stack} using certificates and then to set up {fleet} and {agent} with those certificates already in place. ==== [discrete] [[install-stack-self-fleet-server]] == Step 7: Install {fleet-server} -Now that {kib} is up and running, we'll install {fleet-server}, which will manage the {agent} that we'll set up in a later step. If you need more detail about these steps, refer to {fleet-guide}/add-fleet-server-on-prem.html[Deploy on-premises and self-managed] in the {fleet} and {agent} Guide. +Now that {kib} is up and running, you can install {fleet-server}, which will manage the {agent} that you'll set up in a later step. If you need more detail about these steps, refer to {fleet-guide}/add-fleet-server-on-prem.html[Deploy on-premises and self-managed] in the {fleet} and {agent} Guide. . Log in to the host where you'd like to set up {fleet-server}. @@ -556,11 +565,15 @@ cd elastic-install-files . Specify a name for your {fleet-server} host, for example `Fleet Server`. -. Specify the host URL where {agents} will reach {fleet-server}, for example: `https://10.128.0.203`. This is the inet value that you copied from the `ifconfig` output. You don't need to privide a port number. +. Specify the host URL where {agents} will reach {fleet-server}, for example: `https://10.128.0.203:8220`. This is the inet value that you copied from the `ifconfig` output. ++ +Be sure to include the port number. Port `8220` is the default used by {fleet-server} in an on-premises environment. Refer to {fleet-guide}/add-fleet-server-on-prem.html#default-port-assignments-on-prem[Default port assignments] in the on-premises {fleet-server} install documentation for a list of port assignments. . Click **Generate Fleet Server policy**. A policy is created that contains all of the configuration settings for the {fleet-server} instance. -. On the **Install Fleet Server to a centralized host** step, for this example we'll select the **Linux Tar** tab, but you can select the tab appropriate to the host operating system where you're setting up {fleet-server}. Note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {fleet-server}. +. On the **Install Fleet Server to a centralized host** step, for this example we select the **Linux Tar** tab, but you can instead select the tab appropriate to the host operating system where you're setting up {fleet-server}. ++ +Note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {fleet-server}. . Copy the generated commands and then run them one-by-one in the terminal on your {fleet-server} host. + @@ -585,7 +598,7 @@ If you'd like to learn about the install command options, refer to {fleet-guide} [[install-stack-self-elastic-agent]] == Step 8: Install {agent} -Next, we'll install {agent} on another host and use the System integration to monitor system logs and metrics. +Next, you'll install {agent} on another host and use the System integration to monitor system logs and metrics. . Log in to the host where you'd like to set up {agent}. @@ -609,11 +622,6 @@ cd elastic-install-files . Open the **Settings** tab. -. Notice that a {Fleet-server} host URL is configured. Before adding an {agent}, the host setting needs to be updated. By default, the host URL port is set to `443` which is used in an {ecloud} environment. When {fleet-server} is installed on-premises, the port needs to be updated to `8220`. Refer to {fleet-guide}/add-fleet-server-on-prem.html#default-port-assignments-on-prem[Default port assignments] in the on-premise {fleet-server} install documentation for a list of port assignments. -+ -.. Under *Actions*, click the edit icon and update the {fleet-server} host URL to use port 8220. For example: `https://10.128.0.203:8220`. -.. Select **Save and apply settings**. It takes a minute or so for the configuration change to complete. - . Reopen the **Agents** tab and select **Add agent**. The **Add agent** flyout opens. . In the flyout, choose a policy name, for example `Demo Agent Policy`. @@ -624,15 +632,19 @@ cd elastic-install-files . For the **Enroll in Fleet?** step, leave **Enroll in Fleet** selected. -. On the **Install Elastic Agent on your host** step, for this example we'll select the **Linux Tar** tab, but you can select the tab appropriate to the host operating system where you're setting up {fleet-server}. As with {fleet-server}, note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {agent}. +. On the **Install Elastic Agent on your host** step, for this example we select the **Linux Tar** tab, but you can instead select the tab appropriate to the host operating system where you're setting up {fleet-server}. ++ +As with {fleet-server}, note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {agent}. . Copy the generated commands. . In the `sudo ./elastic-agent install` command, make two changes: -.. For the `--url` parameter, change the port number from the default `443` to `8220` (used for on-premise {fleet-server}). -.. Append an `--insecure` flag at the end. We'll configure secure communications in a later step. +.. For the `--url` parameter, check that the port number is set to `8220` (used for on-premises {fleet-server}). +.. Append an `--insecure` flag at the end. ++ +TIP: If you want to set up secure communications using SSL certificates, refer to <>. + -The result should be similar to the following example: +The result should be like the following: + ["source","shell"] ---- @@ -647,6 +659,13 @@ sudo ./elastic-agent install --url=https://10.128.0.203:8220 --enrollment-token= .. Install {agent}. . At the prompt, enter `Y` to install {agent} and run it as a service. Wait for the installation to complete. ++ +If everything goes well, the install will complete successfully: ++ +["source","shell"] +---- +Elastic Agent has been successfully installed. +---- . In the {kib} **Add agent** flyout, wait for confirmation that {agent} has connected. @@ -680,4 +699,4 @@ Congratulations! You've successfully set up a three node {es} cluster, with {kib [[install-stack-self-next-steps]] == Next steps -Now that you've successfully configured an on-premise {stack}, you can prepare your environment for production by configuring secure communications between all {stack} components. Proceed to <> to learn more. \ No newline at end of file +Now that you've successfully configured an on-premises {stack}, you can learn how to configure the {stack} in a production environment using trusted CA-signed certificates. Refer to <> to learn more. From 3b96d590d6e6261d4ea7de6f0d98475a03c2410a Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Thu, 11 Jan 2024 13:26:19 -0500 Subject: [PATCH 21/35] Add overview diagram --- .../images/stack-install-final-state.png | Bin 0 -> 436875 bytes .../installing-stack-demo-self.asciidoc | 11 +++++++++++ 2 files changed, 11 insertions(+) create mode 100644 docs/en/install-upgrade/images/stack-install-final-state.png diff --git a/docs/en/install-upgrade/images/stack-install-final-state.png b/docs/en/install-upgrade/images/stack-install-final-state.png new file mode 100644 index 0000000000000000000000000000000000000000..1b651cace946d61dbfa773d9789e26a0c62a82ce GIT binary patch literal 436875 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

4ZW{UXk4+)7Z3B*qhrA;-t!xJwS!uBO8$3q+< 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 E03AJ~TL1t6 literal 0 HcmV?d00001 diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index 3a33eac85..d78b44d69 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -9,6 +9,7 @@ This tutorial demonstrates how to install and configure the {stack} in a self-ma It should take between one and two hours to complete these steps. * <> +* <> * <> * <> * <> @@ -40,6 +41,16 @@ The examples in this guide use RPM packages to install the {stack} components on Special considerations such as firewalls and proxy servers are not covered here. +[discrete] +[[install-stack-self-overview]] +== {stack} overview + +Before starting, take a moment to familiarize yourself with the {stack} components. + +image::images/stack-install-final-state.png[Image showing the relationships between stack components] + +To learn more about the {stack} and how each of these components are related, refer to {estc-welcome-current}/stack-components.html[An overview of the {stack}]. + [discrete] [[install-stack-self-elasticsearch-first]] == Step 1: Set up the first {es} node From c2cf09515cf07c3b530369705edbf274146c283b Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Thu, 11 Jan 2024 14:14:33 -0500 Subject: [PATCH 22/35] Add conclusion --- docs/en/install-upgrade/installing-stack-demo-secure.asciidoc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index 26d2bdaf8..55c96f2c8 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -889,4 +889,6 @@ View your system metrics data: + image::images/install-stack-metrics-dashboard.png["The System metrics host overview showing CPU usage, memory usage, and other visualizations"] -Congratulations! You've successfully configured security for {es}, {kib}, {fleet}, and {agent} using your own trusted CA-signed certificates. \ No newline at end of file +Congratulations! You've successfully configured security for {es}, {kib}, {fleet}, and {agent} using your own trusted CA-signed certificates. + +Now that you're all set up, visit our link:https://www.elastic.co/guide/index.html[Documentation landing page] to learn how to start using your new cluster. \ No newline at end of file From 47e3e00ae43e81c3ec325b85d4eddf4560b0c92b Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Thu, 11 Jan 2024 14:54:17 -0500 Subject: [PATCH 23/35] Add warning not to start the service yet --- .../installing-stack-demo-secure.asciidoc | 4 ++-- .../installing-stack-demo-self.asciidoc | 10 ++++++---- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index 55c96f2c8..cd4f2252c 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -1,5 +1,5 @@ -// for testing: -:version: 8.11. +// for testing on currently available builds: +// :version: 8.11. [[install-stack-demo-secure]] === Tutorial 2: Securing a self-managed {stack} diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index d78b44d69..551c4224a 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -1,5 +1,5 @@ -// for testing: -:version: 8.11.1 +// for testing on currently available builds: +// :version: 8.11.1 [[installing-stack-demo-self]] === Tutorial 1: Installing a self-managed {stack} @@ -266,6 +266,8 @@ sudo systemctl daemon-reload sudo systemctl enable elasticsearch.service ---- +IMPORTANT: Don't start the {es} service yet! Additional configuration is needed. + . To enable this second {es} node to connect to the first, you need to configure an enrollment token. + [IMPORTANT] @@ -396,9 +398,9 @@ sudo curl --cacert /etc/elasticsearch/certs/http_ca.crt -u elastic:$ELASTIC_PASS [discrete] [[install-stack-self-elasticsearch-third]] -== Step 5: Set up a third {es} node +== Step 5: Set up additional {es} nodes -To set up your third {es} node, follow exactly the same steps as you did previously in <>. The process is identical for each additional {es} node that you would like to add to the cluster. As a recommended best practice, create a new enrollment token for each new node that you add. +To set up your next {es} node, follow exactly the same steps as you did previously in <>. The process is identical for each additional {es} node that you would like to add to the cluster. As a recommended best practice, create a new enrollment token for each new node that you add. [discrete] [[install-stack-self-kibana]] From 504e94603d052719c45c2cda30886ccd579f144e Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Thu, 11 Jan 2024 14:58:10 -0500 Subject: [PATCH 24/35] re-enable test flags --- docs/en/install-upgrade/installing-stack-demo-secure.asciidoc | 2 +- docs/en/install-upgrade/installing-stack-demo-self.asciidoc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index cd4f2252c..4af615868 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -1,5 +1,5 @@ // for testing on currently available builds: -// :version: 8.11. +:version: 8.11. [[install-stack-demo-secure]] === Tutorial 2: Securing a self-managed {stack} diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index 551c4224a..ff17a2d44 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -1,5 +1,5 @@ // for testing on currently available builds: -// :version: 8.11.1 +:version: 8.11.1 [[installing-stack-demo-self]] === Tutorial 1: Installing a self-managed {stack} From a3e99515367929a3e558ac037399fef00416a722 Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Thu, 11 Jan 2024 15:56:20 -0500 Subject: [PATCH 25/35] Address Eric's comments --- .../installing-stack-demo-secure.asciidoc | 33 ++++++++++--------- .../installing-stack-demo-self.asciidoc | 2 ++ 2 files changed, 19 insertions(+), 16 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index 4af615868..61ab246f0 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -49,7 +49,7 @@ sudo systemctl stop elasticsearch.service . Generate a CA certificate using the provided certificate utility, `elasticsearch-certutil`. Note that the location of the utility depends on the installation method you used to install {es}. Refer to {ref}/certutil.html[elasticsearch-certutil] for the command details and to {ref}/update-node-certs-different.html[Update security certificates with a different CA] for details about the procedure as a whole. + -Run the following command. When prompted, specify a unique name for the output file, such as `elastic-stack-ca-new.zip`: +Run the following command. When prompted, specify a unique name for the output file, such as `elastic-stack-ca.zip`: + ["source","shell"] ---- @@ -60,22 +60,21 @@ sudo /usr/share/elasticsearch/bin/elasticsearch-certutil ca -pem + ["source","shell"] ---- -sudo mv /usr/share/elasticsearch/elastic-stack-ca-new.zip /etc/elasticsearch/certs/ +sudo mv /usr/share/elasticsearch/elastic-stack-ca.zip /etc/elasticsearch/certs/ ---- -. Change to the certificates directory and unzip the file: +. Unzip the file: + ["source","shell"] ---- -sudo cd /etc/elasticsearch/certs -sudo unzip elastic-stack-ca-new.zip +sudo unzip -d /etc/elasticsearch/certs /etc/elasticsearch/certs/elastic-stack-ca.zip ---- . View the files that were unpacked into a new `ca` directory: + ["source","shell"] ---- -sudo ls ca/ +sudo ls /etc/elasticsearch/certs/ca/ ---- + `ca.crt`:: The generated certificate (or you can substitute this with your own certificate, signed by your organizations's certificate authority) @@ -84,7 +83,7 @@ sudo ls ca/ + These steps to generate new self-signed CA certificates need to be done only on the first {es} node. The other {es} nodes will use the same `ca.crt` and `ca.key` files. -. From the `/ca` directory, import the newly created CA certificate into the {es} truststore. This step ensures that your cluster trusts the new CA certificate. +. From the `/etc/elasticsearch/certs/ca/` directory, import the newly created CA certificate into the {es} truststore. This step ensures that your cluster trusts the new CA certificate. + NOTE: On a new installation a new keystore and truststore are created automatically. If you're running these steps on an existing {es} installation and you know the password to the keystore and the truststore, follow the instructions in {ref}/update-node-certs-different.html[Update security certificates with a different CA] to import the CA certificate. + @@ -92,7 +91,7 @@ Run the `keytool` command as shown, replacing `` with a unique passwor + ["source","shell"] ---- -sudo /usr/share/elasticsearch/jdk/bin/keytool -importcert -trustcacerts -noprompt -keystore elastic-stack-ca.p12 -storepass -alias new-ca -file ca.crt +sudo /usr/share/elasticsearch/jdk/bin/keytool -importcert -trustcacerts -noprompt -keystore elastic-stack-ca.p12 -storepass -alias new-ca -file /etc/elasticsearch/certs/ca/ca.crt ---- . Ensure that the new key was added to the keystore: @@ -102,6 +101,8 @@ sudo /usr/share/elasticsearch/jdk/bin/keytool -importcert -trustcacerts -nopromp keytool -keystore elastic-stack-ca.p12 -list ---- + +NOTE: The keytool utility is provided as part of the {es} installation and is located at: `/usr/share/elasticsearch/jdk/bin/keytool`. ++ Enter your password when prompted. The result should show the details for your newly added key: + ["source","shell"] @@ -123,7 +124,7 @@ This guide assumes the use of self-signed certificates, but the process to impor + ["source","shell"] ---- -sudo usr/share/elasticsearch/bin/elasticsearch-certutil cert --ca-cert /etc/elasticsearch/certs/ca/ca.crt --ca-key /etc/elasticsearch/certs/ca/ca.key +sudo /usr/share/elasticsearch/bin/elasticsearch-certutil cert --ca-cert /etc/elasticsearch/certs/ca/ca.crt --ca-key /etc/elasticsearch/certs/ca/ca.key ---- + When prompted, choose an output file name (you can use the default `elastic-certificates.p12`) and a password for the certificate. @@ -132,7 +133,7 @@ When prompted, choose an output file name (you can use the default `elastic-cert + ["source","shell"] ---- -sudo mv usr/share/elasticsearch/elastic-certificates.p12 /etc/elasticsearch/certs/ +sudo mv /usr/share/elasticsearch/elastic-certificates.p12 /etc/elasticsearch/certs/ ---- + @@ -167,7 +168,7 @@ xpack.security.transport.ssl: + ["source","shell"] ---- -/usr/share/elasticsearch/bin/elasticsearch-keystore list +sudo /usr/share/elasticsearch/bin/elasticsearch-keystore list ---- + The results should be like the following: @@ -192,18 +193,18 @@ These entries were created at installation and need to be replaced with the pass + ["source","shell"] ---- -sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.keystore.secure_password +sudo /usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.keystore.secure_password -sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.truststore.secure_password +sudo /usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.truststore.secure_password ---- . Update the `elasticsearch-keystore` with the passwords for the new keystore and truststore created in the previous steps. This ensures that {es} can read the new stores: + ["source","shell"] ---- -sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password +sudo /usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password -sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password +sudo /usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password ---- [discrete] @@ -216,7 +217,7 @@ Now that communication between {es} nodes (the transport layer) has been secured + ["source","shell"] ---- -sudo / usr/share/elasticsearch/bin/elasticsearch-certutil http +sudo /usr/share/elasticsearch/bin/elasticsearch-certutil http ---- + Respond to the command prompts as follows: diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index ff17a2d44..1701554c0 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -41,6 +41,8 @@ The examples in this guide use RPM packages to install the {stack} components on Special considerations such as firewalls and proxy servers are not covered here. +For the basic ports and protocols required for the installation to work, refer to the following overview section. + [discrete] [[install-stack-self-overview]] == {stack} overview From feb1bdb381c74ccc25021d8db1767fbd3d4bfcfe Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Thu, 11 Jan 2024 16:06:45 -0500 Subject: [PATCH 26/35] Fixup --- .../installing-stack-demo-secure.asciidoc | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index 61ab246f0..e6e7e0297 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -224,6 +224,9 @@ Respond to the command prompts as follows: * When asked if you want to generate a CSR, enter `n`. * When asked if you want to use an existing CA, enter `y`. ++ +NOTE: If you're using your organization's CA certificate, specify that certificate and key in the following two steps. ++ * Provide the absolute path to your newly created CA certificate: `/etc/elasticsearch/certs/ca/ca.crt`. * Provide the absolute path to your newly created CA key: `/etc/elasticsearch/certs/ca/ca.key`. * Enter an expiration value for your certificate. You can enter the validity period in years, months, or days. For example, enter `1y` for one year. @@ -238,7 +241,6 @@ Note that this is the same value that's described in Step 2 of <` with the hostname of your initial {es} node: + ["source","shell"] ---- -mv elasticsearch//http.p12 /etc/elasticsearch/certs/ +sudo mv /usr/share/elasticsearch/elasticsearch//http.p12 /etc/elasticsearch/certs/ ---- . Because this is a new keystore, the {es} configuration file needs to be updated with the path to its location. Open `/etc/elasticsearch/elasticsearch.yml` and update the HTTP SSL settings with the new path: From 9f603a2810d2057782d75f8ee9ff13c7f7ce7dc3 Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Thu, 11 Jan 2024 16:43:02 -0500 Subject: [PATCH 27/35] Fixup --- .../installing-stack-demo-secure.asciidoc | 12 ++++++------ .../installing-stack-demo-self.asciidoc | 6 ++---- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index e6e7e0297..67612cebb 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -341,23 +341,23 @@ xpack.security.http.ssl: + ["source","shell"] ---- -sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.http.ssl.keystore.secure_password +sudo /usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.http.ssl.keystore.secure_password ---- -. From the {es} installation directory, add the updated HTTP keystore password, using the password you generated for this keystore: +. Add the updated HTTP keystore password, using the password you generated for this keystore: + ["source","shell"] ---- -sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password +sudo /usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password ---- -. Before restarting {es}, you need to update the permissions and ownership of all of the certificate files. +. Because we've added files to the {es} configuration directory during this tutorial, we need to ensure that the permissions and ownership are correct before restarting {es}. -.. From the `etc/elasticsearch/certs/` directory, change the files to be owned by the `root:elasticsearch` group: +.. Change the files to be owned by `root:elasticsearch`: + ["source","shell"] ---- -chown root:elasticsearch * +sudo chown -R root:elasticsearch /etc/elasticsearch/certs/ ---- .. Set the files in `/etc/elasticsearch/certs` to have read and write permissions by the owner (`root`) and read permission by the `elastic` user: diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index 1701554c0..d8c273461 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -414,14 +414,14 @@ As with {es}, you can use RPM to install {kib} on another host. You can find det + ["source","shell"] ---- -mkdir elastic-install-files +mkdir kibana-install-files ---- . Change into the new directory: + ["source","shell"] ---- -cd elastic-install-files +cd kibana-install-files ---- . Download the {kib} RPM and checksum file from the Elastic website. @@ -533,8 +533,6 @@ It can take a minute or two for {kib} to start up, so refresh the page if you do . Click **Log in**. -. On the **Start by adding integrations** prompt, select **Explore on my own**. - {kib} is now fully set up and communicating with your {es} cluster! **IMPORTANT: Stop here if you intend to configure SSL certificates.** From 751d3308d35634fe8b1cba1a9f2ffa0c3ba2dffa Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Thu, 11 Jan 2024 17:44:28 -0500 Subject: [PATCH 28/35] fixup --- .../installing-stack-demo-secure.asciidoc | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index 67612cebb..2129a33f9 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -91,7 +91,7 @@ Run the `keytool` command as shown, replacing `` with a unique passwor + ["source","shell"] ---- -sudo /usr/share/elasticsearch/jdk/bin/keytool -importcert -trustcacerts -noprompt -keystore elastic-stack-ca.p12 -storepass -alias new-ca -file /etc/elasticsearch/certs/ca/ca.crt +sudo /usr/share/elasticsearch/jdk/bin/keytool -importcert -trustcacerts -noprompt -keystore /etc/elasticsearch/certs/elastic-stack-ca.p12 -storepass -alias new-ca -file /etc/elasticsearch/certs/ca/ca.crt ---- . Ensure that the new key was added to the keystore: @@ -422,7 +422,7 @@ mv http.p12 http-old.p12 * Copy the `elastic-stack-ca.p12` file from `/etc/elasticsearch/certs/` to the `/etc/elasticsearch/certs/` directory on all other {es} nodes. -* Copy the `http.p12` file from each node directory in `/etc/elasticsearch/certs/elasticsearch/` (that is, `elasticsearch/mynode-es1`, `elasticsearch/mynode-es2` and `elasticsearch/mynode-es3`) to the `/etc/elasticsearch/certs/` directory on each corresponding cluster node. +* Copy the `http.p12` file from each node directory in `/usr/share/elasticsearch/elasticsearch` (that is, `elasticsearch/mynode-es1`, `elasticsearch/mynode-es2` and `elasticsearch/mynode-es3`) to the `/etc/elasticsearch/certs/` directory on each corresponding cluster node. . On each {es} node, repeat the steps to generate a new certificate for the transport layer: @@ -437,10 +437,10 @@ sudo systemctl stop elasticsearch.service + ["source","shell"] ---- -sudo usr/share/elasticsearch/bin/elasticsearch-certutil cert --ca-cert /etc/elasticsearch/certs/ca/ca.crt --ca-key /etc/elasticsearch/certs/ca/ca.key +sudo /usr/share/elasticsearch/bin/elasticsearch-certutil cert --ca-cert /etc/elasticsearch/certs/ca/ca.crt --ca-key /etc/elasticsearch/certs/ca/ca.key ---- + -When prompted, choose an output file name or use the default, and specify a password for the certificate. +When prompted, choose an output file name and specify a password for the certificate. For this example, we'll use `/etc/elasticsearch/certs/elastic-certificates.p12`. .. Update the `/etc/elasticsearch/elasticsearch.yml` settings file with the new truststore and keystore filename and path: + @@ -473,18 +473,18 @@ xpack.security.transport.ssl.truststore.secure_password + ["source","shell"] ---- -sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.keystore.secure_password +sudo /usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.keystore.secure_password -sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.truststore.secure_password +sudo /usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.transport.ssl.truststore.secure_password ---- .. Update the `elasticsearch-keystore` with the passwords for the new keystore and truststore: + ["source","shell"] ---- -sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password +sudo /usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password -sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password +sudo /usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password ---- . For the HTTP layer, the certificates have been generated already on the first {es} node. Each additional {es} node just needs to be configured to use the new certificates. @@ -503,21 +503,21 @@ xpack.security.http.ssl: + ["source","shell"] ---- -sudo usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.http.ssl.keystore.secure_password +sudo /usr/share/elasticsearch/bin/elasticsearch-keystore remove xpack.security.http.ssl.keystore.secure_password ---- .. Add the updated HTTP keystore password: + ["source","shell"] ---- -sudo usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password +sudo /usr/share/elasticsearch/bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password ---- .. Change the certificate files to be owned by the `root:elasticsearch` group: + ["source","shell"] ---- -chown root:elasticsearch * +sudo chown -R root:elasticsearch /etc/elasticsearch/certs/ ---- .. Set the files in `/etc/elasticsearch/certs` to have read and write permissions by the owner (`root`) and read permission by the `elastic` user: From a15d7581795d0ace81a2f4aa1e8225964f51da61 Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Thu, 11 Jan 2024 17:46:42 -0500 Subject: [PATCH 29/35] Fixup --- .../install-upgrade/installing-stack-demo-secure.asciidoc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index 2129a33f9..9b135dc94 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -605,7 +605,7 @@ tail -f /var/log/kibana/kibana.log + In the log file you should find a `Kibana is now available` message. -. Open a web browser to the external IP address of the Kibana host machine: `http://:5601``. +. Open a web browser to the external IP address of the Kibana host machine: `https://:5601``. Note the URL should use `https` and not `http`. . Log in using the `elastic` user and password that you configured in Step 1 of <>. @@ -654,14 +654,14 @@ sudo chmod 640 *.key + ["source","shell"] ---- -mkdir elastic-install-files +mkdir fleet-install-files ---- . Change into the new directory: + ["source","shell"] ---- -cd elastic-install-files +cd fleet-install-files ---- . In the terminal, run the `ifconfig` command and copy the value for the host inet IP address (for example, `10.128.0.84`). You'll need this value later. From 0a0790b0f17b8c13abf42ec9ccbe2beb204c3631 Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Thu, 11 Jan 2024 17:51:59 -0500 Subject: [PATCH 30/35] Fixup --- docs/en/install-upgrade/installing-stack-demo-secure.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index 9b135dc94..10ecdd1cc 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -605,7 +605,7 @@ tail -f /var/log/kibana/kibana.log + In the log file you should find a `Kibana is now available` message. -. Open a web browser to the external IP address of the Kibana host machine: `https://:5601``. Note the URL should use `https` and not `http`. +. Open a web browser to the external IP address of the Kibana host machine: `https://:5601``. Note that the URL should use `https` and not `http`. . Log in using the `elastic` user and password that you configured in Step 1 of <>. From bfad2d5eee489980fc5bc61b0fce053e65cfddfa Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Thu, 11 Jan 2024 18:03:45 -0500 Subject: [PATCH 31/35] fixup --- .../installing-stack-demo-secure.asciidoc | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index 10ecdd1cc..627218261 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -793,7 +793,7 @@ Next, we'll install {agent} on another host and use the System integration to mo + ["source","shell"] ---- -sudo mkdir /etc/fleet +sudo mkdir /etc/agent ---- . From the first {es} node, copy the `ca.crt` file, and paste it into the `/etc/agent/` directory on the {fleet-server} host. Just to help identify the file we'll also rename it to `es-ca.crt`: ** `/etc/fleet/es-ca.crt` @@ -802,14 +802,14 @@ sudo mkdir /etc/fleet + ["source","shell"] ---- -mkdir elastic-install-files +mkdir agent-install-files ---- . Change into the new directory: + ["source","shell"] ---- -cd elastic-install-files +cd agent-install-files ---- . Open {kib} and go to **Management -> Fleet**. @@ -849,7 +849,8 @@ The result should be like the following: ["source","shell"] ---- sudo ./elastic-agent install \ ---url=https://10.128.0.203:8220 \ --enrollment-token=VWCobFhKd0JuUnppVYQxX0VKV5E6UmU3BGk0ck9RM2HzbWEmcS4Bc1YUUM== +--url=https://10.128.0.203:8220 \ +--enrollment-token=VWCobFhKd0JuUnppVYQxX0VKV5E6UmU3BGk0ck9RM2HzbWEmcS4Bc1YUUM== \ --certificate-authorities=/etc/agent/es-ca.crt ---- From 6a1b3ce7b4e0f5eca4735fcf4de415c9d17a0b28 Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Thu, 11 Jan 2024 18:14:08 -0500 Subject: [PATCH 32/35] fixup --- .../installing-stack-demo-self.asciidoc | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index d8c273461..a436b0eba 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -558,14 +558,14 @@ Now that {kib} is up and running, you can install {fleet-server}, which will man + ["source","shell"] ---- -mkdir elastic-install-files +mkdir fleet-install-files ---- . Change into the new directory: + ["source","shell"] ---- -cd elastic-install-files +cd fleet-install-files ---- . In the terminal, run `ifconfig` and copy the value for the host inet IP address (for example, `10.128.0.84`). You'll need this value later. @@ -578,7 +578,7 @@ cd elastic-install-files . Specify a name for your {fleet-server} host, for example `Fleet Server`. -. Specify the host URL where {agents} will reach {fleet-server}, for example: `https://10.128.0.203:8220`. This is the inet value that you copied from the `ifconfig` output. +. Specify the host URL where {agents} will reach {fleet-server}, for example: `http://10.128.0.203:8220`. This is the inet value that you copied from the `ifconfig` output. + Be sure to include the port number. Port `8220` is the default used by {fleet-server} in an on-premises environment. Refer to {fleet-guide}/add-fleet-server-on-prem.html#default-port-assignments-on-prem[Default port assignments] in the on-premises {fleet-server} install documentation for a list of port assignments. @@ -619,14 +619,14 @@ Next, you'll install {agent} on another host and use the System integration to m + ["source","shell"] ---- -mkdir elastic-install-files +mkdir agent-install-files ---- . Change into the new directory: + ["source","shell"] ---- -cd elastic-install-files +cd agent-install-files ---- . Open {kib} and go to **Management -> Fleet**. From 12da653a89536f2bbd198da509c2c951c051464b Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Thu, 11 Jan 2024 20:46:18 -0500 Subject: [PATCH 33/35] Fixup; and unset version variables --- .../installing-stack-demo-secure.asciidoc | 12 +++++------- .../installing-stack-demo-self.asciidoc | 6 +++--- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index 627218261..83b8525ca 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -1,5 +1,5 @@ -// for testing on currently available builds: -:version: 8.11. +//For testing on currently available builds: +//:version: 8.11. [[install-stack-demo-secure]] === Tutorial 2: Securing a self-managed {stack} @@ -234,16 +234,14 @@ NOTE: If you're using your organization's CA certificate, specify that certifica + You'll be guided through the creation of certificates for each node. Each certificate will have its own private key, and will be issued for a specific hostname or IP address. -.. On separate lines, enter the hostname for your first {es} node, for example `mynode-es1`, and the IP address that clients can use to connect to your node. -+ -Note that this is the same value that's described in Step 2 of <>, for example `10.128.0.84`: +.. Enter the hostname for your first {es} node, for example `mynode-es1`. + ["source","shell"] ---- mynode-es1 ---- .. When prompted, confirm that the settings are correct. -.. Add the network IP address for the first {es} node (the same address you specified in the previous step): +.. Add the network IP address that clients can use to connect to the first {es} node. This is the same value that's described in Step 2 of <>, for example `10.128.0.84`: + ["source","shell"] ---- @@ -623,7 +621,7 @@ If you'd like to learn more about these steps, refer to {fleet-guide}/add-fleet- + ["source","shell"] ---- -sudo usr/share/elasticsearch/bin/elasticsearch-certutil cert --name fleet-server --ca-cert /etc/elasticsearch/certs/ca/ca.crt --ca-key /etc/elasticsearch/certs/ca/ca.key --dns --ip --pem +sudo /usr/share/elasticsearch/bin/elasticsearch-certutil cert --name fleet-server --ca-cert /etc/elasticsearch/certs/ca/ca.crt --ca-key /etc/elasticsearch/certs/ca/ca.key --dns --ip --pem ---- + When prompted, specify a unique name for the output file, such as `fleet-cert-bundle.zip`. diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index a436b0eba..b9204b9bc 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -1,5 +1,5 @@ -// for testing on currently available builds: -:version: 8.11.1 +//for testing on currently available builds: +//:version: 8.11.1 [[installing-stack-demo-self]] === Tutorial 1: Installing a self-managed {stack} @@ -268,7 +268,7 @@ sudo systemctl daemon-reload sudo systemctl enable elasticsearch.service ---- -IMPORTANT: Don't start the {es} service yet! Additional configuration is needed. +IMPORTANT: Don't start the {es} service yet! There are a few more configuration steps to do before restarting. . To enable this second {es} node to connect to the first, you need to configure an enrollment token. + From eca4b1921e4b624c45c6ec92bbd453abac0401f3 Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Fri, 12 Jan 2024 09:37:33 -0500 Subject: [PATCH 34/35] Latest review comments --- .../installing-stack-demo-secure.asciidoc | 15 +++++++++------ .../installing-stack-demo-self.asciidoc | 12 +++++++++--- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc index 83b8525ca..7dfb93b6b 100644 --- a/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-secure.asciidoc @@ -101,7 +101,7 @@ sudo /usr/share/elasticsearch/jdk/bin/keytool -importcert -trustcacerts -nopromp keytool -keystore elastic-stack-ca.p12 -list ---- + -NOTE: The keytool utility is provided as part of the {es} installation and is located at: `/usr/share/elasticsearch/jdk/bin/keytool`. +NOTE: The keytool utility is provided as part of the {es} installation and is located at: `/usr/share/elasticsearch/jdk/bin/keytool` on RPM installations. + Enter your password when prompted. The result should show the details for your newly added key: + @@ -362,15 +362,18 @@ sudo chown -R root:elasticsearch /etc/elasticsearch/certs/ + ["source","shell"] ---- -chmod 640 * +sudo chmod 640 /etc/elasticsearch/certs/elastic-certificates.p12 +sudo chmod 640 /etc/elasticsearch/certs/elastic-stack-ca.p12 +sudo chmod 640 /etc/elasticsearch/certs/http_ca.crt +sudo chmod 640 /etc/elasticsearch/certs/http.p12 ---- .. Change the `/etc/elasticsearch/certs` and `/etc/elasticsearch/certs/ca` directories to be executable by the owner: + ["source","shell"] ---- -chmod 750 /etc/elasticsearch/certs -chmod 750 /etc/elasticsearch/certs/ca +sudo chmod 750 /etc/elasticsearch/certs +sudo chmod 750 /etc/elasticsearch/certs/ca ---- . Restart the {es} service: @@ -691,7 +694,7 @@ For details about default port assignments, refer to {fleet-guide}/add-fleet-ser . On the **Install Fleet Server to a centralized host** step, for this example we select the **Linux Tar** tab, but you can instead select the tab appropriate to the host operating system where you're setting up {fleet-server}. + -Note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {fleet-server}. +Note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {fleet-server} using {fleet}. . Run the first three commands one-by-one in the terminal on your {fleet-server} host. + @@ -826,7 +829,7 @@ cd agent-install-files . On the **Install Elastic Agent on your host** step, for this example we select the **Linux Tar** tab, but you can instead select the tab appropriate to the host operating system where you're setting up {fleet-server}. + -As with {fleet-server}, note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {agent}. +As with {fleet-server}, note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {agent} using {fleet}. . Run the first three commands one-by-one in the terminal on your {agent} host. + diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index b9204b9bc..78872d96e 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -37,7 +37,13 @@ To get started, you'll need the following: * A set of virtual or physical hosts on which to install each stack component. * On each host, a super user account with `sudo` privileges. -The examples in this guide use RPM packages to install the {stack} components on hosts running Red Hat Enterprise Linux 8. The steps for other install methods and operating systems are similar, and can be found in the documentation linked from each section. +The examples in this guide use RPM packages to install the {stack} components on hosts running Red Hat Enterprise Linux 8. The steps for other install methods and operating systems are similar, and can be found in the documentation linked from each section. The packages that you'll install are: + +* elasticsearch-{version}-x86_64.rpm +* kibana-{version}-x86_64.rpm +* elastic-agent-{version}-linux-x86_64.tar.gz + +NOTE: For {agent} and {fleet-server} (both of which use the elastic-agent-{version}-linux-x86_64.tar.gz package) we recommend using TAR/ZIP packages over RPM/DEB system packages, since only the former support upgrading using {fleet}. Special considerations such as firewalls and proxy servers are not covered here. @@ -586,7 +592,7 @@ Be sure to include the port number. Port `8220` is the default used by {fleet-se . On the **Install Fleet Server to a centralized host** step, for this example we select the **Linux Tar** tab, but you can instead select the tab appropriate to the host operating system where you're setting up {fleet-server}. + -Note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {fleet-server}. +Note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {fleet-server} using {fleet}. . Copy the generated commands and then run them one-by-one in the terminal on your {fleet-server} host. + @@ -647,7 +653,7 @@ cd agent-install-files . On the **Install Elastic Agent on your host** step, for this example we select the **Linux Tar** tab, but you can instead select the tab appropriate to the host operating system where you're setting up {fleet-server}. + -As with {fleet-server}, note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {agent}. +As with {fleet-server}, note that TAR/ZIP packages are recommended over RPM/DEB system packages, since only the former support upgrading {agent} using {fleet}. . Copy the generated commands. From 102ff104b360e257932a070ef163e9bfd4d5161e Mon Sep 17 00:00:00 2001 From: David Kilfoyle Date: Fri, 12 Jan 2024 10:44:48 -0500 Subject: [PATCH 35/35] Use full URLs for package list --- .../install-upgrade/installing-stack-demo-self.asciidoc | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc index 78872d96e..0a7073a29 100644 --- a/docs/en/install-upgrade/installing-stack-demo-self.asciidoc +++ b/docs/en/install-upgrade/installing-stack-demo-self.asciidoc @@ -39,9 +39,11 @@ To get started, you'll need the following: The examples in this guide use RPM packages to install the {stack} components on hosts running Red Hat Enterprise Linux 8. The steps for other install methods and operating systems are similar, and can be found in the documentation linked from each section. The packages that you'll install are: -* elasticsearch-{version}-x86_64.rpm -* kibana-{version}-x86_64.rpm -* elastic-agent-{version}-linux-x86_64.tar.gz +* https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-{version}-x86_64.rpm + +* https://artifacts.elastic.co/downloads/kibana/kibana-{version}-x86_64.rpm + +* https://artifacts.elastic.co/downloads/beats/elastic-agent/elastic-agent-{version}-linux-x86_64.tar.gz NOTE: For {agent} and {fleet-server} (both of which use the elastic-agent-{version}-linux-x86_64.tar.gz package) we recommend using TAR/ZIP packages over RPM/DEB system packages, since only the former support upgrading using {fleet}.