איסוף יומנים של ZyXEL ZyWALL
במאמר הזה מוסבר איך להטמיע יומנים של ZyXEL ZyWALL ב-Google Security Operations באמצעות סוכן Bindplane.
ZyXEL ZyWALL הוא מכשיר UTM/חומת אש שיוצר יומני אירועים של חומת אש, VPN, IDP, מסנן תוכן ומערכת. הוא מספק ניהול איומים מאוחד לסביבות רשת מקומיות.
לפני שמתחילים
חשוב לוודא שיש לכם את הדברים הבאים:
- מכונה של Google SecOps
- Windows Server 2016 ואילך, או מארח Linux עם
systemd - קישוריות לרשת בין סוכן Bindplane לבין מכשיר ZyXEL ZyWALL
- אם מריצים את הסוכן מאחורי שרת proxy, מוודאים שיציאות חומת האש פתוחות בהתאם לדרישות של סוכן Bindplane
- הרשאת אדמין למכשיר ZyXEL ZyWALL
קבלת פרטי כניסה ל-Google SecOps בשביל סוכן Bindplane
כדי לאמת את סוכן Bindplane ב-Google SecOps, בוחרים באחת מהשיטות הבאות:
- פריסות חדשות: משתמשים ב-Chronicle API (אפשרות 1).
- פריסות מדור קודם: אפשר להמשיך להשתמש בקובץ האימות של ה-API להעברת נתונים (אפשרות 2) עד שה-API להעברת נתונים יפסיק לפעול ב-20 ביולי 2027.
אפשרות 1: יצירת חשבון שירות ל-Chronicle API (מומלץ)
- נכנסים למסוףGoogle Cloud ובוחרים את הפרויקט ב- Google Cloud שמקושר למכונה של Google SecOps.
- נכנסים לדף IAM & Admin > Service Accounts.
- לוחצים על Create service account.
- מזינים את פרטי ההגדרה הבאים:
- Service account name: מזינים שם לחשבון (לדוגמה,
bindplane-ingest). - תיאור חשבון השירות: מזינים תיאור (לדוגמה,
Bindplane agent log ingestion).
- Service account name: מזינים שם לחשבון (לדוגמה,
- לוחצים על Create and continue.
- בקטע Grant this service account access to project, לוחצים על Select a role ובוחרים באפשרות Chronicle Editor.
- לוחצים על המשך ואז על סיום.
- לוחצים על חשבון השירות שיצרתם ואז עוברים לכרטיסייה Keys.
- לוחצים על Add key > Create new key.
- בוחרים באפשרות JSON ולוחצים על Create. קובץ המפתח יורד למחשב.
- שומרים את קובץ המפתח בתור
ingestion-auth.jsonבספריית ה-collector של Bindplane (/opt/observiq-otel-collector/ingestion-auth.jsonב-Linux אוC:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.jsonב-Windows), או מעדכנים אתcreds_file_pathב-config.yamlכך שיתאים לנתיב שבו שמרתם אותו. - עוברים אל IAM & Admin > Settings ומעתיקים את הערך של Project number. תצטרכו אותו כדי להגדיר את כלי הייצוא.
אפשרות 2: הורדה של קובץ האימות להטמעת נתונים (מדור קודם)
- נכנסים למסוף Google SecOps.
- עוברים אל SIEM Settings > Collection Agents (הגדרות SIEM > סוכני איסוף).
- מורידים את קובץ האימות להטמעת נתונים.
- שומרים את הקובץ בצורה מאובטחת במערכת שבה יותקן הסוכן של Bindplane.
איך מוצאים את מספר הלקוח ב-Google SecOps
- נכנסים למסוף Google SecOps.
- עוברים אל SIEM Settings > Profile (הגדרות SIEM > פרופיל).
מעתיקים את מספר הלקוח מהקטע פרטי הארגון ושומרים אותו.
התקנת הסוכן של Bindplane
מתקינים את סוכן Bindplane במערכת ההפעלה Windows או Linux לפי ההוראות הבאות.
התקנת חלונות
- פותחים את שורת הפקודה או את PowerShell כאדמין.
מריצים את הפקודה הבאה:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quietמחכים שההתקנה תסתיים.
מאמתים את ההתקנה על ידי הרצת:
sc query observiq-otel-collectorהשירות אמור להופיע כ-RUNNING.
התקנה ב-Linux
- פותחים טרמינל עם הרשאות root או sudo.
מריצים את הפקודה הבאה:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.shמחכים שההתקנה תסתיים.
כדי לוודא שההתקנה בוצעה, מריצים את הפקודה:
sudo systemctl status observiq-otel-collectorהשירות צריך להופיע כפעיל (פועל).
מקורות מידע נוספים להתקנה
אפשרויות התקנה נוספות ופתרון בעיות מפורטים במדריך להתקנת סוכן Bindplane.
הגדרת סוכן Bindplane להטמעת syslog ושליחה ל-Google SecOps
מאתרים את קובץ התצורה
Linux:
sudo nano /opt/observiq-otel-collector/config.yamlWindows:
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
עריכת קובץ התצורה
מחליפים את כל התוכן של
config.yamlבהגדרות הבאות:receivers: udplog: listen_address: "0.0.0.0:514" exporters: chronicle/zywall: protocol: https # Region of your instance, for example us, europe, asia-southeast1 location: <LOCATION> # Project number of the Google Cloud project linked to the instance project: '<PROJECT_NUMBER>' compression: gzip creds_file_path: '/opt/observiq-otel-collector/ingestion-auth.json' customer_id: '<customer_id>' endpoint: chronicle.googleapis.com log_type: ZYWALL raw_log_field: body service: pipelines: logs/zywall_to_chronicle: receivers: - udplog exporters: - chronicle/zywall
פרמטרים להגדרה
מחליפים את ה-placeholders הבאים:
הגדרת מקלט:
-
listen_address: כתובת ה-IP והיציאה להאזנה:0.0.0.0כדי להאזין בכל הממשקים (מומלץ)- יציאה
514היא יציאת syslog רגילה (נדרשת הרשאת root ב-Linux; אפשר להשתמש ב-1514ללא הרשאת root)
-
הגדרת כלי הייצוא:
-
creds_file_path: הנתיב המלא לקובץ המפתח של חשבון השירות בפורמט JSON (אפשרות 1):- Linux:
/opt/observiq-otel-collector/ingestion-auth.json - Windows:
C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
- Linux:
-
customer_id: מספר הלקוח שהועתק ממסוף Google SecOps -
location: מחליפים את<LOCATION>באזור של מופע Google SecOps (לדוגמה,us,europeאוasia-southeast1). ערך זה מתווסף לתחיליתchronicle.googleapis.comשל הכלי לייצוא. רשימה מלאה של נקודות הקצה האזוריות מופיעה במאמר Regional Endpoints. -
project: מחליפים את<PROJECT_NUMBER>במספר הפרויקט שמופיע בקטע IAM & Admin > Settings. -
endpoint: משאירים את הערךchronicle.googleapis.com.
-
כלי לייצוא נתונים מ-Legacy ingestion API
אם אתם משתמשים בקובץ האימות להטמעת נתונים מאפשרות 2, החליפו את הבלוק
exportersבקוד הבא. מגדירים אתcreds_file_pathלנתיב של קובץ האימות להטמעת נתונים. אם המכונה נמצאת מחוץ לארה"ב, מחליפים אתmalachiteingestion-pa.googleapis.comבנקודת הקצה האזורית (לדוגמה,europe-malachiteingestion-pa.googleapis.com).exporters: chronicle/zywall: compression: gzip creds_file_path: '/opt/observiq-otel-collector/ingestion-auth.json' customer_id: '<customer_id>' endpoint: malachiteingestion-pa.googleapis.com log_type: ZYWALL raw_log_field: body
שמירת קובץ התצורה
אחרי שמסיימים לערוך, שומרים את הקובץ:
- Linux: מקישים על
Ctrl+O, אחר כך עלEnterואז עלCtrl+X - Windows: לוחצים על קובץ > שמירה
- Linux: מקישים על
מפעילים מחדש את סוכן Bindplane כדי להחיל את השינויים.
כדי להפעיל מחדש את סוכן Bindplane ב-Linux, מריצים את הפקודה הבאה:
sudo systemctl restart observiq-otel-collectorמוודאים שהשירות פועל:
sudo systemctl status observiq-otel-collectorבודקים אם יש שגיאות ביומנים:
sudo journalctl -u observiq-otel-collector -f
כדי להפעיל מחדש את סוכן Bindplane ב-Windows, בוחרים באחת מהאפשרויות הבאות:
שורת הפקודה או PowerShell כאדמין:
net stop observiq-otel-collector && net start observiq-otel-collectorמסוף השירותים:
- לוחצים על
Win+R, מקלידיםservices.mscולוחצים על Enter. - מאתרים את observIQ OpenTelemetry Collector.
- לוחצים לחיצה ימנית ובוחרים באפשרות הפעלה מחדש.
מוודאים שהשירות פועל:
sc query observiq-otel-collectorבודקים אם יש שגיאות ביומנים:
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
- לוחצים על
הגדרת העברה של syslog ב-ZyXEL ZyWALL
- נכנסים לממשק הניהול באינטרנט של ZyWALL על ידי מעבר לכתובת ה-IP של המכשיר בדפדפן אינטרנט.
- עוברים אל הגדרות > יומן ודוח > הגדרות יומן.
- בקטע Remote Server (שרת מרוחק), בוחרים פרופיל זמין (לדוגמה, Remote Server 1) ולוחצים על Edit (עריכה).
- קובעים את ההגדרות הבאות:
- מסמנים את האפשרות פעיל כדי להפעיל את פרופיל ה-syslog המרוחק.
- פורמט יומן: בוחרים באפשרות VRPT/Syslog.
- כתובת השרת: מזינים את כתובת ה-IP של המארח של סוכן Bindplane.
- יציאת השרת: מזינים
514. - מתקן יומן: בוחרים באפשרות Local0 או במתקן המועדף.
- בקטע Active Log, בוחרים את קטגוריות היומנים שרוצים להעביר:
- מערכת
- חומת אש
- VPN
- IDP (זיהוי ומניעה של פריצות)
- מסנן תוכן
- אנטי-וירוס
- אנטי-ספאם
- לוחצים על OK (אישור) כדי לשמור את ההגדרה.
מוודאים ששרת ה-syslog מקבל יומנים ממכשיר ZyWALL.
טבלת מיפוי UDM
| שדה ביומן | מיפוי UDM | היגיון |
|---|---|---|
| devID, class, dir | additional.fields | שדות נוספים שלא נכללים בסכימת UDM הרגילה |
| inter_host | intermediary.hostname | שם המארח של המכשיר המתווך |
| msg | metadata.description | תיאור האירוע |
| metadata.event_type | סוג האירוע | |
| protoID | network.ip_protocol | פרוטוקול ה-IP שנעשה בו שימוש באירוע הרשת |
| src_ip | principal.asset.ip | כתובת ה-IP של הנכס שמשויך לחשבון המשתמש |
| src_ip | principal.ip | כתובת ה-IP של החשבון הראשי |
| ob_mac | principal.mac | כתובת ה-MAC של המנהל |
| src_port | principal.port | מספר היציאה שמשמש את ה-principal |
| cat | security_result.category_details | פרטי הקטגוריה של תוצאת האבטחה |
| rule_name | security_result.rule_name | שם הכלל שהפעיל את תוצאת האבטחה |
| הערה | security_result.summary | סיכום של תוצאת האבטחה |
| dst_ip | target.asset.ip | כתובת ה-IP של הנכס שמשויך ליעד |
| dst_ip | target.ip | כתובת ה-IP של היעד |
| dst_port | target.port | מספר היציאה שמשמש את היעד |
| metadata.product_name | שם המוצר שיצר את האירוע | |
| metadata.vendor_name | שם הספק של המוצר | |
action |
event.idm.read_only_udm.security_result.action |
מופה מיומן השינויים |
app |
event.idm.read_only_udm.additional.fields |
מופה מיומן השינויים |
cef_event_class_id |
event.idm.read_only_udm.additional.fields |
מופה מיומן השינויים |
cef_spec_version |
event.idm.read_only_udm.additional.fields |
מופה מיומן השינויים |
proto |
event.idm.read_only_udm.additional.fields |
מופה מיומן השינויים |
cef_name |
event.idm.read_only_udm.metadata.product_event_type |
מופה מיומן השינויים |
cef_device_version |
event.idm.read_only_udm.metadata.product_version |
מופה מיומן השינויים |
ob |
event.idm.read_only_udm.network.sent_bytes |
מופה מיומן השינויים |
user |
event.idm.read_only_udm.principal.user.userid |
מופה מיומן השינויים |
cef_severity |
event.idm.read_only_udm.security_result.severity |
מופה מיומן השינויים |
ZYlevel |
event.idm.read_only_udm.security_result.severity_details |
מופה מיומן השינויים |
dvchost |
event.idm.read_only_udm.target.asset.hostname |
מופה מיומן השינויים |
dvchost |
event.idm.read_only_udm.target.hostname |
מופה מיומן השינויים |
יומן שינויים
צפייה ביומן השינויים של כלי הניתוח הזה
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.