### Mundarija * [Kirish](#kirish) * [Talablar](#talablar) - [Nginx o'rnatish](#nginx-o'rnatish) - [Goaccess o'rnatish](#goaccess-o'rnatish) - [Bonus: Shaxarlar bazasi](#goaccess-geoip) * [Sozlash](#sozlash) * [Bonus: shaxar nomlari](#shaxar-nomlari) * [Tugadi](#tugadi) # Kirish Goaccess instrumentini ishlatib nginx loglarini qulay va chiroyli web saxifaga eksport qilishni ko'rib chiqamiz. Bu qo'llanma sizda allqachon linux platformasidagi web server bor va unga `ssh` yoki boshqa yo'llar bilan kira olasiz deb taxmin qiladi. Men [cloud.ru](https://cloud.ru)dan olgan bepul serverimni ishlatdim. Unga `ssh` orqali kiraman. # Talablar Bu bo'limda asosan kerakli dasturlarni yuklash/o'rnatish bilan shug'ullanamiz. Qisqa talablar quydagilardan iborat. Ularni qanday o'rnatishni bilsangiz yoki allaqachon o'rnatilgan bo'lsa tashlab o'tib ketsangiz bo'ladi. 1. Nginx 2. Goaccess 3. Bonus: Shaxarlar bazasi 4. Bonus: autentifikatsiya uchun kerakli qo'shimcha dasturlar. ## Nginx Nginx bizga `goaccess` dasturi yaratgan `html` hisobotni ochiq internetga yetkazib berish uchun kerak bo'ladi. Nginx o'rniga boshqa dasturlar ishlatsanginz ham bo'ladi masalan: `apache` yokida boshqa statik faylarrni uzatib bera oladigan dasturlar. Nginx o'rnatish uchun official dokumentatsiya: [Downloads nginx](https://nginx.org/en/linux_packages.html) ```bash apt isntall nginx ``` nginx to'gri o'rnatilganini tekshirish ```bash nginx -v ``` quydagiga o'xshash natija berishi kerak > nginx version: nginx/1.24.0 (Ubuntu) ## Goaccess Goaccess o'rnatish uchun official dokumentatsiya: [Download goaccess](https://goaccess.io/download) ```bash apt install goaccess ``` goaccess to'gri o'rnatilganini tekshirish ```bash nginx -v ``` quydagiga o'xshash natija berishi kerak > ``` > GoAccess - 1.8.1. > For more details visit: https://goaccess.io/ > Copyright (C) 2009-2023 by Gerardo Orellana > > Build configure arguments: > --enable-utf8 > --enable-geoip=mmdb > --with-openssl > ``` ## Bonus: Ip addresslar uchun shaxar nomlarini qo'shish Bu bizga web interfesyda ip manzillar qaysi shaxar/davlatlardan kelayotganini ko'rish uchun kerak. Manabu buyruq iplarni qidirish uchun kerakli bazani yuklab beradi. ```bash mkdir geodb cd goedb wget https://github.com/P3TERX/GeoLite.mmdb/raw/download/GeoLite2-City.mmdb cp GeoLite2-City.mmdb /usr/local/share/geodb.mmd ``` Yuklanganini tekshirish ```bash ls ``` Bunday faly paydo bo'lgan bolishi kerak > GeoLite2-City.mmdb ## Bonus: Hisobotni login parol bilan himoyalash login-parol juftliklarini yaratish va faylda saqlash uchun kerak bo'ladi ```bash apt install apache2-utils ``` ## Tugdadi Bular o'rnatishimiz kerak bo'lgan dasturlaredi. ## Sozlash Bu bo'limda o'rnatilgan dasturlar to'gri ishlashi uchun kerakli sozlamalarni o'zgartiramiz, yaratamiz, tuzatamiz. Asosan `config` fayllar bilan ishlaymiz. Sizga `nano` yoki `vim` matn taxrirchilari kerak bo'ladi. Mavjud bo'lmasa o'rnatib oling. ```bash # nano o'rnatish apt install nano # yoki vim. Vim bilan avvaldan tanish bo'lmasanginz ishlatish tavsiya qilmayman. apt install ivm ```