Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding security installation information #20231130 #6605

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
f0447a8
additing security installation page #20231130
AntonEliatra Mar 6, 2024
a576b43
Update security-installation.md
AntonEliatra Mar 6, 2024
116e2d9
Update security-installation.md
AntonEliatra Mar 6, 2024
f87895f
Update security-installation.md
AntonEliatra Mar 6, 2024
160427c
Update security-installation.md
AntonEliatra Mar 7, 2024
7b7c3d4
Update _security/configuration/security-installation.md
AntonEliatra Mar 12, 2024
5225ac3
Update _security/configuration/security-installation.md
AntonEliatra Mar 12, 2024
7184980
Update _security/configuration/security-installation.md
AntonEliatra Mar 12, 2024
d4ac83f
Update _security/configuration/security-installation.md
AntonEliatra Mar 12, 2024
854a51d
Update _security/configuration/security-installation.md
AntonEliatra Mar 12, 2024
5577a3a
Update _security/configuration/security-installation.md
AntonEliatra Mar 12, 2024
6166746
Update _security/configuration/security-installation.md
AntonEliatra Mar 12, 2024
43249c1
Update _security/configuration/security-installation.md
AntonEliatra Mar 12, 2024
ed05ca2
Update _security/configuration/security-installation.md
AntonEliatra Mar 12, 2024
785a439
renaming to enabling security
AntonEliatra Mar 12, 2024
74385c7
additing security installation page #20231130
AntonEliatra Mar 13, 2024
615edff
additing security installation page #20231130
AntonEliatra Mar 13, 2024
f9b8a17
additing security installation page #20231130
AntonEliatra Mar 13, 2024
3c8536d
additing security installation page #20231130
AntonEliatra Mar 13, 2024
f96f81e
Update enabling-security.md
Naarcha-AWS Mar 14, 2024
c9d49c6
Update enabling-security.md
Naarcha-AWS Mar 14, 2024
abcd8e5
moving security installation page #20231130
AntonEliatra Mar 15, 2024
b409fd9
moving security installation page #20231130
AntonEliatra Mar 15, 2024
c1af7ce
Update disable-enable-security.md
Naarcha-AWS Mar 18, 2024
3ebeac9
Update disable-enable-security.md
Naarcha-AWS Mar 18, 2024
c4471b4
Update disable-enable-security.md
Naarcha-AWS Mar 19, 2024
9494cdf
Apply suggestions from code review
Naarcha-AWS Mar 19, 2024
2f55274
Merge branch 'main' into adding-security-installation-page
Naarcha-AWS Mar 19, 2024
53d9834
Apply suggestions from code review
Naarcha-AWS Mar 20, 2024
b35d86b
fixes on security disable-enable page
AntonEliatra Mar 22, 2024
381f39c
Merge branch 'main' into adding-security-installation-page
Naarcha-AWS Mar 22, 2024
910c777
Made some updates to the structure
hdhalter Mar 27, 2024
54dbf5e
Merge branch 'main' into adding-security-installation-page
Naarcha-AWS Mar 27, 2024
2f2946a
Apply suggestions from code review
Naarcha-AWS Mar 27, 2024
be77d13
Apply suggestions from code review
Naarcha-AWS Mar 27, 2024
1189abd
Apply suggestions from code review
Naarcha-AWS Mar 27, 2024
d22c12b
fixes on security disable-enable page
AntonEliatra Mar 27, 2024
233d6ba
adding link for installation method on security installation page
AntonEliatra Mar 27, 2024
c2900e2
Update disable-enable-security.md
hdhalter Mar 28, 2024
c7e1562
Update _security/configuration/disable-enable-security.md
AntonEliatra Mar 29, 2024
39b7700
Update _security/configuration/disable-enable-security.md
AntonEliatra Mar 29, 2024
ff00e95
Update _security/configuration/disable-enable-security.md
AntonEliatra Mar 29, 2024
ac2585c
Update _security/configuration/disable-enable-security.md
AntonEliatra Mar 29, 2024
ace8202
Update disable-enable-security.md
AntonEliatra Mar 29, 2024
7044593
Apply suggestions from code review
Naarcha-AWS Mar 29, 2024
4422a9d
Merge branch 'main' into adding-security-installation-page
Naarcha-AWS Mar 29, 2024
5fa5323
Merge branch 'main' into adding-security-installation-page
Naarcha-AWS Apr 3, 2024
f045f81
Update disable-enable-security.md
AntonEliatra Apr 4, 2024
cfdaef5
Apply suggestions from code review
AntonEliatra Apr 4, 2024
f0bd141
Apply suggestions from code review
Naarcha-AWS Apr 4, 2024
2aebcaa
Merge branch 'main' into adding-security-installation-page
Naarcha-AWS Apr 4, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
202 changes: 202 additions & 0 deletions _security/configuration/disable-enable-security.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,202 @@
---
layout: default
title: Disabling and enabling the Security plugin
parent: Configuration
nav_order: 40
has_toc: true
redirect_from:
- /security-plugin/configuration/disable/
---

