סארג הוא כלי קוד פתוח שמאפשר לך לנתח את קבצי הלוג של הסקוויד וליצור דוחות יפים בפורמט HTML עם מידע על משתמשים, כתובות IP, אתרים נגישים ביותר, שימוש ברוחב הפסות כולל, זמן שנצרף, הורדות, אתרים שנסרב לגישה, דוחות יומיים, דוחות שבועיים ודוחות חודשיים.
ה-סארג הוא כלי מאוד שימושי לצפייה בכמה רוחב פס של רשת משמש כל מכונה ברשת ויכול לראות על אילו אתרים משתמשי הרשת גולשים.

במאמר זה אני אנחנו נדריך אותך כיצד להתקין ולהגדיר את סארג – מחולל דוחות ניתוח סקוויד על מערכות RHEL/CentOS/Fedora ו-Debian/Ubuntu/Linux Mint.
התקנת Sarg – מנתח לוגי סקוויד בלינוקס
I assume that you already installed, configured and tested Squid server as a transparent proxy and DNS for the name resolution in caching mode. If not, please install and configure them first before moving further installation of Sarg.
חשוב: נא לזכור שללא הגדרת סקוויד ו-DNS, אין שימוש בהתקנת סארג על המערכת, הוא לא יעבוד בכלל. לכן, נא להתקין אותם תחילה לפני שתמשיכו להתקין את סארג.
עקוב אחר המדריכים הללו כדי להתקין DNS וסקוויד במערכות הלינוקס שלך:
התקנת שרת DNS לאחסון בלבד
- התקנת שרת DNS לאחסון בלבד ב-RHEL/CentOS 7
- התקן שרת DSN רק למטמון ב-RHEL/CentOS 6
- התקן שרת DSN רק למטמון באובונטו ובדביאן
התקן את Squid כפרוקסי שקוף
שלב 1: התקנת Sarg מהמקור
חבילת 'sarg' לא כלולה כברירת מחדל בהפצות המבוססות על RedHat, ולכן עלינו להתקין ולהרכיב אותה באופן ידני מתוך קובץ המקור. לכך, נצטרך להתקין חבילות נדרשות נוספות במערכת לפני הרכבתה מהמקור.
ב-RedHat/CentOS/Fedora
# yum install –y gcc gd gd-devel make perl-GD wget httpd
לאחר שהתקנת את כל החבילות הנדרשות, יש להוריד את קובץ המקור האחרון של sarg או להשתמש בפקודת ה-wget הבאה כדי להוריד ולהתקין אותו כפי שמוצג להלן.
# wget http://liquidtelecom.dl.sourceforge.net/project/sarg/sarg/sarg-2.3.10/sarg-2.3.10.tar.gz # tar -xvzf sarg-2.3.10.tar.gz # cd sarg-2.3.10 # ./configure # make # make install
ב-Debian/Ubuntu/Linux Mint
בהפצות מבוססות Debian, ניתן להתקין בקלות את חבילת sarg מהמאגרים המוגדרים כברירת מחדל באמצעות מנהל החבילות apt-get.
$ sudo apt-get install sarg
שלב 2: הגדרת Sarg
עכשיו הגיע הזמן לערוך כמה פרמטרים בקובץ ההגדרות הראשי של SARG. הקובץ מכיל המון אפשרויות לעריכה, אך אנחנו נערוך רק את הפרמטרים הדרושים, כמו:
- נתיב ליומני הגישה
- תיקיית פלט
- תבנית תאריך
- דריסת דוח לאותו התאריך.
פתחו את קובץ sarg.conf בעזרת עורך הטקסט של בחירתכם ובצעו את השינויים כפי שמוצג למטה.
# vi /usr/local/etc/sarg.conf [On RedHat based systems]
$ sudo nano /etc/sarg/sarg.conf [On Debian based systems]
עכשיו בטלו את ההערה והוסיפו את הנתיב המקורי אל קובץ יומן הגישה של squid.
# sarg.conf # # TAG: access_log file # Where is the access.log file # sarg -l file # access_log /var/log/squid/access.log
לאחר מכן, הוסיפו את הנתיב הנכון לתיקיית הפלט כדי לשמור את דוחות ה-squid שנוצרו בתיקייה הזו. שימו לב, בהפצות מבוססות Debian התיקייה הראשית של שרת האינטרנט Apache היא '/var/www'. לכן, היזהרו בעת הוספת נתיבים נכונים של תיקיית האינטרנט בהפצות הלינוקס שלכם.
# TAG: output_dir # The reports will be saved in that directory # sarg -o dir # output_dir /var/www/html/squid-reports
הגדירו את תבנית התאריך הנכונה לדוחות. לדוגמה, 'date_format e' יציג דוחות בתבנית 'dd/mm/yy'.
# TAG: date_format # Date format in reports: e (European=dd/mm/yy), u (American=mm/dd/yy), w (Weekly=yy.ww) # date_format e
לאחר מכן, בטלו את ההערה והגדירו דריסת דוח ל'כן'.
# TAG: overwrite_report yes|no # yes - if report date already exist then will be overwritten. # no - if report date already exist then will be renamed to filename.n, filename.n+1 # overwrite_report yes
זהו! שמרו וסגרו את הקובץ.
שלב 3: יצירת דוח Sarg
לאחר שסיימתם את חלק ההגדרות, הגיע הזמן ליצור דוח יומן ה-squid באמצעות הפקודה הבאה.
# sarg -x [On RedHat based systems]
# sudo sarg -x [On Debian based systems]
דוגמת פלט
[root@localhost squid]# sarg -x SARG: Init SARG: Loading configuration from /usr/local/etc/sarg.conf SARG: Deleting temporary directory "/tmp/sarg" SARG: Parameters: SARG: Hostname or IP address (-a) = SARG: Useragent log (-b) = SARG: Exclude file (-c) = SARG: Date from-until (-d) = SARG: Email address to send reports (-e) = SARG: Config file (-f) = /usr/local/etc/sarg.conf SARG: Date format (-g) = USA (mm/dd/yyyy) SARG: IP report (-i) = No SARG: Keep temporary files (-k) = No SARG: Input log (-l) = /var/log/squid/access.log SARG: Resolve IP Address (-n) = No SARG: Output dir (-o) = /var/www/html/squid-reports/ SARG: Use Ip Address instead of userid (-p) = No SARG: Accessed site (-s) = SARG: Time (-t) = SARG: User (-u) = SARG: Temporary dir (-w) = /tmp/sarg SARG: Debug messages (-x) = Yes SARG: Process messages (-z) = No SARG: Previous reports to keep (--lastlog) = 0 SARG: SARG: sarg version: 2.3.7 May-30-2013 SARG: Reading access log file: /var/log/squid/access.log SARG: Records in file: 355859, reading: 100.00% SARG: Records read: 355859, written: 355859, excluded: 0 SARG: Squid log format SARG: Period: 2014 Jan 21 SARG: Sorting log /tmp/sarg/172_16_16_55.user_unsort ......
הערה: הפקודה 'sarg -x' תקרא את קובץ התצורה 'sarg.conf' ותקבל את נתיב ה-faccess.log של squid ותפיק דוח בפורמט HTML.
שלב 4: ניתוח דוח Sarg
הדוחות שנוצרו מוצבים בתיקייה 'var/www/html/squid-reports/' או 'var/www/squid-reports/' שניתן לגשת אליהם מדפדפן האינטרנט באמצעות הכתובת.
http://localhost/squid-reports OR http://ip-address/squid-reports
חלון ראשי של Sarg

תאריך ספציפי

דוח משתמש

האתרים הנגישים ביותר

האתרים והמשתמשים הנגישים ביותר

הורדות מובילות

גישה נדחת

כישלונות אימות

שלב 5: יצירת דוח Sarg אוטומטית
כדי לאוטומציה את תהליך היצירת דוח sarg במרווח זמן נתון דרך משימות cron. לדוג' נניח כי ברצונך ליצור דוחות בתדירות שעתית באופן אוטומטי, עליך להגדיר משימת cron.
# crontab -e
בשלב הבא, הוסף את השורה הבאה בתחתית הקובץ. שמור וסגור אותו.
* */1 * * * /usr/local/bin/sarg -x
הכלל של cron המופיע לעיל יפיק דוח sarg בכל עתירה של שעה.
קישורים להפניות
זהו עם SARG! אני אכתוב מאמרים נוספים מעניינים על Linux, עד אז הישארו מחוברים ל־TecMint.com ואל תשכחו להוסיף את התגובות היקרות שלכם.
Source:
https://www.tecmint.com/sarg-squid-analysis-report-generator-and-internet-bandwidth-monitoring-tool/