Graylogegy teljes értékű, nyílt forráskódú megoldás a központosított naplógyűjtéshez, tároláshoz, megjelenítéshez, szűréshez, kereséshez és elemzéshez. Felügyeleti feladatokra és riasztások küldésére is használható. A Graylog több száz hálózati eszközről tud naplókat és eseményeket gyűjteni, beleértve a Linux-kiszolgálókat, Windows-kiszolgálókat, hálózati berendezéseket vagy egyéb hardvereket. A Graylog egy hatékony platform, amely terabájtnyi naplót képes tárolni, miközben lehetővé teszi a szinte azonnali keresést. Ez az útmutató a Graylog-verem telepítésével és a naplózási feladatokhoz szükséges alapvető képességeivel foglalkozik.
A következő összetevők a Graylog verem részét képezik:
- Graylog Server – vizualizációs és konfigurációs webes felület.
- MongoDB – a metaadatok tárolására használt adatbázis.
- Az ElasticSearch vagy annak forkja OpenSearch – strukturált és strukturálatlan naplók tárolására és teljes szöveges keresésére szolgál.
- Java (OpenJDK) – az OpenSearch (ElasticSearch) futási környezete.
A naplók tárolásához az OpenSearch-t használjuk, amely az ELK verem (Elasticsearch + Logstash + Kibana) ingyenes, nyílt forráskódú analógja.
A Graylog Stack telepítése Linux rendszereken
A Graylog-verem telepítési útmutatója változatonként nagyon eltérő. Ezért azt javasoljuk, hogy manuálisan válassza ki Linux disztribúcióját és Graylog verzióját ahttps://go2docs.graylog.org/current/home.htmweboldal. Ez az útmutató a Debian 12-t és a Graylog 5.2-t használja.
A Graylog verem a docker-compose segítségével futtatható, de ebben az esetben az összes összetevő teljes telepítését fedezzük.
A következőket fogjuk használni:
- OpenJDK 17
- OpenSearch2.x (vagyElaszticsearch7.10.2 – az egyetlen verzió, amely Graylog 5.2 kompatibilis)
- MongoDB5.x vagy 6.x (A MongoDB 7 jelenleg nem javasolt a telepítéshez)
- Kisebb telepítéshez a Graylog Server legalább 2 GB RAM-ot igényel.
Telepítse az előfeltételeket, és adja hozzá a MongoDB 6 repót:
$ sudo apt-get install gnupg curl
$ curl -fsSL https://www.mongodb.org/static/pgp/server-6.0.asc | sudo gpg -o /usr/share/keyrings/mongodb-server-6.0.gpg --dearmor
$ echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-6.0.gpg] https://repo.mongodb.org/apt/debian bullseye/mongodb-org/6.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
$ sudo apt-get update
Most telepítse a MongoDB csomagot:
$ sudo apt-get install -y mongodb-org

