Jak zainstalować Graylog Server na CentOS 7

Serwer Graylog to gotowy do zarządzania pakietem oprogramowania do zarządzania logami typu open source. Zbiera dzienniki z różnych źródeł i analizuje je w celu wykrycia i rozwiązania problemów. Serwer Graylog to w zasadzie połączenie Elasticsearch, MongoDB i Graylog. Elasticsearch to bardzo popularna aplikacja typu open source do przechowywania tekstu i zapewniająca bardzo zaawansowane możliwości wyszukiwania. MongoDB to aplikacja typu open source do przechowywania danych w formacie NoSQL. Graylog zbiera dzienniki z różnych źródeł i udostępnia internetowy pulpit nawigacyjny do zarządzania i przeszukiwania dzienników. Graylog zapewnia również interfejs API REST dla konfiguracji i danych. Zapewnia konfigurowalny pulpit nawigacyjny, za pomocą którego można wizualizować metryki i obserwować trendy za pomocą statystyk polowych, szybkich wartości i wykresów z jednej centralnej lokalizacji.

W tym samouczku nauczysz się instalować Graylog Server na CentOS 7. Ten przewodnik został napisany dla Graylog Server 2.3, ale może również działać na nowszych wersjach. Nauczysz się także instalować Java, Elasticsearch i MongoDB. Zabezpieczymy również instancję MongoDB i skonfigurujemy zwrotny serwer proxy Nginx dla internetowego pulpitu nawigacyjnego i interfejsu API.

Wymagania wstępne

  • Instancja serwera Vultr CentOS 7 z co najmniej 4 GB pamięci RAM.
  • Użytkownik sudo .

W tym samouczku użyjemy 192.0.2.1jako publicznego adresu IP serwera i graylog.example.comnazwy domeny wskazanej na serwerze. Zastąp wszystkie wystąpienia 192.0.2.1swoim publicznym adresem IP Vultr i graylog.example.comrzeczywistą nazwą domeny.

Zaktualizuj system podstawowy za pomocą przewodnika Jak zaktualizować CentOS 7 . Po zaktualizowaniu systemu przejdź do instalacji Java.

Zainstaluj Javę

Elasticsearch wymaga Java 8 do uruchomienia. Obsługuje zarówno Oracle Java, jak i OpenJDK, ale zawsze zaleca się używanie Oracle Java, jeśli to możliwe. Oracle zapewnia gotową instalację pakietów RPM. Pobierz Oracle JDK RPM:

wget --no-cookies --no-check-certificate --header "Cookie:oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.rpm"

Zainstaluj pakiet RPM.

sudo yum -y install jdk-8u144-linux-x64.rpm

Jeśli Java została zainstalowana pomyślnie, powinieneś mieć możliwość zweryfikowania jej wersji.

java -version

Zobaczysz następujące dane wyjściowe.

[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)

Ustaw zmienną środowiskową JAVA_HOMEi JRE_HOMEuruchom ją:

echo "export JAVA_HOME=/usr/java/jdk1.8.0_144/" >> ~/.bash_profile
echo "export JRE_HOME=/usr/java/jdk1.8.0_144/jre" >> ~/.bash_profile

Teraz źródłowy plik za pomocą następującego polecenia.

source ~/.bash_profile

Uruchom echo $JAVA_HOMEpolecenie, aby sprawdzić, czy zmienna środowiskowa jest ustawiona, czy nie.

[user@vultr ~]$ echo $JAVA_HOME
/usr/java/jdk1.8.0_144/

Zainstaluj Elasticsearch

Elasticsearch to rozproszona, skalowalna i wysoce dostępna aplikacja do przechowywania dzienników i przeszukiwania ich w czasie rzeczywistym. Przechowuje dane w indeksach, a przeszukiwanie danych jest bardzo szybkie. Zapewnia różne zestawy interfejsów API, takie jak HTTP RESTful API i natywny API Java. Elasticsearch można zainstalować bezpośrednio za pośrednictwem repozytorium Elasticsearch. Utwórz nowy plik repozytorium dla Elasticsearch.

sudo nano /etc/yum.repos.d/elasticsearch.repo