# Disabling and enabling the Security plugin

The Security plugin is installed by default with OpenSearch, but you can temporarily disable it or remove it altogether. Disabling the plugin involves a change to the `opensearch.yml` file; you may want to do this to streamline testing. A more substantive change is required to remove the Security plugin completely. You might want to remove it if, for example, you are using your own security solution or need to remove it for development purposes.

Disabling or removing the plugin exposes the configuration index for the Security plugin. If the index contains sensitive information, make sure to protect it through some other means. If you no longer need the index, delete it.
{: .warning }

Disabling, removing, or installing the Security plugin requires a full cluster restart because during this process, the individual nodes are not able to communicate with each other.
{: .warning}

## Disabling/enabling the Security plugin

Check failure on line 21 in _security/configuration/disable-enable-security.md

View workflow job for this annotation

GitHub Actions / style-job

[vale] reported by reviewdog 🐶 [OpenSearch.HeadingCapitalization] 'Disabling/enabling the Security plugin' is a heading and should be in sentence case. Raw Output: {"message": "[OpenSearch.HeadingCapitalization] 'Disabling/enabling the Security plugin' is a heading and should be in sentence case.", "location": {"path": "_security/configuration/disable-enable-security.md", "range": {"start": {"line": 21, "column": 4}}}, "severity": "ERROR"}

You can disable the Security plugin by editing the `opensearch.yml` file:

```yml
plugins.security.disabled: true
```
You can then enable the plugin by removing the `plugins.security.disabled` setting.

AntonEliatra marked this conversation as resolved.
Show resolved Hide resolved
natebower marked this conversation as resolved.
Show resolved Hide resolved
## Removing and adding the Security plugin

You can completely remove the Security plugin from your OpenSearch instance. Note that OpenSearch Dashboards can only run against a secure cluster, so if you uninstall the Security plugin, you'll also need to uninstall the OpenSearch Dashboards plugin.

### Removing the Security plugin from OpenSearch

Do the following to remove the plugin from OpenSearch.

1. Disable shard allocation and stop all nodes so that shards don't move when the cluster is restarted:

```json
curl -XPUT "https://localhost:9200/_cluster/settings" -u "admin:<password>" -H 'Content-Type: application/json' -d '{
"transient": {
"cluster.routing.allocation.enable": "none"
}
}'
```
{% include copy.html %}
2. Delete all `plugins.security.*` configuration entries from `opensearch.yml`.
3. Uninstall the Security plugin by using the following command:
AntonEliatra marked this conversation as resolved.
Show resolved Hide resolved

```bash
./bin/opensearch-plugin remove opensearch-security
```
4. Restart the nodes and enable shard allocation:
```json
curl -XPUT "http://localhost:9200/_cluster/settings" -H 'Content-Type: application/json' -d '{
"transient": {
"cluster.routing.allocation.enable": "all"
}
}'
```

