Skip to main content

Lisans Kontrolü

Elasticsearch lisansı mutlaka Elastic Basic License olmalıdır. Apinizer, bu lisans içerisindeki X-Pack’e ait security eklentisinin desteklediği basit kimlik doğrulama yöntemini kullanmaktadır. Elasticsearch lisans bilgisini kontrol etmek için aşağıdaki istek yapılır:

Güvenliği Etkinleştirme

Varsayılan olarak, Elasticsearch güvenlik ayarı etkin değildir. Güvenlik seçeneğini aktifleştirmek için config/elasticsearch.yml dosyasına aşağıdaki özellik eklenir.
Birden fazla node varsa hepsinde bu özellik aktifleştirilmelidir.
Bu işlemden sonra Elasticsearch uygulaması yeniden başlatılmalıdır.

Cluster’daki Nodeların İletişimlerinin Şifreleme (TLS Ayarı)

Elasticsearch yeniden başladıktan sonra aşağıdaki hata alınıyorsa veya birden fazla node varsa bu bölümdeki ayarlar yapılmalıdır. Güvenlik ayarı etkinleştirildiğinde ve production ortamında çalışıyorsa Elasticsearch nodelarının birbirleriyle iletişiminin şifrelenmesi gerekmektedir. Bu iletişim transport katmanında gerçekleşmektedir.
Birden fazla node varsa hepsinde bu ayar konfigure edilmelidir.
Birden fazla node olan clusterlar için config/elasticsearch.yml dosyası üzerinde dikkat edilmesi gereken ve isteğe bağlı diğer ayarlar;

Sertifika Oluşturma

1

CA sertifikası oluşturma

Sertifika oluşturmak için aşağıdaki komut kullanılır:
Bu dosyanın ayrıca parola ile korunması zorunlu değildir ancak önerilmemektedir.
2

Sertifika oluşturma

CA sertifikası kullanılarak sertifika oluşturulur:
3

Sertifikaları taşıma

Sertifikalar config/certs dizini oluşturulup altına taşınır:
Devam etmeden önce bu sertifika dosyalarının Elasticsearch dosyalarıyla aynı ayrıcalıklara sahip olduğundan emin olun.
“could not find java in JAVA_HOME at /tools/java/home/bin/java” hatası alırsanız aşağıdaki iki komut, ile Java uygulamalarının doğru bir şekilde çalışması için gerekli olan ortam değişkenlerini ayarlamak için kullanılır.
Daha sonra /config/elasticsearch.yml dosyasına aşağıdaki alanlar eklenmelidir.
Bu işlemden sonra Elasticsearch uygulaması yeniden başlatılmalıdır.
Aşağıdaki istek ile güvenliği etkinleştirme durumu kontrol edilebilir.
Örnek çıktı:
Bu alan aktifleştirildiğinde kimlik bilgileri olmayan her istek aşağıdaki gibi reddedilecektir.
Örnek hata çıktısı:

Built-in Kullanıcı Şifrelerini Oluşturma

Elasticsearch’in varsayılan built-in kullanıcı adı elastic’dir. Ancak bu kullanıcı adına oluşturulmuş şifre yoktur.
Şifre ataması yapılırken built-in tüm kullanıcıların şifreleri değiştirilecektir.
Bu adım, Elasticsearch güvenliği aktifleştirdikten sonra yeni bir kullanıcı oluşturmak için gereklidir. Buradaki kimlik bilgileri de Apinizer API Manager da tanımlanabilir.

Kullanıcı Ekleme

Yeni kullanıcı eklemek veya güncellemek için aşağıdaki istek yapılır. İstekte kullanıcı adı apinizer_es_cluster, şifresi apinizer ve rolü superuser olan yeni bir kullanıcı eklenmiştir.
Eğer kullanıcı bilgileri güncellenirse, “created” : false olarak dönecektir.
Örnek çıktı:

Şifre Yenileme

Şifre değiştirmek için:
Eğer üstteki komut işe yaramazsa ve eğer Elasticsearch’deki kullanıcıların şifresi kaybedilmiş ise aşağıdaki komut satırından yeni kullanıcı oluşturalarak, cluster kurtarılabilir. Oluşturduğu kullanıcının kimlik bilgilerini kullanarak varolan kullanıcı adı ile parola bilgisini güncelleyebilir.
Ek olarak;
  • Postman gibi API test aracı üzerinde istek gönderileceği zaman isteğin header alanına Authorization: Basic <base64 ile encode edilmiş username:password> bilgisi eklenmelidir.
  • Kibana üzerinden kullanıcı yönetimini gerçekleştirmek için sırasıyla menüden Stack Management > Security > User ekranına gidilmelidir. Kibana kurulum dosyasına /config/kibana.yml aşağıdaki alanlar eklenmelidir.
Ek komutlar;

Apinizer Konfigürasyonu

Tanımlanmış kullanıcının kullanıcı adı ve şifresi Apinizer Manager Console’daki Elasticsearch Kümeleri sayfasından yapılmaktadır.
Elasticsearch Kümeleri - Kimlik Doğrulama

Apinizer - Elasticsearch Kümeleri sayfası - Kimlik doğrulama konfigürasyonu

1

Kimlik doğrulamayı aktifleştirme

Kimlik doğrulama switch butonunu aktifleştirin.
2

Kimlik bilgilerini girme

Kullanıcı adı ve şifre bilgilerini girin.