Wypełnij plik następującą zawartością.

[elasticsearch-5.x]
name=Elasticsearch repository for 5.x packages
baseurl=https://artifacts.elastic.co/packages/5.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

Zaimportuj klucz PGP użyty do podpisania paczek. Zapewni to integralność pakietów.

sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

Zainstaluj pakiet Elasticsearch:

sudo yum -y install elasticsearch

Po zainstalowaniu pakietu otwórz domyślny plik konfiguracyjny Elasticsearch.

sudo nano /etc/elasticsearch/elasticsearch.yml

Znajdź następujący wiersz, usuń komentarz i zmień wartość z my-applicationna graylog.

cluster.name: graylog

Możesz uruchomić Elasticsearch i włączyć automatyczne uruchamianie w czasie uruchamiania:

sudo systemctl enable elasticsearch
sudo systemctl start elasticsearch

Elasticsearch działa teraz na porcie 9200. Sprawdź, czy działa poprawnie, uruchamiając:

curl -XGET 'localhost:9200/?pretty'

Powinieneś zobaczyć dane wyjściowe podobne do poniższych.

[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"
}

Jeśli wystąpią błędy, poczekaj kilka sekund i spróbuj ponownie, ponieważ Elasticsearch potrzebuje czasu na zakończenie procesu uruchamiania. Elasticsearch jest teraz zainstalowany i działa poprawnie.

Zainstaluj MongoDB

MongoDB to darmowy serwer bazy danych NoSQL typu open source. W przeciwieństwie do tradycyjnej bazy danych, która używa tabel do organizowania swoich danych, MongoDB jest zorientowana na dokumenty i używa dokumentów podobnych do JSON bez schematów. Graylog używa MongoDB do przechowywania konfiguracji i meta informacji. Można go zainstalować bezpośrednio za pośrednictwem repozytorium MongoDB. Utwórz nowy plik repozytorium dla MongoDB.

sudo nano /etc/yum.repos.d/mongodb.repo

Wypełnij plik następującą zawartością.

[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc

Zainstaluj MongoDB, uruchamiając:

sudo yum -y install mongodb-org

Uruchom serwer MongoDB i włącz go, aby uruchamiał się automatycznie.

sudo systemctl start mongod
sudo systemctl enable mongod

Zainstaluj serwer Graylog

Pobierz najnowsze repozytorium dla serwera Graylog.

sudo rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-2.3-repository_latest.rpm
sudo yum -y update

Zainstaluj Graylog, uruchamiając:

sudo yum -y install graylog-server

Serwer Graylog jest teraz zainstalowany na twoim serwerze. Zanim zaczniesz, musisz skonfigurować kilka rzeczy.

Skonfiguruj Graylog

Zainstaluj pwgennarzędzie do generowania silnych haseł.

sudo yum -y install pwgen

Teraz wygeneruj silne hasło tajne.

pwgen -N 1 -s 96

Wyjdziesz podobny do:

[user@vultr ~]$ pwgen -N 1 -s 96
pJqhNbdEY9FtNBfFUtq20lG2m9daacmsZQr59FhyoA0Wu3XQyVZcu5FedPZ9eCiDfjdiYWfRcEQ7a36bVqxSyTzcMMx5Rz8v

Ponadto wygeneruj 256-bitowy skrót dla hasła adminużytkownika root :

echo -n StrongPassword | sha256sum

Zastąp StrongPasswordhasło, które chcesz ustawić dla adminużytkownika. Zobaczysz:

[user@vultr ~]$ echo -n StrongPassword | sha256sum
05a181f00c157f70413d33701778a6ee7d2747ac18b9c0fbb8bd71a62dd7a223  -

Otwórz plik konfiguracyjny Graylog:

sudo nano /etc/graylog/server/server.conf

Znajdź password_secret =, skopiuj i wklej hasło wygenerowane za pomocą pwgenpolecenia. Znajdź root_password_sha2 =, skopiuj i wklej przekonwertowany 256-bitowy skrót SHA hasła administratora. Znajdź #root_email =, odkomentuj i podaj swój adres e-mail. Odkomentuj i ustaw swoją strefę czasową na root_timezone. Na przykład:

password_secret = pJqhNbdEY9FtNBfFUtq20lG2m9daacmsZQr59FhyoA0Wu3XQyVZcu5FedPZ9eCiDfjdiYWfRcEQ7a36bVqxSyTzcMMx5Rz8v
root_password_sha2 = 05a181f00c157f70413d33701778a6ee7d2747ac18b9c0fbb8bd71a62dd7a223
root_email = [email protected]
root_timezone = Asia/Kolkata

Włącz internetowy interfejs Graylog, usuwając komentarz #web_enable = falsei ustawiając wartość na true. Odkomentuj i zmień następujące wiersze, jak określono.

rest_listen_uri = http://0.0.0.0:9000/api/
rest_transport_uri = http://45.76.214.19:9000/api/
web_enable = true
web_listen_uri = http://0.0.0.0:9000/

Zapisz plik i wyjdź z edytora tekstu.

Uruchom ponownie usługę Graylog, uruchamiając:

sudo systemctl restart graylog-server

Skonfiguruj Nginx jako zwrotny serwer proxy

Domyślnie interfejs sieciowy Graylog nasłuchuje localhostna porcie 9000, a interfejs API nasłuchuje na porcie 9000 z adresem URL /api. W tym samouczku użyjemy Nginx jako odwrotnego proxy, aby aplikacja mogła uzyskać dostęp przez standardowy port HTTP. Zainstaluj serwer WWW Nginx, uruchamiając:

sudo yum -y install nginx

Otwórz domyślnego wirtualnego hosta, wpisując.

sudo nano /etc/nginx/nginx.conf

Znajdź serverblok pod httpi zastąp cały serverblok następującymi liniami.

server
{
    listen 80 default_server;
    listen [::]:80 default_server ipv6only=on;
    server_name graylog.example.com 192.0.2.1;

    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;
    }
}

