
Estimated reading time: 9 minute(s)
Merhaba bu yazımda docker üzerinde çalışan Kibana uygulamasına ücretsiz bir şekilde nasıl kullanıcı doğrulama işlemi yapabileceğinizi anlatmaya çalışacağım.
Daha önceden yazdığım ELK Stack kurulumu yazısına aşağıdaki linkten ulaşabilirsiniz.

Daha önceden oluşturduğumuz Docker Compose’umuza Nginx’i yeni bir servis olarak ekleyeceğiz. Bu servisin yapacağı iş “5601” portunda yayın yapan Kibana’yı o portta bloklamak ve farklı bir portta proxy ile doğrulayarak eriştirmek olacak.
Nginx servisimiz şu şekilde olacak;
nginx: image: compareg/nginx-basic-auth-proxy:v1 ports: - 5611:80 - 5612:5612 environment: - BASIC_AUTH_USERNAME - BASIC_AUTH_PASSWORD - PROXY_PASS=http://kibana:5601/ networks: - elasticstack
Servisimiz “nginx-basic-auth-proxy” image’ını kullanıyor. 5601 portunu alıp 5611 portundan yayınlıyor. Tanımlanmış iki tane değerimiz var. Portainer’da ELK stack’imizde giriş bilgilerimizi aşağıdaki gibi tanımlıyoruz.

Diğer dikkat edilecek konu da yeni eklediğimiz nginx servisimizin ELK stack ile aynı network’de çalışması. Bizim stack’imiz “elasticstack” isimli network’de çalışıyor.
Son durumda stack’imiz aşağıdaki gibi olmalıdır.
version: "3.4" services: nginx: image: compareg/nginx-basic-auth-proxy:v1 ports: - 5611:80 - 5612:5612 environment: - BASIC_AUTH_USERNAME - BASIC_AUTH_PASSWORD - PROXY_PASS=http://kibana:5601/ networks: - elasticstack elasticsearch: image: elasticsearch:7.9.2 environment: - discovery.type=single-node - bootstrap.memory_lock=true - "ES_JAVA_OPTS=-Xms512m -Xmx512m" ulimits: memlock: soft: -1 hard: -1 volumes: - elasticsearch-volume:/usr/share/elasticsearch/data ports: - 9200:9200 - 9300:9300 networks: - elasticstack logstash: image: logstash:7.9.2 ports: - "5000:5000" volumes: - /run/desktop/mnt/host/c/data/logstash:/etc/logstash command: logstash -f /etc/logstash/conf.d/ environment: LS_JAVA_OPTS: "-Xms256m -Xmx256m" depends_on: - elasticsearch networks: - elasticstack kibana: image: kibana:7.9.2 container_name: kibana volumes: - kibana-volume:/usr/share/kibana/ ports: - 5601:5601 depends_on: - elasticsearch networks: - elasticstack networks: elasticstack: volumes: kibana-volume: external: true logstash-volume: external: true elasticsearch-volume: external: true
ELK stack servislerimizin listesi aşağıdadır.

Şimdi deneyelim.
5601 portuna artık erişilemez.
http://localhost:5611 adresine girdiğimizde aşağıdaki sayfa açılacaktır.

Başarılı giriş olmaması durumunda karşılaşılacak hata aşağıdaki gibidir.

Kullanıcı adı ve şifreyi doğru girdiğimizde kibana uygulamamız açılacaktır.

Umarım faydalı bir yazı olmuştur.
Okuduğunuz için teşekkürler.