Az én esetemben a Mongodb Debian 12-re történő telepítése hibát eredményez:
The following packages have unmet dependencies: mongodb-org-mongos : Depends: libssl1.1 (>= 1.1.1) but it is not installable mongodb-org-server : Depends: libssl1.1 (>= 1.1.1) but it is not installable I had to install an additoonal libssl package:
Javítsa ki a libssl csomag telepítésével.
$ sudo wget https://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb
$ sudo dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb
Indítsa el a szolgáltatást:
$ sudo systemctl daemon-reload
$ sudo systemctl enable mongod.service
$ sudo systemctl restart mongod.service
$ sudo systemctl --type=service --state=active | grep mongod
Ezután folytassa az OpenSearch telepítésével.
$ sudo apt-get update && sudo apt-get -y install lsb-release ca-certificates curl gnupg2
Adja hozzá a repót:
$ curl -o- https://artifacts.opensearch.org/publickeys/opensearch.pgp | sudo gpg --dearmor --batch --yes -o /usr/share/keyrings/opensearch-keyring
$ echo "deb [signed-by=/usr/share/keyrings/opensearch-keyring] https://artifacts.opensearch.org/releases/bundle/opensearch/2.x/apt stable main" | sudo tee /etc/apt/sources.list.d/opensearch-2.x.list
$ sudo apt update
További információ:Amit az HBO Max és a Discovery Plus egyesüléséről tudni kell: Kulcsfontosságú információk és tartalomelemzés
Az OpenSearch 2.12-től kezdve rendszergazdai jelszót kell beállítania a telepítés során:
$ sudo OPENSEARCH_INITIAL_ADMIN_PASSWORD=$(tr -dc A-Z-a-z-0-9_@#%^-_=+ < /dev/urandom | head -c${1:-32}) apt-get install opensearch


Ezután adja meg az OpenSearch beállításait:
$ sudo nano /etc/opensearch/opensearch.yml
Egy egyszerű egycsomópontos konfigurációhoz elegendő a következő paraméterek konfigurálása:
cluster.name: graylog
node.name: ${HOSTNAME}
path.data: /var/lib/opensearch
path.logs: /var/log/opensearch
discovery.type: single-node
network.host: 0.0.0.0
action.auto_create_index: false
plugins.security.disabled: true
indices.query.bool.max_clause_count: 32768
Állítsa be az e-mail értesítések küldéséhez használt SMTP-kiszolgáló beállításait:
transport_email_enabled = true transport_email_hostname = smtp.gmail.com transport_email_port = 465 transport_email_use_auth = true transport_email_use_tls = false transport_email_use_ssl = true transport_email_auth_username = transport_email_auth_password = transport_email_subject_prefix = [graylog] transport_email_from_email = transport_email_web_interface_url =
Ezután módosítsa az alapértelmezett Java beállításokat:
$ sudo nano /etc/opensearch/jvm.options
Az Xms és Xmx paraméterekkel adja meg, hogy a Java virtuális gép mennyi memóriát tud használni. Javasoljuk, hogy itt állítsa be a gazdagép RAM-jának felét. Például, ha a gazdagép 8 GB RAM-mal rendelkezik, 4 GB-ot itt rendeljen:
-Xms4g -Xmx4g


A virtuális memória beállításainak módosítása:
$ sudo sysctl -w vm.max_map_count=262144
$ sudo echo 'vm.max_map_count=262144' >> /etc/sysctl.conf
Indítsa el az OpenSearch szolgáltatást:
$ sudo systemctl enable --now opensearch


Ezután folytassa a következőveltelepítse a Graylog szervert. A Graylognak két verziója van. Az ingyenesGraylog Openés az előfizetéses vállalkozásGraylog műveletek.
A Graylog Open telepítéséhez:
$ wget https://packages.graylog2.org/repo/packages/graylog-5.2-repository_latest.deb
$ sudo dpkg -i graylog-5.2-repository_latest.deb
$ sudo apt-get update && sudo apt-get install graylog-server
Hozzon létre jelszavakat két változóhoz,password_secretésroot_password_sha2. A Graylog nem indul el nélkülük.
A password_secret jelszónak legalább 64 karakter hosszúnak kell lennie:
$ pwgen -N 1 -s 96
Ezután szerezze be a Graylog rendszergazdai jelszó kivonatát. A következő parancs kivonatolja a beírt jelszót:
$ echo -n "Enter Password: " && head -1 </dev/stdin | tr -d 'n' | sha256sum | cut -d" " -f1
Adja hozzá a kapott password_secret és root_password_sha2 értékeket/etc/graylog/server/server.conf
Állítsa be a Graylog webszerver IP-címét és portjáthttp_bind_address.


Graylog indítása:
$ sudo systemctl enable --now graylog-server
A Graylog Configuration használatának első lépései
Most jelentkezzen be a Graylog webes felületére a konfigurációs fájlban megadott adminisztrátori felhasználó és jelszó használatával. Ezt a jelszót azonban a rendszer nem fogadja el az első bejelentkezéskor.
Ha megnézi a GrayLog szerver naplóit, érdekes üzenetet talál:
$ cat /var/log/graylog-server/server.log
It seems you are starting Graylog for the first time. To set up a fresh install, a setup interface has been started. You must log in to it to perform the initial configuration and continue. Initial configuration is accessible at 0.0.0.0:9000, with username 'admin' and password 'eDLaYAlaeX'. Try clicking on https://admin:[email protected]:9000


Az első bejelentkezéshez használja a naplófájl ideiglenes jelszavát. Használja az egyszerű kezdeti konfigurációs varázslót. A Graylog adatcsomópont-mód egy többcsomópontos OpenSearch-fürt konfigurálására szolgál. Ez a lépés kihagyható az egyszerű konfigurálás érdekében egyetlen naplógazdagéppel.


Ezután jelentkezzen be a Graylog webes felületére aadminfelhasználó és jelszó:


Miután bejelentkezett, hozza létre a Graylog-felhasználót a következő alattRendszer->Felhasználók és csapatok. A beépített Admin fiók egyes beállításai nem szabhatók testre, ezért érdemes külön felhasználói fiókot létrehozni. Rendelje hozzá a rendszergazdai szerepkört ehhez a felhasználóhoz, és adjon meg egy e-mail címet.
Most létre kell hoznunk aBemenetek(adatgyűjtők). Célszerű külön bemenetet létrehozni minden eszközosztályhoz (Linux szerverek, számítógépes hálózati eszközök, Windows gazdagépek stb.).
Létrehozzuk aSyslog UDPbemenet a Linux gépekhez. Adja meg a nevét és azt a portot, amelyen a Graylog szerver adatokat fog fogadni. A többi beállítást hagyja alapértelmezettként.


Most menjen ideRendszer->Indexekés hozzon létre egy külön indexet a Linux eszközosztályhoz.
Adjon meg egy nevet, leírást és előtagot (példáullinux_indx). Állítsa be, hogy hány napig őrizze meg a régi naplókat, mikor törölje a régi indexeket, és adja meg az index maximális méretét.


Hozzon létre egy különAdatfolyam minden bemenethez.Ez lehetővé teszi a különböző eszközosztályokból származó naplók felosztását a különböző indexek között. Menj ideFolyam-> Stream létrehozása -> adja meg az adatfolyam nevét, és válassza ki a használni kívánt indexet.
Az adatfolyam beállításainál adjon hozzá egy új szabályt, amely meghatározza az adatfolyamhoz rendelt naplók típusát. A példában válassza kiMatch Input-> válassza ki a sajátjátLinux bemenet.


Ezután indítsa el a streamet.


Hogyan küldjünk naplókat Linuxról a Graylogba
Most állítsa be a klienseszközöket, hogy eseményeket és naplókat küldjenek a Graylognak. A Graylog különféle forrásokból képes adatokat fogadni: Filebeat, Winlogbeat, Nxlog, Syslog, Rsyslog stb.
A naplók összegyűjtéséhez és a Graylogba való elküldéséhez használhatjarsyslogLinux szervereken
$ sudo apt install rsyslog


$ sudo systemctl status rsyslog
Ha az rsyslog szolgáltatás fut, állítsa be, hogy mely naplókat küldje el a Graylognak.
$ sudo nano /etc/rsyslog.d/60-graylog.conf
Adja hozzá a következő sort a fájlhoz:
*.*@192.168.14.146:20514;RSYSLOG_SyslogProtocol23Format
Ebben a példában az összes naplót syslog formátumban küldjük el a Graylog szervernek (192.168.14.146) azon a porton, amelyet a bemenetre (20514) állított be.
Indítsa újra az rsyslogot:
$ sudo systemctl restart rsyslog
Naplók keresése és elemzése a Graylogban
Most menjen aKeresés a Graylogbanfülön válassza ki a „Linux” adatfolyamot, és látni fogja az összes eseményt, amely az elmúlt 5 percben érkezett a gazdagéptől (az időtartomány módosítható).
Használjon egyszerű szűrőket konkrét események megkereséséhez. A Graylog keresősáv interaktív. A keresősávban kiválaszthat különböző eseménytulajdonságokat, és választhat a javasolt lehetőségek közül.


Ha például meg szeretné keresni a sikertelen SSH-csatlakozási kísérletekkel kapcsolatos eseményeket, használja a következő keresési szűrőt:
source:srv-ubun01 AND application_name:sshd AND message:Fail*


Ez a lekérdezés visszaadja az összes naplót, amely megfelel mindhárom feltételnek (aANDparaméter). Ha az ÉS nincs megadva, a Graylog azt feltételezi, hogy eseményeket keres ebbenORmód.
A táblázat a keresési feltételeknek megfelelő eseményeket jeleníti meg. Bővítheti és felfedezheti a napló részleteit. A Graylog keresési szűrői meglehetősen egyszerűek és intuitív módon használhatók és felfedezhetők. Bármilyen eseményt bármikor kibonthat, megtekintheti a rendelkezésre álló mezőket (eseményattribútumokat), és értékeik segítségével szűrhet és kereshet konkrét eseményeket.
A Graylog lehetővé teszi különböző irányítópultok létrehozását és testreszabását, amelyek információkat jelenítenek meg az Önt érdeklő eseményekről (beleértve az események számát, gazdagépeket, csoportelemeket, grafikonokat vagy térképeket). A widgetek az irányítópultok testreszabására szolgálnak.

Graylog riasztások konfigurálása esemény előfordulásakor
Bizonyos események bekövetkezésekor a Graylog automatikus értesítéseket (riasztásokat) küldhet. Például azt szeretném, ha a Graylog e-mailt küldene nekem, ha valaki SSH-n keresztül bejelentkezik az egyik szerveremre.
Menj ideFigyelmeztetések->Figyelmeztetések és események. Az Értesítés lapon adja meg azokat az e-mail címeket, amelyekre e-mailt küldhet.
A Graylog beépített sablonokkal rendelkezik a riasztások küldéséhez az MS Teams és a Slack felé. A Graylog üzenetek küldése a WhatsApp vagy a Telegram messengerekre további beépülő modulok segítségével konfigurálható.
Hozzon létre egy lekérdezést, hogy megkeresse azokat az eseményeket, amelyekről értesítést szeretne kapni az Eseménydefinícióban. A Linux gazdagépekre történő SSH-bejelentkezések nyomon követéséhez válassza ki a megfelelő adatfolyamot, és adjon meg egy keresési lekérdezést:
application_name:sshd AND message:Accepted password*
A feltételeknek megfelelő események listája megjelenik a jobb oldali előnézeti ablaktáblában. Ellenőrizze, hogy az összes keresett esemény megtalálható-e. Ha nem, szerkessze a keresési lekérdezést.


Nincs más hátra, mint az értesítés típusának kiválasztása ->email. Ha egy bizonyos esemény történik a naplókban, a Graylog e-mail értesítést küld.
Ebben a cikkben a Graylog központi gyűjtéséhez és elemzéséhez való központi telepítésének és használatának alapjait ismertetjük. A következő cikkben megvizsgáljuk, hogyan használható a Graylog a Windows-kiszolgálók naplóinak központi gyűjtésére és keresésére.