To perform these steps on the Docker image, see [Working with plugins]({{site.url}}{{site.baseurl}}/opensearch/install/docker#working-with-plugins).
{: .note }

### Removing the Security plugin from OpenSearch Dashboards

If you disable the Security plugin in `opensearch.yml` and still want to use OpenSearch Dashboards, you must remove the corresponding OpenSearch Dashboards Security plugin. For more information, see [Remove plugins]({{site.url}}{{site.baseurl}}/install-and-configure/install-dashboards/plugins/#remove-plugins).

Refer to the following installation types to remove the OpenSearch Dashboards plugin.

#### Docker

1. Remove all Security plugin configuration settings from `opensearch_dashboards.yml` or move the example file to the same folder as the `Dockerfile`:

```yml
---
server.name: opensearch-dashboards
server.host: "0.0.0.0"
opensearch.hosts: http://localhost:9200
```

1. Create a new `Dockerfile`:

```
FROM opensearchproject/opensearch-dashboards:{{site.opensearch_dashboards_version}}
RUN /usr/share/opensearch-dashboards/bin/opensearch-dashboards-plugin remove securityDashboards
COPY --chown=opensearch-dashboards:opensearch-dashboards opensearch_dashboards.yml /usr/share/opensearch-dashboards/config/
```

1. To build the new Docker image, run the following command:

```bash
docker build --tag=opensearch-dashboards-no-security .
```

1. In `docker-compose.yml`, change `opensearchproject/opensearch-dashboards:{{site.opensearch_dashboards_version}}` to `opensearch-dashboards-no-security`.
1. Change `OPENSEARCH_HOSTS` or `opensearch.hosts` to `http://` rather than `https://`.
1. Enter `docker-compose up`.

#### Tarball

1. Navigate to the `/bin` directory in your OpenSearch Dashboards installation folder and stop the running OpenSearch Dashboards instance by pressing `Ctrl + C`.

1. Run the following command to uninstall the Security plugin:

```bash
./bin/opensearch-dashboards-plugin remove securityDashboards
```

1. Remove all Security plugin configuration settings from the `opensearch_dashboards.yml` file or use the following example file:

```yml
---
server.name: opensearch-dashboards
server.host: "0.0.0.0"
opensearch.hosts: http://localhost:9200
```

1. Start OpenSearch Dashboards:
```bash
./bin/opensearch-dashboards
```

#### RPM and Debian

1. Stop the running instance of OpenSearch Dashboards by using the following command:

```bash
sudo systemctl stop opensearch-dashboards
```

1. Navigate to the OpenSearch Dashboards folder `/usr/share/opensearch-dashboards` and run the following command to uninstall the Security plugin:

```bash
./bin/opensearch-dashboards-plugin remove securityDashboards
```

1. Remove all Security plugin configuration settings from the `opensearch_dashboards.yml` file or place the example file in the `/etc/opensearch_dashboards` folder:

```yml
---
server.name: opensearch-dashboards
server.host: "0.0.0.0"
opensearch.hosts: http://localhost:9200
```
1. Start OpenSearch Dashboards:
```bash
sudo systemctl start opensearch-dashboards
```

### Installing the Security plugin

Use the following steps to reinstall the plugin:

1. Disable shard allocation and stop all nodes so that shards don't move when the cluster is restarted:

```json
curl -XPUT "http://localhost:9200/_cluster/settings" -H 'Content-Type: application/json' -d '{
"transient": {
"cluster.routing.allocation.enable": "none"
}
}'
```
{% include copy.html %}

2. Install the Security plugin on all nodes in your cluster using one of the [installation methods]({{site.url}}{{site.baseurl}}/install-and-configure/plugins/#install):

```bash
bin/opensearch-plugin install opensearch-security
```
{% include copy.html %}

3. Add the necessary configuration to `opensearch.yml` for TLS encryption. See
[Configuration]({{site.url}}{{site.baseurl}}/install-and-configure/configuring-opensearch/security-settings/) for information about the settings that need to be configured.

4. Create the `OPENSEARCH_INITIAL_ADMIN_PASSWORD` variable. For more information, see [Setting up a custom admin password](https://opensearch.org/docs/latest/security/configuration/demo-configuration/#setting-up-a-custom-admin-password).

5. Restart the nodes and reenable shard allocation:

```json
curl -XPUT "https://localhost:9200/_cluster/settings" -u "admin:<password>" -H 'Content-Type: application/json' -d '{
"transient": {
"cluster.routing.allocation.enable": "all"
}
}'
```
{% include copy.html %}

### Installing the Security plugin on OpenSearch Dashboards

Use the following steps to reinstall the plugin on OpenSearch Dashboards:

1. Stop running your OpenSearch Dashboards cluster.
2. Install the Security plugin:

```bash
./bin/opensearch-dashboards-plugin install securityDashboards
```

4. Add the necessary [configuration]({{site.url}}{{site.baseurl}}/install-and-configure/install-dashboards/tls/) settings in the `opensearch_dashboards.yml` file.
5. Start OpenSearch Dashboards. If the plugin was successfully installed, you'll be prompted to enter your login credentials.
121 changes: 0 additions & 121 deletions _security/configuration/disable.md

This file was deleted.

2 changes: 1 addition & 1 deletion _security/configuration/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ The plugin includes demo certificates so that you can get up and running quickly
1. Start OpenSearch.
1. [Add users, roles, role mappings, and tenants]({{site.url}}{{site.baseurl}}/security/access-control/index/).

If you don't want to use the plugin, see [Disable security]({{site.url}}{{site.baseurl}}/security/configuration/disable).
If you don't want to use the plugin, see [Disable security]({{site.url}}{{site.baseurl}}/security/configuration/disable-enable-security/).

The Security plugin has several default users, roles, action groups, permissions, and settings for OpenSearch Dashboards that use kibana in their names. We will change these names in a future release.
{: .note }
Expand Down
Loading