Solr absichern: Bewährte Praktiken zum Schutz Ihrer Daten
Wenn Sie dem Wind Ihre Geheimnisse verraten, sollten Sie dem Wind nicht vorwerfen, dass er sie den Bäumen verrät. – Kahlil Gibran
Die Stärke von Solr liegt vor allem in seiner Fähigkeit, große Datenmengen schnell zu indizieren und abzufragen. Diese leistungsstarke Fähigkeit ist jedoch mit gewissen Vorbehalten verbunden. Vor allem ein Vorbehalt ist bei der Planung Ihrer Solr-Umgebung von entscheidender Bedeutung: Die Sicherheit.
Sicherheit ist von Natur aus eine Art Rätsel. Die Dokumentation ist oft begrenzt und wird oft nur auf der Basis von „Need-to-know“ bereitgestellt. In der Welt der Programmierung sind die Rückmeldungen bei Sicherheitsmängeln oft vage oder gar nicht vorhanden. Da die Sicherheit von vornherein restriktiv ist, kann sie außerdem problematisch sein. Trotz dieser Hürden bleibt sie für jedes Unternehmen eine wichtige Notwendigkeit.
Wenn Sie Solr zum ersten Mal installieren und starten, werden Sie feststellen, dass keine Authentifizierung erforderlich ist. Solr ist von Haus aus ungesichert. Daher sollten Sie als erstes sicherstellen, dass Solr sich hinter einer entsprechend konfigurierten Firewall befindet, und dass die Benutzerrechte auf Solr-Instanzen ordnungsgemäß gesperrt sind. Der Benutzer, unter dem Solr läuft, sollte nur „Schreib“-Zugriff auf das Solr-Stammverzeichnis haben. Die Firewall-Schicht ist wirklich die vorderste Linie Ihrer Verteidigungsstrategie. Von dort aus sollten Sie eine Reihe von Software-Sicherheitsebenen in Betracht ziehen. Die endgültige Konfiguration hängt natürlich von der Art Ihrer Anwendung ab. Es ist also eine gute Idee, eine solide Architektur und entsprechende Anwendungsfälle im Kopf zu haben, bevor Sie einen Sicherheitsplan erstellen.
Wie bereits erwähnt, sollten Sie, sobald Sie Ihre Hardware-Firewall eingerichtet haben, die verschiedenen möglichen Software-Sicherheitsebenen in Betracht ziehen. Dazu gehören Antiviren-/Trojaner-/Malware-Prävention, Anwendungen zur Erkennung und Beseitigung von Malware, Echtzeitüberwachung des Verhaltens kritischer Benutzer, Software zur Erkennung von DDOS-Angriffen (Direct Denial of Service), Software zur Datenverschlüsselung und so weiter. Die Kombinationsmöglichkeiten sind buchstäblich grenzenlos und hängen wiederum vom Ziel Ihres Projekts ab.
Wenn Ihre Software-Sicherheitsschicht eingerichtet ist, können Sie damit beginnen, Solr direkt zu sichern.
Solr ist in der Lage, eine Vielzahl von Authentifizierungs-Frameworks von Drittanbietern zu integrieren, darunter LDAP und Kerberos. Seit der Version 5.x verfügt Solr auch über integrierte Unterstützung für Basic Authentication. Mit der Basisauthentifizierung können Sie die Verwaltungskonsole von Solr absichern und die Granularität auf Sammlungsebene gewährleisten.
Abgesehen von der Sicherheit auf Konsolen- und Sammlungsebene gilt es als bewährte Praxis, Solr einen eigenen Anwendungsdienst voranzustellen und z.B. die SolrJ-Bibliothek zur Kommunikation mit Solr zu verwenden.
Zusammenfassend lässt sich sagen, dass die Sicherung Ihrer Solr-Umgebung eine Menge Planung und Voraussicht erfordert. Es gibt mehrere Sicherheitsebenen, die berücksichtigt werden müssen, um sicherzustellen, dass Ihre Umgebung vor bösartigen Angriffen geschützt ist.
Kurz und bündig:
- Solr ist standardmäßig und von vornherein völlig ungesichert. Es ist von entscheidender Bedeutung, dass sich Ihre Solr-Instanz hinter einer Firewall befindet und dass die Sicherheit auf Box-Ebene angemessen und auf kritische Benutzer beschränkt ist.
- Wählen Sie eine geeignete Suite von Software-Sicherheitstools, um sich vor Malware, DDOS-Angriffen usw. zu schützen.
- Verwenden Sie das Solr BasicAuthentication Plugin oder andere unterstützte Dienste, um die Solr-Konsole und -Sammlungen zu sichern.
- Erstellen Sie einen benutzerdefinierten Dienst, der die Kommunikation zwischen Ihren Client-Anwendungen und Solr ermöglicht.
Wichtiger Hinweis:
Wenn Sie diese Maßnahmen befolgt haben, ist Ihre Solr-Instanz wirksam geschützt, auch vor einer kürzlich entdeckten Sicherheitslücke in Solr, die möglicherweise einen Cross-Traversal-Angriff auf die Replikations-API ermöglicht. Diese Sicherheitslücke wurde gepatcht. Es wird dringend empfohlen, dass Benutzer von Solr 5.x ihre Solr-Instanz auf 5.5.4 und alle Benutzer von 6.x auf 6.4.2 aktualisieren.