Uruchom Nginx i włącz go, aby uruchamiał się automatycznie podczas uruchamiania:

sudo systemctl start nginx
sudo systemctl enable nginx

Skonfiguruj firewall i SELinux

Jeśli używasz zapory na swoim serwerze, musisz skonfigurować zaporę, aby ustawić wyjątek dla niektórych portów. Zezwalaj usłudze Elasticsearch i zwrotnemu proxy Nginx na łączenie się spoza sieci.

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --zone=public --permanent --add-port=9200/tcp
sudo firewall-cmd --reload

Jeśli masz włączony system SELinux w swoim systemie, musisz dodać kilka wyjątków w zasadach SELinux.

sudo setsebool -P httpd_can_network_connect 1
sudo semanage port -a -t http_port_t -p tcp 9000
sudo semanage port -a -t http_port_t -p tcp 9200
sudo semanage port -a -t mongod_port_t -p tcp 27017

Wniosek

Instalacja i podstawowa konfiguracja serwera Graylog została zakończona. Możesz teraz uzyskać dostęp do serwera Graylog na http://192.0.2.1lub http://graylog.example.comjeśli masz skonfigurowany DNS. Zaloguj się przy użyciu nazwy użytkownika admini zwykłego tekstu hasła ustawionego root_password_sha2wcześniej.

Gratulacje - na serwerze CentOS 7 zainstalowano w pełni działający serwer Graylog.



Leave a Comment

Jak zainstalować Anchor CMS na CentOS 7 LAMP VPS

Jak zainstalować Anchor CMS na CentOS 7 LAMP VPS

Używasz innego systemu? Anchor CMS to bardzo prosty i niezwykle lekki, darmowy i otwarty system zarządzania treścią (CMS) Blog Engine, który

Jak zaktualizować CentOS 7, Ubuntu 16.04 i Debian 8

Jak zaktualizować CentOS 7, Ubuntu 16.04 i Debian 8

Podczas konfigurowania nowego serwera Linux zaleca się aktualizację jądra systemu i innych pakietów do najnowszej stabilnej wersji. W tym artykule

Skonfiguruj klaster RethinkDB w CentOS 7

Skonfiguruj klaster RethinkDB w CentOS 7

