Preduvjeti
Instalirajte Javu
Instalirajte Elasticsearch
Instalirajte MongoDB
Instalirajte Graylog poslužitelj
Konfigurirajte Graylog
Konfigurirajte Nginx kao obrnuti proxy
Zaključak
Graylog poslužitelj je softverski paket za upravljanje zapisnicima otvorenog koda spreman za poduzeća. Prikuplja zapisnike iz različitih izvora i analizira ih kako bi otkrio i riješio probleme. Greylog poslužitelj je u osnovi kombinacija Elasticsearch, MongoDB i Graylog. Elasticsearch je vrlo popularna aplikacija otvorenog koda za pohranu teksta i pružanje vrlo moćnih mogućnosti pretraživanja. MongoDB je aplikacija otvorenog koda za pohranu podataka u NoSQL formatu. Graylog prikuplja zapisnike iz različitih izvora i pruža nadzornu ploču temeljenu na webu za upravljanje i pretraživanje zapisnika. Graylog također nudi REST API za konfiguraciju i podatke. Omogućuje konfigurabilnu nadzornu ploču koja se može koristiti za vizualizaciju metrike i promatranje trendova pomoću statistike polja, brzih vrijednosti i grafikona s jedne središnje lokacije.
U ovom vodiču naučit ćete instalirati Graylog Server na Ubuntu 16.04. Ovaj vodič je napisan za Graylog Server 2.3, ali može raditi i na novijim verzijama. Također ćete naučiti instalirati Javu, Elasticsearch i MongoDB. Također ćemo osigurati MongoDB instancu i postaviti Nginx reverse proxy za web-baziranu nadzornu ploču i API.
Preduvjeti
- Instanca poslužitelja Vultr Ubuntu 16.04 s najmanje 4 GB RAM-a.
- Korisnik sudoa .
U ovom vodiču ćemo koristiti 192.0.2.1kao javnu IP adresu poslužitelja i graylog.example.comkao naziv domene koji ukazuje na poslužitelj. Zamijenite sva pojavljivanja 192.0.2.1sa svojom javnom IP adresom Vultr i graylog.example.comsa svojim stvarnim imenom domene.
Ažurirajte svoj osnovni sustav pomoću vodiča Kako ažurirati Ubuntu 16.04 . Nakon što se vaš sustav ažurira, nastavite s instalacijom Jave.
Instalirajte Javu
Elasticsearch zahtijeva Java 8 za rad. Podržava i Oracle Java i OpenJDK, ali uvijek se preporučuje da koristite Oracle Javu kada je to moguće. Dodajte Oracle Java PPA spremište:
sudo add-apt-repository ppa:webupd8team/java
Ažurirajte metapodatke APT spremišta:
sudo apt update
Instalirajte najnoviju stabilnu verziju Jave 8, pokrenite:
sudo apt -y install oracle-java8-installer
Prihvatite licencni ugovor kada se to od vas zatraži. Ako je Java uspješno instalirana, trebali biste moći provjeriti njezinu verziju.
java -version
Vidjet ćete sljedeći izlaz.
user@vultr:~$ java -version
java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
Postavite JAVA_HOMEi ostale zadane postavke instaliranjem oracle-java8-set-default. Trčanje:
sudo apt -y install oracle-java8-set-default
Pokrenite echo $JAVA_HOMEnaredbu da provjerite je li varijabla okruženja postavljena ili ne.
user@vultr:~$ echo "$JAVA_HOME"
/usr/lib/jvm/java-8-oracle
Ako ne dobijete gore prikazani izlaz, možda ćete se morati odjaviti i ponovno prijaviti na shell.
Instalirajte Elasticsearch
Elasticsearch je distribuirana, skalabilna i vrlo dostupna aplikacija u stvarnom vremenu koja se koristi za pohranu zapisnika i pretraživanje kroz njih. Podatke pohranjuje u indekse i pretraživanje podataka je vrlo brzo. Pruža različite skupove API-ja, kao što su HTTP RESTful API i izvorni Java API. Elasticsearch se može instalirati izravno kroz spremište Elasticsearch. Dodajte spremište Elasticsearch APT:
echo "deb https://artifacts.elastic.co/packages/5.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-5.x.list
Uvezite PGP ključ koji se koristi za potpisivanje paketa. To će osigurati integritet paketa.
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
Ažurirajte metapodatke APT spremišta.
sudo apt update
Instalirajte paket Elasticsearch:
sudo apt -y install elasticsearch
Nakon što je paket instaliran, otvorite zadanu konfiguracijsku datoteku Elasticsearch.
sudo nano /etc/elasticsearch/elasticsearch.yml
Pronađite sljedeći redak, dekomentirajte ga i promijenite vrijednost iz my-applicationu graylog.
cluster.name: graylog
Možete pokrenuti Elasticsearch i omogućiti mu da se automatski pokrene prilikom pokretanja:
sudo systemctl enable elasticsearch
sudo systemctl start elasticsearch
Elasticsearch sada radi na portu 9200. Provjerite radi li ispravno tako što ćete pokrenuti:
curl -XGET 'localhost:9200/?pretty'
Trebali biste vidjeti izlaz sličan sljedećem.
[user@vultr ~]$ curl -XGET 'localhost:9200/?pretty'
{
"name" : "-kYzFA9",
"cluster_name" : "graylog",
"cluster_uuid" : "T3JQKehzSqmLThlVkEKPKg",
"version" : {
"number" : "5.5.1",
"build_hash" : "19c13d0",
"build_date" : "2017-07-18T20:44:24.823Z",
"build_snapshot" : false,
"lucene_version" : "6.6.0"
},
"tagline" : "You Know, for Search"
}
Ako naiđete na pogreške, pričekajte nekoliko sekundi i pokušajte ponovno jer Elasticsearchu treba vremena da dovrši proces pokretanja. Elasticsearch je sada instaliran i radi ispravno.
Instalirajte MongoDB
MongoDB je besplatan NoSQL poslužitelj baze podataka otvorenog koda. Za razliku od tradicionalne baze podataka koja koristi tablice za organiziranje svojih podataka, MongoDB je orijentiran na dokumente i koristi dokumente slične JSON-u bez shema. Graylog koristi MongoDB za pohranu svoje konfiguracije i meta informacija. Može se instalirati izravno kroz MongoDB spremište. Uvezite GPG ključ koji se koristi za potpisivanje paketa. To će osigurati autentičnost paketa.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
Sada kreirajte datoteku Repozitorija:
echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
Ažurirajte metapodatke APT spremišta.
sudo apt update
Instalirajte MongoDB paket:
sudo apt -y install mongodb-org
Pokrenite MongoDB poslužitelj i omogućite njegovo automatsko pokretanje.
sudo systemctl start mongod
sudo systemctl enable mongod
Instalirajte Graylog poslužitelj
Preuzmite i najnovije spremište za Graylog poslužitelj.
wget https://packages.graylog2.org/repo/packages/graylog-2.3-repository_latest.deb
sudo dpkg -i graylog-2.3-repository_latest.deb
sudo apt update
Instalirajte Graylog paket:
sudo apt install graylog-server
Graylog poslužitelj je sada instaliran na vašem poslužitelju. Prije nego što ga možete pokrenuti, morat ćete konfigurirati nekoliko stvari.
Instalirajte pwgenuslužni program za generiranje jakih lozinki.
sudo apt -y install pwgen
Sada generirajte jaku tajnu lozinke.
pwgen -N 1 -s 96
Izaći ćete slično kao:
[user@vultr ~]$ pwgen -N 1 -s 96
pJqhNbdEY9FtNBfFUtq20lG2m9daacmsZQr59FhyoA0Wu3XQyVZcu5FedPZ9eCiDfjdiYWfRcEQ7a36bVqxSyTzcMMx5Rz8v
Također, generirajte 256-bitni hash za lozinku root adminkorisnika:
echo -n StrongPassword | sha256sum
Zamijenite StrongPasswordlozinkom koju želite postaviti za adminkorisnika. Vidjet ćeš:
[user@vultr ~]$ echo -n StrongPassword | sha256sum
05a181f00c157f70413d33701778a6ee7d2747ac18b9c0fbb8bd71a62dd7a223 -
Otvorite konfiguracijsku datoteku Graylog:
sudo nano /etc/graylog/server/server.conf
Pronađite password_secret =, kopirajte i zalijepite lozinku generiranu pwgennaredbom. Pronađite root_password_sha2 =, kopirajte i zalijepite pretvoreni SHA 256-bitni hash vaše administratorske lozinke. Pronađite #root_email =, dekomentirajte i navedite svoju adresu e-pošte. Dekomentirajte i postavite svoju vremensku zonu na root_timezone. Na primjer:
password_secret = pJqhNbdEY9FtNBfFUtq20lG2m9daacmsZQr59FhyoA0Wu3XQyVZcu5FedPZ9eCiDfjdiYWfRcEQ7a36bVqxSyTzcMMx5Rz8v
root_password_sha2 = 05a181f00c157f70413d33701778a6ee7d2747ac18b9c0fbb8bd71a62dd7a223
root_email = mail@example.com
root_timezone = Asia/Kolkata
Omogućite web-bazirano Graylog sučelje dekomentiranjem #web_enable = falsei postavljanjem njegove vrijednosti na true. Također dekomentirajte i promijenite sljedeće retke kako je navedeno.
rest_listen_uri = http://0.0.0.0:9000/api/
rest_transport_uri = http://192.0.2.1:9000/api/
web_enable = true
web_listen_uri = http://0.0.0.0:9000/
Spremite datoteku i izađite iz uređivača teksta.
Ponovno pokrenite i omogućite uslugu Graylog tako što ćete pokrenuti:
sudo systemctl restart graylog-server
sudo systemctl enable graylog-server
Prema zadanim postavkama, Graylog web sučelje sluša localhostna portu 9000, a API sluša na portu 9000 s URL-om /api. U ovom vodiču koristit ćemo Nginx kao obrnuti proxy tako da se aplikaciji može pristupiti putem standardnog HTTP porta. Instalirajte Nginx web poslužitelj tako što ćete pokrenuti:
sudo apt -y install nginx
Otvorite zadanu datoteku virtualnog hosta upisivanjem.
sudo nano /etc/nginx/sites-available/default
Zamijenite postojeći sadržaj sljedećim redcima:
server
{
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
server_name 192.0.2.1 graylog.example.com;
location / {
proxy_set_header Host $http_host;
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_set_header X-Graylog-Server-URL http://$server_name/api;
proxy_pass http://127.0.0.1:9000;
}
}
Pokrenite Nginx i omogućite mu automatsko pokretanje prilikom pokretanja:
sudo systemctl restart nginx
sudo systemctl enable nginx
Zaključak
Instalacija i osnovna konfiguracija Graylog poslužitelja je sada završena. Sada možete pristupiti Graylog poslužitelju na http://192.0.2.1ili http://graylog.example.comako ste konfigurirali DNS. Prijavite se koristeći korisničko ime admini inačicu običnog teksta lozinke koju ste prethodno postavili root_password_sha2.
Čestitamo - imate potpuno ispravan Graylog poslužitelj instaliran na vašem Ubuntu 16.04 poslužitelju.