Zabezpiecz Netdata przy użyciu podstawowego uwierzytelniania nginx http

Tagi: #<Tag:0x00007f8a30b21530> #<Tag:0x00007f8a30b21300> #<Tag:0x00007f8a30b211e8>

Instalacja

Zainstaluj NGINX i apache2-utils, uruchamiając następujące polecenia:

sudo apt install nginx apache2-utils

Twoja konfiguracja NGINX powinna być gotowa.

Skonfiguruj uwierzytelnianie

Uruchom to polecenie, aby utworzyć:

sudo htpasswd -c /etc/nginx/.htpasswd <nazwa użytkownika>

Naciśnij klawisz Enter i wpisz hasło dla użytkownika.
Sprawdź, czy nazwa użytkownika oraz hasło zostały utworzone, uruchamiając polecenie:

cat /etc/nginx/.htpasswd

Konfiguracja

Otwórz plik konfiguracyjny NGINX (nginx.conf) i znajdź blok http. (Twój plik nginx.conf zwykle znajduje się w /usr/local/nginx/conf, /etc/nginx lub /usr/local/etc/nginx)

Dodaj następujące konfiguracje do bloku http:

upstream backend {
   server 127.0.0.1:19999;
   keepalive 64;
}

server {
   listen <127.0.0.1>:80;
   server_name <example.com>;

   auth_basic "Protected";
   auth_basic_user_file /etc/nginx/.htpasswd;

   location / {
     proxy_set_header X-Forwarded-Host $host;
     proxy_set_header X-Forwarded-Server $host;
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
     proxy_pass http://backend;
     proxy_http_version 1.1;
     proxy_pass_request_headers on;
     proxy_set_header Connection "keep-alive";
     proxy_store off;
   }
}

UWAGA

  • Zastąp <127.0.0.1> swoim publicznym adresem IP VPS.
  • Zastąp <example.com> własną domeną.

Zapisz plik konfiguracyjny i zamknij go. Następnie sprawdź konfigurację, aby sprawdzić, czy wszystko jest w porządku.

sudo nginx -t

Przeładuj NGINX, jeśli nie wystąpił błąd:

sudo systemctl reload nginx

Otwórz przeglądarkę i przejdź do <127.0.0.1> lub <example.com>. Użyj nazwa użytkownika i hasła, aby uzyskać dostęp do interfejsu.

Wniosek

W tym poradniku zainstalowaliśmy Netdata i użyliśmy NGINX do skonfigurowania odwrotnego proxy, abyśmy mogli uniemożliwić publiczny dostęp do interfejsu Netdata.