Pazar, Aralık 22, 2024

NGINX Reverse Proxy Üzerinden Grafana’ya Erişim

Grafana kardeşimiz öncelikli olarak NGINX arasında çalışmak için ayarlanmadığı için ufak bir değişiklik yapmamız gerekiyor. Bu ayarı yapmak için /etc/grafana/grafana.ini aşağıdaki değişikliği yapın

[server]
http_port = 3000
domain = metrics.mertcangokgoz.com
root_url = 

Ardından NGINX üzerinde yeni bir conf dosyası açıp aşağıdaki eklemeyi yapın ve servisi yeniden başlatın.

server {
        listen 443 ssl http2;
        listen [::]:443 ssl http2;

        server_name metrics.mertcangokgoz.com;
        root /usr/share/grafana/;

        # SSL
        ssl_certificate /root/.acme.sh/metrics.mertcangokgoz.com/fullchain.cer;
        ssl_certificate_key /root/.acme.sh/metrics.mertcangokgoz.com/metrics.mertcangokgoz.com.key;
        ssl_trusted_certificate /root/.acme.sh/metrics.mertcangokgoz.com/fullchain.cer;

        # security
        add_header X-Frame-Options "SAMEORIGIN" always;
        add_header X-XSS-Protection "1; mode=block" always;
        add_header X-Content-Type-Options "nosniff" always;
        add_header Referrer-Policy "no-referrer-when-downgrade" always;
        add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;

        # . files
        location ~ /\.(?!well-known) {
                deny all;
        }

        # logging
        access_log /var/log/nginx/metrics.mertcangokgoz.com.access.log;
        error_log /var/log/nginx/metrics.mertcangokgoz.com.error.log warn;

        # reverse proxy
        location / {
                proxy_pass http://localhost:3000/;
                proxy_set_header Host $host;
        }
        # additional config
        include /etc/nginx/general.conf;
}

# subdomains redirect
server {
        listen 443 ssl http2;
        listen [::]:443 ssl http2;

        server_name *.metrics.mertcangokgoz.com;

        # SSL
        ssl_certificate /root/.acme.sh/metrics.mertcangokgoz.com/fullchain.cer;
        ssl_certificate_key /root/.acme.sh/metrics.mertcangokgoz.com/metrics.mertcangokgoz.com.key;
        ssl_trusted_certificate /root/.acme.sh/metrics.mertcangokgoz.com/fullchain.cer;

        return 301 https://metrics.mertcangokgoz.com$request_uri;
}

# HTTP redirect
server {
        listen 80;
        listen [::]:80;

        server_name .metrics.mertcangokgoz.com;

        location / {
                return 301 https://metrics.mertcangokgoz.com$request_uri;
        }
}

Servisi yeniden başlattığınızda site subdomain üzerinden erişilebilir hale gelmiş olacaktır.