Securing Solr Deployments - SearchStax


Overview

SearchStax® takes the security of your Solr search infrastructure very seriously. We have built-in industry-standard security at the level of the cluster, network and SearchStax dashboard. Custom firewall rules enable you to lock down your search infrastructure to a whitelist of IP addresses and IP address ranges. Solr basic authentication lets you restrict search access to clients with appropriate user credentials.

Default Security

The SearchStax dashboard and all communications between SearchStax and your search engine use Secure-Sockets Layer encryption (SSL). This is the system's default behavior out of the box.

Security Best Practices

For production systems, secure Solr using Basic Authentication and an appropriate range of IP addresses.

The Zookeeper Ensemble does not support authentication, so we suggest locking it down to a short list of IP addresses, or even to just one.

Advanced Security Options

For our premium customers (Gold, Platimum, and Platinum Plus levels) who have high security requirements, we recommend a SearchStax Cloud Private environment with VPC Peering.

Premium customers may also request at-rest encryption for their data files. Send email to sales@searchstax.com to learn more about these options.

Contents:

Cluster Security

You can lock down your clusters as described below.

Connecting to the Cluster

SearchStax recommends that you situate your application infrastructure in the same local network as your hosting provider (for example, AWS or Azure). Internal network security for these hosting providers is extremely high and eliminates any chance of a hacker potentially sniffing your network traffic.

If your application is hosted elsewhere, try to host it as close to your search infrastructure as possible. This can be done by choosing the Cloud Provider Region which is closest to your application. This improves both security and performance.

Solr Basic Authentication

You can optionally enable the Solr Basic Authentication Plugin through the SearchStax Dashboard. This restricts access to your Solr dashboard and demands authorization for query requests and index updates.

Warnings: Effects of Basic Authentication

  • Enabling/Disabling this feature will suspend service for about a minute.
  • Once enabled, Solr will require a username and password for:
    • Opening the Solr Dashboard.
    • Making a query request (via the /select command).
    • Adding records to the index (via the /update command).

To enable the Basic Authentication plugin:

  1. Select the desired Deployment and click the Security > Auth command in the menu bar.
  2. Click the Enable button. SearchStax Authentication Enable button
  3. Add a user, entering the username, password and role (see below). Click Add.

Note that Solr user accounts are independent of SearchStax user accounts.

To disable the Authentication and Authorization plugin, click on the Disable Auth button and confirm the action. Disabling Basic Auth erases all Solr users. (Again, Solr services will be restarted.)

Solr Basic Authentication provides three user roles:

Role Solr Dashoard /select /update
Admin
Read
Write

Using /select and /update with Solr Basic Auth

After enabling Solr authentication, your /select and /update interactions with Solr must include the username and password of a Solr user.

For cURL, add the Solr credentials using the -u 'username:password' parameter.

If your search application doesn't use cURL, your <Solr HTTP Endpoint> changes from https://machine... to https://user:password@machine...

Connections to Zookeeper remain unchanged.

IP Filtering

You can limit access to a Solr deployment to a list of IP addresses using the Security > IP Filter menu. SearchStax Security IP Filtering You can configure access for Solr+Zookeeper, Solr, Zookeeper, and Silk endpoints separately. SearchStax Security IP Filtering
The addresses are expressed in IPv4 format, using the familiar dot-decimal notation. Ranges are specified using Classless Inter-Domain Routing (CIDR) format.

CIDR notation can be daunting, but note the following three examples of typical CIDR rules:

The /n at the end of each rule is called the prefix length. SearchStax Security IP Filtering

To limit access to a specific IP address or IP address range:

  1. From within a Deployment's details page, click on the Security > IP filter menu.
  2. Click on Add Row.
  3. Add a specific IP address in the appropriate field. Note that SearchStax can detect your computer's IP address. Click My current IP to enter it automatically.
  4. Select a service you need to limit access to (Solr+Zookeeper, Solr, or Zookeeper).
  5. Click Save changes.

To remove a filter, click on the X button and then Save changes.

IP Filtering by Cloud Provider

Each of our Cloud Providers handles IP filtering a little differently.

  • For Google Cloud Provider (GCP) and Microsoft Azure, removing all of the IP filters allows unrestricted access.
  • For Amazon Web Services (AWS), removing all of the IP filters makes the deployment unreachable.
  • For AWS and Azure, new filters take effect immediately.
  • For GCP, new filters can take a few minutes to become active.

SearchStax Users

Each SearchStax account is restricted to the owner (and admin) of that account plus any SearchStax users who have been granted access to that account by the owner. The additional users may be enrolled as normal SearchStax operators or as admins at the owner's discretion. See Solr Account Setup.

SearchStax Dashboard Security

All connections to the SearchStax Dashboard use HTTPS, which encrypts your traffic in transit.

Activity Log

The SearchStax activity log provides you with a list of all user actions within your tenant account, including those of the SearchStax Support team. The list consists of a User column including email of the user who performed the logged change, his/her role, Timestamp of action in UTC, Action itself, Action detail and IP address where the action originated.

Questions?

Do not hesitate to contact the SearchStax Support Desk.