Sicherer Logstash und Elasticsearch


7

Ich erwäge logstash auf meinem prod Server ausgeführt wird (einfach installieren. Http://logstash.net/docs/1.1.13/tutorials/getting-started-simple ) und Satz Kibana auf Zugriffsprotokolle.

Mein Anliegen ist: Wie kann ich meine Produktprotokolle sichern (insbesondere Elasticsearch, das von Logstash ausgeführt wird) und den Zugriff mit der sicheren Zone oder auf einige IPs beschränken?

Vielen Dank für Ihre Hilfe


1
Sie können einige Regeln zu Ihrem hinzufügen iptables.
— Dawud

Was meinst du ? Nur 9200 Port (elasticsearch) autorisieren, für die Server-IP selbst geöffnet zu sein (für kibana apache vhost)?
— CoBaLt2760

Können Sie Ihrer Frage bitte weitere Einzelheiten zur tatsächlich geplanten Architektur hinzufügen? (Wie viele Server sind beteiligt, wo werden die typischen Elemente des Logstash / Kibana-Stacks bereitgestellt?) Haben Sie bereits SELinux, iptables und andere Sicherheitsmaßnahmen eingerichtet?
— Dawud

Antworten:


4

Wenn Sie spätere Versionen von Logstash mit Kibana verwenden :

Ich stelle Kibana auf einem virtuellen Host in einem Apache unter /kibana/bereit und leite die Elasticsearch-API über einen Reverse-Proxy weiter, der verfügbar ist unter /elasticsearch/:

<Location /elasticsearch/>
    ProxyPass http://elasticsearchhost:9200/
    ProxyPassReverse /
</Location>

Sie müssen Kibanas config.js an anpassen

elasticsearch: "/elasticsearch/",

Anschließend kann der virtuelle Host über die HTTP-Basisauthentifizierung gesichert werden, die automatisch sowohl für Kibana als auch für die Elasticsearch-API gilt.

Was mich immer noch beunruhigt, ist, dass die Benutzer von Kibana die Elasticsearch-API auch verwenden könnten, um böse Dinge wie das Löschen von Indizes, das Herunterfahren von Elasticsearch-Servern usw. zu tun - zum Beispiel mit dem Elasticsearch- Kopf . Aber ich habe bisher keine gute Lösung für dieses Problem. Wahrscheinlich könnte man GETs generell erlauben / elasticsearch / da in REST GETs nichts ändern können, aber andere HTTP-Methoden nur auf bestimmte URLs, die für Kibana wichtig sind.


0

In meiner Umgebung binde ich elasticsearch an eine openvpn-Schnittstelle.

In /etc/elasticsearch/elasticsearch.yml:

network.host: 172.16.xxx.xxx

Wobei 172.16.xxx.xxx die IP-Adresse ist, die dem Server von openvpn zugewiesen wurde.


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.