En este tutorial, veremos cómo configurar Kibana 4 con Nginx. En la versión 4, kibana se puede iniciar como un servicio independiente en lugar de configurar Nginx para servir la instalación de kibana.
Hay dos ventajas cuando configuramos Kibana 4 con Nginx,
1. Kibana 4 normalmente escucha en el puerto 5601 y se puede acceder a él a través de http:ip-add-ress:5601. Con Nginx, podemos hacer que el portal kibana esté disponible en el puerto 80 o 443; aquí configuraremos Nginx con SSL para kibana para asegurar la comunicación entre kibana y el navegador del usuario final.
2. Kibana no viene con ningún tipo de acceso al portal protegido por contraseña. Con Nginx, podemos configurar de tal manera que el usuario debe cumplir con el mecanismo de autenticación antes de ingresar al portal.
Instalar Nginx:
Para instalar Nginx usando yum necesitamos incluir el repositorio de Nginx, instalar el repositorio de Nginx.
# rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
Instale Nginx emitiendo el siguiente comando.
# yum -y install nginx httpd-tools
Cree un archivo de contraseña para la autenticación básica de los usuarios de http, esto es para habilitar el acceso protegido por contraseña al portal de Kibana. Reemplace "raj" con su propio nombre de usuario.
# htpasswd -c /etc/nginx/conf.d/kibana.htpasswd raj
Configurar Nginx:
Cree un archivo de configuración con el nombre kibana4.conf en el directorio /etc/nginx/conf.d.
# vi /etc/nginx/conf.d/kibana4.conf
Coloque el siguiente contenido en el archivo kibana4.conf, asumiendo que tanto kibana como Nginx están instalados en el mismo servidor.
server { listen 80; server_name kibana.itzgeek.local; ## Replace with your domain name return 301 https://$server_name$request_uri; } server { listen *:443 ; ssl on; ssl_certificate /etc/pki/tls/certs/logstash-forwarder.crt; ## Replace with your own certificate ssl_certificate_key /etc/pki/tls/private/logstash-forwarder.key; ## Replace with your own key server_name kibana.itzgeek.local; ## Replace with your domain name access_log /var/log/nginx/kibana.access.log; error_log /var/log/nginx/kibana.error.log; location / { auth_basic "Restricted"; auth_basic_user_file /etc/nginx/conf.d/kibana.htpasswd; proxy_pass http://kibana.itzgeek.local:5601; ## Replace with your kibana instance } }
Reinicie el servicio Nginx.
# systemctl restart nginx.service
Configurar SELinux;
Solía obtener los siguientes errores en los registros de Nginx, SELinux es uno de los motivos.
2015/04/09 15:01:20 [crit] 1190#0: *3 connect() to 127.0.0.1:5601 failed (13: Permission denied) while connecting to upstream
Podemos usar el siguiente comando para generar las reglas de política que permitirían a Nginx conectarse al servidor ascendente.
# grep nginx /var/log/audit/audit.log | audit2allow -M nginx # semodule -i nginx.pp
Acceder a Kibana:
Ahora acceda al portal de Kibana con FQDN (http://kibana.itzgeek.local ), será redirigido a la versión segura de FQDN; Es posible que se le pida que confíe en la conexión segura en caso de que haya utilizado un certificado autofirmado. Una vez que haya redirigido la versión https del sitio web, se le pedirá que ingrese el nombre de usuario y la contraseña que creó anteriormente.
O puede usar la dirección IP en lugar de FQDN.
https://your-ip-address
¡Eso es todo! Ha configurado correctamente Kibana con Nginx.