Wprowadzenie RethinkDB to baza danych NoSQL, która przechowuje dane jako dokumenty JSON. Ma bardzo intuicyjny język zapytań i funkcje powszechnie dostępne

Skonfiguruj Magento na CentOS 6

Skonfiguruj Magento na CentOS 6

Niezależnie od tego, czy chcesz umieścić zapasy sklepów online, czy po prostu prosty sklep z akcesoriami technicznymi, Magento jest doskonałym rozwiązaniem dla eCommerce online. Ten artykuł

Jak zainstalować i skonfigurować OrientDB Community Edition na CentOS 7

Jak zainstalować i skonfigurować OrientDB Community Edition na CentOS 7

OrientDB to wielomodowy model open source NoSQL DBMS nowej generacji. Dzięki obsłudze wielu modeli danych, OrientDB może zapewnić większą funkcjonalność i elastyczność

Jak zainstalować Neos CMS na CentOS 7

Jak zainstalować Neos CMS na CentOS 7

Neos to innowacyjny system zarządzania treścią typu open source, który doskonale nadaje się do tworzenia i edytowania treści online. Z myślą o autorach i redaktorach, Neo

Jak zainstalować Vtiger CRM Open Source Edition na CentOS 7

Jak zainstalować Vtiger CRM Open Source Edition na CentOS 7

Vtiger CRM to popularna aplikacja do zarządzania relacjami z klientami, która może pomóc przedsiębiorstwom zwiększyć sprzedaż, zapewnić obsługę klienta i zwiększyć zyski. ja

Jak zainstalować MaraDNS na CentOS 6

Jak zainstalować MaraDNS na CentOS 6

MaraDNS to lekki, ale solidny program serwera DNS typu open source. W porównaniu z innymi aplikacjami tego samego rodzaju, takimi jak ISC BIND, PowerDNS i djbdns

Instalowanie Netdata na CentOS 7

Instalowanie Netdata na CentOS 7

Używasz innego systemu? Netdata jest wschodzącą gwiazdą w dziedzinie monitorowania wskaźników systemowych w czasie rzeczywistym. W porównaniu z innymi narzędziami tego samego rodzaju, Netdata:

Jak zainstalować Starbound Server na CentOS 7

Jak zainstalować Starbound Server na CentOS 7

Używasz innego systemu? W tym samouczku wyjaśnię, jak skonfigurować serwer Starbound na CentOS 7. Wymagania wstępne Musisz mieć tę grę na sobie

Clustering RabbitMQ na CentOS 7

Clustering RabbitMQ na CentOS 7

RabbitMQ to broker komunikatów typu open source, który obsługuje AMQP, STOMP i inne technologie komunikacyjne. Jest szeroko stosowany w aplikacjach dla przedsiębiorstw

Skonfiguruj SA-MP San Andreas Multiplayer Server na CentOS 6

Skonfiguruj SA-MP San Andreas Multiplayer Server na CentOS 6

Witamy w innym samouczku Vultr. Tutaj dowiesz się, jak zainstalować i uruchomić serwer SAMP. Ten przewodnik został napisany dla CentOS 6. Wymagania wstępne Będziesz potrzebował

Zainstaluj Elgg na CentOS 7

Zainstaluj Elgg na CentOS 7

Używasz innego systemu? Elgg to silnik sieci społecznościowych typu open source, który umożliwia tworzenie środowisk społecznościowych, takich jak kampusowe sieci społecznościowe

Jak zainstalować serwer RStudio na CentOS 7

Jak zainstalować serwer RStudio na CentOS 7

RStudio Server to internetowa wersja RStudio, która jest serią narzędzi zaprojektowanych w celu ułatwienia kodowania przy użyciu języka programowania R. W thi

Instalowanie Bolt CMS na CentOS 7

Instalowanie Bolt CMS na CentOS 7

Bolt to open source CMS napisany w PHP. Kod źródłowy Bolts jest hostowany na GitHub. Ten przewodnik pokaże Ci, jak zainstalować Bolt CMS na nowym CentOS 7 Vult

Jak zainstalować Elasticsearch na instancji serwera Vultr CentOS 7

Jak zainstalować Elasticsearch na instancji serwera Vultr CentOS 7

Elasticsearch to popularny wyszukiwarka pełnotekstowa i silnik analityczny typu open source. Dzięki swojej wszechstronności, skalowalności i łatwości użytkowania, Elasticsearch jest szeroko rozpowszechniony

Wdróż Kubernetes za pomocą Kubeadm na CentOS 7

Wdróż Kubernetes za pomocą Kubeadm na CentOS 7

Omówienie Ten artykuł ma na celu pomóc ci w szybkim uruchomieniu klastra Kubernetes z kubeadm. W tym przewodniku zostaną wdrożone dwa serwery

Sails.js należy skonfigurować do programowania w CentOS 7

Sails.js należy skonfigurować do programowania w CentOS 7

Używasz innego systemu? Wprowadzenie Sails.js to framework MVC dla Node.js, podobny do Ruby on Rails. Umożliwia tworzenie nowoczesnych aplikacji wer

Jak zainstalować PufferPanel (bezpłatny panel sterowania Minecraft) na CentOS 7

Jak zainstalować PufferPanel (bezpłatny panel sterowania Minecraft) na CentOS 7

Wprowadzenie W tym samouczku zainstaluj PufferPanel na naszym Vultr VPS. PufferPanel to otwarty, darmowy panel kontrolny do zarządzania tobą

Lepsze narzędzia monitorowania dla Ubuntu i CentOS

Lepsze narzędzia monitorowania dla Ubuntu i CentOS

Wprowadzenie Systemy Linux są domyślnie dostarczane z narzędziami do monitorowania, takimi jak top, df i du, które pomagają monitorować procesy i miejsce na dysku. Często jednak są

Funkcjonalności warstw architektury referencyjnej Big Data

Funkcjonalności warstw architektury referencyjnej Big Data

Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Chcesz zobaczyć rewolucyjne wynalazki Google i jak te wynalazki zmieniły życie każdego człowieka dzisiaj? Następnie czytaj na blogu, aby zobaczyć wynalazki Google.

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Whatsapp w końcu uruchomił aplikację Desktop dla użytkowników komputerów Mac i Windows. Teraz możesz łatwo uzyskać dostęp do Whatsapp z systemu Windows lub Mac. Dostępne dla Windows 8+ i Mac OS 10.9+

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

Energia jądrowa jest zawsze pogardzana, nigdy jej nie szanujemy z powodu przeszłych wydarzeń, ale nie zawsze jest zła. Przeczytaj post, aby dowiedzieć się więcej na ten temat.

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Koncepcja autonomicznych samochodów, które wyjadą na drogi za pomocą sztucznej inteligencji, to marzenie, które mamy już od jakiegoś czasu. Ale pomimo kilku obietnic nigdzie ich nie widać. Przeczytaj ten blog, aby dowiedzieć się więcej…

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Wzrasta liczba ataków ransomware, ale czy sztuczna inteligencja może pomóc w radzeniu sobie z najnowszym wirusem komputerowym? Czy AI jest odpowiedzią? Przeczytaj tutaj, wiedz, że sztuczna inteligencja jest zmorą lub zgubą

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

Sztuczna inteligencja nie jest dla ludzi nową nazwą. Ponieważ sztuczna inteligencja jest włączona do każdego strumienia, jednym z nich jest opracowywanie narzędzi zwiększających ludzką wydajność i dokładność. Skorzystaj z tych niesamowitych narzędzi uczenia maszynowego i uprość swoje codzienne zadania.

Wgląd w 26 technik analizy Big Data: część 2

Wgląd w 26 technik analizy Big Data: część 2

Zawsze potrzebujemy Big Data Analytics do efektywnego zarządzania danymi. W tym artykule omówiliśmy kilka technik analizy Big Data. Sprawdź ten artykuł.

Ataki DDOS: krótki przegląd

Ataki DDOS: krótki przegląd

Czy jesteś również ofiarą ataków DDOS i nie masz pewności co do metod zapobiegania? Przeczytaj ten artykuł, aby rozwiązać swoje pytania.